2012-03-28 19 views
6

Estoy construyendo un sistema de chat basado en ejabberd usando un cliente iOS (y XMPPFramework).ejabberd: recuperar el historial de chat de mysql db

Mi sistema de chat actual solo admite conversaciones uno a uno entre usuarios que guardan un historial de chat en una base de datos MySQL.

Para recrear el mismo sistema de chat, necesitaría ejabberd para recuperar el historial de chat de mi base de datos para que los usuarios no pierdan conversaciones anteriores cuando cambien al nuevo sistema de chat.

Me gustaría no guardar la conversación del lado del cliente ya que la aplicación de iOS se puede eliminar y volver a instalar (o el usuario podría cambiar el dispositivo).

¿Es posible hacer que ejabberd lea el historial de chat de mi base de datos MySQL?

Respuesta

3

La pregunta es un poco antigua, pero si alguien todavía está interesado.

Esto se puede lograr mediante Message Archive Management (http://xmpp.org/extensions/xep-0313.html).

La implementación más completa de este XEP está en MongooseIM (fork de ejabberd). https://github.com/esl/MongooseIM/blob/master/apps/ejabberd/src/mod_mam.erl

página ProcessOne dice tener el apoyo para archivar en esta página: http://www.process-one.net/en/ejabberd/#getejabberd, pero no hay ninguna mención en esta página: http://www.process-one.net/en/ejabberd/protocols/. Parece que están usando sus especificaciones personalizadas.

Tenga en cuenta que no podrá usar mod_mam de MongooseIM directamente con processone ejabberd, debido a pequeñas diferencias en los argumentos de funciones que está llamando el módulo.

Cuestiones relacionadas