You are on page 1of 29

SMPP

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE CIENCIAS MATEMTICAS Y FSICAS


CARRERA DE INGENIERA EN NETWORKING

GRUPO #8
SMPP (SHORT MESSAGE PEER TO PEER)

INTEGRANTES:

CEPEDA SANTOS JUAN CARLOS


JCOME BAJAA ERICKA
NIVECELA PAREDES XAVIER
PEAFIEL ADRIN RONALD
ROS CAICHO ARTURO

DOCENTE: ING. OSCAR APOLINARIO


CURSO: N6A

NDICE GENERAL

SMPP

CAPTULO I: INTRODUCCIN................................................................................. 5
TEMA............................................................................................................................. 5
SUBTEMA..................................................................................................................... 8
ANTECEDENTE............................................................................................................. 8
OBJETIVOS..................................................................................................................... 8
ALCANCE........................................................................................................................ 8
JUSTIFICACIN.............................................................................................................. 8
CAPTULO II: MARCO TERICO............................................................................. 10
ANTECEDENTES.......................................................................................................... 10
FUNDAMENTACIN TERICA................................................................................ 10
QU ES SMPP................................................................................................... 10
GLOSARIO........................................................................................................ 10
CARACTERSTICAS DEL SMPP........................................................................... 10
APLICACIONES DEL SMPP.................................................................................. 10
CAPTULO III: DESARROLO...................................................................................... 15
SMS GATEWAY............................................................................................................ 15
OZEKI NG SMS GATEWAY....................................................................................... 17
PRUEBA DE ENVO DE UN SMS.............................................................................. 17
CAPTULO IV: CONCLUSIN.................................................................................... 15
CONCLUSIONES.......................................................................................................... 15
RECOMENDACIONES................................................................................................ 16
BIBLIOGRAFA................................................................................................................ 19

NDICE DE GRFICOS

SMPP

GRFICO N 1 TIPOS DE SEALES....................................................................................................


7
GRFICO N 2 REPRESENTACIN DEL ESPECTRO DE LNEAS.................................................. 8
GRFICO N 3 CANAL PERFECTO SIN RUIDO O ISI....................................................................
12
GRFICO N 4 CANAL CON RUIDO E INTERFERENCIA.............................................................
13
GRFICO N 5 CODIFICADOR DPCM (TRANSMISOR)................................................................
15
GRFICO N 6 CODIFICADOR DPCM (RECEPTOR).......................................................................
16

CAPTULO I
INTRODUCCIN
En el da de hoy el SMS (servicio de mensajes cortos) y MMS (servicio de mensajes
multimedia) son dos de los servicios ms populares en las comunicaciones inalmbricas,
ofreciendo a los clientes emocionantes maneras de comunicarse mediante el envo de

SMPP

mensajes de texto y multimedia. Este documento ofrece orientacin prctica en la


planificacin e implementacin de los servicios de SMS y MMS con interfuncionamiento (la
capacidad de enviar un mensaje con xito cuando el origen y destino de los telfonos
celulares no utilizan el mismo operador de telefona mvil). Todo esto se lleva a cabo a
travs de un protocolo que se lo detalla a continuacin.

TEMA
Short Message Peer to Peer (SMPP)

SUBTEMAS
SMS Gateway
Aplicacin de JAVA
Envo y Recepcin de mensajes

ANTECEDENTES
SMPP (Short Message Peer-to-Peer) fue diseado originalmente por Aldiscon, una pequea
compaa irlandesa que ms tarde fue adquirida por Logica (ahora separada y conocida
como Acision). El protocolo fue originalmente creado por un desarrollador, Ian J Chambers,
para hacer pruebas de funcionalidad del SMSC sin necesidad de utilizar equipos de prueba
SS7 para enviar mensajes. En 1999, Logica entreg formalmente SMPP al Foro
Desarrolladores SMPP, posteriormente rebautizado como el Foro de SMS y ahora disuelto.
Las especificaciones del protocolo SMPP todava estn disponibles a travs de la pgina
web, que tambin lleva un aviso indicando que se dar de baja al final de 2007. Como parte
de las condiciones de traspaso originales, la propiedad del SMPP ha vuelto a Acision debido
a la disolucin del SMS foro.

OBJETIVOS

SMPP

Objetivo General:

Realizar el envo de un SMS por medio de un cliente JAVA

Objetivos Especficos:

