domingo, 27 de febrero de 2011

Las Pléyades o Hespérides

Las Pléyades o Hespérides son realmente un cúmulo abierto denominado en el catálogo Messier como M-45.

También se les conoce como las Siete Hermanas, los egipcios las llamaban Chu, los japoneses las llaman Subaru (fíjate el en logo de los carros), los Hindúes las llaman Llamas de Agni, dios del fuego, los romanos Vírgenes de la Primavera, los aztecas Tianquiztli y en Venezuela el rosario o la llavecita.




Son visibles a simple vista y se encuentran en en en área correspondiente a la constelación de Tauro tal y como puedes ver en la siguiente carta en su región superior derecha:




Datos  Astrómicos:
Tipo: Cúmulo Abierto
Designado como: M-45
Ascensión Recta: 03h 47m
Declinación: +24° 08'
Magnitud: 1.6
Distancia: 390 Años luz y se alejan de nosotros a unos 6,4 Km/s
Tamaño 2°

Sus estrellas nacieron hace quizas unos 20 millones de años por tanto son estrellas muy jóvenes, de hecho si las observas a través de un telescopio puedes ver que están rodeadas por nubes de hidrógeno.

Mitología:

Las Pléyades o Hespérides eran ninfas quienes vivían el jardín de las Hesperídes cuyos manzanos daban manzanas de oro y ambrosía que era el alimento de los Dioses. 

Sus nombres: Alcione, Celeno, Taigete, Esteropea, Electra, Meropea y Maya

Eran hijas del titán Atalante y de Héspero.

Eran perseguidas por Orión quien quería hacer el amor con todas y cada una de ellas.  Para que escaparan del acoso sexual fueron convertidas por su madre Héspero en hermosísimas estrellas y colocadas en el firmamento con el nombre de Pléyades, donde siguen siendo deseadas por Orión pero sin que pueda jamás acercarse a ellas.

domingo, 20 de febrero de 2011

Telefonía IP: Asterisk sip.conf definición, ubicación, estructura, plantillas o templates (!)

Definición:
El sip.conf es el archivo de configuración de canal correspondiente al protocolo SIP (Session Initiation Protocol) el cual es el protocolo de señalización más popular en la actualidad.

El canal SIP de asterisk permite su interconexión VoIP con diversos dispositivos que utilicen SIP como su protocolo de señalización y da el poder a asterisk de funcionar como:

a) Cliente SIP: Asterisk puede registrarse en un servidor SIP y utilizar sus servicios para realizar y recibir llamadas. En este caso Asterisk se comporta como una extensión de ese servidor.

b) Servidor SIP: los dispositivos SIP tales como softphones y teléfonos IP pueden registrarse en Asterisk y cursar llamadas a través de él.

c) Gateway:  Asterisk puede servir de convertidor entre protocolos, por ejemplo SIP, H323, MCGP, IAX y la PSTN en la mayoría de sus variantes analógicas y digitales.


Ubicación:
Al igual que el extensions.conf, en una instalación por defecto el sip.conf se encuentra en /etc/asterisk. Es un archivo de texto, por lo que también puede ser abierto con vim.

Estructura
El sip.conf consta de una sección [general] de [plantillas](!) y [dispositivos]

[general]

En esta sección se definen gran cantidad de parámetros globales de todos los canales SIP y dependen de cada implementación.

Luego, al finalizar las opciones globales, podemos tener 2 posibles tipos de objetos:

[plantillas](!) y [dispositivos]

[plantillas](!) o Templates
En estas secciones las puedes reconocer por el diferenciador (!) luego de cerrado el corchete y ellos son perfiles comunes de configuración que son aplicadas a los [dispositivos], de modo de no tener que repetir opciones sobre todos y cada uno de los dispositivos. 

Luego de definida la plantilla, la puedes aplicar al cada dispositivo de la siguiente manera:

[dispositivo](plantillal1, plantilla2)

