在我的一个 Mac 应用程序中,我需要推送通知。我认为与其使用一些自定义解决方案,不如尝试一下 NSServerNotificationCenter。 Apple 的文档提到了一个 notificationconf
命令,而我的 Ubuntu 服务器没有该命令。文档还提到 NSServerNotificationCenter 使用 XMPP。
我的问题基本上是这样的 - 我的服务器上运行着 ejabberd,我可以从我的代码连接到它吗?我如何使用它向用户发布通知?我还需要一种方法让我的 NSServerNotificationCenter
了解我的用户凭据 - 我想我会使用 NSTask
来执行此操作并运行 notificationconf setpass hostname username
。
有谁知道我应该如何进行设置?我还需要找到一种方法,当通过 PHP 注册用户时创建一个新的 ejabberd 用户,但这应该没问题。
话又说回来,如果这不太容易实现,是否有另一种方法可以通过运行服务器部分的 Ubuntu 服务器在 Mac 上执行推送通知?
感谢您的回复,这个话题让我很困惑。
最佳答案
我对此类的经验表明,它实际上仅用于与 OS X 服务器(即运行服务器包/操作系统版本的 Mac)进行通信,并且仅用于为 Mail 和 iCal 执行推送通知。非常有限!
但是 XMPP 绝对是这里进行推送通知的方式!我建议您查看XMPPframework project来自the Deusty guys 。它是 XMPP 的 Cocoa 实现,应该可以与 ejabberd 很好地配合(尽管我使用 OpenFire )。
还有一些 PHP-XMPP 框架。查看xmpphp on Google Code .
关于cocoa - NSServerNotificationCenter 和 Linux 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6573375/