Thingsboard使用gateway网关

2023-05-16

简介:

本次是想测试一下thingsboard网关的使用,实现通过网关+mqtt+thingsboard+emqx
实现间接设备创建和数据传输

前期准备:

thingsboard平台
thingsboard网关
emqx平台
MQTTX工具

详细过程:

1:thingsboard平台搭建

关于thingsboard平台搭建这里就不多介绍了,主要是编译难,这个之前可以看我发布的文章,所以直接跳过。

2:创建网关设备

打开thingsboard平台,点击设备管理界面,点击新建网关设备。
在这里插入图片描述

3:thingsboard网关

首先去github搜索thingboard下载对应网关代码,
地址:https://github.com/thingsboard/thingsboard-gateway
在这里插入图片描述
下载下来后通过代码我们可以发现是使用python写的,可以用pycharm或idea打开,这里我们使用idea打开。

然后第一步肯定是编译了,对应python项目编译,可以直接点击运行,看报什么错误,少什么模块直接引入对应模块,这里附上我最后编译成功后引入的模块。
在这里插入图片描述
引入对应模块包时注意,模块名对应包名可能有些会存在差异,这个和python2和python3的区别有关系。
对应编译过程中,对于有些模块引入失败但是其对应功能不重要时,可以先注释掉,后面有时间再回来看。
例如:楼主有个模块mmh3引入失败,然而发现其非必须时先注释掉,这个mmh3主要是一些加密算法相关的,后面有时间可以去研究一下。
在这里插入图片描述
在这里插入图片描述

对应thingsboard-way项目启动时要注意两个配置地方修改。
1:tb_gateway.yaml文件
2:mqtt.json文件修改,(因为此次我们测试是mqtt,如果测试其他时对应修改其他配置文件即可)
在这里插入图片描述
首先我们看到tb_gateway.yaml
在这里插入图片描述
这里主要注意改一下host和port对应thingsboard平台地址和端口
accessToken对应刚才我们创建的网关设备访问令牌。
然后我们看到mqtt.json文件内容
在这里插入图片描述
这里的host和port对应我们搭建的emqx平台的地址和端口,后面会讲。
对应这个项目编译一般都会一系列问题,有点耐心慢慢解决就好了,这里我们改完相应配置后直接启动。在emqx界面上也能看到我们对应的thingsboard-gateway客户端

在这里插入图片描述

4:emqx搭建

emqx我们可以知道,是一个大规模分布式物联网 MQTT 消息服务器,可以
高效可靠连接海量物联网设备,实时处理分发消息与事件流数据,助力构建关键业务的物联网平台与应用。
这里我们采用docker拉取对应镜像构建。
1拉取镜像

docker pull emqx/emqx:latest

2构建启动容器,指定端口

docker run -d --name emqx -p 1883:1883 -p 8081:8081 -p 8083:8083 -p 8883:8883 -p 8084:8084 -p 18083:18083 0ef9bc19d70e

端口说明
1883:MQTT 协议端口
8883:MQTT/SSL 端口
8083:MQTT/WebSocket 端口
8080:HTTP API 端口
18083:Dashboard 管理控制台端口
0ef9bc19d70e:刚才我们拉取镜像对应的image_id
在这里插入图片描述
3容器启动成功后,打开界面控制台看是否搭建成功。(记得开放对应端口,例如楼主是在阿里云服务器上搭建的找到对应规则开放对应端口,不然是看不到界面的)
访问地址:http://服务器公网ip:18083
登录默认用户名:admin,密码:public
在这里插入图片描述

5:使用MQTTX连接我们的emqx服务器发送设备数据到thingsboard平台。

在这里插入图片描述
连接成功后填写相应主题和消息后点击发送。
在这里插入图片描述
发送成功后我们打开thingsboard设备界面,记得刷新一下。
在这里插入图片描述
在这里插入图片描述
可以看到thingsboard平台上自动为我们创建了设备,且遥测数据也发送成功了,至此我们间接地通过网关帮我们创建了设备且成功上传了数据,大功告成。这个流程通了之后,我们就可以根据我们的业务需求来进行改进。

6:对应mqtt.json文件的解释

