Mensajería instantánea sobre xmpp o websocket
tengo el requisito del proyecto en el que quiero hacer una aplicación de mensajería instantánea en android / iphone y puede ser en el futuro que apoya voip y video chat.
Ahora tengo 2 opciones
- Problema con el establecimiento de Openfire XMPP Connection Android en servidor en vivo a través de Asmack
- Cómo utilizar con eficacia XMPP persistente con android
- ¿Cómo enviar un mensaje XMPP cuando el remitente está fuera de línea?
- ¿Cómo implementar servidor GCM-CCS XMPP de terceros utilizando openfire?
- Baja resolución Administración de miniaturas en aplicaciones de chat
1) xmpp – es protocolo de capa de aplicación para IM, que tiene casi 10 años de antigüedad, y tiene muchas extensiones que soportan voip o pueden ser video chat, estado en línea / fuera de línea y muchas otras características. Es aceptado por todas las grandes empresas como whatsapp, fb, Skype etc
También he oído que google se ha alejado de este protocolo debido a la vulnerabilidad.
2) websocket – es el protocolo de capa tcp que proporciona una comunicación full duplex a través de una única conexión tcp y es nuevo y fue estandarizado por IETF en 2011.i no sé si este protocolo se utiliza principalmente para IM. pero sé que se puede hacer como está en la capa tcp. Y no vi ni oí ninguna de las características / extensiones de socket web aparte de los 4 métodos (es decir, onOpen, onClose, onMessage y onError). por lo que significa que si elijo esto tengo que hacer mis propios métodos de estado en línea / fuera de línea (puede ser el envío de un marco en cada "x" segundos / minuto), voip, información de entrega de mensajes y otras características, etc
Estoy confundido, que uno elijo, xmpp o socket web, en términos de desarrollo, el manejo de los servidores de costo, seguridad, gestión de la sesión de manejo, soporte para el navegador, etc
Si estoy equivocado nada acerca de estos 2 protocolos entonces por favor corrija.
GRACIAS POR ADELANTADO
- ¿Cómo crear un cliente de chat XMPP para Facebook?
- SASLError utilizando PLAIN: no autorizado
- ¿Cómo crear servicio en Android que hace persistente Xmpp conexión con XMPP Server?
- XMPP FileTransfer - ¿Por qué falla el protocolo bytestreams?
- ¿Qué servicios basados en la nube puedo usar para alojar el servidor XMPP requerido para conectarse a GCS CCS?
- Notificaciones Push de XMPP (Openfire)
- No se puede recibir el archivo usando asmack y xmpp
- Característica no implementada nodejs xmpp android
Google no encontró una vulnerabilidad en XMPP.
Puede utilizar XMPP sobre WebSockets mediante el uso de draft-ietf-xmpp-websocket , que pronto será un RFC.
- Android – Base de datos pre-poblada, insertada o pre-cargada?
- ¿Hay algún uso legítimo para @ + android: id?