Establecer la conexin entre cliente y servidor

Desarrollar el cliente en JAVA

Conectar el cliente con el gateway SMS

Desarrollar e implementar las clases necesarias para lograr las conexiones

ANTECEDENTES
El SMPP puede considerarse un protocolo extensible. Con el fin de alcanzar el mayor grado
posible de compatibilidad e interoperabilidad cualquier aplicacin debe aplicar el principio
de robustez de Internet: "Se conservador en lo que enva, ser liberal en lo que acepta". Se
debe utilizar un conjunto mnimo de caractersticas que son necesarias para realizar una
tarea. Y si el objetivo es la comunicacin, cada aplicacin debe superar las inconformidades.
Varios tipos de mensajes (mensajes de texto SMS, WAP push, mensajes de datos binarios,
etc...) pueden ser enviados desde mltiples plataformas, aplicaciones y dispositivos para
hacer ms fcil conectar sistemas internos y externos. Ofrecer robustas e inteligentes
soluciones de negocio, que ayudan informado el accionar de la toma de decisiones de
negocio y aumentar la productividad en toda la organizacin. Controlar los costes sin
sacrificar el rendimiento, la disponibilidad o la escalabilidad en tres reas clave: la
mensajera empresarial, la productividad del desarrollador, y el control de costos.

JUSTIFICACIN
Actualmente, las organizaciones se enfrentan a varios problemas de comunicacin nicos: la
proliferacin de mensajes electrnicos a travs de su empresa; la necesidad de proporcionar

SMPP

a los empleados, clientes y socios, informacin coherente; el deseo de equipar mejor a los
trabajadores con informacin significativa para tomar decisiones; y el mandato de controlar
los costos sin sacrificar la disponibilidad de las aplicaciones, seguridad, fiabilidad o
escalabilidad.

CAPTULO II
MARCO TERICO
Contrario a su nombre, el SMPP utiliza el modelo de operacin cliente-servidor. El Centro
de mensajes suele actuar como un servidor, a la espera de las conexiones desde ESMEs.

SMPP

Cuando SMPP se utiliza para la interconexin de SMS, el MC enviado generalmente acta


como un cliente.
El protocolo se basa en pares de peticin PDU / respuesta (unidades de datos de protocolo, o
paquetes) intercambiados sobre la Capa 4 (sesin TCP o X.25 SVC3) del modelo OSI. El
conocido puerto asignado por la IANA para SMPP cuando se opera a travs de TCP es 2775,
pero varios nmeros de puerto arbitrarios se utilizan a menudo en entornos de mensajera.

QU ES SMPP?
El protocolo de mensajes cortos punto a punto (SMPP) es un protocolo abierto, estndar
diseado para proporcionar una interfaz de comunicaciones de datos flexible para la
transferencia de datos de mensajes cortos entre un centro de mensajes, tales como un centro
de servicio de mensajes cortos (SMSC), GSM suplementarios no estructurados, Server u
otro tipo de centro de mensajes y un sistema de aplicacin SMS, WAP, como un servidor
proxy, gateway de correo electrnico o de otro tipo de mensajera de gateway.

GLOSARIO
AIM - Application Interface Module (Modulo de interfaz de aplicacin)
API - Application Programming Interface
CDR - Call Detail Record
ESME - External Short Message Entity.

SMPP

MSC - Mobile Switching Centre.


MS - Mobile Station.
NSAP - Network Service Access Point.
PDU - Protocol Data Unit.
PSSD - Process Unstructured Supplementary Services Data.
PSSR - Process Unstructured Supplementary Services Request.
SME - Short Message Entity.
SMSC - Short Message Service Centre.
SMPP - Short Message Peer to Peer Protocol.
TIA - Telecommunications Industry Association.
VC - Virtual Connection.

SMPP

Grfico 1: Diagrama de SMPP

Fuente: ActiveExperts, http://www.activexperts.com/sms-component/smppspecifications/introduction/fig1-1.jpg

CARACTERSTICAS
Utilizando el protocolo SMPP, un sistema de aplicacin SMS llamado Entidad de Mensajes
Cortos (ESME) puede iniciar una conexin de capa de aplicacin con un SMSC a travs de
una conexin TCP/IP o red X.25 y puede enviar y recibir mensajes cortos hacia y desde el
SMSC, respectivamente. El ESME tambin puede consultar, cancelar o sustituir mensajes
cortos utilizando SMPP.
SMPP admite un conjunto de funciones de mensajera de dos vas (envo y recibo), tales
como:

