迅鸣物联网文档

迅鸣物联网文档


接入阿里云微消息队列mqtt教程

<h1>一、简介</h1> <p>阿里云mqtt业务有两个大项:物联网平台 与 微消息队列MQTT版 两款。 ①物联网平台: 特点:针对物联网设备上云提供的一套完整的物联网平台,开发者只需要按照产品分类、协议在设备端实现相应的功能即可(应该是具备数据存储能力,未确认); 优点:集成了物联网设备上云相关的应用层功能。缺点:成本非常高、部分协议必须按平台规范开发。 使用流程:购买实例--创建产品--注册设备--设备按照协议开发--选择认证方式联网上云。 教程:<a href="https://help.aliyun.com/zh/iot/user-guide/overview-of-device-connection-1?spm=a2c4g.11186623.0.0.76773f42VbzfsC">https://help.aliyun.com/zh/iot/user-guide/overview-of-device-connection-1?spm=a2c4g.11186623.0.0.76773f42VbzfsC</a> ②微消息队列MQTT版: 特点:与EMQX功能一样,其实就是解决自建MQTT服务器问题,仅实现消息转发,数据存储、处理还需要自建服务在应用层解决。 优点:稳定、无需维护。缺点:价格比自建稍高,但没有运维能力的还是推荐使用; 使用流程:购买实例--创建group--创建主topic--通过接口注册设备并得到登录资料--研发设备--选择认证方式上云。 注册设备等接口文档:<a href="https://help.aliyun.com/zh/apsaramq-for-mqtt/developer-reference/api-onsmqtt-2020-04-20-registerdevicecredential">https://help.aliyun.com/zh/apsaramq-for-mqtt/developer-reference/api-onsmqtt-2020-04-20-registerdevicecredential</a> 可以在帮助页面,点击“调试”按钮,在线进行接口调试。</p> <p>[========]</p> <h1>二、微消息队列MQTT版使用流程</h1> <p>微消息队列MQTT版,采用“一机一密”验证方式,平台使用流程: 1、购买实例,得到实例名称【post-cn-pe33kvzxxxx】。 2、创建GROUP,得到group名称【GID_xxxx】。 3、创建topic,得到主topic,主topic有数量限制,不能动态注册,但子topic没有限制,只要总订阅数不超即可。(注意:主topic需要写入设备!) 4、通过【注册设备等接口文档】帮助文档里的调试按钮,进入【微消息队列 MQTT】接口调试页面,选择【为某个设备注册访问凭证】接口。 5、输入要生成的clientid【由:group名称@@@自定义客户端名称,两部分组成】,自定义客户端名称一般是imei或客户端sn。 6、输入实例名称InstanceId【创建实例后就能看到】。 7、选择服务器地址,根据购买实际情况选择。 8、点击“发起调用”获取注册信息。 9、根据注册信息生成mqtt登录需要的username【由一机一密鉴权模式名称DeviceCredential、DeviceAccessKeyId、Instance ID三部分组成,以竖线(|)分隔】。 10、根据注册信息生成mqtt登录需要的password【将&quot;ClientId&quot;使用&quot;DeviceAccessKeySecret&quot;作为密钥进行HMAC-SHA1加密得到“十六进制数组”,然后再用Base64编码得到最终的Password字符串】 11、在实例详情页,查询“接入点”信息,选择公网接入点,例如:post-cn-pe33kvzjx06.mqtt.aliyuncs.com 。 12、准备好下面参数:mqtt服务器地址、端口、username、password、mqttid、订阅主题、发布主题、是否采用ssl,参加第五章进行写入,即可完成设备接入。</p> <p>[========]</p> <h1>三、微消息队列MQTT版,一机一密使用样例</h1> <p>示例: 1、申请到的注册信息 { &quot;RequestId&quot;: &quot;5DA70F5E-3C61-5813-9615-CD5A1BC5xxxx&quot;, &quot;DeviceCredential&quot;: { &quot;InstanceId&quot;: &quot;post-cn-pe33kvzxxxx&quot;, &quot;DeviceAccessKeySecret&quot;: &quot;DC.T8HFoLKqTK6pWz3EUrxxxx&quot;, &quot;CreateTime&quot;: 1706065493000, &quot;UpdateTime&quot;: 1706065493000, &quot;DeviceAccessKeyId&quot;: &quot;DC.5XU1wVkUQvKPkAYIpwxxxx&quot;, &quot;ClientId&quot;: &quot;GID_xmiot@@@device1&quot; } } 2、mqtt登录用户名为 “DeviceCredential|DC.5XU1wVkUQvKPkAYIpwxxxx|post-cn-pe33kvxxxx”。 3、使用在线HMAC-SHA1加密工具,将实例名&quot;GID_xmiot@@@device1&quot;使用&quot;DC.T8HFoLKqTK6pWz3EUrxxxx&quot;作为密钥加密,得到“421D947ED78ED808B4EBBE139F8CB962438FE017”得到“十六进制数组”。 4、使用在线工具进行base64编码,注意字符编码是“HEX(16进制,不编码)”,点击编码后生成“Qh2UfteO2Ai0674Tn4y5YkOP4Bc=”即得到登录密码。 5、在线工具: <a href="https://www.toolhelper.cn/DigestAlgorithm/HMAC_SHA">https://www.toolhelper.cn/DigestAlgorithm/HMAC_SHA</a> <a href="https://www.toolhelper.cn/EncodeDecode/Base64EncodeDecode">https://www.toolhelper.cn/EncodeDecode/Base64EncodeDecode</a></p> <p>[========]</p> <h1>四、微消息队列MQTT版,控制设备实例</h1> <p>【注意:下面示例以主topic为“xmiot”为例测试,其他主topic按需修改下面topic,子topic是固定不可修改】</p> <p><strong>服务器向设备发送消息:</strong></p> <pre><code>设备订阅的主题: xmiot/xm/sh/request/mqtt/GID_xmiot@@@1510100110128956/2006/v2 消息内容:【锁控开,并自动进行ms级延时关闭】 {&amp;quot;header&amp;quot;:{&amp;quot;timeStamp&amp;quot;:&amp;quot;&amp;quot;},&amp;quot;payload&amp;quot;:{&amp;quot;devices&amp;quot;:[{&amp;quot;action&amp;quot;:&amp;quot;command&amp;quot;,&amp;quot;params&amp;quot;:{&amp;quot;11&amp;quot;:true}}]}} 消息内容:【锁控开,指定5000ms延时关闭】 {&amp;quot;header&amp;quot;:{&amp;quot;timeStamp&amp;quot;:&amp;quot;&amp;quot;},&amp;quot;payload&amp;quot;:{&amp;quot;devices&amp;quot;:[{&amp;quot;action&amp;quot;:&amp;quot;command&amp;quot;,&amp;quot;params&amp;quot;:{&amp;quot;11&amp;quot;:true,&amp;quot;46&amp;quot;:5000}}]}} 消息内容:【继电器开,并自动进行ms级延时关闭】 {&amp;quot;header&amp;quot;:{&amp;quot;timeStamp&amp;quot;:&amp;quot;&amp;quot;},&amp;quot;payload&amp;quot;:{&amp;quot;devices&amp;quot;:[{&amp;quot;action&amp;quot;:&amp;quot;command&amp;quot;,&amp;quot;params&amp;quot;:{&amp;quot;24&amp;quot;:true}}]}} 消息内容:【继电器开,指定5000ms延时关闭】 {&amp;quot;header&amp;quot;:{&amp;quot;timeStamp&amp;quot;:&amp;quot;&amp;quot;},&amp;quot;payload&amp;quot;:{&amp;quot;devices&amp;quot;:[{&amp;quot;action&amp;quot;:&amp;quot;command&amp;quot;,&amp;quot;params&amp;quot;:{&amp;quot;24&amp;quot;:true,&amp;quot;46&amp;quot;:5000}}]}}</code></pre> <p><strong>设备向服务器发送消息:</strong></p> <pre><code>服务器订阅主题: xmiot/xm/sh/response/mqtt/GID_xmiot@@@1510100110128956/2006/v2 设备上报心跳同步消息内容: {&amp;quot;header&amp;quot;:{&amp;quot;timeStamp&amp;quot;:&amp;quot;1706147471&amp;quot;},&amp;quot;payload&amp;quot;:{&amp;quot;devices&amp;quot;:[{&amp;quot;nodeid&amp;quot;:&amp;quot;000&amp;quot;,&amp;quot;action&amp;quot;:&amp;quot;sync&amp;quot;,&amp;quot;serviceid&amp;quot;:&amp;quot;20060101 [2024-01-25 09:51:10.541] &amp;quot;,&amp;quot;params&amp;quot;:{&amp;quot;15&amp;quot;:&amp;quot;51&amp;quot;,&amp;quot;20&amp;quot;:&amp;quot;0&amp;quot;,&amp;quot;11&amp;quot;:true,&amp;quot;24&amp;quot;:true}}]}} 设备上报锁状态变化消息内容: {&amp;quot;header&amp;quot;:{&amp;quot;timeStamp&amp;quot;:&amp;quot;1706148590&amp;quot;,&amp;quot;session&amp;quot;:&amp;quot;0&amp;quot;},&amp;quot;payload&amp;quot;:{&amp;quot;devices&amp;quot;:[{&amp;quot;nodeid&amp;quot;:&amp;quot;000&amp;quot;,&amp;quot;action&amp;quot;:&amp;quot;command&amp;quot;,&amp;quot;params&amp;quot;:{&amp;quot;24&amp;quot;:true}}]}}</code></pre> <p><strong>V2协议详情:</strong> <a href="https://www.showdoc.com.cn/1014034257250686/8384078571000608">https://www.showdoc.com.cn/1014034257250686/8384078571000608</a></p> <p><strong>注意:</strong> json内容的符合必须是英文模式,否则json解析失败不会执行。</p> <p>[========]</p> <h1>五、4G-CAT1设备迁移到自建MQTT服务器流程</h1> <p>定制设备不使用迅鸣云进行控制时,可将设备迁移到私有mqtt服务器,支持自建EMQX服务器、阿里云mqtt服务器。迁移后设备将无法再进行迅鸣云控制,且该操作不支持回滚,请慎重执行。具体迁移流程如下: 1、下载设备usb驱动,[下载链接](<a href="https://pan.baidu.com/s/14KvdSZXWe6NSpWMFq_xEMw">https://pan.baidu.com/s/14KvdSZXWe6NSpWMFq_xEMw</a> &quot;下载链接&quot;),提取码:uvcy。 2、下载设备调试工具,并进行下面配置(请向售后人员获取)。 3、发送指令切换到自建服务器模式【注意:只能单向切换,该指令会删除迅鸣账号信息及读写保护密码,因此不能再切换回迅鸣云服务器】。 <code>rrpc,clear_pwd</code> 4、发送指令配置阿里云配置的topic主头。 <code>+comm,{&amp;quot;header&amp;quot;:{&amp;quot;timeStamp&amp;quot;:&amp;quot;&amp;quot;},&amp;quot;payload&amp;quot;:{&amp;quot;devices&amp;quot;:[{&amp;quot;action&amp;quot;:&amp;quot;writeconfig&amp;quot;,&amp;quot;params&amp;quot;:{&amp;quot;MASTER_TOPIC&amp;quot;:&amp;quot;xmiot&amp;quot;}}]}}</code> 【注意:&quot;xmiot&quot;是在阿里云配置的主topic,根据实际修改】 5、配置阿里云MQTT服务器地址、端口号、用户名、密码、clientid、ssl模式【注意:发送、订阅topic必须置空,设备会自动拼接】。</p>

页面列表

ITEM_HTML