2

我尝试制作一个托管在以下位置的模块:

https://github.com/johanvorster/ejabberd_confirm_delivery

我正在使用 ejabberd 版本 14.07。

我所做的改变:

1. Removed all the ?INFO_MSG statements
2. binarised all the strings. Every occurence of "abc" has been replaced by <<"abc">> and so on.

还需要什么?我已经能够很好地编译模块但是它不起作用。

输入?如果项目分支上的任何人都可以根据较新版本的 ejabberd 更新 git 项目,那就太好了。

每当他们收到服务器发送的消息时,我打算从连接到 saya 组的每个客户端接收 xmpp 节。

谢谢

4

1 回答 1

0

我认为这个模块会为 mod_confirm_delivery.erl 中的 send_packet 函数生成 undef 错误。检查您的错误登录:

//var/log/ejabberd/ejabberd.log

在这个模块中:

ejabberd_hooks:add(user_send_packet, _Host, ?MODULE, send_packet, 50),

此 Hook 正在调用mod_confirm_delivery:send_packet/4函数,但在您的模块中send_packet/4未定义。因此,您必须更新代码以匹配 user_send_packet 挂钩的新签名,即:

user_send_packet(数据包,C2SState,从,到)-> 数据包

点击链接:https ://docs.ejabberd.im/developer/hooks/

于 2016-03-29T10:46:38.853 回答