我們有各種各樣的pubnub客戶端:javascript,ruby,actionscript我無法獲得Pubnub狀態超時以可靠地使用心跳值 - 我錯過了什麼?
重要的是,我知道客戶端是否離開頻道;即使瀏覽器或桌面應用程序(Native Air應用程序)崩潰。我正在更新ActionScript庫以支持在線狀態,所以我從JavaScript和Ruby實現中分離出來,當所有事情都表現良好時,我的狀態正在工作,但是心跳似乎無法用於檢測我的版本中崩潰的客戶端。
所以,我嘗試使用IRB在紅寶石以下(GEM版本3.6.7):
require 'pubnub'
pn = Pubnub.new(:subscribe_key => 'my_sub_key', :uuid => 'my_uuid', :heartbeat => 30)
pn.subscribe(:channel => 'my_channel') { |d| d.msg }
然後我進入subscribe_key和通道進入Pubnub控制檯。正如所料,我的訂閱在那裏。
我退出了irb並等待。我預計在大約30秒的時間內會出現暫停狀態,但需要在收到暫停之前等待整個6分鐘。
另請注意:事情似乎與JavaScript客戶端一起工作。
我是否需要在超越「臨場感」的基礎上改變其他方面,以使其按預期工作,或者我誤解了心跳的作用?
無賴 - 我正在使用一個老的寶石,所以我興奮了一會兒。儘管沒有歡樂 - 我仍然得到相同的結果。我嘗試過不同的渠道。以下是我所得到的:Sun Nov 2014 14:26:30:957: {「action」:「timeout」,「timestamp」:1414956390,「uuid」:「my_uuid」,「佔用率」:1} Sun 11月02 2014 14:20:54:259: {「action」:「join」,「time –
2014-11-02 19:33:19
在[email protected]給我們發電子郵件,這樣我們就可以深入挖掘(弄到鑰匙等),看看你爲什麼獲得與我們不同的結果... – Geremy 2014-11-02 21:02:37
我在github上創建了一個pull請求 – 2014-11-04 11:51:27