A continuación un ejemplo donde crearemos dos plantillas que aplicaremos a un dispositivo:

[standard-internacional](!)
type=friend
host=dynamic
disallow=all
allow=gsm
allow=alaw
canreinvite=no
language=es
context=salida_internacional
call-limit=1

Esta plantilla define opciones comunes tales como el tipo de dispositivo y los codecs permitidos y un parámetro muy importante como lo es el contexto donde ser va a registrar el dispositivo, que en este caso es un contexto donde se asume que se permite que tenga salida a llamadas internacionales.

[equipo-ventas](!)
callgroup=5
pickupgroup=5

Esta plantilla define el grupo de captura al cual pertenece el dispositivo

Ahora bien, las plantilas solos no trabajan, tienen que ser aplicadas a un dispositivo como lo ven a continuación:


[001](standard-internacional,equipo-ventas)
regexten=001
secret=password
callerid="Pedro Pérez" <001>
mailbox=001@vm-internos

En este punto definimos un dispositivo SIP llamado SIP/001 con los perfiles anteriores ya aplicados y pueden ver el efecto de las plantillas, las cuales reducen drásticamente la definición de un dispositivo SIP.

Si no hubiéramos usados perfiles, tendríamos que haber escrito:

[001]
regexten=001
secret=password
callerid="Pedro Pérez" <001>
mailbox=001@vm-internos
type=friend
host=dynamic
disallow=all
allow=gsm
allow=alaw
canreinvite=no
language=es
context=salida_internacional
call-limit=1
callgroup=5
pickupgroup=5

De aquí lo útil de las plantillas, más aún cuando tienes muchos dispositivos SIP. De hecho, las plantillas no son de uso explusivo del sip.conf, las puedes usar en el iax.conf y extensions.conf
 
Como buena practica, yo uso las plantillas para definir diversas opciones administrativas del día a dia tales como:

1.- El tipo de salida a la PSTN (local, larga distancia nacional internacional...) diferenciando básicamente la opción context.
2.- El grupo de captura al cual pertnece
3.- Los codecs permitidos

Las opciones del sip.conf son muchísimas y puedes encontrarlas en:

http://www.voip-info.org/wiki/view/Asterisk+config+sip.conf

Si tienes dudas con alguna, por favor indícamelo para ayudarte en tu investigación.

En Posts futuros estaremos viendo ejemplos prácticos y mejores prácticas tanto del sip.conf como del extensions.conf

domingo, 13 de febrero de 2011

Inteligencia Física - Nutrición Sabia - Cómo Leer Etiquetas de Información Nutricional (Nutrition Facts)

Pequeños detalles hacen diferencia a la hora de escoger los alimentos, es por ello que es tan importante saber elegir lo que consumes y no comer con los ojos vendados.

Para ello, contamos con una herramienta que está siempre ahí y que normalmente ignoramos:  las etiquetas de información nutricional o en inglés: nutrition facts.

Conociendo esta información, estaremos en capacidad de elegir alimentos de forma inteligente, mejorando así nuestros hábitos alimentarios, y por consiguiente nuestra salud.  

Esta información no tiene como objetivo diagnosticar problemas de salud ni tomar el lugar de los consejos médicos ni del cuidado que usted recibe de su doctor
o de otro profesional de la salud. Si tiene problemas de salud persistentes, o si tiene preguntas adicionales, por favor consulte con su doctor.

A continuación, una etiqueta ejemplo para así poder explicar los pasos para realizar lectura de esta información:




Paso 1:  Verifica el tamaño de la porción
Indica el tamaño recomendado de una porción del alimento, puede venir expresado en unidades de peso o volumen o en tasas, vasos, etc...

También te indica la cantidad de porciones que contiene el envase.

Hay que tener mucho cuidado, ya que las cantidades que se van a expresar en la etiqueta están en función de el tamaño de porción indicado, es decir, si te tomas dos porciones, estás consumiendo el doble de nutrientes que se indican en la etiqueta.

