一、核心說明
TUTK 推送服務已深度集成市面上主流手機廠商推送通道,手機端與設備端無需單獨對接各廠商接口,僅需對接 TUTK 推送服務,即可快速啟用多平臺推送通道能力,目前支持的通道有:APNS、FCM、小米、華為、OPPO、VIVO、極光、信鴿。對接前,需自行到第三方平臺申請對應的資料,再提供給到TUTK,加到白名單。

圖1:TUTK 推送服務整體架構圖
二、主要的交互流程

圖2:TUTK 推送服務完整流程圖
主要流程:
- APP 從第三方服務器獲取推送 Token;
- APP 向 TUTK 推送服務(KPNS)完成注冊;
- APP 向 KPNS 服務器發(fā)起設備綁定請求(建立設備與手機的關聯(lián));
- 設備向 KPNS 服務器推送事件消息;
- KPNS 服務器將消息分發(fā)給對應的第三方服務器;
- 第三方服務器通過集成的廠商通道向目標手機推送消息。
三、APP 端關鍵操作
手機端直接使用 HTTP POST 方式 向KPNS服務器發(fā)起注冊以及綁定操作。
3.1 綁定設備(操作時機)
注冊-client: 添加設備時,或者第三方token過期重新獲取token后。
綁定-mapping: 添加設備時,或者第三方token過期重新獲取token后,每次只能操作一個uid。
同步-sync: 每次打開APP時,sync可以同時具有mapping和rm_mapping的功能,一次可以操作多個uid,所以不需要重復再調用mapping以及rm_mapping。
3.2 解綁設備(操作時機)
解綁-rm_mapping:用戶刪除設備時,每次只能操作一個uid。
同步-sync: 每次打開APP時,sync可以同時具有mapping和rm_mapping的功能,一次可以操作多個uid,所以不需要重復再調用mapping以及rm_mapping。
3.3 API參數(shù)
具體參數(shù),請參考章節(jié):KPNS接口-手機端。
四、設備端推送實現(xiàn)
設備端直接使用 HTTP POST 方式 向KPNS服務器發(fā)起消息推送。
具體參數(shù),請參考章節(jié):KPNS接口-設備端。
五、快速測試與調試
手機端可通過以下模擬推送鏈接,直接驗證通道連通性,快速定位推送鏈路問題:
海外環(huán)境:http://us-server-domain/tpns?cmd=event&uid={uid}&event_type={event_type}&no_wait=1&debug=1
國內環(huán)境:http://cn-server-domain/tpns?cmd=event&uid={uid}&event_type={event_type}&no_wait=1&debug=1
參數(shù)替換說明:
- {uid}:替換為設備 UID;
- {event_type}:替換為推送消息類型(參考下方「常見推送消息對照表」)。
六、關鍵配置對照表
6.1 常見推送消息對照表(event_type)
| event_type | 中文(zh_CN) | 英文(enUS) | 法語(fr_FR) | 日語(ja_JP) | 繁體中文(zh_TW) |
|---|---|---|---|---|---|
| 1 或 4 | 移動偵測 | Motion Detection | Détection de mouvement | モーション検知 | 位移偵測 |
| 2000 | 用戶呼叫 | User call | - | ユーザー呼び出し | 用戶呼叫 |
| 55 | 門磁報警 | door alarm | - | - | - |
| 37 | 您的門鈴已經(jīng)斷線,請盡速確認! | Your doorphone is not connected with network, please confirm soon. | - | - | 您的門鈴已經(jīng)斷線,請盡速確認! |
| 52 | 影像遺失 | video loss | - | - | - |
| 100 | 空白字串,配合&msg=自定義消息使用 | Custom Message (with &msg=) | - | - | 空白字串,配合&msg=自訂訊息使用 |
6.2 推送服務域名與端口
| 推送通道 | HTTP 端口 | HTTPS 端口 |
|---|---|---|
| APNS、FCM(海外) | 80 / 7379 | 7380 |
| 小米、華為、OPPO、VIVO、極光、信鴿(國內) | 80 / 7379 | 7380 |