Transmitir mensajes de un ESME a destinos nicos o mltiples a travs del SMSC

SMPP

10

Un ESME puede recibir mensajes a travs del SMSC a partir de otros SME (por

ejemplo, estaciones mviles).


Consultar el estado de un mensaje corto almacenado en el SMSC
Cancelar o sustituir un mensaje corto almacenado en el SMSC
Enviar un mensaje corto registrado (para el cual un "recibo de entrega 'ser devuelto

por el SMSC al generador del mensaje)


Programar la fecha y la hora de entrega del mensaje
Seleccionar el modo de mensaje, es decir, de datagramas o almacenar y reenviar
Establecer la prioridad de entrega del mensaje corto
Definir el tipo de codificacin de datos del mensaje corto
Establecer el perodo de validez de mensajes corto
Asociar un tipo de servicio con cada mensaje, por ejemplo, la notificacin de correo
de voz

APLICACIONES
El protocolo SMPP define:

Un conjunto de operaciones para el intercambio de mensajes cortos entre un ESME

y un SMSC
Los datos que una aplicacin ESME debe intercambiar con un SMSC durante las
operaciones SMPP.

Los suscriptores de una red celular SMS pueden recibir mensajes cortos en una estacin
mvil (MS) a partir de uno o ms de ESME.
Los medios por los cuales estos mensajes llegan a la ESME a travs de una interfaz distinta
SMPP estn ms all del alcance de este documento. Sin embargo, los ejemplos de tales
aplicaciones ESME incluyen:

SMPP

11

Alertas de correo de voz procedentes de un VPS (Sistema de Procesamiento de Voz)

VPS, lo que indica mensajes de voz en el buzn de un cliente.


Servicios de buscapersonas numricos y alfanumricos
Servicios de informacin
Llamadas directamente marcado o desviados a un operador de mensaje, que reenva

el mensaje al SMSC, para su posterior entrega al telfono del abonado.


Aplicaciones de telemetra

CAPTULO III
DESARROLLO
El intercambio de mensajes entre un ESME y SMSC a travs de SMPP puede clasificarse en
tres grupos distintos de transacciones:

Los mensajes enviados desde el ESME (transmisor) al SMSC


Los mensajes enviados desde el SMSC al ESME (receptor)

SMPP

12

Los mensajes enviados desde el ESME (Transceptor) al SMSC y los mensajes


enviados desde el SMSC al ESME (Transceptor)
Grfico 2: Transacciones SMPP

Fue
nte: ActiveExperts, http://www.activexperts.com/sms-component/smppspecifications/overview/fig2-1.jpg

SMS GATEWAY
Para el desarrollo de la aplicacin se trabaj con Ozeki NG SMS Gateway, este Gateway es
un producto de la empresa Ozeki Informatics Ltd. que es un proveedor lder de software de
mensajera mvil. Ofrece productos de telecomunicaciones fciles de usar y diverso en
funciones para empresas y organizaciones.
Ozeki es una empresa dinmica y en crecimiento, con sede en Debrecen, Hungra con
oficinas en Budapest. Fue establecido en 2000 por inversores privados hngaros. La
compaa trabaja con clientes internacionales y se centra en mantener la buena reputacin
que se ha ganado a travs de los aos. Sus productos son utilizados por las empresas en ms
de 200 pases.

SMPP

13

Grfico 3: Ozeki Informatics Ltd.

Fuente: Ozeki Informatics Ltd., http://www.ozeki.hu

OZEKI NG SMS GATEWAY


Ozeki lanz el Java SMS SDK, ya que ha experimentado una demanda continua de los
desarrolladores de Java para una herramienta, que sea capaz de aadir la funcionalidad de
SMS para aplicaciones JAVA de una manera eficiente. Este SDK se comunica con el Ozeki
GN SMS Gateway, a travs de un socket TCP/IP. El socket est conectado siempre, lo que
hace que sea posible, el recibo de informes de entrega de SMS y mensajes SMS entrantes al
instante. El Ozeki Java SMS SDK implementa la comunicacin TCP/IP y proporciona

SMPP

14

llamadas a mtodos y eventos que se pueden implementar para lograr la funcionalidad


deseada.
Grfico 4: Comunicacin del SDK por medio de socket TCP/IP

