DESARROLLO DE SOLUCIONES EMPRESARIALES MOVILES USANDO TECNOLOGIA SUN APLICACIONES MOVILES CON J2ME WIRELESS MESSAGING API Ing. Ronald Criollo.

Slides:



Advertisements
Presentaciones similares
DESARROLLO DE SOLUCIONES EMPRESARIALES MOVILES USANDO TECNOLOGIA SUN
Advertisements

PROTOCOLOS JORGE CHAVEZ SANTOS.
Curso de Java Java – Redes Rogelio Ferreira Escutia.
Programación de Dispositivos Móviles Estructura de un programa en J2ME Rogelio Ferreira Escutia.
Internet y tecnologías web
DESARROLLO DE SOLUCIONES EMPRESARIALES MOVILES USANDO TECNOLOGIA SUN APLICACIONES MOVILES CON J2ME RMS Ing. Ronald Criollo.
DESARROLLO DE SOLUCIONES EMPRESARIALES MOVILES USANDO TECNOLOGIA SUN
DESARROLLO DE SOLUCIONES EMPRESARIALES MOVILES USANDO TECNOLOGIA SUN
DESARROLLO DE SOLUCIONES EMPRESARIALES MOVILES USANDO TECNOLOGIA SUN APLICACIONES MOVILES CON J2ME Ing. Ronald Criollo.
TEMA1. Servicios de Red e Internet
Programación Interactiva Aplicaciones Cliente-Servidor
I.T.E.S.R.C. Romina Tamez Andrea Martínez Ma. De Lourdes Solís
CGI I La mayor parte de los elementos HTML de que disponemos permite al visitante visualizar los contenidos de un sitio, pero no interactuar con él. Dicho.
Telnet y SSH Integrantes: Carlos Parra José Isabel
Servicios de red e Internet
Servicios Web.
Desarrollo de un laboratorio para la enseñanza, diseño y desarrollo de servicios móviles abiertos Autor: D. Mario de Molina Gómez Tutor: D. Francisco Javier.
SOCKETS INTRODUCCIÓN DEFINICIÓN TIPOS DE SOCKETS USO DE SOCKETS.
"java del lado del servidor" Servlet y JSP Java Server Pages.
Instituto Tecnológico Superior de Calkiní Ingeniería en Sistemas Computacionales TÓPICOS DE PROGRAMACIÓN MÓVIL David Enrique Ochoa Díaz Licenciatura en.
OBJETO REQUEST. El objeto Request Por qué el objeto request Funcionamiento Colecciones: – Transferencia de variables por URL –Transferencia de variables.
Desarrollo de un laboratorio para la enseñanza, diseño y desarrollo de servicios móviles abiertos Autor: D. Mario de Molina Gómez Tutor: D. Francisco Javier.
Java 2 Platform Enterprise Edition
Aplicación del paradigma orientado a objetos
MODELO TCP/IP Conectividad de extremo a extremo especificando como los datos deberian ser formateados,direccionados,transmitidos,enrutados y recibidos.
PROTOCOLOS Un protocolo es un conjunto de reglas que hacen que la comunicación en una red sea más eficiente.
Jesús Arellano. La plataforma Java Micro Edition, o anteriormente Java 2 Micro Edition(J2ME), es una especificación de un subconjunto de la plataforma.
Tema 6: Clases Antonio J. Sierra.
Instituto San José Del Pedregal
HILOS Y COMUNICACIÓN ENTRE PROCESOS
MENSAJES SMS.
PROTOCOLOS SNMP «VICTOR RAUL HAYA DE LA TORRE »
POP3 UCLV Mapas Conceptuales para la enseñanza de Redes de Computadoras.
LISTAS DE CONTROL DE ACCESO (ACL)
1 Chat de salón 1.Enunciado del problema 2.Modelo cliente/servidor 3.Protocolo de comunicación con el servidor. 4.Chat privado 5.Diseño del cliente 6.Diseño.
Correo electrónico Internet
HERNANDEZ RAMIREZ CAROLINA CONALEP IXTAPALUCA 236.
Teoría de Sistemas Operativos
PROTOCOLO H T T P.
Socket en.NET Grupo # 5. ¿Qué es un Socket? Es la relación entre un puerto de un equipo y el puerto de otro equipo. ¿Qué es un puerto? Es el medio por.
Introducción a Java Media Frameworks Rodrigo Loyola A. Gustavo Valdés A.
COMPONENTES DEL SISTEMA OPERATIVO.
Servicios en Red UT5. Servicios FTP.
      Protocolo de transferencia de Hipertexto, empleado para acceder a documentos de hipermedia  El protocolo nació en el CERN, como base.