在这里插入图片描述
这里的mapping是一个数组列表,里面包含之前定义好的模板。
我们先看到第一个。
topicFilter:对应发送消息的主题
deviceNameJsonExpression:对应在thingsboard平台自动创建的设备名字
deviceTypeJsonExpression:对应设备配置名称
在这里插入图片描述
在这里插入图片描述
attributes对应设备的客户端属性,可以自己定义,根据样例修改。
在这里插入图片描述
timeseries对应遥测数据数组列表,这个遥测数据对应key和value可以根据自己的需求自己定义修改。
接下来我们看到第二个主题
/sensor/+/data
+号代码设备名字,自己填写,后面的属性配置和之前我解释的一样,就不细说了。
后面还有几个规则,这里楼主还没研究,这个后面有时间再细看一下,就先到这里了,感兴趣的可以自己去研究一下。

总结:

本次调试了thingsboard网关的功能,一顿操作下来还是花费了不少时间了,主要都是花在项目编译上,解决项目运行出现的问题,总的来说还是收获不少。这次通过网关间接地在thingsboard平台创建设备和发送遥测数据,采用的还是mqtt协议,后面会再测试一下其他协议的接入过程,感兴趣的小伙伴可以一起交流呀。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Thingsboard使用gateway网关 的相关文章

  • Android jcenter bad gateway 502(Unable to load Maven meta-data from https://jcenter.bintray.com)

    今天在Android studio运行项目的时候报了如下错误 xff0c 项目都编译不过了 xff0c 顿时慌 这里附上gradle额下载地址 gradle Error Could not resolve all files for con
  • 谷粒学院(二十一)网关Gateway

    一 网关基本概念 1 API网关介绍 API 网关出现的原因是微服务架构的出现 xff0c 不同的微服务一般会有不同的网络地址 xff0c 而外部客户端可能需要调用多个服务的接口才能完成一个业务需求 xff0c 如果让客户端直接与各个微服务
  • SpringCloud(九)GateWay服务网关

    文章目录 1 概述简介1 官网2 是什么3 能干嘛4 微服务架构中网关在哪里5 有Zuul了怎么有出来gateway 2 三大核心概念3 Gateway工作流程4 入门配置1 新建Module2 POM文件3 YML4 主启动类5 9527
  • Spring Cloud Gateway(黑马springcloud笔记)

    Gateway 目录 Gateway一 为什么需要网关二 gateway入门三 断言工厂四 过滤器工厂五 全局过滤1 实现2 过滤器执行顺序 六 跨域问题 一 为什么需要网关 不能让外部能够直接访问微服务 xff0c 而是需要通过网关访问
  • 使用MQTT.fx向ThingsBoard发布遥测数据

    一 在ThingsBoard平台新建设备 复制访问令牌 二 打开MQTT fx进行连接 填写服务地址及端口以及设备访问令牌 特别注意 这里踩了个深坑 这个端口一定要对应thingsboard服务thingsboard yml中的配置 这个端
  • 网关Gateway-快速上手

    gateway网关官方文档 https docs spring io spring cloud gateway docs current reference html 网关的概念 网关作为流量的入口 常用的功能包括路由转发 权限校验 限流等
  • 统一网关Gateway快速入门

    1 为什么需要网关 为了不让任何人都能访问我们的微服务 对用户的身份进行一个验证 如果是内部人员才允许访问 如果不是就拦截禁止访问 一切请求都得通过网关在进入到微服务中 2 搭建网关服务 2 1 创建新的module引入依赖
  • Jenkins + NACOS + GATEWAY 实现微服务不停机部署

    Nacos 版本
  • 全网最全的微服务+Outh2套餐,Gateway整合Oauth2!(入门到精通,附源码)满足你的味蕾需要(三)

    上篇文章主要讲解Oauth2模块 user service模块 feign模块 那么作为重中之重的gateway 我们将其做成资源服务器来进行开发 一 资源服务器的实现方式 资源服务器在实际开发有两种实现方式 1 gateway做网关转发
  • 微服务网关鉴权:gateway使用、网关限流使用、用户密码加密、JWT鉴权

    点击关注 芋道源码 2022 09 05 10 32 发表于上海 收录于合集 芋道源码1000个 点击上方 芋道源码 选择 设为星标 管她前浪 还是后浪 能浪的浪 才是好浪 每天 10 33 更新文章 每天掉亿点点头发 源码精品专栏 原创
  • API 网关基础

    目录 一 网关概述 二 网关提供的功能 三 常见网关系统 3 1 Netflix Zuul 3 2 Spring Cloud Gateway 3 3 Kong 3 4 APISIX 3 5 Shenyu 一 网关概述 API网关是一个服务器
  • Nginx配置参数解释

    目录 worker processes work cpu affinity worker rlimit nofile events模块 1 use method 2 worker connections 3 multi accept htt
  • 统一网关Gateway

    Spring Cloud Gateway是Spring官方基于Spring 5 0 Spring Boot 2 0和Project Reactor等技术开发的网关 Spring Cloud Gateway旨在为微服务架构提供一种简单而有效的
  • aivms--CentOS7.6安装/JDK1.8/ThingsBoard CE /PostgreSQL

    先决条件 yum install y nano wget yum install y https dl fedoraproject org pub epel epel release latest 7 noarch rpm 1 安装JDK8
  • Gateway网关简介以及使用

    目录 一 概述简介 1 1 Gateway是什么 1 2 Gateway能干嘛 1 3 Zuul和gateway 1 4 gateway三大核心概念 1 5 gateway工作流程 二 实战练习 2 1 入门demo 2 2 网关路由两种配
  • SpringCloud——GateWay入门

    客户由发送请求由Nginx服务器已经将请求转发到一个服务器上 但是服务之前我们还需要一个网关将这些请求进一步加工处理到服务上 这一步就是GateWay GateWay 1 GateWay服务是不需要进入以下jar包
  • 第五章 Gateway--服务网关

    接上一篇文章开始网关之旅 首先告诉大家网关是什么 Gateway简介 怎么配置 怎么入门 执行流程等等相关介绍 第一章 微服务的架构介绍发展第二章 微服务环境搭建第三章 Nacos Discovery 服务治理第四章 Sentinel 服务
  • 使用 swagger API 和 python 在 Thingsboard 中添加实体关系

    我正在尝试自动化 Thingsboard 节点的设置 2 0 2 我已经成功地使用创建资产和设备oss thingsboard 后端示例 https github com MOSAIC LoPoW oss7 thingsboard back
  • 系列十、Spring Cloud Gateway

    一 Spring Cloud Gateway 1 1 概述 Spring Cloud全家桶中有个很重要的组件就是网关 在1 x版本中采用的是Zuul网关 但是在2 x版本中 由于Zuul的升级一直跳票 Spring Cloud最后自己研发了
  • 视频馈送至 ThingsBoard 仪表板

    我目前使用 ThingsBoard 作为 IoT 代理来捕获来自多个传感器的遥测数据并将其显示到仪表板 我想添加显示来自 iPhone 相机或网络摄像头的实时视频源的功能 我想知道这里是否有人知道 ThingsBoard 是否支持任何类型的

随机推荐

  • 关于UEFI引导的理解

    UEFI 和 Legacy区别 UEFT和Legacy是引导模式 xff0c 是用来引导系统的 按下开机键到看到windows标识 Legacy 传统BIOS模式 xff0c 启动顺序 xff1a 开机 gt BIOS初始化 gt BIOS
  • IDEA license server 地址

    旧地址 xff1a http jetbrains license server 新地址 xff1a http fls jetbrains agent com
  • 线性探测再散列

    哈希表又称散列表 哈希表存储的基本思想是 xff1a 以数据表中的每个记录的关键字 k为自变量 xff0c 通过一种函数H k 计算出函数值 把这个值解释为一块连续存储空间 xff08 即数组空间 xff09 的单元地址 xff08 即下标
  • 特征选择的几种方法

    目录 1 过滤法 xff08 Filter xff09 1 1 方差选择法 1 2 相关系数法 1 3 卡方检验 1 4 互信息法 1 5 relief算法 2 包裹法 xff08 Wrapper xff09 2 1 递归特征消除法 2 2
  • Excel调用有道词典实现批量翻译

    如图所示 xff0c 我们在B2单元格中写入公式 xff1a 61 FILTERXML WEBSERVICE 34 http fanyi youdao com translate amp i 61 34 amp A2 amp 34 amp
  • Python的使用技巧:any all的短路

    注意迭代类型和list的结果是不一样的 xff1a if name 61 61 39 main 39 a 61 1 2 3 if any print i is None for i in a print 6666666666 1 2 3 6
  • curl升级到7.87(centos7和TencentOS2.4 tk)

    centos7升级curl到7 8 7 按照之前写过的一篇文章 大致按描述操作即可 只不过需要做一点点修正 CentOS 7升级curl 乐大师的博客 CSDN博客 centos7 curl升级 更新操作中会报错安装失败 提示如下 nbsp
  • Python中raise…from用法

    本来这几天是计划阅读string模块的源码 xff0c 恰好其中一段异常处理的代码我觉得很新奇 xff0c 也就是raise from的用法 xff0c raise的用法大家都知道 因为我之前没遇到过 xff0c 所以就去网上查了相关的资料
  • AI模型隐私风险及防护技术

    一 背景 随着AI成为新一代关键技术趋势 xff0c 围绕着AI的服务也越来越普及 特别是结合了云计算以后 xff0c 机器学习数据的标注 模型训练及预测等服务纷纷上云 xff0c 为用户提供了强大的算力和优秀的算法 xff0c 极大方便了
  • 汉诺塔的图解递归算法

    一 xff0e 起源 xff1a 汉诺塔 xff08 又称河内塔 xff09 问题是源于印度一个古老传说的益智玩具 大梵天创造世界的时候做了三根金刚石柱子 xff0c 在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘 大梵天命令婆罗门把圆
  • 推荐系统中的矩阵分解总结

    最近学习矩阵分解 xff0c 但是学了好多种类 xff0c 都乱了 xff0c 看了这篇文章 xff0c 系统性的总结了矩阵分解 xff0c 感觉很棒 xff0c 故分享如下 前言 推荐系统中最为主流与经典的技术之一是协同过滤技术 xff0
  • 几种常见的离群点检验方法

    在一组平行测定中 xff0c 若有个别数据与平均值差别较大 xff0c 则把此数据视为可疑值 xff0c 也称离群值 如果统计学上认为应该舍弃的数据留用了 xff0c 势必会影响其平均值的可靠性 相反 xff0c 本应该留用的数 据被舍弃
  • Spring框架介绍及使用(一)

    文章目录 概念为什么要用 xff1f Spring的体系结构Spring框架之控制反转 xff08 IOC xff09 概念Spring文件包解释入门程序入门程序需要的jar包配置文件入门程序的建立ApplicationContext与Be
  • SpringMVC 相关配置

    SpringMVC 相关配置 打印请求与响应日志 打印 64 RequestBody 64 Response日志 https blog csdn net ww 1997 article details 116006445 https www
  • 普通表到分区表转换

    A 通过 Export import 方法 B 通过 Insert with a subquery 方法 C 通过 Partition Exchange 方法 D 通过 DBMS REDEFINITION 方法 比如把test用户下的普通表
  • Ubuntu 20.04 上安装 Node.js 和 npm 的三种方法

    主要介绍三种在 Ubuntu 20 04 上安装 Node js 和 npm 的方法 xff1a 通过Ubuntu标准软件库 这是最简单的安装方法 xff0c 并且适用大多数场景 但是标准软件库中最高版本只有 v10 19 0 root 6
  • android databinding 数据绑定错误 错误:任务':app:compileDebugJavaWithJavac' 的执行失败

    今天到公司照常打开项目 xff0c 突然运行不了显示databinding错误 Error Execution failed for task 39 app compileDebugJavaWithJavac 39 gt android d
  • 解决idea新建Module的奇怪路径问题

    问题由来 xff1a 在部署SpringCloud的时候想新建一个module来快速创建 xff0c 结果被创建出来的目录结构搞得一脸懵逼 xff0c 新建的module的根目录跑到了 xff0c 项目的src目录下 xff0c 整个看起来
  • ThingsBoard源码解析-数据订阅与规则链数据处理

    前言 结合本篇对规则链的执行过程进行探讨 根据之前对MQTT源码的学习 xff0c 我们由消息的处理入手 org thingsboard server transport mqtt MqttTransportHandler void pro
  • Thingsboard使用gateway网关

    简介 xff1a 本次是想测试一下thingsboard网关的使用 xff0c 实现通过网关 43 mqtt 43 thingsboard 43 emqx 实现间接设备创建和数据传输 前期准备 xff1a thingsboard平台 thi