Fu
ente: Ozeki SMS, http://www.ozekisms.com/attachments/584/2009_08_05_java_pelda_tcp.gif

Para poder utilizar este SDK, es necesario instalar Ozeki NG SMS Gateway en la red ya
que este ser responsable de la colocacin del sistema a la red mvil. Se recibir las
conexiones TCP/IP desde el Java SMS SDK y as podr enviar y recibir mensajes SMS a
travs del mtodo de comunicacin configurada (Grfico 4). Por ejemplo, puede
enviar/recibir mensajes SMS a travs de un telfono GSM conectado a su ordenador con un
telfono de cable de datos de PC, o bien, enviar/recibir mensajes SMS a travs de Internet
si se ha suscrito a un servicio de Internet de SMS.

PRUEBA DE ENVO DE UN SMS

SMPP

15

Para utilizar el SDK, es necesario tener el Java SE Development Kit instalado en la


computadora. El SDK fue desarrollado y probado en Eclipse, pero debera funcionar sin
problemas en cualquier otra plataforma de desarrollo Java. Entramos a la aplicacin Ozeki
NG e ingresamos nuestros datos.

Grfico 5: Ingreso a Ozeki NG

Una vez adentro, debemos agregar una nueva conexin o proveedor de servicio.

SMPP

16

Grfico 6: Nuevo proveedor de servicio

Como vamos a utilizar SMPP, entonces sealamos en SMPP Connection y damos clic en
Install.
Grfico 6: SMPP Connection install

SMPP

17

Ahora debemos ingresar los datos proporcionados por nuestro proveedor de servicio.
Grfico 7: Proveedor de servicio

El proveedor es un mismo compaero de grupo, usa la versin de Ozeki NG para Android.


Grfico 8: Ozeki NG Android

SMPP

18

Ya est creado la conexin, pero an no termina, debemos agregar una ruta.


Grfico 9: Nueva ruta

Definimos los campos de la ruta.


Grfico 10: Nueva ruta

Donde el Route

name puede ser cualquiera,

excepto el Source

que debe ser la persona

que ingres al

Ozeki NG y es todo para

un ruteo bsico.
Por el momento nos dirigimos a Eclipse, donde crearemos un nuevo proyecto.

SMPP

19

Grfico 11: Nuevo proyecto en Eclipse

Escribimos el nombre de nuestro proyecto y creamos una nueva clase.


Grfico 12: Nueva clase

Este proyecto necesitar el API para de conexin de Ozeki, as que agregamos el JAR que
proporciona Ozeki.
Grfico 13: Agregando el JAR externo

SMPP

20

SMPP

21

La clase tendr el siguiente cdigo.


import java.io.*;
import java.util.*;
import hu.ozeki.*;
public class Cliente extends OzSmsClient{
public Cliente(String host, int port) throws IOException,
InterruptedException {
super(host, port);
// TODO Auto-generated constructor stub
}
@Override
public void doOnMessageAcceptedForDelivery(OzSMSMessage sms) {
Date now = new Date();
System.out.println(now.toString() + " Message accepted for
delivery. ID: " +
sms.messageId);
}
@Override
public void doOnMessageDeliveredToHandset(OzSMSMessage sms) {
Date now = new Date();
System.out.println(now.toString() + " Message delivered to
handset. ID: " +
sms.messageId);
}
@Override
public void doOnMessageDeliveredToNetwork(OzSMSMessage sms) {
Date now = new Date();
System.out.println(now.toString() + " Message delivered to
network. ID: " +
sms.messageId);
}
@Override
public void doOnMessageDeliveryError(OzSMSMessage sms) {
Date now = new Date();
System.out.println(now.toString() + " Message could not be
delivered. ID: " +
sms.messageId + " Error message: " + sms.errorMessage +
"\r\n");

SMPP

22

}
@Override
public void doOnMessageReceived(OzSMSMessage sms) {
Date now = new Date();
System.out.println(now.toString() + " Message received. Sender
address: " +
sms.sender + " Message text: " + sms.messageData);
}
public void doOnClientConnectionError(String errorCode, String
errorMessage) {
Date now = new Date();
System.out.println(now.toString() + " Message code: " +
errorCode +
", Message: " + errorMessage);
}
@Override
public void doOnClientConnectionError(int arg0, String arg1) {
// TODO Auto-generated method stub
}
}

Donde se especifica el constructor de la clase y los mtodos a continuacin:


