<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Hola,<br>
<br>
El 27/08/12 21:09, David Rubert escribió:<br>
</div>
<blockquote
cite="mid:CAF-Hj--LXLR331yx=E9PyTmWQ8gi65Db=G9e9xzS2QffBm1umQ@mail.gmail.com"
type="cite">Primero que nada, veo que hay varios apartados para la
web:
<div><br>
</div>
<div>* Página pública de información de un nodo de la PLN. Incluye
información sobre el propio nodo u otros nodos de la red. ¿Cómo
hacemos esa información dinámica? Una opción sería páginas
estáticas, pero el document_root de ese directorio fuera la raiz
de un repositorio git, que fuera haciendo pulls frecuentes
mediante cron (con lo que obtendría nueva documentación, nuevos
nodos incorporados a la red, etc.) No sé si es eso lo que
teníais pensado. ¿Qué otras opciones hay?</div>
</blockquote>
<br>
La idea es que cada nodo mantenga unos ficheros con los listados de:<br>
<br>
* nodos PLN<br>
* usuarios PLN<br>
* usuarios locales<br>
* info del nodo local<br>
* y otros, ver
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<a href="http://pad.marsupi.org/plnfiles">http://pad.marsupi.org/plnfiles</a><br>
<br>
Por ejemplo, para actualizar el listado de nodos y de usuarios de la
PLN, cada X un script descarga el listado de usuarios locales y los
datos de todas las IPs de la VPN que respondan.<br>
<br>
Opcionalmente, un admin de un nodo podría decidir que en vez de
mapear él mismo toda la red, descargará simplemente los ficheros que
haya generado otro nodo que sí que mapee la red cada X<br>
<br>
<blockquote
cite="mid:CAF-Hj--LXLR331yx=E9PyTmWQ8gi65Db=G9e9xzS2QffBm1umQ@mail.gmail.com"
type="cite"><br>
<div>Otra cosa, he visto que habláis de publicar información en
formato CSV. ¿Esto es requerimiento de Asterisk? ¿No podríamos
publicar esa misma información en JSON? Es un formato mucho más
atacable desde web, desde la capa de cliente podríamos acceder a
los datos y presentarlos en el diseño sin tener que parsear nada
de una manera cómoda y sencilla.</div>
</blockquote>
<br>
Puse CSV por ser algo fácilmente parseable y que ocupa lo justo. +1
a usar JSON, creo que el tiempo de los programadores vale más que
los Mb que puedan llegar a ocupar de más el listado de usuarios.<br>
<br>
<blockquote
cite="mid:CAF-Hj--LXLR331yx=E9PyTmWQ8gi65Db=G9e9xzS2QffBm1umQ@mail.gmail.com"
type="cite">
<div><br>
</div>
<div>Veo que también habláis de geolocalizar los nodos con
OpenStreetMaps, me parece cojonudo, por eso si definimos un
formato de archivo JSON con todos los datos básicos sería
fácilmente accesible desde cualquier sitio. Algo del estilo:</div>
<div><br>
</div>
<div>wget -q -O /dev/stdout <a class="moz-txt-link-freetext" href="http://">http://</a><a moz-do-not-send="true"
href="http://patiomaravillas.dyndns.org/patiomaravillas.json">http://patiomaravillas.dyndns.org/patiomaravillas.json</a></div>
<div><br>
</div>
<div>{ name: "patiomaravillas",</div>
<div> dundi_publickey: "<a moz-do-not-send="true"
href="http://patiomaravillas.dyndns.org/patiomaravillas.pub">http://patiomaravillas.dyndns.org/patiomaravillas.pub</a>",</div>
<div> tinc_publickey: "<a moz-do-not-send="true"
href="http://patiomaravillas.dyndns.org/patiomaravillas">http://patiomaravillas.dyndns.org/patiomaravillas</a>",</div>
<div> position: { "lat": 3.1283872202, "lng": -0.98932823},</div>
<div> ....</div>
<div>}</div>
<div><br>
</div>
<div>Sólo con eso ya podríamos generar páginas estáticas, sin
necesidad de ningún parser CGI que informaría dinámicamente de
todos los nodos de la red.</div>
<div><br>
</div>
</blockquote>
<br>
+1 , pero que el fichero con la información del nodo tenga un nombre
genérico, por ejemplo pln-node.json<br>
<br>
Así los scripts podrán descargar éste fichero sin conocer el nombre
del nodo, sólo con un wget a su IP en la VPN.<br>
<br>
<br>
<blockquote
cite="mid:CAF-Hj--LXLR331yx=E9PyTmWQ8gi65Db=G9e9xzS2QffBm1umQ@mail.gmail.com"
type="cite">
<div><br>
</div>
<div>Para redondear el tocho, a ver qué os parece esta idea. Se me
ocurre que a modo de Proof-of-concept se podría hacer hacer una
demo web similar a lo que en su día impresionaba en la web de
jahjah[0]. Básicamente, permitir vía web introducir un número de
teléfono de origen y otro de destino, de manera que desemboca en
que asterisk llama al origen, lo pone en espera y mientras llama
al número de destino para terminar estableciendo la llamada. En
su día era la caña, y hoy en día se podría hacer prácticamente
gratix.</div>
<div><br>
</div>
<div>Esto último es un poco marcianada, pero puede ser útil para
coger experiencia en la implementación de webs que interactuen
con asterisk, jejeje. </div>
<div><br>
</div>
<div>[0] <a moz-do-not-send="true"
href="http://www.jajah.com/call/trial/">http://www.jajah.com/call/trial/</a></div>
</blockquote>
<br>
Estaría genial algo así :D<br>
<br>
Teléfono de origen: número tradicional PSTN<br>
Teléfono destino: número PLN<br>
<br>
Otra: que en los resultados de la búsqueda del listín aparezca junto
al teléfono un icono de llamar y que te dé opción de llamar desde el
navegador o introducir tu teléfono tradicional.<br>
<br>
:D<br>
<br>
Saludos,<br>
Santiago Crespo.<br>
</body>
</html>