Aplicaciones Web de Servidor
Introducción al Lenguaje. ¿ Qué es PHP ? O Hypertext Pre-processoes (PHP) es un lenguaje de "código abierto" interpretado, de alto nivel, embebido en.
Términos y Conceptos Básicos
CAPA DE RED PROTOCOLOS.
X one. Plataforma de desarrollo móvil ALARMAS -IP. AUTOMOCION.
 Claudia Jordan Idrovo.  Son los puntos de enganche para cada conexión de red que realizamos. El protocolo TCP (el utilizado en internet) identifica.
Redes de Datos Integrantes: Guízar Gómez Gerardo Nassir López Ortega Juan Manuel Rodríguez Castro Ronald Michel Silva Rangel Ángel Eduardo Capa 5. Sesión.
Servicio “streaming”.
Tema 6 – Servicio de Correo Electrónico
File Transfer Protocol.
Protocolos del modelo TCP/IP
Nerea Cano Vasickova 4ºA. 1. Conceptos básicos 1.1. Que es una red 1.2. Tipos de redes 2. Topologías de redes 3. Transmisión de datos en las redes 4.
Punto 2 – Elementos de Correo Juan Luis Cano. Para que una persona pueda enviar un correo a otra, cada una ha de tener una dirección de correo electrónico.
BOOTP Luis Villalta Márquez.
Protocolos de comunicación TCP/IP
Nivel de Transporte en Internet
PROTOCOLOS Modelo TCP/IP
Ing. Horacio sagredo tejerina
Modelo OSI Para redes………
Instituto Tecnológico Superior de Libres Ingeniería en Sistemas Computacionales Segundo semestre Materia: Programación Orientada a Objetos Asesora: Ing.
UD 8: “Instalación y administración de servicios de audio y video” Servicio “streaming” Luis Alfonso Sánchez Brazales.
Modelo OSI.
Planificación Curso UNIDAD 1. INTRODUCCIÓN A LOS SERVICIOS EN RED UNIDAD 2. SERVICIOS DHCP UNIDAD 3. SERVICIOS DNS UNIDAD 4. SERVICIOS DE ACCESO REMOTO.
Módulo 7: Resolución de nombres NetBIOS mediante el Servicio de nombres Internet de Windows (WINS)
Protocolos de Transporte y Aplicación Javier Rodríguez Granados.
Presentado por : Grisales Ramírez Jhonier las capas del modelo osi.
Transcripción de la presentación:

DESARROLLO DE SOLUCIONES EMPRESARIALES MOVILES USANDO TECNOLOGIA SUN APLICACIONES MOVILES CON J2ME WIRELESS MESSAGING API Ing. Ronald Criollo

INTRODUCCIÓN WMA COMPONENTES DEL API WMA INTERFACES ENVIO DE MENSAJES RECEPCION DE MENSAJES TECNOLOGIA PUSH AGENDA

Los mensajes cortos de tipo Short Message service (SMS) son actualmente uno de los principales elementos en el mundo de las comunicaciones inalámbricas y están recogidos en el Wireless Messaging API. En la actualidad, la generación de SMS ha evolucionado a Enhanced Message Service (EMS) y a Multimedia Message Service (MMS), que no se limitan a la transmisión de solo texto. INTRODUCCION

