使用MQTT数据表
简介
MQTT 协议是基于发布/订阅模式的轻量级物联网通信协议,凭借简单易实现、支持 QoS、报文小等特点,占据了物联网协议的半壁江山。
开始创建“MQTT”数据表
进入“设计器”,切换至“数据”标签,点击左侧“+ 新建”按钮启动创建数据表的流程。输入合适的数据表名称,并选择“MQTT”类型:
如上图所示,“MQTT”数据表有着如下几个可配置属性:
-
接入点地址 (Broker Address)
MQTT服务器或"消息代理"(Broker)地址。
-
端口号 (Broker Port)
基于WebSocket及TLS的MQTT连接端口号。通常为443。
-
鉴权方式
目前只支持密钥认证,即 用户名 + 密码 的方式。
-
用户名
连接用户名。
-
密码
连接密码。
为保持连接的持久性,应使用长效密钥。
-
订阅主题
主题(Topic)应用于MQTT客户端。topic 规则允许字符串可以带通配符“#”或 “+”。
-
消息示例
物可视接收JSON格式的消息。
可以手动填入消息实例或者通过 一键获取 按钮自动填入。
确保 1 - 4 项内容已正确填写,点击 一键获取 按钮,在30秒内有订阅主题的消息发出,最新一条消息示例会自动填入输入框中。
-
查询语句
配置消息示例所需的对应查询语句。以JSONata格式查询上述的json格式,查询语句格式为JSONata格式 查看文档(消息示例 + 查询语句 => 预览结果)
-
预览结果
该选项仅用来查看,无法修改。(消息示例 + 查询语句 => 预览结果)
可将其进行缩放,查看当前结果是否符合预期。
预览结果支持的JSON层级只能是一级。例如
{"a":1, "b": 1}
或[{"a":1, "b": 1}]
。对于嵌套形式的json是不符合条件的,例如:{"a":{"b":"2"}}
。 -
数据更新方式
该属性控制各批次数据的组合方式:
- “追加”表示新推送的数据被“添加”在现有数据之后,数据表最大行数为 1000 行,如超过最大行数,最早的数据被移出数据表(“先进先出”);
- “覆盖”表示新推送的消息将替换表中的现有数据。
预览消息示例数据表
点击页面最下方“下一步”按钮,进入数据预览页面。该页面展示了在上述配置下,最终数据表的格式与数据。
此刻,我们还未真正创建及保存数据表,若发现生成的数据表不符合预期,可点击“上一步”按钮返回配置页面修改。
完成创建
若生成的数据符合需求,则可点击”确定“按钮,完成数据表的创建及保存。创建成功后页面跳转到真实数据展示页面:
绑定数据
此后,我们可以进一步编辑“流水线”,如“新增一列”、“列排序”等,也可返回“画布”区域,对可视化元件进行数据绑定等。例如,我们可以在画布上新建一个“表格组件”:
点击绑定图标,在弹窗中选择刚创建的数据表“本地气温记录”:
点击“确定”关闭弹窗返回画布,将“表格”组件的列数调整为与数据一致的 3 列。点击运行查看运行时的效果。随着Mqtt新消息的不断推送,数据会不断更新。
当数据更新方式配置项选择为叠加时,最新数据会被添加到现有数据之后。
如果希望最新数据显示在表格最前方,可以通过数据表处理-行排序,将数据行按照时间戳降序排列。
至此,画布上的“表格”组件已经正确显示MQTT数据了。