0

我正在尝试将 mod_apns 添加到 ejabberd (15.10) 服务器我已经从这个链接获得了模块,

这些是我遵循的步骤:

  1. 我将 mod_apns.erl 文件复制到 ejabberd/bin 文件夹

2.从 ejabberd 模块安装程序我编译了文件:

./erlc -I ejabberd/include mod_apns.erl

3.它产生了一些警告:

mod_apns.erl:26: Warning: function hexstr_to_bin/1 is unused
mod_apns.erl:28: Warning: function hexstr_to_bin/2 is unused
mod_apns.erl:127: Warning: variable 'From' is unused
mod_apns.erl:127: Warning: variable 'To' is unused
mod_apns.erl:127: Warning: variable 'Type' is unused
mod_apns.erl:157: Warning: variable 'Opts' is unused
mod_apns.erl:164: Warning: variable 'Host' is unused
  1. 我忽略了警告(?!)并将 .beam 文件复制到 ejabberd/lib/ejabberd/ebin 文件夹
  2. 我将 cert.pem 和 key.pem 文件复制到 ejabberd/conf 文件夹(?!)
  3. 我配置 ejabberd.yml 文件如下:

代码:

mod_apns:
  address: "gateway.push.apple.com"
  port: 2195
  certfile: "cert.pem"
  keyfile: "key.pem"

我什至尝试过:

mod_apns: {}
  1. 启动 ejabberd

但是 ejabberd 不会启动,并且错误文件显示此错误:Problem started the module mod_apns for host..

任何帮助是极大的赞赏..

4

1 回答 1

0

我将这些代码行添加到 mod_apns.erl 并解决了启动模块的问题:

-ifndef(LAGER).
-define(LAGER, 1).
-endif.

紧接着:

-export([start/2, stop/1, message/3, iq/3]).

我创建了 .beam 文件并重新启动 ejabberd 服务器。该模块已安装并且 ejabberd 服务器已启动,但是我仍然没有收到任何通知。但这应该是另一个问题。

于 2016-02-09T13:43:42.327 回答