2011-06-08 137 views
3

我建立了我的Rails應用程序中使用本教程爲我的指導,發送推送通知到我的iPhone應用程序:iPhone推送通知不Rails應用程序的工作 - apn_sender

http://blog.thefrontiergroup.com.au/2011/05/sending-apple-push-notifications-in-rails-with-redis-and-apn_sender/

一切似乎運行精 - 但是當我嘗試在控制檯

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開發環境中。 紅寶石1.9.2 Rails 3.1.0.rc1

任何人都可以幫我解決這個問題嗎?

iPhone通知令牌應該採用什麼格式? Base64解碼?

回答

3

管理解決這一問題 - 問題似乎與我使用的令牌格式。

更改爲此格式:

 
# (regexp) 
/(\w{8}\s){7}(\w{8})/ 

# randomly generated example string 
f4134ff5 ec6504c2 a803da24 fb79cbcd 5243b00d d7fa625f 54c6b4ea 05768cf4 
+0

它應該在哪裏更改? – Prem 2013-01-09 09:44:26

0

APN ::反饋:連接目前還沒有建立feedback.sandbox.push.apple.com在2196

你需要調用。數據方法開始連接。

feedback_data = APN::Feedback.new().data 

,每當你使用一個無效的土氣,APNS斷開你,所以我想這就是爲什麼你的正則表達式是有道理這可能會導致問題。這是我的正則表達式去除空格後進行檢查。即使沒有空間,令牌仍然被接受。

[a-zA-Z0-9]{64}