<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2194962091333588285</id><updated>2011-07-29T08:30:10.639-07:00</updated><category term='apache'/><category term='Google maps'/><category term='maemo'/><category term='asterisk'/><category term='rewritemap'/><category term='cam'/><category term='n800'/><category term='MailToVoice'/><category term='video'/><category term='voip'/><category term='motos'/><category term='eco'/><category term='rewrite'/><title type='text'>dtemes</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://dtemes.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://dtemes.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>David</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>13</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2194962091333588285.post-155904912937461434</id><published>2011-05-21T01:32:00.000-07:00</published><updated>2011-07-29T08:30:10.708-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rewrite'/><category scheme='http://www.blogger.com/atom/ns#' term='apache'/><category scheme='http://www.blogger.com/atom/ns#' term='rewritemap'/><title type='text'>Secure downloads with Apache and mod_rewrite/RewriteMap</title><content type='html'>In one of the projects i am working we need to protect some media files so that only authorized users can access them, and only the files they should have access to.&lt;br /&gt;&lt;br /&gt;Our current solution uses a php script to check the permissions based on a token created from the file name and a timestamp, very similar to the secure download module available in &lt;a href="http://www.lighttpd.net"&gt;lighttpd&lt;/a&gt;. The PHP script then reads the file and passes it to the user. This is far than optimal in terms of processing speed and memory consumption, so I satrted to search for a solution.&lt;br /&gt;&lt;br /&gt;The first idea that came to my mind was using Ligttpd to serve those files with the secure download module, using apache as a proxy to a locally runinng insance of http://www.blogger.com/img/blank.gifLighttpd or using a dedicated server with Lighttpd to host the media files....yet another server to manage, not a good idea...&lt;br /&gt;&lt;br /&gt;There must be something out there....if only mod_rewrite could do some string manipulation and calculate md5 hashes...as far as i know it does not, but wait a minute, we have &lt;a href="http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritemap"&gt;RewriteMap&lt;/a&gt;!. The RewriteMap option within mod_rewrite allows the lookup of key/value pairs from plain files, db files or....external programs. The key is in this last feature. Let's see how we can do it.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;1. Our token&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;As I said before we are using a token to control access to the files. This 40 bytes token consists of a md5 hash (32 bytes) plus a timestamp (8 bytes). The hash is calculated from the filename, the timestamp and a "secret" string.&lt;br /&gt;&lt;br /&gt;token = md5(secret+filename+timestamp)+timestamp&lt;br /&gt;&lt;br /&gt;a sample url to get the file could be:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;http://www.example.com/secure/1fb5dcde52ec59f7308c301e5126395b4dd6f000/file.jpg&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;2. The RewriteMap script&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Apache comunicates with the RewriteMap external program via stdin/stdout. Only one instance of the progrm is run, and it serves for all the key lookup. In order to use it we have to set it up in our apache config, for instance at vhost level:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;RewriteEngine on&lt;br /&gt;Rewritemap securedownload prg:/etc/apache2/scripts/securedownload.sh&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;And here is the script, at this point is just a shell script to try the concept, not ready for production:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;KEY=VerySecret&lt;br /&gt;DURATION=18000&lt;br /&gt;&lt;br /&gt;while read line; do&lt;br /&gt; PREV_HASH=${line:0:32}&lt;br /&gt; PREV_TIME=${line:32:8}&lt;br /&gt; FILENAME=${line:40}&lt;br /&gt; &lt;br /&gt; #calculate our hash&lt;br /&gt; MD5=`echo -n $KEY$FILENAME$PREV_TIME|md5sum`&lt;br /&gt; &lt;br /&gt; NEW_HASH=${MD5:0:32}&lt;br /&gt; &lt;br /&gt; #Time check&lt;br /&gt; NOW=`date +%s`&lt;br /&gt; let TIME=0x${PREV_TIME};&lt;br /&gt; &lt;br /&gt; #Add duration&lt;br /&gt; TIME=$(($TIME+$DURATION));&lt;br /&gt; &lt;br /&gt; if [ $TIME -ge $NOW ];then&lt;br /&gt;  #check hash&lt;br /&gt;  if [ $NEW_HASH = $PREV_HASH ]; then&lt;br /&gt;   echo $FILENAME&lt;br /&gt;   else&lt;br /&gt;   echo "NOACCESS.${FILENAME:(-3)}"&lt;br /&gt;  fi&lt;br /&gt; else&lt;br /&gt;  echo "NOACCESS.${FILENAME:(-3)}"&lt;br /&gt; fi&lt;br /&gt;&lt;br /&gt;done;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;The script get the complete url and validates the hash and compares the timestamp with the current time to see if we are within the allowed time frame, specified by DURATION. If all is ok then it returns the file name, so in this case the url will be converted to :&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;http://www.example.com/secure/file.jpg&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;If not valid it will return "noaccess.jpg", and we have two options: create that file and return it, or let apache return a 404 code,:not found.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;3. The RewriteRule&lt;/span&gt;&lt;br /&gt;And this is the .htaccess file inside the secure directory:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;RewriteEngine on&lt;br /&gt;&lt;br /&gt;#secure download via rewrite map&lt;br /&gt;RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;RewriteRule ^(.{40})/(.*)$ ${securedownload:$1$2}?SECURE=123asd[L]&lt;br /&gt;&lt;br /&gt;#no direct access to files&lt;br /&gt;RewriteCond %{QUERY_STRING} !^SECURE=123asd$&lt;br /&gt;RewriteRule ^(.*)$ - [F,L]&lt;br /&gt;&lt;/code&gt; &lt;br /&gt;&lt;br /&gt;See how we append the token and file name and pass it to the securedownload rewritemap if the url matches the pattern with the 40 bytes token and the filename.&lt;br /&gt;&lt;br /&gt;To avoid direct access to the file we block it and force a forbidden response, unless we have the magic query string added by the previous rewrite rule. This trick is the only way I have found to set a "flag" that prevents blocking access to the file after internal reruns of the rewrite engine.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;4. The results&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Our tests with ab show that this method is 10x times faster than our previous php script. Again, remember that using .htaccess files inside directories might not be optimal.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;And that's all, drop me a line if you need more details!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2194962091333588285-155904912937461434?l=dtemes.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtemes.blogspot.com/feeds/155904912937461434/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2194962091333588285&amp;postID=155904912937461434' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/155904912937461434'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/155904912937461434'/><link rel='alternate' type='text/html' href='http://dtemes.blogspot.com/2011/05/secure-downloads-with-apache-and.html' title='Secure downloads with Apache and mod_rewrite/RewriteMap'/><author><name>David</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2194962091333588285.post-274887792131263767</id><published>2008-09-03T07:34:00.000-07:00</published><updated>2008-09-03T07:44:53.624-07:00</updated><title type='text'>Probando el navegador de Google</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OUTOsvGAsfY/SL6ixR9TjII/AAAAAAAAACU/6R6EXijHrCw/s1600-h/chrome.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_OUTOsvGAsfY/SL6ixR9TjII/AAAAAAAAACU/6R6EXijHrCw/s320/chrome.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5241805983823662210" /&gt;&lt;/a&gt;&lt;br /&gt;Tras la accidentada publicación del cómic de presentación de Google Chrome, por fin ha sido lanzada la versión Beta del mismo. Las primeras impresiones son más que positivas pero habrá que seguir investigando antes de tomar decisiones. Entre otras cosas aún no se si exsiste una versión para Linux, ni cómo funcionará en esa plataforma caso de existir.&lt;br /&gt;&lt;br /&gt;Una de las cosas que no me gustan es que no he visto forma de cambiar el color de fondo de la aplicación, que no contrasta lo suficiente con el escritorio y por ejemplo cuesta localizar la barra de título para arrastrar la ventana. Y otra cosa, para que sirve el navegador "de incógnito" tengo sospechas de por dónde van los tiros, pero se echa en falta una explicación al respecto en la ayuda.&lt;br /&gt;&lt;br /&gt;Mantendré un ojo puesto en este prometedor navegador...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2194962091333588285-274887792131263767?l=dtemes.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtemes.blogspot.com/feeds/274887792131263767/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2194962091333588285&amp;postID=274887792131263767' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/274887792131263767'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/274887792131263767'/><link rel='alternate' type='text/html' href='http://dtemes.blogspot.com/2008/09/probando-el-navegador-de-google.html' title='Probando el navegador de Google'/><author><name>David</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_OUTOsvGAsfY/SL6ixR9TjII/AAAAAAAAACU/6R6EXijHrCw/s72-c/chrome.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2194962091333588285.post-5819882694728230936</id><published>2008-05-30T13:54:00.000-07:00</published><updated>2008-05-30T14:08:08.273-07:00</updated><title type='text'>No todo es trabajo</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_OUTOsvGAsfY/SEBsdXV5mGI/AAAAAAAAAB0/e6kPe0DoO_4/s1600-h/DSC_0005.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://bp0.blogger.com/_OUTOsvGAsfY/SEBsdXV5mGI/AAAAAAAAAB0/e6kPe0DoO_4/s320/DSC_0005.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5206280420978169954" /&gt;&lt;/a&gt;&lt;br /&gt;No todo en esta vida es trabajar, a veces hay que sentarse, disfrutar de una agradable lectura y porqué no, darse un pequeño festín en buena compañía...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2194962091333588285-5819882694728230936?l=dtemes.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtemes.blogspot.com/feeds/5819882694728230936/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2194962091333588285&amp;postID=5819882694728230936' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/5819882694728230936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/5819882694728230936'/><link rel='alternate' type='text/html' href='http://dtemes.blogspot.com/2008/05/no-todo-es-trabajo.html' title='No todo es trabajo'/><author><name>David</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_OUTOsvGAsfY/SEBsdXV5mGI/AAAAAAAAAB0/e6kPe0DoO_4/s72-c/DSC_0005.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2194962091333588285.post-2676850491280659829</id><published>2008-05-20T00:16:00.000-07:00</published><updated>2008-05-20T07:57:15.614-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google maps'/><title type='text'>¿Google digitalizando Barcelona?</title><content type='html'>Ayer por la mañana me llamó la atención un coche negro con una torreta sobre su capó que finalizaba en un dispositivo óptico que apuntaba hacia adelante, izquierda y derecha. En la puerta lucía el logotipo de Google. ¿acaso están digitalizando la ciudad?&lt;br /&gt;&lt;br /&gt;En esos momentos yo iba caminando y con las manos ocupadas, así que no pude hacerle una foto con el movil.&lt;br /&gt;&lt;br /&gt;Unas horas más tarde de publicar esta entrada veo que el asunto comentado es portada de "el Periódico" en su versión impresa, y online se puede encontrar &lt;a href="http://www.elperiodico.com/default.asp?idpublicacio_PK=46&amp;idioma=CAS&amp;idnoticia_PK=510978&amp;idseccio_PK=1021&amp;h="&gt;aquí&lt;/a&gt;. Eso sí, no me ha gustado nada encontrarme al entrar publicidad que ocupaba toda la pantalla en la versión electrónica.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2194962091333588285-2676850491280659829?l=dtemes.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtemes.blogspot.com/feeds/2676850491280659829/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2194962091333588285&amp;postID=2676850491280659829' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/2676850491280659829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/2676850491280659829'/><link rel='alternate' type='text/html' href='http://dtemes.blogspot.com/2008/05/ggoogle-digitalizando-barcelona.html' title='¿Google digitalizando Barcelona?'/><author><name>David</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2194962091333588285.post-4550839226363929168</id><published>2008-05-15T03:42:00.001-07:00</published><updated>2008-05-15T04:10:29.604-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='voip'/><category scheme='http://www.blogger.com/atom/ns#' term='asterisk'/><title type='text'>Mini PBX basada en Asterisk</title><content type='html'>Desde hace meses tengo en casa funcionando a la perfección un mini ordenador con Asterisk, pero a pesar del pequeño tamaño el equipo consume bastante y sus ventiladores, que no dejan de funcionar durante todo el día, resultan cansinos.&lt;br /&gt;&lt;br /&gt;Motivados por el incesante ruido de esos ventiladores y el propio placer de cacharrear nos hemos puesto manos a la obra con el objetivo de sustituir ese PC por un equipo embebido.&lt;br /&gt;&lt;br /&gt;Aquí teneis una foto del resultado y un pdf explicando la experiencia.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_OUTOsvGAsfY/SCwVhfY66iI/AAAAAAAAABs/-LB1YzzotWY/s1600-h/minipbx.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://bp1.blogger.com/_OUTOsvGAsfY/SCwVhfY66iI/AAAAAAAAABs/-LB1YzzotWY/s320/minipbx.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5200555334811970082" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Podéis descargar el pdf aquí: &lt;a href="http://www.mailtovoice.com/download/PBX%20Asterisk%20embebida.pdf"&gt;PBX Asterisk embebida.pdf&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2194962091333588285-4550839226363929168?l=dtemes.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtemes.blogspot.com/feeds/4550839226363929168/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2194962091333588285&amp;postID=4550839226363929168' title='5 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/4550839226363929168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/4550839226363929168'/><link rel='alternate' type='text/html' href='http://dtemes.blogspot.com/2008/05/mini-pbx-basada-en-asterisk.html' title='Mini PBX basada en Asterisk'/><author><name>David</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_OUTOsvGAsfY/SCwVhfY66iI/AAAAAAAAABs/-LB1YzzotWY/s72-c/minipbx.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2194962091333588285.post-8096002932534135280</id><published>2008-02-05T09:14:00.001-08:00</published><updated>2008-02-06T04:57:02.631-08:00</updated><title type='text'>Hasta las orejas</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_OUTOsvGAsfY/R6muJbogeRI/AAAAAAAAABM/jmz_lcOzqdI/s1600-h/tragamotos800x600.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://bp0.blogger.com/_OUTOsvGAsfY/R6muJbogeRI/AAAAAAAAABM/jmz_lcOzqdI/s320/tragamotos800x600.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5163849924816697618" /&gt;&lt;/a&gt;&lt;br /&gt;Literalmente, hasta las orejas de barro he acabado este domingo 3 de febrero gracias a la "Ruta dels castells" por la que nos ha guiado Ray.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="373"&gt;&lt;param name="movie" value="http://www.youtube.com/v/JuPUbqv6Njg&amp;rel=1&amp;border=1"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/JuPUbqv6Njg&amp;rel=1&amp;border=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="373"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2194962091333588285-8096002932534135280?l=dtemes.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtemes.blogspot.com/feeds/8096002932534135280/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2194962091333588285&amp;postID=8096002932534135280' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/8096002932534135280'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/8096002932534135280'/><link rel='alternate' type='text/html' href='http://dtemes.blogspot.com/2008/02/hasta-las-orejas.html' title='Hasta las orejas'/><author><name>David</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_OUTOsvGAsfY/R6muJbogeRI/AAAAAAAAABM/jmz_lcOzqdI/s72-c/tragamotos800x600.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2194962091333588285.post-1106754448865697516</id><published>2007-12-28T06:51:00.000-08:00</published><updated>2007-12-31T05:37:21.667-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='cam'/><category scheme='http://www.blogger.com/atom/ns#' term='voip'/><title type='text'>Tucam.net</title><content type='html'>Os presento mi nueva web: &lt;a href="http://www.tucam.net/"&gt;www.tucam.net&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Es la forma más fácil de grabar, reproducir y compartir vídeos o realizar videoconferencias, tan solo hace falta tener flash instalado (Muy recomendable la versión 8 o superior).&lt;br /&gt;&lt;br /&gt;Para muestra un botón...bueno, mejor un vídeo&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;tucam_id = "M20071200107b300ec79c50bc91821811947b9ca08d4";&lt;/script&gt;&lt;script type="text/javascript" src="http://www.tucam.net/embed.js"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2194962091333588285-1106754448865697516?l=dtemes.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtemes.blogspot.com/feeds/1106754448865697516/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2194962091333588285&amp;postID=1106754448865697516' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/1106754448865697516'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/1106754448865697516'/><link rel='alternate' type='text/html' href='http://dtemes.blogspot.com/2007/12/tucamnet.html' title='Tucam.net'/><author><name>David</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2194962091333588285.post-5838934201176722390</id><published>2007-11-30T04:19:00.000-08:00</published><updated>2008-05-07T15:35:11.020-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='n800'/><category scheme='http://www.blogger.com/atom/ns#' term='maemo'/><title type='text'>Nuevo firmware para el N800</title><content type='html'>Ayer reflashee el firmware de mi nokia N800 con la versión IT2008 beta recién salida (por cierto, lo hice desde Linux). El diseño es más moderno y agradable a la vez que funcional, por ejemplo en cuanto al uso del dispositivo con los dedos, sin tener que usar el stylus.&lt;br /&gt;&lt;br /&gt;De momento no hay apenas aplicaciones para instalar, pero se supone que estarán en los repositorios cuando salga la versión definitiva a mediados de diciembre.&lt;br /&gt;&lt;br /&gt;He configurado un par de cuentas SIP para conectar al servidor asterisk de casa y la oficina, y funciona ciertamente bien, es una pijada ir por ahí escuchando música y atendiendo llamadas aunque en el bolsillo el N800 resulta algo grande y pesado. Eso sí, cuando toca usar la pantalla se agradece su generoso tamaño y se olvida uno del peso...&lt;br /&gt;&lt;br /&gt;Para más información: &lt;a href="http://www.maemo.org/"&gt;www.maemo.org&lt;/a&gt; y en la página de &lt;a href="http://europe.nokia.com/A4579470"&gt;Nokia&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2194962091333588285-5838934201176722390?l=dtemes.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtemes.blogspot.com/feeds/5838934201176722390/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2194962091333588285&amp;postID=5838934201176722390' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/5838934201176722390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/5838934201176722390'/><link rel='alternate' type='text/html' href='http://dtemes.blogspot.com/2007/11/nuevo-firmware-para-el-n800.html' title='Nuevo firmware para el N800'/><author><name>David</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2194962091333588285.post-3896934722730794169</id><published>2007-09-04T07:44:00.000-07:00</published><updated>2007-09-04T08:21:03.853-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='voip'/><category scheme='http://www.blogger.com/atom/ns#' term='asterisk'/><category scheme='http://www.blogger.com/atom/ns#' term='eco'/><title type='text'>Cancelación de eco con oslec en asterisk</title><content type='html'>En un rinconcito de la oficina tengo una maquina de pruebas donde instalé Tixbox hace ya algún tiempo (tanto que ni me acuerdo de la versión)  y actualicé asterisk via codigo fuente a la nueva rama 1.4. Dispongo de una tarjeta openvox con 4 puertos fxo así que decidí usarla para enrutar las llamadas a mi telefono de escritorio, que ahora me llegan a un Cisco 7960 (anteriormente a un Grandstream gpx-2000, pero me gusta mucho más el Cisco)&lt;br /&gt;&lt;br /&gt;Con ambos telefonos el eco era tremendo, a veces insoportable durante 5 o 10 segundos, así que hoy me puse a trastear con &lt;a href="http://www.rowetel.com/ucasterisk/oslec"&gt;OSLEC&lt;/a&gt;, un cancelador de eco por software y la verdad es que los resultados son bastante buenos, el eco ha desaparecido por completo y la unica diferencia es que al menos con idefisk desde el ordenador el sonido de la otra parte se escucha un poco más lejos, pero nada que no se pueda arreglar subiendo un poquito el volumen. Con el Cisco la mejora es espectacular, nada de eco y no hace falta ni ajustar el volumen.&lt;br /&gt;&lt;br /&gt;Un problema que he tenido es que el modulo del kernel del oslec no se cargaba tras reiniciar y eso ocasionaba que el módulo zapata no cargase,  pero un "&lt;span style="font-style: italic;"&gt;depmod -a&lt;/span&gt;" lo ha solucionado.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2194962091333588285-3896934722730794169?l=dtemes.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtemes.blogspot.com/feeds/3896934722730794169/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2194962091333588285&amp;postID=3896934722730794169' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/3896934722730794169'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/3896934722730794169'/><link rel='alternate' type='text/html' href='http://dtemes.blogspot.com/2007/09/cancelacin-de-eco-con-oslec-en-asterisk.html' title='Cancelación de eco con oslec en asterisk'/><author><name>David</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2194962091333588285.post-8223151045446536801</id><published>2007-06-20T13:08:00.001-07:00</published><updated>2007-06-20T13:16:04.775-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='motos'/><title type='text'>Curso Off road</title><content type='html'>&lt;div&gt;&lt;a href="http://bp3.blogger.com/_OUTOsvGAsfY/RnmKlBIo1JI/AAAAAAAAAAo/F2O4E6TqO-A/s1600-h/yo.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5078242423401403538" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp3.blogger.com/_OUTOsvGAsfY/RnmKlBIo1JI/AAAAAAAAAAo/F2O4E6TqO-A/s320/yo.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;En abril asistí a un curso de conducción off road con Marc Puigdemont, disfruté un montón y aprendi otro tanto, sobre todo en el increible circuito en el que Marc entrena, el hecho de pasar una y otra vez por el mismo sitio es ideal para coger el tacto a la moto y ver como reacciona en distintas tesituras para aprender a dominarla.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Aquí os dejo un link a la web de esta gente que tan bien nos atendió:&lt;/p&gt;&lt;a href="http://www.soloenduro.com/"&gt;http://www.soloenduro.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://bp3.blogger.com/_OUTOsvGAsfY/RnmKlBIo1JI/AAAAAAAAAAo/F2O4E6TqO-A/s1600-h/yo.jpg"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2194962091333588285-8223151045446536801?l=dtemes.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtemes.blogspot.com/feeds/8223151045446536801/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2194962091333588285&amp;postID=8223151045446536801' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/8223151045446536801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/8223151045446536801'/><link rel='alternate' type='text/html' href='http://dtemes.blogspot.com/2007/06/curso-off-road.html' title='Curso Off road'/><author><name>David</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_OUTOsvGAsfY/RnmKlBIo1JI/AAAAAAAAAAo/F2O4E6TqO-A/s72-c/yo.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2194962091333588285.post-5119850967305172709</id><published>2007-06-19T08:50:00.000-07:00</published><updated>2007-06-19T08:55:42.444-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MailToVoice'/><title type='text'>En funcionamiento MailToVoice/es</title><content type='html'>Sí, estoy impaciente por ver si el hecho de tener la página en español atrae más usuarios, así que he subido la traducción a producción....aunque faltan unos cuantos campos de las tablas por traducir...&lt;br /&gt;&lt;br /&gt;Para echarle un vistazo haz click &lt;a href="http://www.mailtovoice.com/es"&gt;aquí&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2194962091333588285-5119850967305172709?l=dtemes.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtemes.blogspot.com/feeds/5119850967305172709/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2194962091333588285&amp;postID=5119850967305172709' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/5119850967305172709'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/5119850967305172709'/><link rel='alternate' type='text/html' href='http://dtemes.blogspot.com/2007/06/en-marcha-mailtovoicees.html' title='En funcionamiento MailToVoice/es'/><author><name>David</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2194962091333588285.post-7652596220489579240</id><published>2007-06-11T03:48:00.001-07:00</published><updated>2007-06-11T03:53:48.910-07:00</updated><title type='text'>Traducción en marcha</title><content type='html'>Ya tenemos la versión en español de MailToVoice, espero que cuando esté online se apunte más gente, ya que se da la circunstancia de que los anunción puestos en Google generan más tráfico en español que en inglés, y cuando los usuarios hispano hablantes entran y ven la web en English... pues seguro que más de uno huye.&lt;br /&gt;&lt;br /&gt;Por cierto, estoy enamorado de google analytics y en mi caso se puede decir con certeza que es amor a primera vista, porque tiene tantas cosas que apenas he podido mirarlas :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2194962091333588285-7652596220489579240?l=dtemes.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtemes.blogspot.com/feeds/7652596220489579240/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2194962091333588285&amp;postID=7652596220489579240' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/7652596220489579240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/7652596220489579240'/><link rel='alternate' type='text/html' href='http://dtemes.blogspot.com/2007/06/traduccin-en-marcha.html' title='Traducción en marcha'/><author><name>David</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2194962091333588285.post-5630484060934445813</id><published>2007-05-14T01:46:00.000-07:00</published><updated>2007-05-14T01:51:01.593-07:00</updated><title type='text'>Me decanto por Blogspot</title><content type='html'>Después de echar un vistazo a wordpress y alguna opción más he decidido abrir este nuevo blog aquí, en blogspot. Una de las razones de peso es la integración con el resto de herramientas de Google, ya que habitualmente uso adwords, analytics, el correo, etc&lt;br /&gt;&lt;br /&gt;Ahora toca recuperar antiguos posts hechos en imeem y my spaces&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2194962091333588285-5630484060934445813?l=dtemes.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtemes.blogspot.com/feeds/5630484060934445813/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2194962091333588285&amp;postID=5630484060934445813' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/5630484060934445813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2194962091333588285/posts/default/5630484060934445813'/><link rel='alternate' type='text/html' href='http://dtemes.blogspot.com/2007/05/me-decanto-por-blogspot.html' title='Me decanto por Blogspot'/><author><name>David</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
