proyecto kannel

Upload: rjguevara

Post on 12-Jul-2015

423 views

Category:

Documents


9 download

TRANSCRIPT

KannelClick to edit Master subtitle style

5/4/12

Kannel

Kannel es un proyecto de cdigo abierto para implementar un Gateway WAP y SMS, es utilizado a travs del mundo para enviar y recibir mensajes cortos, como servicio de WAP Push y para permitir conectividad de Internet.

5/4/12

Breve Historia El

proyecto Kannel fue fundado por Wapit Ltd en Junio, 1999. Esta empresa ya no existe y el proyecto es coordinado por los miembros del Grupo Kannel que incluye varios exempleados de la Empresas Trigenix, Wapme Systems AG, Anam y Global Networks. Grupo Kannel esta en proceso de fundar una entidad legal para el Proyecto Kannel, the Kannel Software Foundation.5/4/12

El

Que es Kannel? Kannel

es un project de codigo abierto que implementa un Wap Gateway, pero tambien se puede usar como un SMS Gateway.

5/4/12

Wap Gateway

5/4/12

5/4/12

WAP PUSH

5/4/12

SMS Gateway

5/4/12

Arquitectura de Kannel

5/4/12

Procesos Kannel

divide varias labores en tres procesos distintos, se utiliza el termino boxes (cajas), cada box se implemento segn el de agente externo que tiene que interactuar.

5/4/12

bearerbox Esta

es el proceso principal Su nombre proviene de la palabra bearer, que en espaol se traduce en portador. Un portador lleva carga objetos por otros En Kannel este proceso se encarga de comunicarse con el SMSC y pasarle los mensajes al proceso correspondiente. Solo puede existir una instancia de este proceso

5/4/12

smsbox Implementa

el resto de la funcionalidad del SMS Gateway. Recibe el mensaje de texto por parte del bearerbox y los interpreta como solicitudes de servicio y los responde segn las reglas definidas La interaccin para envio o recepcin de mensajes es por medio de solicitudes HTTP

5/4/12

sqlbox Es

plugin para Kannel para enviar mensajes utilizando una base de datos Los mensajes usan la tabla send_sms para agregarlos a la cola de envia El momento que son procesados se pasan a la tabla sent_sms

5/4/12

Diseo

5/4/12

Compilacin Ocupamos

lo siguiente:

Cygwin Mysql base de datos Librerias de Mysql Netbeans/Java SMPPsim

5/4/12

Cygwin Cygwin

es una coleccin de herramientas desarrollada por Cygnus Solutions para proporcionar un comportamiento similar a los sistemas Unix en Windows. Su objetivo es portar software que ejecuta en sistemas POSIX a Windows con una recompilacin a partir de sus fuentes. Aunque los programas portados funcionan en todas las versiones de Windows, su comportamiento es mejor en Windows NT, Windows XP y Windows Server 2003.5/4/12

5/4/12

Recursos http://

dev.mysql.com/downloads/mysql/5.1.html http:// www.seleniumsoftware.com/downloads.html http://www.cygwin.com/

5/4/12

Pasos Instalar

extra:

Cygwin con las siguientes librerias

automake gcc libncurses-devel make libtool Subversion libedit libreadline readline libncursesw libxml2 libxml2-devel

5/4/12

Compilar Libreras de MysqlBajar la fuente de mysql tar xvzf archivo ./configure --without-server --withoutreadline CFLAGS=-O2 --with-libedit make make install

5/4/12

Compilar Kannel Bajar

kannel svn co https://svn.kannel.org/gateway/trunk gateway ./configure --with-mysql --with-mysqldir=/home/Rich/mysql-5.1.57 make make bindir=/usr/local/kannel install

5/4/12

Compilar SQLBOX cd

plugins ./bootstrap ./configure --with-kanneldir=/home/Rich/gateway/gateway make make install

5/4/12

Configuracin de Kannel La

configuracin de Kannel consiste en grupos de variables de configuracin. Los grupos se separan con lneas vacas. La definicin de una lnea de variable consiste de un nombre, un = y el valor de la variable Si se desea usar comentarios se debe de usar el carcter # Se pueden usar doble comillas " " para definir el valor de una variable5/4/12

Ejemplo#que hacer cuando recibimos nop group = sms-service keyword = nop text = "You asked nothing and I did it!"

5/4/12

Grupos importantesProceso Bearerbox core mysql-connection dlr-db smsc Proceso smsbox smsbox sendsms-user sms-service5/4/12

Proceso SQLBOX sqlbox mysql-connection

5/4/12

Grupo Core/Bearerbox Este

grupo configura el proceso bearerbox Este grupo indicamos:

los puertos que utilizaremos para administrar el servidor, los que que usaran las otras cajas El directorio para almacenar los logs Las IPs permitidas para accesar el servicio Que tipo de medio se usara para guardar los mensajes pendientes de repuesta El nivel de verbosidad de los logs

5/4/12

Grupo Core/Bearerbox En

el proceso de enviar y recibir mensajes, esta caja ocupo un lugar para almacenar los mensajes que estn pendientes de recibir una repuesta por parte del SMSC. Se debe de indicar que tipo de almacenamiento usara el bearer box, en nuestro diseo utilizaremos mysql. El proceso Bearer puede ser administrado via comandos parametros de http

http://localhost:12345/shutdown?password=bar

5/4/12

Grupo Core/Bearerbox La

comunicacin entre el proceso Bearerbox y las dems boxes es via Puertos de Red (sockets)

5/4/12

