原文地址:https://blog.csdn.net/qq_31867231/article/details/109364561

使用场景

需要将 tb 从网关接收到的设备信息保存到自己的项目中。

配置步骤

tb 系统属性

这里需要使用到规则链中属性集的 originator fields

发送者字段添加消息发送者字段值到消息元数据中将获取在映射中指定的字段值。如果指定的字段不是发起者字段的一部分,它将被忽略。

可以添加的系统属性值为 device 表中的字段,

CREATE TABLE "public"."device" (
"id" uuid NOT NULL,
"created_time" int8 NOT NULL,
"additional_info" varchar COLLATE "pg_catalog"."default",
"customer_id" uuid,
"type" varchar(255) COLLATE "pg_catalog"."default",
"name" varchar(255) COLLATE "pg_catalog"."default",
"label" varchar(255) COLLATE "pg_catalog"."default",
"search_text" varchar(255) COLLATE "pg_catalog"."default",
"tenant_id" uuid,
CONSTRAINT "device_pkey" PRIMARY KEY ("id"),
CONSTRAINT "device_name_unq_key" UNIQUE ("tenant_id", "name")
)
;

这里我们添加设备 id,设备区域

然后从Message Type Switch 连接到系统属性

Post attributes 为设备属性数据

Post telemetry 为设备遥测数据

转换器

转换器的作用是将 tb 的 json 信息转换我们想要的格式

 return {msg: {ts: metadata['ts'],deviceId: metadata['id'],msgType: msgType,deviceType: metadata['deviceType'],deviceName: metadata['deviceName'],label: metadata['label'],msg: msg},metadata: metadata,msgType: msgType};

发送 mqtt

添加 mqtt 模块,填写自己的 mqtt 地址以及订阅主题,这里我使用的 emqx

最终的规则链:

我这边使用了较多的连线类型

我这边配置了emqx的用户名密码认证,需要改成basic类型,还有无认证以及证书认证等。

使用 mqttbox 测试

可以看到 mqtt 已经可以订阅到设备信息,那么这些信息怎么使用,能干什么,就可以为所欲为了

没有收到订阅消息?可以通过调试模式查看问题出现在哪个节点。

关于调试模式:

可以看到图中的五个节点,每个节点都可以开启调试模式,然后可以在事件里调试看到一些打印数据。如:我们在第三个节点开启调试模式:

提交之后在规则链里也要提交一次,否则不生效。最终:

当然事件里还有其他类型,如mqtt我们填写错误的信息:

依次事件类型看过去:

查看错误信息:

调试还有很多妙用,自行摸索啦,告辞!

ThingsBoard使用规则链将设备信息转发至外部mqtt相关推荐

  1. 实现阿里云物联网平台设备信息到微信小程序分享过程

    简要说明: 实现微信小程序连接阿里云物联网平台并且显示阿里云设备信息等,设备端采用模拟设备进行数据上传,并且利用规则引擎和自定义的Topic进行信息的接受和发送. 目前效果图 步骤: 1.注册阿里云物 ...

  2. 三星官宣所有5G设备信息图 看完有何感想

    千城发布9月4日消息: 自三星于2019年2月推出其首款5G智能手机以来,这家科技巨头一直在发布数款配备5G芯片组的设备.高通公司(Qualcomm)推出的5G中档SoC仅有助于加速5G在中档手机中的 ...

  3. dotnet 读 WPF 源代码笔记 插入触摸设备的初始化获取设备信息

    在 WPF 触摸应用中,插入触摸设备,即可在应用里面使用上插入的触摸设备.在 WPF 使用触摸设备的触摸时,需要获取到触摸设备的信息,才能实现触摸 获取触摸设备插入 在 WPF 中,通过 Window ...

  4. Mac如何获取iOS设备信息?

    Mac如何获取iOS设备信息? 1.通过shell命令 brew install libimobiledevice idevice_id -l 2.通过Xcode 打开Xcode>连接iOS设备 ...

  5. 【Linux】下固定USB串口设备号(防止设备重复挂载、保证对外接设备信息稳定读取)

    查询串口号 [html] view plain copy python -m serial.tools.list_ports 查询串口号后,根据串口号列出串口详细信息,如: [html] view p ...

  6. Android设备信息的那些事

    Android开发过程中避免不了要获取一些与设备相关的信息,比如deviceId,判断网络类型等.有时候我们到手机设备信息界面看到一个陌生的代号也是一头雾水,虽然有一种似曾相识的感觉,但是确实不知道是 ...

  7. DirectX11 设备、交换链和设备环境如何创建

    设备.交换链和设备环境如何创建 设备环境是什么?创建设备.交换链和设备环境通过什么方法调用? 设备和交换链能够通过Direct3D函数全部创建,这个函数就是D3D11CreateDeviceAndSw ...

  8. python 客户端 如何获取手机_Python学习---Django的request扩展[获取用户设备信息]

    关于Django的request扩展[获取用户设备信息] settings.py INSTALLED_APPS = [ ... 'app01', # 注册app ] STATICFILES_DIRS ...

  9. uniapp在安卓和IOS端 APP固定竖屏及获取设备信息

    在项目文件App.vue 的 onLaunch 生命周期函数里添加 调取hbuilder 5+APPJS 的方法 plus.screen 函数 plus.screen.lockOrientation( ...

最新文章

  1. 我在神策做研发 | 与客户难题“对抗”的百余天
  2. 技术情报局(笛卡尔树)
  3. 案例:java进制互转
  4. php 检测函数是否为对象,php如何查看对象方法
  5. 天津大学计算机专硕_「20考研」计算机考研专业课变动汇总
  6. 对话彭军、楼教主:1.12亿美元融资来了,Pony.ai车队也已在路上 | 变局者
  7. C++模板类中使用静态成员变量(例如Singleton模式)
  8. Bailian2786 Pell数列【数列】(POJ NOI0102-1788,POJ NOI0103-1788)
  9. oracle数据库之间数据同步
  10. 电力猫引起的OpenWrt路由器死机掉线的原因
  11. The JSR-133 Cookbook for Compiler Writers 中英对照版翻译
  12. 关于three.js 抗锯齿的理解
  13. golang 支付宝小程序 登陆
  14. 边境的悍匪—机器学习实战:第七章 集成学习和随机森林
  15. 【书法】楷书-颜体 vs 欧体
  16. 4年亏损超6亿,摩贝化学赴美上市能否输血成功?
  17. 使用Python爬取豆瓣电影 Top 250
  18. 两个苹果手机共享步数_两个苹果手机同一个id数据是否共享?
  19. zookeeper总结
  20. 学习java就业前景与工资待遇究竟怎么样?

热门文章

  1. 如何制作音乐播放器页面
  2. Android 模拟器硬件加速
  3. Android OpenGL ES 学习(十一) –渲染YUV视频以及视频抖音特效
  4. 仁润云出品丨浅析传统风控与大数据风控
  5. 网上打印纳税申报表等预览有网格打印不显示
  6. 微信支付调用第三方系统无返回值的问题
  7. 【Windows10+Ubuntu22.04双系统 华硕主板 B660M-plus 装机个人总结】
  8. 用R制作gif动态图以及从gif中提取图片
  9. curl 错误:unable to verify the first certificate 解决办法
  10. 【SpringCloud】SpringCloud简介