使用 ejabberd 的组件协议设置 fpush

使用 ejabberd 的组件协议设置 fpush

我正在尝试在 ejabberd 中设置推送通知到我的自定义 XMPP iOS 客户端。我从这里看到评论在 Github 问题上,有人建议使用组件协议的外部推送服务。我选择使用fpush我正在尝试了解如何在 ejabberd 中配置组件协议。

据我所知,我需要设置一个新的监听器并使用该ejabberd_service模块,我是这样做的:

listen:
-
  port: 1337
  ip: 127.0.0.1
  hosts:
    pushes.mydomain.com:
      password: secret

然后在fpush配置中,我像这样设置组件:

{
  "component": {
    "componentHostname": "pushes.mydomain.com",
    "componentKey": "secret",
    "serverHostname": "127.0.0.1",
    "serverPort": 1337
  },
  "pushModules": {
    "MyAppName": {
      "type": "apple",
      // etc
    }
}

这就是我要做的事情吗?因为当我启动时,fpush我收到以下错误,这没什么帮助:

thread 'main' panicked at /home/ubuntu/fpush/fpush-push/src/lib.rs:64:91:
called `Result::unwrap()` on an `Err` value: PushErrors(PushEndpointTmp)
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

此外,文档还说fpushiq必须包含pushModule名称。ejabberd 如何知道如何填写该值?我是否遗漏了其他配置?

相关内容