Parmetros ObligatoriosVariable group (m) Descripcion Indica que estamos configurando la caja Bearerbox admin-port Numero de Puerto de (m) puerto administracion de Kannel, debe ser mayor a 1024 adminClave para poder Clave para poder password (m) ejecutar ejecutar los comandos commandos admin-deny- lista de ips Lista de ips que no ip (o) seperadas por estan autorizados commas (se utilizar este 5/4/12 servicio Valor core

Parametros para configurar la recepcion de SMSC Variable Valor Descripcionsmsbox-port (c) dlr-storage Numero Puerto para que la caja de de smsbox pueda comunicarse puerto con Kannel pgsql, Define como kannel va mysql, almacenar los mensajes mssql mientras esperan su mensaje de recepcin spool, Kannel almacena file temporalmente los mensajes mientras espera la confirmacin de recepcin. File: usa un archivo para 5/4/12

store-type

Parametros para configurar el grupo mysqlVariable group (m) Valor mysqlconnection cadena Ip Cadena Cadena Cadena Descripcion Indica la configuracion de una conexin a mysql Identificador unico de la conexin a mysql Ip del servidor de mysql Usuario de la base de datos Password de la base de datos Nombre de5/4/12 la base de

id host username password database

Parmetros para Grupo SMSC

Aqu configuramos los parmetros que nos brinda el SMSC

Variable Valor Descripcin group (m) smsc Indica la configuracin de una conexin a mysql smsc smpp Indica el protocolo de conexin que se utilizara para conectarse al SMSC smsc-id caden Identificador nico de la conexin a a smsc, esto es til cuando existen mas de una conexin al smsc interface- 34 33 Versin de smpp que se va utilizar version host Ip Ip del servidor de SMSC5/4/12

Parmetros para Grupo SMSC

Aqu configuramos los parmetros que nos brinda el SMSC

Variable Valor Descripcin transceive bool Indica si se utilizar una conexin r-mode bind_transciever smsccaden Usuario asignado por el SMSC username a smsccaden Cotrasena asignada por el SMSC password a systemtype caden Cualquier cadena smpp a5/4/12

Parmetros para Grupo SMSBOXVariable group (m) Valor Descripcin smsbo Indica la configuracin de x una caja smsbox bearerbox-host Indica el IP del servidor donde se encuentra el bearerbox sendsms-port Indica el puerto donde se aceptaran solicitudes HTTP para envio de mensajes log-file Nombre del archivo para bitacora de log-file log-level Nivel de verbosidad del log de smsbox5/4/12

Parmetros para Grupo SMSBOX-SERVICEVariable group (m) Valor Descripcin sms- Indica la configuracin de un servic servicio sms e defaultindica la primera la palabra que identificara este servicio

keyword

max-messages numer Numero maximo de o mensajes que procesera este servicio get-url url Indica el url donde se hara la solicitud con la informacion del mensaje5/4/12

Configurar Configuracion

Bearerbox:

group = core admin-port = 13000 smsbox-port = 13001 admin-password = bar dlr-storage = mysql admin-allow-ip = "*.*.*.*" box-deny-ip = "*.*.*.*" box-allow-ip = "127.0.0.1 store-file = internal.store5/4/12

Configuracin Grupogroup = mysql-connection id = mydlr host = 127.0.0.1 username = root password = hola123 database = kannel max-connections = 5

5/4/12

Configuracin Tabla DLRgroup = dlr-db id = mydlr table = dlr field-smsc = smsc field-timestamp = ts field-destination = destination field-source = source field-service = service field-url = url field-mask = mask field-status = status field-boxc-id = boxc 5/4/12

Configuracin SMSCgroup = smsc smsc = smpp smsc-id = claro host = localhost port = 2775 transceiver-mode = true smsc-username = smppclient1 smsc-password = password system-type = smpp interface-version = 345/4/12

Configuracion SMSBOXgroup = smsbox bearerbox-host = 127.0.0.1 sendsms-port = 13013 log-file = smsbox.log log-level = 3

5/4/12

Configuracion sendsmsusergroup = sendsms-user username = tester password = foobar default-smsc = claro user-allow-ip = "*.*.*.*"

5/4/12

SMS-Servicegroup = sms-service keyword = default catch-all = yes max-messages = 0 get-url = "http://localhost/php/index.php? user=%n&pass=jose&celular=%q&sms= %a&marcacion=%Q

5/4/12

Configuracin SQLBOXgroup = sqlbox id = sqlbox-db smsbox-id = sqlbox bearerbox-host = localhost bearerbox-port = 13001 smsbox-port = 13005 smsbox-port-ssl = false sql-log-table = sent_sms sql-insert-table = send_sms log-file = kannel-sqlbox.log log-level = 05/4/12

Configuracion SQLBOXgroup = mysql-connection id = sqlbox-db host = 127.0.0.1 username = root password = hola123 database = kannel

5/4/12

Apache Tomcat Bajar

el Plugin Java Web Applications apache tomcat 6.0 set "JAVA_HOME=C:\Program Files\Java\jdk1.6.0_21"

5/4/12

Servlets Los

Servlets son las respuesta de la tecnologa Java a la programacin CGI. Son programas que se ejecutan en un servidor Web y construyen pginas Web

5/4/12

BAJAR SMSC Bajar

SMPPSim http:// dl.dropbox.com/u/14346/ppts/Curso/SMPPSim.zip http:// dl.dropbox.com/u/14346/ppts/Curso/smstrial.zip

5/4/12

5/4/12

CONEXIN A DBLA IP ES: 192.168.1.149 SU USUARIO es: SU CLAVE es:

http://dev.mysql.com/downloads/gui-tools/5.0.html

5/4/12