我对XMPP完全陌生,并且已阅读有关XMPP的各种网站。现在,我正在考虑哪种服务器和库可以执行iOS IM,并且感到困惑。
最初,我从here找到了一个名为XMPPFramework的库,该库看起来不错,因为它正在积极更新,并且有关其用法的来源相对较多。但是,当我开始考虑选择服务器端(主要是ejabberd和Tigase)时,我发现如果要实现推送通知(IM的常见功能),则需要做一些自定义工作。
在Internet上搜索和浏览后,我发现人们建议,为了使用XMPP实现推送通知(通知用户处于离线状态),需要协议XEP-0079(here),我可以实现自定义插件。但是,我发现上述XMPPFramework不支持XEP-0079。所以问题是:
由于我是最近才开始阅读有关IM和XMPP的文章,所以我想也许我上面的问题可能没有道理甚至不正确,但是我确实非常困惑,需要任何可用的帮助。我试图找到更多有关当接收方用户在服务器端处于脱机状态时如何实现推送通知的信息,但是其中大多数只是说需要一个附加插件,而且似乎没有任何代码示例,因此对此我只有模糊的图像。非常感谢!
编辑:
我了解,为了向iOS用户发送推送通知,我将不得不使用APNS。但是我不确定是否可以实现目标,即确定发送给脱机用户的消息,然后将其转发到xmpp服务器中的自定义插件,该插件可能涉及协议XEP-0079,而XMPPFramework似乎可以不支持。
我也不确定如何截取和识别发送给离线用户的消息,因为我找不到与此相关的类似代码示例。是否有任何适合初学者的项目或网站?
再次感谢!
最佳答案
您需要阅读本指南:
https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Introduction.html
所有推送消息均来自Apple的服务器。如果要向用户发送推送消息,则服务器需要通过此服务发送消息。
关于ios - iOS + XMPP-我可以在iOS中实现推送通知XMPPFramework吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26097610/