El API de mensajeria inalámbrica es un paquete opcional basado en la definición del entorno (GCF) Generic Connection Framework definido en la especificación CLDC y proporciona al desarrollador soporte para: Short Messaging Service (SMS), para el envió y recepción de mensajes cortos de texto, que soporta conexiones servidor y cliente. Cell Broadcast Service (CBS), para la recepción de mensajes enviados en forma Broadcast, que soporta solamente conexiones cliente. WMA

COMPONENTES DEL API WMA

La interfaz Message define propiedades comunes a todos los mensajes.Cada metodo tiene una direccion y un sello de tiempo asociado a él. La direccion asociada con un mensaje indica el destinatario de ese mensaje. El formato de la direccion depende del protocolo utilizado para enviar el mensaje SMS, donde una dirección se especifica como una direccion URL con la estructura: sms:// número _de_teléfono:puerto sms:// sms://:3456 sms:// :3456 cbs://:3456 INTERFACES

Las interfaces TextMessage y BinaryMessage extienden la interfaz Message para permitir el acceso a mensajes de texto y binarios, respectivamente, proporcionando métodos set() y get() para volcar y recuperar el contenido de un mensaje. La interfaz MessageConnection proporciona la capacidad de crear instancias de tipo Message y la capacidad de recibirlos y enviarlos. El tipo de mensaje creado se indica mediante las constantes TEXT_MESSAGE y BINARY_MESSAGE. La interfaz también permite especificar un receptor de tipo MessageListener que será invocado cuando se reciba un mensaje a través de la llamada a su método NotifyIncommingMessage(). INTERFACES

Para enviar un mensaje SMS es necesario invocar en primer lugar al método newMessage() de una instancia de MessageConnection, rellenar luego su contenido con los datos binarios o de texto que constituyan el mensaje a enviar y finalmente invocar el método send(). Observaciones: Un mensaje SMS de datos esta limitado a 160 o 170 caracteres. Mientras que un mensaje SMS binario esta limitado a 140 bytes. ENVIO DE MENSAJES

//Componemos la dirección URL de destino con el número de teléfono y el puerto de comunicación String destino = sms:// +tel+: + PUERTO_SMS; MessageConnection con = null; //Abrimos la conexión con el destinatario Con= (MessageConnection)Connector.open(destino); //Creamos una instancia del Mensaje de texto TextMessage mensaje =(TextMenssage)con.newMessage(MessageConnection.TEXT_MESSAGE); // fijamos el destinatario Mensaje.setAddress (destino); // fijamos el contenido del mensaje Mensaje.setPayloadText (tbMensaje.getString()); // Enviamos el mensaje Con.send(mensaje); // Indicamos al usuario que el mensaje fue enviado Alert aviso = new Alert ( Envio SMS, Mensaje enviado, null, AlertType. ERROR); Dysplay.SetCurrent (aviso, formulario); // cerramos la conexión abierta con el destinatario Con.close PASOS PARA EL ENVIO DE MENSAJES

La recepción de mensajes es simple, porque una vez abierta conexión con el servidor la aplicación solamente debe invocar al método receive (), que devolverá el siguiente mensaje disponible en el puerto que se indique. En caso de que no haya ningún mensaje en espera, el método bloquea la tarea hasta que llegue uno o hasta que una tarea diferente cierre la conexión. Para saber si hay mensajes pendientes o no, la aplicación registra un receptor de eventos con la conexión establecida con el servidor invocando al método notifyIncomingMessage. Cada vez que llega un mensaje a la conexión, el sistema invocara este método en el receptor. En el momento en que se recibe la notificación ya es posible recurrir al método receive () para recuperar el mensaje. RECEPCIÓN DE MENSAJES

// Comprobamos la conexión y leemos el mensaje Mensaje= con.receive(); If(mensaje != null && mensaje instanceof TextMessage) //Verificamos el origen del envío String origen= mensaje.getAddress(); //Creamos un mensaje indicando el origen y el texto del mensaje recibido Texto = new StringItem (, origen+ \n -> +((TextMessage)mensaje).getPayloadText()); //y lo presentamos en pantalla Fromulario.append(texto); PASOS PARA LA RECEPCIÓN DE MENSAJES

