适用于iOS推送通知的服务器

时间:2012-12-02 17:50:45

标签: ios push-notification server-push

我正在试图弄清楚如何为Twitter应用创建推送通知服务器。我希望能够为提及,星标,跟随等设置推送通知。这可以通过API完成,就像Tweetbot那样。如果有人能够指出我创建实际服务器部分的方向来处理用户名的存储并将消息推出,那就太棒了。如果有一个教程如何做到这一点将是伟大的!我希望能够通过ruby做到这一点,但任何方法都完全没问题。

由于

1 个答案:

答案 0 :(得分:1)

我构建推送服务器的方式是这样的:

1)Symfony 2 Web框架,用于构建管理我的实体的管理门户(Symfony2类似于Ruby)

2)一个Node.js服务器,它允许我维持与Apple的推送通知服务器的持久连接。 (这个Node.js野兽是史诗我告诉你)

3)Node.js将向我的Symfony服务器发出HTTP Post请求,要求其提供新通知

4)我的Symfony服务器将从我的Node.js服务器接收响应,找到需要发送的所有新通知并返回需要发送的JSON格式的通知列表,该通知包含要发送的消息和一系列独特的推送令牌(也有选择地是令牌环境 - 开发与生产),用于接收推送通知

5)最后,我的Node.js服务器接收JSON数据,解析JSON并通过TLS套接字流将通知二进制流发送到Apple的PNS服务器,异步获得高性能吞吐量:D

这种方法允许我将PHP Symfony服务器分开来管理我的数据,而不会干扰从任何数据相关逻辑中抽象出来的Node.js推送服务器。 Node.js推送服务器只需要知道需要发送的消息以及要发送给它的令牌数组。同时,我可以扩展和增强我的通知实体,例如令牌组(允许我通过选择一个组来快速获取一堆令牌,例如成员,朋友,如果你喜欢,敌人:D),通知日期(所以通知可以在将来发送,而不是立即发送,等等。

希望有所帮助。