2012-03-28 10 views
6

Sto costruendo un sistema di chat basato su ejabberd utilizzando un client iOS (e XMPPFramework).ejabberd: recupera cronologia chat da mysql db

Il mio sistema di chat corrente supporta solo conversazioni uno-a-uno tra utenti che salvano una cronologia chat su un database MySQL.

Per ricreare lo stesso sistema di chat, avrei bisogno di ejabberd per recuperare la cronologia chat dal mio database in modo che gli utenti non perdano le conversazioni precedenti quando si passa al nuovo sistema di chat.

Mi piacerebbe non salvare la conversazione lato client poiché l'app iOS può essere cancellata e reinstallata (o l'utente può cambiare dispositivo).

E 'possibile fare ejabberd leggere la cronologia chat dal mio MySQL db?

risposta

3

La domanda è un po 'vecchia, ma se qualcuno è ancora interessato.

Ciò può essere ottenuto tramite Gestione archivio messaggi (http://xmpp.org/extensions/xep-0313.html).

L'implementazione più completa di questo XEP è in MongooseIM (fork di ejabberd). https://github.com/esl/MongooseIM/blob/master/apps/ejabberd/src/mod_mam.erl

pagina ProcessOne sostiene di avere il supporto per l'archiviazione in questa pagina: http://www.process-one.net/en/ejabberd/#getejabberd, ma non si fa menzione in questa pagina: http://www.process-one.net/en/ejabberd/protocols/. Sembra che stiano usando le loro specifiche personalizzate.

Si noti che non sarà possibile utilizzare mod_mam da MongooseIM direttamente con processone ejabberd, a causa di piccole differenze negli argomenti di funzione che il modulo sta chiamando.