阿里云物联网平台之数据解析场景应用

简介: 物联网平台定义的标准数据格式为Alink JSON。但是低配置且资源受限或者对网络流量有要求的设备,不适合直接构造JSON数据与物联网平台通信,可将原数据透传到物联网平台。物联网平台提供数据解析功能,可以根据您提交的脚本,将数据在设备自定义格式和JSON格式之间转换。

使用场景

1、设备没有直接上报JSON的能力,需要进行透传数据。
① 16进制数组——>二进制——>【16进制数组】(这个就是我们官网文档的示例,脚本里直接解析就行)

② xxx——>二进制——>【16进制数组】——>xxx(最后转回xxx要在脚本里面第一步就处理好,然后对原始数据xxx再做解析)(注:xxx可为任意数据格式)

2、压缩数据,节省消息流量。

①特殊场景下,节省消息流量,例如正常的JSON格式上报需要两条数据上报,透传仅需一条。
消息长度在512 Bytes以内的,视为一条消息。
一条消息超出512 Bytes的部分计算为新的一条或多条消息。

②MQTT单个发布消息最大长度256kb(此值为官方口径,实际测试超过此值并未不能上报,但大于此大小不能保证)
此场景透传可以压缩数据大小进而完成单次数据上报。

常见问题示例:客户控制台脚本界面说测试可以,但实际设备上报确解析不正确。

详解:是因为控制台脚本那里直接输入的是16进制数据,然而客户脚本就是按照文档示例16进制数组进行解析的,但是设备上报的string(这一点可以根据日志服务消息内容判断,如果他设备上报的是byte数组,那控制台日志应该是【Hex】类型下看到原始数据,如果在【Text(utf-8)】下看到了原始数据,那肯定是string上报),脚本里面string——>二进制——>16进制数组,这种肯定解析不出来,正确的应该是string——>二进制——>16进制数组——>string。

运行结果

模拟输入

模拟类型:设备上报数据

//二进制数据以0X开头的十六进制输入



此时要转成正常解析,两种解决方案:
①设备端把string转换成byte数组进行上报(16进制数组——>二进制——>【16进制数组】)

②在平台的脚本解析里面用脚本进行转换(string——>二进制——>【16进制数组】——>string)
这里选择哪种视情况而定,如果设备端有转换能力,建议在设备端转,比较简便,如果没有能力就选择第二种。



目录
相关文章
|
7天前
|
机器学习/深度学习 Java API
阿里云文档智能解析——大模型版能力最佳实践与体验评测
阿里云文档智能解析(大模型版)在处理非结构化数据方面表现优异,尤其是在性能和可扩展性上具有明显优势。虽然存在一些待完善之处,但其强大的基础能力和广泛的适用场景使其成为企业数字转型过程中的有力助手。随着技术的不断进步和完善,相信它会在更多领域展现出更大的价值。
29 5
阿里云文档智能解析——大模型版能力最佳实践与体验评测
|
18天前
|
数据采集 存储 JavaScript
如何使用Cheerio与jsdom解析复杂的HTML结构进行数据提取
在现代网页开发中,复杂的HTML结构给爬虫技术带来挑战。传统的解析库难以应对,而Cheerio和jsdom在Node.js环境下提供了强大工具。本文探讨如何在复杂HTML结构中精确提取数据,结合代理IP、cookie、user-agent设置及多线程技术,提升数据采集的效率和准确性。通过具体示例代码,展示如何使用Cheerio和jsdom解析HTML,并进行数据归类和统计。这种方法适用于处理大量分类数据的爬虫任务,帮助开发者轻松实现高效的数据提取。
如何使用Cheerio与jsdom解析复杂的HTML结构进行数据提取
|
4天前
|
存储 关系型数据库 MySQL
技术解析:MySQL中取最新一条重复数据的方法
以上提供的两种方法都可以有效地从MySQL数据库中提取每个类别最新的重复数据。选择哪种方法取决于具体的使用场景和MySQL版本。子查询加分组的方法兼容性更好,适用于所有版本的MySQL;而窗口函数方法代码更简洁,执行效率可能更高,但需要MySQL 8.0及以上版本。在实际应用中,应根据数据量大小、查询性能需求以及MySQL版本等因素综合考虑,选择最合适的实现方案。
24 6
|
18天前
|
XML JSON API
淘宝京东商品详情数据解析,API接口系列
淘宝商品详情数据包括多个方面,如商品标题、价格、图片、描述、属性、SKU(库存量单位)库存、视频等。这些数据对于买家了解商品详情以及卖家管理商品都至关重要。
|
17天前
|
弹性计算 开发框架 数据可视化
阿里云虚拟主机和云服务器有什么区别?多角度全解析对比
阿里云虚拟主机与云服务器ECS的主要区别在于权限与灵活性。虚拟主机简化了网站搭建流程,预装常用环境,适合初级用户快速建站;而云服务器提供全面控制权,支持多样化的应用场景,如APP后端、大数据处理等,更适合具备技术能力的用户。尽管虚拟主机在价格上通常更优惠,但随着云服务器价格的下降,其性价比已超越虚拟主机,成为更具吸引力的选择。
|
12天前
|
存储 JSON API
Python编程:解析HTTP请求返回的JSON数据
使用Python处理HTTP请求和解析JSON数据既直接又高效。`requests`库的简洁性和强大功能使得发送请求、接收和解析响应变得异常简单。以上步骤和示例提供了一个基础的框架,可以根据你的具体需求进行调整和扩展。通过合适的异常处理,你的代码将更加健壮和可靠,为用户提供更加流畅的体验。
39 0
|
20天前
|
监控 安全 网络安全
|
20天前
|
数据库 Java 监控
Struts 2 日志管理化身神秘魔法师,洞察应用运行乾坤,演绎奇幻篇章!
【8月更文挑战第31天】在软件开发中,了解应用运行状况至关重要。日志管理作为 Struts 2 应用的关键组件,记录着每个动作和决策,如同监控摄像头,帮助我们迅速定位问题、分析性能和使用情况,为优化提供依据。Struts 2 支持多种日志框架(如 Log4j、Logback),便于配置日志级别、格式和输出位置。通过在 Action 类中添加日志记录,我们能在开发过程中获取详细信息,及时发现并解决问题。合理配置日志不仅有助于调试,还能分析用户行为,提升应用性能和稳定性。
36 0
|
20天前
|
开发者 Java
JSF EL 表达式:乘技术潮流之风,筑简洁开发之梦,触动开发者心弦的强大语言
【8月更文挑战第31天】JavaServer Faces (JSF) 的表达式语言 (EL) 是一种强大的工具,允许开发者在 JSF 页面和后台 bean 间进行简洁高效的数据绑定。本文介绍了 JSF EL 的基本概念及使用技巧,包括访问 bean 属性和方法、数据绑定、内置对象使用、条件判断和循环等,并分享了最佳实践建议,帮助提升开发效率和代码质量。
26 0
|
22天前
|
监控 网络协议 Java
Tomcat源码解析】整体架构组成及核心组件
Tomcat,原名Catalina,是一款优雅轻盈的Web服务器,自4.x版本起扩展了JSP、EL等功能,超越了单纯的Servlet容器范畴。Servlet是Sun公司为Java编程Web应用制定的规范,Tomcat作为Servlet容器,负责构建Request与Response对象,并执行业务逻辑。
Tomcat源码解析】整体架构组成及核心组件

相关产品

  • 物联网平台
  • 推荐镜像

    更多