功能概述
微通话 Twecall 是用于设备呼叫微信,进行音视频通话,主要应用于摄像头、门锁、门铃、室内屏等产品。
实现此功能需利用如下两个 Topic:
数据上行 Topic(用于发布):
$twecall/up/service/${productid}/${devicename}
数据下行 Topic(用于订阅):
$twecall/down/service/${productid}/${devicename}
。获取 snTicket
1. 设备端通过 MQTT 协议发布一条消息到
$twecall/up/service/${productid}/${devicename}
,进行获取,消息为 json 格式,内容如下:{"method":"get_wechat_sn_ticket","clientToken":"123","timestamp":1628646783,"params":{"ModelId":"111","miniProgramAppId":"111"}}//ModelId:微信公众平台申请//miniProgramAppId: 小程序的微信appid
2. 服务端收到获取请求上报后,服务端通过
$twecall/down/service/${productid}/${devicename}
,向设备端回复 snTicket 信息,消息为 json 格式,内容如下:{"method":"get_wechat_sn_ticket_reply","clientToken":"123","code":0, // 0:正常,1:异常"status":"", //错误信息,正常为空"params":{"snTicket":"111",}}
设备激活 TWecall 功能
1. 设备端会通过上报
$twecall/up/service/${productid}/${devicename}
消息,用于激活 Twecall 的 license,请求如下:{"method":"active_device_voip_license","clientToken":"123","timestamp":1628646783,"params":{"pkgType":1, // 0-测试;1-家庭安防场景; 2-穿戴类场景; 3-生活娱乐场景; 4-对讲及其它场景"miniProgramAppId":"111","modelId":"modelId1"}}//ModelId:微信公众平台申请//miniProgramAppId: 小程序的微信appid
2. 服务端收到获取请求上报后,服务端通过
$twecall/down/service/${productid}/${devicename}
,向设备端回复激活状态,消息为 json 格式,内容如下:{"method":"active_device_voip_license_reply","clientToken":"123","code":0, // 0:正常,1:异常"status":"", //错误信息,正常为空"params":{}}
查询设备 TWecall 激活详情
1. 设备端通过 MQTT 协议发布一条消息到
$twecall/up/service/${productid}/${devicename}
,查询设备激活状态,消息为 json 格式,内容如下:{"method":"get_voip_device_active_info","clientToken":"123","timestamp":1628646783,"params":{"miniProgramAppId":"111","modelId":"modelId1"}}//ModelId:微信公众平台申请//miniProgramAppId: 小程序的微信appid
2. 服务端收到查询信息上报后,服务端通过 Topic
$twecall/down/service/${productid}/${devicename}
向设备端返回设备激活状态详情,消息为 json 格式,内容如下:{"method":"get_voip_device_active_info_reply","clientToken":"123","code":0, // 0:正常,1:异常"status":"", //错误信息,正常为空"params":{"modelId":"modelId1","sn":"sn1","ExpireTime":1630425600}}