2012-03-28 3 views
6

私はiOSのクライアントを使用してejabberdに基づいてチャットシステムを構築しています(とXMPPFramework)からの歴史をチャット取得します。ejabberd:MySQLのDB

私の現在のチャットシステムは、チャット履歴をMySQLデータベースに保存するユーザ間の1対1の会話だけをサポートしています。

同じチャットシステムを再作成するために、私は新しいチャットシステムに切り替えるとき、ユーザーは、前の会話を失うことはありませんので、私のデータベースからのチャット履歴を取得するためにejabberdを必要があると思います。

iOSアプリを削除して再インストールすることができますので、私は会話のクライアント側を保存しないたい(またはユーザーがデバイスを切り替えることができ)。

私のMySQLデータベースからejabberdのチャット履歴を読み取ることはできますか?

答えて

3

質問は少し古いですが、誰かがまだ興味を持っている場合。

これは、メッセージアーカイブ管理(http://xmpp.org/extensions/xep-0313.html)によって実現できます。

このXEPの最も完全な実装はMongooseIM(fork of ejabberd)です。 https://github.com/esl/MongooseIM/blob/master/apps/ejabberd/src/mod_mam.erl

ProcessOneページこのページにアーカイブをサポートしたと主張:http://www.process-one.net/en/ejabberd/#getejabberdを、このページでは言及がない:http://www.process-one.net/en/ejabberd/protocols/が。彼らは彼らのカスタム仕様を使用しているように見えます。

あなたはので、モジュールが呼び出している関数の引数のわずかな差で、processoneのejabberdと直接MongooseIMからmod_mamを使用することはできないことに、注意してください。