[]
在接入物联网数据时,Wyn三种高效的数据传输模式:MQTT、HTTP与WebSocket。
MQTT: 一种轻量级的发布/订阅模式协议,特别适用于资源受限的环境或网络条件不稳定的场景。通过“订阅”机制,仅接收需要的主题消息,从而大幅节省带宽与能耗,实现高效的信息交换。
HTTP: 互联网上应用最为广泛的一种网络协议。在物联网场景下,我们采用HTTP轮询的方式,由设备定期向服务器发起请求,获取最新的状态更新或控制指令。这种方式适合于数据更新频率较低的应用,保证了数据的准确性和安全性。
WebSocket: 提供了一种全双工的通信渠道,允许服务器主动推送数据至客户端,无需客户端频繁请求。这种模式特别适用于需要持续接收消息的场景。
对以上三种模式,可根据您当前的系统可选择最适合的数据接入方式。
在接入物联网数据时,您需要填写连接信息、消息模板、以及根据消息模板来设计我们要在仪表板中消费的虚拟实体。
本节我们将为您介绍如何接入一个简单的物联网数据并对其进行管理,后续的小节为您详细介绍在设计器中的具体操作。
在文档门户首页,单击加号,选择仪表板下的准备数据。

在准备数据页面,滚动条拖到底部,点击创建物联网数据。


开始创建时,设计器分为三部分:
上方为菜单栏,可以保存/更新/关闭文档、测试连接,以及显示文档名称;
左侧为连接信息的表单,可以填写和修改连接信息,填写消息模板;
右侧为设计虚拟实体的区域。
带红色星号的配置为必填项。
MQTT 协议的配置示例如下:

WebSocket 协议的配置示例如下:

HTTP 协议的配置示例如下:

连接类型 | 参数 | 是否必填 | 说明 |
|---|---|---|---|
MQTT | 服务器地址 | 是 | MQTT Broker地址和端口,主机名或IP地址,端口默认1883,也支持填写ws地址。 示例: localhost 10.32.3.173 |
主题 | 是 | 需要订阅的MQTT主题。 | |
用户名 | 否 | 开启匿名访问时可不填。 | |
密码 | 否 | 开启匿名访问时可不填。 | |
开启SSL/TLS加密 | 是 | 默认关闭, | |
字符集 | 是 | 支持UTF-8、GBK、Big5三种字符集,默认字符集UTF-8。 | |
WebSocket | 接口地址 | 是 | WebSocket只需要填写接口地址。 |
HTTP | 端点地址 | 是 | |
请求方法 | 是 | 可选GET和POST,默认是GET。 | |
地址请求头 | 否 | 为当前选择的端点地址配置请求头,可添加 Http 头字段,可设置字段名称和字段值。 | |
有效载荷 | 否 | 当使用 POST 请求方法时,可根据需要传输数据的类型设置有效载荷。 我们给出了三种选项:none, raw, x-www-form-urlencoded | |
Raw类型 | 否 | 当有效载荷选择raw时,可选择raw类型,有五种选项:text、javascript、json、html、xml。 |
可通过单击页面上方菜单栏中保存按钮旁边的测试连接按钮来测试配置的连接信息是否正常。
必须填完必填项才可点击测试连接按钮。

连接成功后,单击确定按钮。

在文本框中输入示例消息,消息模板的内容必须和接收的消息格式一致。

输入不合法的JSON会有警告或错误提示。
输入JSON文本后可以单击下方JSON格式化按钮,使输入框中的内容更友好的展示。
点击示例消息输入框下方的设计虚拟实体按钮。在右侧将出现示例消息的结构

上方搜索框中可搜索消息结构中的节点;
中间红框内呈现消息结构,如果节点较深或层级较多,无法完整呈现整个消息结构时,可以拖拽右侧和下方滚动条;
下方为操作按钮,当选中消息结构中的节点时,可点击添加到虚拟实体中。
JSON树
JSON树中,数组节点会显示数组图标
,对象节点会显示对象图标
;
展开按钮
指挥呈现在数组和对象节点;
示例消息如果是JSON数组,根节点会显示Array,否则会显示Object;
选中父节点会自动全选子节点,选中根节点会自动全选所有节点;
如果示例消息中,根节点或某个子节点是数组且包含多个元素,在消息结构中会只呈现此数组中第一个元素的结构;
选中消息结构中的一个或多个节点,点击消息结构下方的按钮添加到虚拟实体。
如果是首次添加,将会自动创建一个虚拟实体,并将选中的节点添加到这个新的虚拟实体中。
如果右侧已有创建好的虚拟实体,单机添加按钮会将选中的节点添加到右侧选中的虚拟实体中。
右侧虚拟实体列表也可手动添加空的虚拟实体,然后将选中的节点添加到新创建的虚拟实体中。

type=warning
如果有选中的节点在数组节点下,在单击添加到虚拟实体时,需要为选中的数组节点添加过滤器,详情请参考添加过滤器。
将选中的JSON的节点添加到虚拟实体中后,在虚拟实体的卡片中会呈现出这个属性的值,值的数据来自于示例消息中的JSON文本。
虚拟实体中属性的数据类型就来自于系统对于属性的值的推断。
以我们的示例消息为例:
属性 | 值 | 类型 | 推断理由 |
|---|---|---|---|
deviceId | device001 | 字符串 | 包含数字字母或其它字符,无法转换为其它类型的是字符串。 |
timestamp | 2023-07-08T14:30:00Z | 日期时间 | 格式符合ISO 8601标准,通常用于表示具体的日期和时间。在Wyn中,这种格式的数据通常会被解析为日期时间类型。 |
temperature | 25.3 | 数字 | 浮点数和整数都是数字类型。 |
battery | 82 | 数字 | 浮点数和整数都是数字类型。 |
online | true | 布尔 | 值为true和false时是布尔类型。 |

10-1.修改虚拟实体名称
在创建虚拟实体时,系统会自动分配虚拟实体名称:”虚拟实体1“、”虚拟实体2“ 、. . .
如果您需要为虚拟实体提供更准确的描述业务的名称,可以点击虚拟实体名称直接编辑,填写需要的名称。

10-2.为属性创建别名
在消息结构中选择节点添加到虚拟实体中时,我们默认将节点名作为虚拟实体中的属性名称。
如果您不希望在仪表板中使用默认属性名称,可以为属性添加别名。
如果多次添加节点到虚拟实体中,节点名与当前虚拟实体中的属性名重名时,系统会自动分配一个别名(可修改)。

type=warning
虚拟实体名称与属性别名命名规则:名称中只允许包含中文、数字、字母、下划线。
10-3.收起展开虚拟实体卡片
单击虚拟实体标题栏左侧的收起/展开按钮,可操作虚拟实体卡片中属性展开或收起。

10-4.删除虚拟实体或删除属虚拟实体中的属性
如果需要删除虚拟实体,可单击虚拟实体标题栏最右边的删除按钮。
如果需要删除虚拟实体中的属性,可单击属性行最右边的删除按钮。

创建好虚拟实体后,如果需要保存文档,可单击菜单栏中的保存按钮保存文档;
单击保存按钮后会弹出保存文档的对话框,里面可设置文档名称、文档描述信息;
单击确定后即可保存文档。

文档保存成功后,后台会快速开启物联网数据的订阅,此时就可以在仪表板中使用文档了。
type=warning
注意事项:
设计器中必填项未填时无法点击保存按钮;
保存文档前至少需要设计一个有字段的虚拟实体;
测试连接是成功或失败都不影响文档保存;