La especificación WMA requiere soporte para la concatenación de mensajes, indicando que se deben soportar al menos tres segmentos SMS para un único mensaje En ciertas ocasiones el envío de mensajes más largos puede hacer que se lance una excepción IOException por que la implementación no soporte la segmentación en mas de los tres segmentos exigidos en la especificación. El API proporciona el método numberOfSegments() para determinar si un mensaje puede ser enviado y cuantos segmentos deberan ser usados para hacerlo, antes de ser enviado, incluso aunque no este abierta la conexión. El método devuelve 0 si el mensaje no se puede enviar. SEGMENTACION DE MENSAJES

La especificación WMA no define un mecanismo de seguridad propio, sino que utiliza el entorno de seguridad que proporciona el propio perfil. MIDP considera las operaciones de red como operaciones privilegiadas, es decir, es necesario un permiso para realizar operaciones como abrir conexión de red o enviar y recibir mensajes. Si la aplicación no dispone de privilegios para realizar la operación el sistema lanzara una excepcion de tipo SecurityException. Los permisos se invocan mediante propiedades MIDlet-Permissions en el fichero JAD por ejemplo: Javax.microedition.io.Conector // Para abrir conexión para el protocolo de mensajería MessageConnection.send // Para el envío de mensajes por un puerto determinado MessageConnectio.receive // Para permitir a la aplicación recibir mensajes a través de un puerto especifico SEGURIDAD

TECNOLOGIA PUSH

Normalmente los MIDlets son iniciados (ejecutados) por intervención del usuario a través del interfaz de usuario del Terminal. Existen algunas situaciones en donde este modelo se queda corto y es necesaria una ejecución sin necesidad de la intervención del usuario. Por ejemplo, una aplicación "Agenda" nos podría notificar automáticamente que tenemos una tarea que cumplir. A está característica se le conoce con el nombre Push Registry. API PUSH REGISTRY

El API Push Registry forma parte del AMS (Responsable del ciclo de vida de los MIDlets) exponiendo un API para la gestión de estás activaciones. Básicamente un MIDlet puede ser iniciado de dos formas: A través de una alarma o temporizador. (Sólo se puede registrar una por MIDLet) A través de una conexión entrante. API PUSH REGISTRY

getFilter(), devuelve el filtro para la conexión push que se indique. getMidlet(), devuelve el midlet encargado del control de la conexión push que se indique. ListConnections(), devuelve la lista de conexiones push registradas por la suite de midlets registerAlarm(), registra una alarma temporal para lanzar el midlet. registerConnection(), registra una conexión push unregisterConnection(), Libera una conexión push METODOS

CICLO DE VIDA

Las conexiones entrantes al dispositivo móvil pueden producirse mediante mecanismos diversos. El perfil MIDP 1.0 solamente se define oficialmente el tipo de conexión HttpConnection, que no permite el uso de tecnologia Push. El perfil MIDP 2.0 introduce sockets TCP y datagramas UDP, que si pueden utilizarse para registrar eventos push, e incluso el API WMA permite la activación push mediante mensajes SMS CONEXIONES

Para activar una suscripción push, Los midlets deben estar incluidos en el registro Push, bien mediante un proceso de registro estático o mediante un registro dinámico. El formato del atributo MIDlet-Push es el que se indica seguidamente en el fichero JAD o en el fichero Manifest del archivo JAR pueden indicarse uno o varios de estos atributos. REGISTRO PUSH

MIDlet-Push- :,, : Hay una relación directa entre MIDlet-n con MIDlet-Push-n. Por ejemplo MIDlet-1 está asociado con MIDlet-Push-1 y no con MIDlet- Push-2. Se pueden especificar varios MIDlet-Push, incluso para el mismo MIDlet Conexión que activará el MIDlet. Nombre completo de la clase principal del MIDlet que tratará la petición. Especifica quienes puede activar el MIDlet. Los carácteres * y ? son válidos. Por ejemplo: ?3.* REGISTRO PUSH