public Cliente(String host, int port) throws IOException,
InterruptedException {
super(host, port);
// TODO Auto-generated constructor stub
}

Crearemos otra clase para realizar la prueba.


import java.io.*;
import java.util.Scanner;
public class TestTcpSms {
/**
* @param args
*/
public static void main(String[] args) {

SMPP

23

Scanner ingreso = new Scanner (System.in);


try {
String host = "localhost";
int port = 9500;
String username = "admin";
String password = "abc123";
Cliente osc = new Cliente(host, port);
osc.login(username, password);
String line = "";
String dest="";
System.out.println("Ingrese su mensaje:");
line = ingreso.nextLine();
System.out.println("Ingrese el destinatario:");
dest= ingreso.nextLine();
dest="+593"+dest;
if(osc.isLoggedIn()) {
osc.sendMessage(dest , line);
osc.logout();
}
} catch (IOException e) {
System.out.println(e.toString());
e.printStackTrace();
} catch (InterruptedException e) {
System.out.println(e.toString());
e.printStackTrace();
}
}

Seteamos la disponibilidad del Ozeki NG


String host = "localhost";
int port = 9500;
String username = "admin";
String password = "abc123";

Ahora iniciamos la conexin con el Ozeki NG y nos conectamos.

SMPP

24

MyOzSmsClient osc = new MyOzSmsClient(host, port);


osc.login(username, password);

Una vez que estamos dentro, enviamos el mensaje.


if(osc.isLoggedIn()) osc.sendMessage("+001122334455", "Hello
World");

Finalmente nos desconectamos


osc.logout();

Hacemos la prueba e inicializamos el proyecto.

SMPP

25

Grfico 12: Envo del mensaje

Java enva al Ozeki NG el mensaje, este lo redirige al proveedor de servicios, y este


ltimo enva el mensaje al destinatario.

SMPP

26

Grfico 12: Recepcin del mensaje

SMPP

27

CAPTULO IV
CONCLUSIN
Como conclusiones obtenidas a travs del desarrollo de este proyecto se puede mencionar:

Este proyecto ha entregado un anlisis sobre como la calidad de servicio en un mercado


competitivo establece nuevas exigencias a la empresa, y el rol que juegan las tecnologas de
comunicacin mvil insertas en este escenario, apoyando directamente la operacin en los

procesos de negocio.
Se estableci una metodologa con los pasos basicos a seguir para que una empresa pueda
identificar la mejor solucin de tecnologa mvil segn sus necesidades, en base a objetivos

particulares definidos por cada gerencia y factores tcnicos presentes en cada negocio.
Despus de un anlisis detallado, se ha mostrado que el servicio de mensajera corta sobre
telefona celular, debido a su constante aumento y caractersticas particulares, en muchos
casos, ser la mejor opcin ante la necesidad de integrar canales de comunicacin mvil
sobre los procesos de venta y ciclos de produccin, abriendo adems un universo de nuevas

posibilidades.
En la actualidad, y segn la realidad del mercado de telecomunicaciones en Ecuador, no
existen herramientas de costo razonable que permitan una integracin fcil y en forma

SMPP

28

escalable de SMS a los sistemas internos de la empresa, por lo que esta debe ser construida

a pedido segn cada realidad.


El diseo del programa que este documento entrega, establece las bases de una herramienta
modular, reutilizable y escalable, que disminuir los costos y tiempos involucrados en la
integracin de SMS a la empresa, abordando de antemano factores fundamentales presentes

en cualquier implementacin de este tipo.


Este proyecto entrega una gua de referencia a quien desee interiorizarse sobre los
mecanismos y protocolos de comunicacin que entregan actualmente el proveedor de
acceso celular Osekisms, entregando una explicacin completa y detallada, la que se apoya

con ejemplos obtenidos durante los ciclos de pruebas.


Finalmente, los elementos de diseo y recomendaciones de implementacin entregados,
constituyen un referente de planificacin a la empresa de desarrollo que asuma la tarea de
construir y comercializar un software de este tipo.

SMPP

29

BIBLIOGRAFA
A. Henry- Labordre, Vincent Jonack (2004). SMS and MMS Interworking in Mobile
Networks (2nd ed., text rev.). Artech House.
Gwenal Le Bodic (2005). Mobile Messaging Technologies and Services: SMS, EMS and
MMS. John Wiley & Sons.

You might also like