我得到"用户ID是nill"当切换到另一个viewcontroller时,发送的消息不存储。我想实现XMPP One to One聊天,我该怎么做?
我现在有完整的项目,但它是在nib文件中;我的工作是将其转换为故事板。我已经做了差不多但我被困在XMPP。
我必须使用哪些方法才能遇到类似&#34的错误;用户ID是nill"。
答案 0 :(得分:1)
正如您在评论中提到的那样,您正在使用ejabberd XMPP服务器。有一个模块mod_logdb可以将聊天记录存储到数据库中。
以下是配置示例,只是看看如何配置mysql db以使用ejabberd。
{modules, [
{mod_logdb, [
{dbs, [
{mysql5, [
{user, "root"},
{password, "pass"},
{server, "serv"},
{port, 3306},
{db, "logdb"}
]},
{mnesia, []}
]},
{vhosts, [{"example1.org", mysql5}, {"example2.org", mnesia}{purge_older_days, 365},
{dolog_default, true},
{poll_users_settings, 5} ]},
%% Other modules ...
]}.
它会将所有聊天记录/日志存储到配置文件中给出的数据库,您可以从中将其作为普通的MySQL查询读取,并通过webservice传递给您的应用程序。
参考链接: