当前位置: 首页 > news >正文

一家专门做动漫的网站手机网站知识

一家专门做动漫的网站,手机网站知识,如何建立个人网站的步骤,做网站的专业公司ATMQTTPUBLinkID,topic,data,qos,retainLinkID: 当前只支持 0 topic: 发布主题, 最长 64 字节 data: 发布消息, data 不能包含 \0, 请确保整条 ATMQTTPUB 不超过 AT 指令的最大长度限制 qos: 发布服务质量, 参…ATMQTTPUBLinkID,topic,data,qos,retainLinkID: 当前只支持 0 topic: 发布主题, 最长 64 字节 data: 发布消息, data 不能包含 \0, 请确保整条 ATMQTTPUB 不超过 AT 指令的最大长度限制 qos: 发布服务质量, 参数可选 0,1,2, 默认为 0 retain: 发布 retain 主要对这个数据上传的命令问题这个命令用串口调试助手发给ESP8266可以成功上传但是CC2530去发给ESP8266的时候对data长度有一定的限制太长了是发送不出去甚至没有任何响应报错都没有。 要是选择阿里云的AlinkJSON数据格式创建的产品按照它这种方式在编程里会变得很长例如下面这种 sprintf(strTemp,ATMQTTPUB0,\/sys/i2u8FoillVa/coordinator/thing/event/property/post\,\{\\\meth od\\\:\\\thing.service.property.set\\\\\\,\\\id\\\:\\\2012934117\\\\\\,\\\params\\\:{\\\co2\\\:51}\\\,\\\version\\\:\\\1.0.0\\\}\,1,0\r\n);各种转义”和的看着也累这样就导致data过长发送不成功。 我的解决方法是不采用阿里云定义的这种AlinkJSON数据格式选择透传自定义 选择这种上传格式后需要我们自己去解析消息。 这里就是将消息转换成AlinkJSON格式完成物模型数据的上传主要就是编写一个JavaScript脚本下面贴一下我写的 var ALINK_PROP_SET_METHODthing.event.property.post; //AlinkJSON的method属性 thing.service.property.set/*** 将设备自定义topic数据转换为json格式数据, 设备上报数据到物联网平台时调用* 入参topic string 设备上报消息的topic* 入参rawData byte[]数组 不能为空* 出参jsonObj JSON对象 不能为空*/ function transformPayload(topic, rawData) {var jsonObj {};return jsonObj; }function ascll2String(array) {let result ;for (let i 0; i array.length; i) {result String.fromCharCode(array[i]);}return result; }function toParams(str){//str str.substring(1,str.length-1);let arr str.split(,);let params {};for(let i 0;iarr.length;i){let map arr[i].split(:);params[map[0]] parseInt(map[1]);}return params; }/*** 将设备的自定义格式数据转换为Alink协议的数据设备上报数据到物联网平台时调用* 入参rawData byte[]数组 不能为空* 出参jsonObj Alink JSON对象 不能为空*/ function rawDataToProtocol(rawData) {var byteString ascll2String(rawData);var data toParams(byteString);var jsonObj {params:data,method:ALINK_PROP_SET_METHOD,version:1.0.0};//var jsonObj {params:rawData}return jsonObj; }/*** 将Alink协议的数据转换为设备能识别的格式数据物联网平台给设备下发数据时调用* 入参jsonObj Alink JSON对象 不能为空* 出参rawData byte[]数组 不能为空**/ function protocolToRawData(jsonObj) {let result{};result.id jsonObj.id;result.code jsonObj.code;result.data jsonObj.data;let jsonStr JSON.stringify(result);var rawdata [];//rawdata.push(jsonObj)rawdata strToAscll(jsonStr);return rawdata; } function strToAscll(jStr){let res [];let arry jStr.split();for(let i 0;iarry.length;i){res.push(arry[i].charCodeAt());}return res; }rawDataToProtocol();这个函数就是将消息转换成AlinkJSON这里要主要入参的rawData 是一个ASCLL码数组但是你测试的时候需要在下方输入的是16进制的数据比如这条 636f323a35312c74656d70657261747572653a3135对应的字符串 co2:51,temperature:15转换后的结果就是 这样就符合AlinkJSON格式了可以成功上传物模型数据。 这里的疑惑点是在设备端我们不需要将信息转换成16进制阿里云会帮我们转换吃16进制的。我们只要正常传消息 co2:51,temperature:15就可以了。 protocolToRawData();这个函数主要是设备上传数据以后会有一个reply返回给设备说上传成功还是失败的消息。透传自定义的设备默认是不订阅这个topic的需要你自己订阅。 这个函数在测试的时候主要主要传入的是一个object不是它写的16进制很坑 其实这个函数你只要不订阅那个replay的topic就不用管只不过设备日志里会报错直接用这个就可以处理。
http://www.w-s-a.com/news/425275/

相关文章:

  • 学校网站改版南京展厅设计装修
  • 手机网站有免费做的吗建设银行网站不能登录
  • 树莓派做影视网站网站建设企业 熊账号
  • 网站iis7.5配置免费网站建设模板下载
  • 生物公司网站建设方案wordpress自定义字段调用
  • 静态网站公用头部如何调用标题wordpress自动采集翻译插件怎么用
  • 网站做单链 好不好网站营销不同阶段的网站分析目标
  • 网线制作颜色顺序兰州网站推广优化
  • 北京沙河教做网站的企业融资以什么为基础
  • 给网站添加百度地图绵阳做绵阳做网站网站
  • 用电脑做服务器制作网站东莞营销网站建设
  • 网站需要怎么做wordpress 重装
  • 做电影网站赚钱的方法世界500强企业排名2023
  • 领卷网站怎么做的西宁设计网站建设
  • 东莞网站建设价位软件开发税率是13%还是6
  • 企业网站建设一条龙如何在网上推广自己
  • 成品网站制作公司企梦网站建设
  • 网站开发微信授权登录ftp 如何 更新 wordpress
  • icp备案和网站不符查询公司的网站备案
  • 万江营销型网站建设泰安网站建设制作电话号码
  • 做网站是用ps还是ai服饰东莞网站建设
  • 只做一页的网站多少钱网站开发就业趋势
  • 陈村网站建设有哪些网站可以做店面设计
  • 查询网站注册信息wordpress 照片墙
  • 成都网站设计服务商室内设计设计师网站推荐
  • 企业建站系统cms百度网址ip
  • wordpress 代码编辑插件下载搜索引擎优化seo课程总结
  • 韩都衣舍网站建设的改进邯郸公众号小程序制作
  • 上海设计网站建设在线视频制作
  • 东营高端网站建设新建网站如何让百度收录