【问题标题】:XMPP Push Notification for iOS chat app适用于 iOS 聊天应用的 XMPP 推送通知
【发布时间】:2012-05-14 15:27:45
【问题描述】:

我正在为 iOS 创建 Google Talk 客户端。我有 BOSH 服务器(使用 node-xmpp-bosh)和 iOS 客户端(使用 xmppframework)。 iOS 客户端通过此 BOSH 服务器连接。

现在,当有传入的聊天消息或好友请求时,我如何向客户端(可能来自 Bosh 服务器)发送推送通知?

谢谢!

【问题讨论】:

    标签: objective-c ios xmpp google-talk


    【解决方案1】:

    node-xmpp-bosh 实际上正好提供了这种用例。 BOSH 服务器是eventpipe 的一个实例,可让您通过管道将事件传入/传出 BOSH 服务器到您的自定义模块/插件。您可以在此处编写推送通知服务的逻辑代码。

    在 BOSH 服务器上执行此操作的优势在于,您可以支持所有 XMPP 服务,而不仅仅是您控制 XMPP 服务器的服务。即您可以为 google talk、facebook、jabber.org 等提供此功能...

    披露:我是 node-xmpp-bosh 的作者之一。

    【讨论】:

    • 谢谢!我结束了收听“响应”事件bosh_server.on("response", function(stanza, stream) {});这是收听“响应”事件的正确方法吗?还是我应该听的更好的活动?非常感谢您创建 node-xmpp-bosh :)
    • @ThantThet 太完美了。您可能想阅读文档。查看 EventPipe 以了解如何停止事件传播(使用简单的 EventEmitter 无法做到这一点)。不客气:)
    【解决方案2】:

    要支持推送通知,您需要在服务器上进行特殊更改。我们为 ejabberd 开发了该模块(您可以在 TextOne 和 OneTeam 中看到该模块)。 自己实施推送通知的详细信息可在以下位置获得: http://developer.apple.com/library/mac/#documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Introduction/Introduction.html

    【讨论】:

    • 因为我无法访问 GTalk 服务器。是否可以开发模块BOSH服务器?
    猜你喜欢
    • 1970-01-01
    • 2016-07-26
    • 2013-04-12
    • 1970-01-01
    • 1970-01-01
    • 2012-10-26
    • 2022-08-04
    • 2017-03-24
    相关资源
    最近更新 更多