Quiero poder enviar un identificador con el mensaje de modo que cuando el usuario se vuelva a conectar, no tenga que recuperar todo el historial de chat, sino desde un punto específico utilizando el identificador. ¿Lo implemento usando un servidor Openfire con un registro de mensajes activado?

En uno de mis proyectos anteriores, he desarrollado un complemento Openfire para un propósito similar:

  1. Creó una nueva tabla personalizada para almacenar mensajes;
  2. Intercepte la stanza para guardar todos los mensajes de chat en la tabla personalizada creada anteriormente. Cada mensaje tendrá una marca de tiempo asociada;
  3. Definió un IQ personalizado para recuperar mensajes de chat;
  4. Cuando el cliente se conecta por primera vez, envíe el IQ sin parámetros para obtener todos los historiales de chat;
  5. Cuando se vuelva a conectar, primero verifique cuál es el último mensaje que tiene el cliente (según la marca de tiempo). Luego, envíe el IQ con la última marca de tiempo. El controlador IQ consultará la tabla, devolverá todos los mensajes con marcas de tiempo mayores que la enviada en el parámetro;

Puede que esta no sea la solución perfecta, pero funciona para mí.

More Interesting

Estoy enviando un mensaje a alguien que no es mi amigo en Facebook. ¿Cómo sé si ella puede ver mi mensaje?

Sigo recibiendo mensajes que dicen que tengo un virus de sitios web recientes. ¿Cómo puedo saber si esto es falso?

Si envié un mensaje a un recordatorio automático de texto de una compañía de viajes, ¿pueden verlo?

Reinicié mi iPhone5 S, pero mis mensajes de Kik se eliminaron. ¿Cómo puedo recuperarlos?

¿Si le envío un mensaje a alguien en WhatsApp y todavía se muestra un reloj e inmediatamente elimino la aplicación con la otra persona que recibe el mensaje?

Tengo que contener los mensajes de texto o iniciarlos con demasiada frecuencia cuando me gusta un chico. ¿Por qué los chicos esperan tanto tiempo para enviar mensajes de texto después de las fechas?

Tengo 15 años y me gusta una chica que tiene 18 años pero todavía no nos conocemos. ¿Cómo le envío un mensaje de texto para poder conocerla?

Ingresé a la cuenta de kik de mi novio sin permiso para encontrar más de 500 chicas en sus contactos, ¿cómo lo enfrento?

Puedo detectar el tráfico de un sitio web que no es HTTPS de un host a otro usando envenenamiento por ARP. Creo que los paquetes están encriptados usando WPA2, pero puedo verlos en texto plano. ¿Como sucedió esto?

Cuando envío un mensaje de texto a una foto desde mi iPhone, ¿cuánto cambia el tamaño de la imagen?

Si cambio de un iPhone a un teléfono Android, ¿qué debo hacer para asegurarme de recibir los mensajes que me envían desde un iPhone?

Cuando borro un mensaje de texto, ¿se borra permanentemente o se puede recuperar? ¿Tendría el operador de teléfono copias de todos los textos?

Mi amigo está siendo acusado falsamente por eliminar ciertos mensajes de Facebook. ¿Cómo puede probar que nunca eliminó ningún mensaje en primer lugar?

Si desactivo iMessage y mi amigo no tiene mms activado, ¿recibiré sus mensajes de texto?

Acabo de descubrir quién ha estado enviando mensajes de texto molestos a mi familia y a mí. ¿Qué debería hacer ahora?