国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

硬件數(shù)據(jù)推送給特定手機端

不說再見

我使用的gateway,硬件傳輸數(shù)據(jù)的時候可以帶上當前硬件設備的pid,然后我用gateway推送給當前正在使用這臺硬件設備的用戶手機app上。是不是就是要這手機app連接的時候也傳過來這臺設備的pid,然后這兩個客戶端建立單獨的連接通訊,那我服務端要怎么判斷呢?如果硬件用tcp長連接把數(shù)據(jù)存數(shù)據(jù)庫,然后然后app用http輪詢調(diào)用倒是可以實現(xiàn)。 只是我希望服務端也能通過和app長連直接推送,這樣應該更快一些

3988 1 1
1個回答

walkor 打賞

1、設備連接gateway
2、設備發(fā)送一個pid登錄請求,gateway中Events::onMessage回調(diào)中收到請求,得到pid進行綁定,Gateway::bindUid($client_id, $pid);,同時設置$_SESSION=$pid,用來gateway記錄當前設備pid
3、因為設備綁定了pid,那么gateway服務端可以通過Gateway::sendToUid($pid, $data);給任意設備發(fā)送數(shù)據(jù)
4、同樣app鏈接gateway
5、app發(fā)送一個請求,請求中包含要查看的pid
6、gateway中Events::onMessage回調(diào)中收到app請求,得到要查看的pid,用Gateway::joinGroup($client_id, $pid); 加入分組(或者叫訂閱這個pid發(fā)來的消息)
7、設備pid傳輸數(shù)據(jù)到gateway,gateway中Events::onMessage回調(diào)中收到數(shù)據(jù),首先判斷$_SESSION是否存在,存在的話證明這個設備驗證過pid,并綁定過pid。沒有驗證過則進入步驟2驗證綁定。
如果已經(jīng)驗證,則Events::onMessage回調(diào)中調(diào)用Gateway::sendToGroup($_SESSION, $data)給pid分組發(fā)送數(shù)據(jù),那么6步驟中joinGroup過的app將會收到對應pid設備發(fā)來的數(shù)據(jù)

  • 不說再見 2016-12-15

    非常感謝

  • 不說再見 2016-12-21

    請問如果我想把當前連接的硬件設備,連接的時候把時間記錄下來,斷開的時候再記錄下來寫到數(shù)據(jù)庫,以便統(tǒng)計設備使用情況。但是在onConnect連接的時候得不到該設備的pid,只有在 onMessage里傳來了pid才有。那該怎么得到該設備的使用情況呢

  • walkor 2016-12-21

    onConnect時$_SESSION里記錄個時間,onMessage里得到pid記錄到$_SESSION,onClose的時候使用$_SESSION就都得到了

年代過于久遠,無法發(fā)表回答
??