Nota:  Algunas bebidas por lo general indican como tamaño de porción 100ml, a pesar que un envase traiga 350ml o 500ml.

Paso 2: Verifica las calorías de cada porción
Por lo general separan el contenido calórico aportado por las grasas del aporte calórico total de la porción.

Este número te da una idea de la cantidad de calorías que consumirás.

Decide si los nutrientes que siguen valen la pena o no para la cantidad de calorías indicadas.

Paso 3:  Grasas
Se indican las cantidad de grasas que contiene la porción y su contribución porcentual al total de requerimientos diarios.
Elige alimentos con bajo contenido de grasas saturadas y colesterol, las grasas trans debe ser eliminadas.

Paso 4: Sodio
Busca alimentos que tengan la menor cantidad de sodio por cada porción.

Paso 5:  Carbohidratos Totales
Compara siempre la cantidad de carbohidratos totales con el total de la porción, esto te dará una idea de la composición general del alimento.

Por ejemplo si el tamaño de la porción son 100g y los carbohidratos totales son 80g.  Ya sabes que lo que estás comiendo es fundamentalmente carbohidratos.

Del total de carbohidratos hay una indicación de cuánto es azúcar, elije los que tengan menor cantidad.

Paso 6:  Fibra Dietética:
Procura alimentos con la mayor cantidad de fibra.

Paso 7:  Proteínas.
Aplico lo mismo que a los carbohidratos totales, es decir, comparo la cantidad contra el total de la porción y elijo los que me ofrezcan mejor relación de proteínas.

Paso 8:  Porcentajes Diarios
Te indican la cantidad total de calorías bajo la cual fueron estimados los porcentajes, normalmente son 2000 calorías diarias el cual es un promedio generalmente aceptado. Cada persona tiene requerimientos diferentes de acuerdo edad, sexo ya su actividad diaria.

En próximos posts, estaré indicándoles las recomendaciones del departamento de agricultura y el de salud y servicios humanos de EE.UU acerca de cuales alimentos y componentes de alimentos aumentar y reducir para una dieta sana.

domingo, 6 de febrero de 2011

Telefonía IP: Asterisk extensions.conf definición, ubicación, estructura

Definición

El principal archivo de configuración del Asterisk es el extensions.conf.  En el se plasma toda la lógica de funcionamiento del sistema mejor conocida como dialplan o plan de discado.

En el extensions.conf se controlan todas las conexiones al asterisk, tanto entrantes como salientes, por tanto en él definimos todo el comportamiento de nuestra central telefónica IP.

Ubicación

Por defecto está ubicado en /etc/asterisk/ es un archivo de texto por lo que puedes editarlo con vim, por ejemplo vim /etc/asterisk/extensions.conf

Estructura

La estructura del extensions.conf es bien sencilla, consta de dos secciones principales [general] y [global] . Posterior a estas secciones predefinicas creamos secciones especiales llamadas contextos.

Sección [general]

Es la primera sección que nos encontramos al abrir el archivo, contiene varias opciones, entre las más importantes tenemos:

static: esta opción controla la operación del comanto "dialplan save"(Asterisk 1.6) o "save dialplan"(Asterisk 1.4).  Su valor por predeterminado es no, es decir, no puedes ejecutar los comandos. 

writeprotect: Si writeprotect=no y static=yes, pueees salvar el dialplan actual desde la CLI (Command Line Interface) con el comando "dialplan save". Las definiciones de variables globales en la sessión [globals] no se ve afectada.  Su valor predeterminado es no .

Nota muy importante:  el comando "save dialplan" sobreescribirá tu extensions.conf existente con uno nuevo generado por el dialplan qe se encuentre cargado.

Mi recomendación:  no uses el comando "save dialplan" ni "dialplan save" utiliza como mecanismo de administración y edición del dialplan el vim para editar el archivo de configuración, luego haces un "extensions reload" o "dialplan reload"

