我已经设置了我的rails应用程序,使用本教程作为我的指南,将推送通知发送到我的iphone应用程序:
一切似乎都运行正常 - 但是当我尝试在控制台中创建新通知时
APN.notify(my_token, :alert => "Test message", :badge => 4, :sound => true)
它返回的是一个空数组! # => []
当我检查反馈时
feedback = APN::Feedback.new
我收到消息:
APN::Feedback: Connection not currently established to feedback.sandbox.push.apple.com on 2196
我已连接到redis OK,它似乎记录了大量数据:
[13058] 08 Jun 16:42:03 - DB 0: 2 keys (0 volatile) in 4 slots HT. [13058] 08 Jun 16:42:03 - 0 clients connected (0 slaves), 922944 bytes in use [13058] 08 Jun 16:42:08 - DB 0: 2 keys (0 volatile) in 4 slots HT.
但是(据我所知)我没有连接苹果服务器。
这是在我的OSX 10.6开发环境中。 Ruby 1.9.2 Rails 3.1.0.rc1
有人可以帮我解决这个问题吗?
iPhone通知令牌应采用何种格式? Base64已解码?
答案 0 :(得分:3)
管理来解决这个问题 - 问题似乎与我使用的令牌格式有关。
更改为此格式:
# (regexp) /(\w{8}\s){7}(\w{8})/ # randomly generated example string f4134ff5 ec6504c2 a803da24 fb79cbcd 5243b00d d7fa625f 54c6b4ea 05768cf4
答案 1 :(得分:0)
APN ::反馈:2196年目前尚未与feedback.sandbox.push.apple.com建立连接
您需要调用.data方法来启动连接。
feedback_data = APN::Feedback.new().data
无论何时使用无效的toke,APNS都会断开连接,这可能会导致问题,所以我猜这就是你的正则表达式有意义的原因。这是删除空格后检查的正则表达式。即使没有空格,代币仍然被接受。
[a-zA-Z0-9]{64}