autofallthrough: si colocas yes una vez que la lógica de programación de una extensión termine, Asterisk terminará la llamada con BUSY, CONGESTION o HANGUP, que es la conducta deseada, caso contrario Asterisk esperará que marques otra extensión

clearglobalvars: Si colocas yes el valor de las variables globales serán borradas cada vez que ocurra una recarga del dialplan, caso contrario, el valor de la variable global persistirá aunque elimines la variable del archivo.

priorityjumping: si colocas yes las aplicaciones que soportan salto en las prioridades de acuerdo a su resultado, por ejemplo Dial(), lo harán.

Ejemplo

   [general]
   static=yes
   writeprotect=yes
   autofallthrough=yes
   clearglobalvars=no
   priorityjumping=no


Sección [globals]

En esta sección defines tus variables globales y sus valores.  En Asterisk no es tan cierto que sean variables, porque normalmente su valor se mantiene constante ya que por lo general se colocan valores que te servirán para paametrizar, por ejemplo

Ejemplo:

   [globals]
     E1-PROVEEDOR1=ZAP/r1
     CODAREA=241

Es costumbre aceptada que sean expresadas en mayúsculas.

Si deseas hacer referencia al valor de una variable, debes colocarla entre llaves y precedidas del símbolo de dólar, por ejemplo:

${CODAREA}


Luego de estas dos secciones vienen nuestros contextos.

En un próximo post, comenzaremos a definir y crear contextos

sábado, 5 de febrero de 2011

Teoría de Contextos de Asterisk - Parte II

Amigos, en la Parte I quedamos pendiente con unas interrogantes, a continuación les refresco el escenario:

Analicemos entonces: 

La diferencia es que el dispositivo SIP/101 está registrado en el contexto [ventas] y en este contexto ninguna extensión hace referencia a este dispositivo.  Planteo entonces los siguientes escenarios.

a) El dispositivo SIP/101 disca 201: en este caso, el dispositivo SIP/101 busca la extensión 201 en el contexto en el que está registrado [ventas], en este caso hace match con la sentencia de la extensión 201 y por ende asterisk ejecuta el dial al dispositivo correspondiente (SIP/201).

b) El dispositivo SIP/101 disca 102: igual que en el caso anterior, el dispositivo SIP/101 busca la extensión 102 en el contexto en el que está registrado [ventas], en este caso NO hace match y por ende asterisk va a la extensión i (invalida)

c) El dispositivo SIP/201 disca 101:  El dispositivo SIP/201 busca la extensión en el contexto en el cual está registrado [ventas], en este caso NO hace match y por ende asterisk va a la extensión i (invalida). 

Este escenario es muy importante y es el punto principal de este post, porque demuestra que un dispositivo SIP (como en este caso el SIP/101) puede estar registrado en un contexto que no tenga una extensión que haga referencia a él. por tanto puede llamar a todas las extensiones del contexto pero nadie lo puede llamar a él.

d) El dispositivo SIP/102 disca 101:  El dispositivo SIP/102 busca la extensión en el contexto en el cual está registrado [compras], en este caso hace match y por ende asterisk ejecuta el dial al dispositivo correspondiente (SIP/101) pero resulta que en el contexto [compras] no hay registrado ningún dispositivo SIP/101 y Asterisk no puede entonces conocer a cual dirección IP va a enviar la llamada, arrojando un advertencia que indica que no posee ruta al host.


Hago entonces énfasis en lo que es la base de la teoría de contextos en Asterisk
Un dispositivo SOLO tiene acceso a las extensiones declaradas en el contexto en el cual está registrado.
Si tienes bien claro esta afirmación, tienes ganado una gran parte de lo que debes conocer en el mundo de la telefonía IP Asterisk.

Te recuerdo:

1.- Podemos interactuar a través de los comentarios de cada post.
2.- Puedes ayudarme a difundirlo a través de tus redes sociales haciendo click en los botones que siguen: