【开源物联网平台】FastBee使用EMQX5.0接入步骤
🌈 个人主页:帐篷Li
🔥 系列专栏:FastBee物联网开源项目
💪🏻 专注于简单,易用,可拓展,低成本商业化的AIOT物联网解决方案
目录
一、将java内置mqtt broker切换成EMQX5.0
1.1 修改application.yml配置
1.2 使用docker-compose-emqx.yml进行部署
二、EMQX5.0配置
2.1 配置文件方式
2.2 控制台创建方式
2.2.1配置Http认证
2.2.2 配置设备上下线回调
一、将java内置mqtt broker切换成EMQX5.0
1.1 修改application.yml配置

1.2 使用docker-compose-emqx.yml进行部署
# 使用emqx版本mqtt broker输入该命令:
sudo cp -rf docker-compose-emqx.yml docker-compose.yml
二、EMQX5.0配置
- EMQX配置Http认证和Webhook(处理客户端上下线),有两种方式:
- 通过emqx.conf文件配置,已有配置好的文件位于
docker/data/emqx/ect文件夹; - 通过18083端口,打开EMQX控制台,创建客户端认证,数据桥接和规则
- 通过emqx.conf文件配置,已有配置好的文件位于
- EMQX账号
- 控制台默认账号 (admin,public)
- docker-compose方式部署,emqx.conf中配置的账号(admin,admin123)
注意
EMQX控制台修改的账号,配置的Http认证、Webhook和规则会被emqx.conf中对应配置覆盖掉。官网解释如下:
- 通过 Dashboard、HTTP API 或 CLI 进行的更改将在运行时写入 data/configs/cluster.hocon 文件并立即生效。
- 如果相同的配置项在 etc/emqx.conf 文件中设置不同值,则在重新启动后,最终生效的是 etc/emqx.conf 中的配置。 为避免混淆,强烈建议不要在 cluster.hocon 和 emqx.conf 中具有相同的配置键。
emqx.conf配置文件中存在任何规则,设备消息转发的规则,也要配置在emqx.conf中。
2.1 配置文件方式
下面内容复制到emqx.conf文件中
# 设置控制台端口和默认账号
dashboard {listeners.http {bind = 18083}default_username = "admin"default_password = "admin123"
}# http 认证
authentication = [{mechanism = password_basedbackend = httpenable = truemethod = posturl = "http://177.7.0.13:8080/iot/tool/mqtt/authv5"body {clientid = "${clientid}"username = "${username}"password = "${password}"peerhost = "${peerhost}"}headers {"Content-Type" = "application/json""X-Request-Source" = "EMQX"}}
]# WebHook(匹配上线和下线规则后触发)
bridges {webhook.fastbee_hook ={enable = trueconnect_timeout = 15sretry_interval = 60spool_type = randompool_size = 8enable_pipelining = 100max_retries = 2request_timeout = 15smethod = posturl = "http://177.7.0.13:8080/iot/tool/mqtt/webhookv5"body = "{\"clientid\" : \"${clientid}\",\"event\" : \"${event}\",\"peername\" : \"${peername}\"}"headers = { accept = "application/json" "cache-control" = "no-cache" connection = "keep-alive" "content-type" = "application/json" "keep-alive" = "timeout=5"}}
}# 规则(处理上线和下线)
rule_engine {ignore_sys_message = truejq_function_default_timeout = 10srules.fastbee_rule = {sql = "SELECT * FROM \"t/#\",\"$events/client_connected\", \"$events/client_disconnected\", \"$events/session_subscribed\""actions = ["webhook:fastbee_hook"]enable = truedescription = "处理设备上下线和订阅完主题的规则"}
}
2.2 控制台创建方式
2.2.1配置Http认证

请求方式:POST请求地址:http://177.7.0.13:8080/iot/tool/mqtt/authv5 (地址可以是内网或者外网,确保能访问)请求Body:
{"clientid": "${clientid}","password": "${password}","username": "${username}","peerhost": "${peerhost}"
}
2.2.2 配置设备上下线回调
- Webhook配置,设置回调http接口

数据桥接名称:fastbee_hook (随意填写)请求方式:POST请求地址:http://177.7.0.13:8080/iot/tool/mqtt/webhookv5 (地址可以是内网或者外网,确保能访问)请求Body:
{"clientid" : "${clientid}", "event" : "${event}", "peername" : "${peername}"}
- 创建规则,让设备连接/断开连接/主题订阅完成时,回调http api

规则名称:fastbee_rule (随意填写)
SQL编辑器内容(分别代表客户端连接/断开连接/主题订阅完成):
SELECT * FROM "t/#","$events/client_connected", "$events/client_disconnected", "$events/session_subscribed"
动作:选择创建的数据桥接fastbee_hook相关文章:
【开源物联网平台】FastBee使用EMQX5.0接入步骤
🌈 个人主页:帐篷Li 🔥 系列专栏:FastBee物联网开源项目 💪🏻 专注于简单,易用,可拓展,低成本商业化的AIOT物联网解决方案 目录 一、将java内置mqtt broker切换成EMQX5…...
【数学】【组合数学】1830. 使字符串有序的最少操作次数
作者推荐 视频算法专题 本博文涉及知识点 数学 组合数学 LeetCode1830. 使字符串有序的最少操作次数 给你一个字符串 s (下标从 0 开始)。你需要对 s 执行以下操作直到它变为一个有序字符串: 找到 最大下标 i ,使得 1 < i…...
算法(数据结构)面试问题准备 二分法/DFS/BFS/快排
一、算法概念题 1. 二分法 总结链接几种查找情况的模板另一个好记的总结总结:搜索元素两端闭,while带等,mid1,结束返-1 搜索边界常常左闭右开,while小于,mid看边界开闭,闭开,结束i…...
Unity3d C#实现文件(json、txt、xml等)加密、解密和加载(信息脱敏)功能实现(含源码工程)
前言 在Unity3d工程中经常有需要将一些文件放到本地项目中,诸如json、txt、csv和xml等文件需要放到StreamingAssets和Resources文件夹目录下,在程序发布后这些文件基本是对用户可见的状态,造成信息泄露,甚至有不法分子会利用这些…...
解释一下分库分表的概念和优缺点。如何设计一个高性能的数据库架构?
解释一下分库分表的概念和优缺点。 分库分表是数据库架构优化的常见手段,主要用于解决单一数据库或表在数据量增大、访问频率提高时面临的性能瓶颈和扩展性问题。 概念: 分库(Sharding-Database): 将原本存储在一个…...
功能强大使用简单的截图/贴图工具,PixPin
一、下载链接 PixPin 截图/贴图/长截图/文字识别/标注 | PixPin 截图/贴图/长截图/文字识别/标注 (pixpinapp.com) 二、功能 截图/贴图/长截图/文字识别/标注 三、安装教程 根据提示安装即可: 四、快捷键 1.软件自带快捷键(右击PixPin查看 )…...
机器学习周报第32周
目录 摘要Abstract一、文献阅读1.论文标题2.论文摘要3.论文背景4.论文方案4.1 多视角自注意力网络4.2 距离感知4.3 方向信息4.4 短语模式 二、self-attention 摘要 本周学习了多视角自注意力网络,在统一的框架下联合学习输入句子的不同语言学方面。具体来说&#x…...
人工智能|机器学习——DBSCAN聚类算法(密度聚类)
1.算法简介 DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一种基于密度的聚类算法,簇集的划定完全由样本的聚集程度决定。聚集程度不足以构成簇落的那些样本视为噪声点,因此DBSCAN聚类的方式也可以用于异常点的检测。 2.算法原…...
Excel F4键的作用
目录 一. 单元格相对/绝对引用转换二. 重复上一步操作 一. 单元格相对/绝对引用转换 ⏹ 使用F4键 如下图所示,B1单元格引用了A1单元格的内容。此时是使用相对引用,可以按下键盘上的F4键进行相对引用和绝对引用的转换。 二. 重复上一步操作 ⏹添加或删除…...
前端实现跨域的六种解决方法
本专栏是汇集了一些HTML常常被遗忘的知识,这里算是温故而知新,往往这些零碎的知识点,在你开发中能起到炸惊效果。我们每个人都没有过目不忘,过久不忘的本事,就让这一点点知识慢慢渗透你的脑海。 本专栏的风格是力求简洁…...
macOS上实现「灵动岛」效果
自从Apple iPhone推出了「灵动岛」功能后,用户们就被其优雅的设计和强大的功能所吸引。然而,作为macOS用户,我们一直在等待这一功能能够在我们的设备上实现。现在,随着新的应用程序的推出,我们终于可以在我们的Mac上体…...
幕译--本地字幕生成与翻译--Whisper客户端
幕译–本地字幕生成与翻译 本地离线的字幕生成与翻译,支持GPU加速。可免费试用,无次数限制 基于Whisper,希望做最好的Whisper客户端 功能介绍 本地离线,不用担心隐私问题支持GPU加速支持多种模型支持(中文、英语、日…...
链表基础知识详解
链表基础知识详解 一、链表是什么?1.链表的定义2.链表的组成3.链表的优缺点4.链表的特点 二、链表的基本操作1.链表的建立2.链表的删除3.链表的查找4.链表函数 一、链表是什么? 1.链表的定义 链表是一种物理存储单元上非连续、非顺序的存储结构…...
GPT-prompt大全
ChatGPT目前最强大的的工具是ChatGPT Plus,不仅训练数据更新到了2023年,而且还可以优先访问新功能。对于程序员来说,升级到ChatGPT Plus,将会带来更多的便利和效率提升。 根据 升级ChatGPT Plus保姆级教程,1分钟就可以…...
的发射点2
☞ 通用计算机启动过程 1️⃣一个基础固件:BIOS 一个基础固件:BIOS→基本IO系统,它提供以下功能: 上电后自检功能 Power-On Self-Test,即POST:上电后,识别硬件配置并对其进行自检,…...
深入揭秘Lucene:全面解析其原理与应用场景(一)
本系列文章简介: 本系列文章将深入揭秘Lucene,全面解析其原理与应用场景。我们将从Lucene的基本概念和核心组件开始,逐步介绍Lucene的索引原理、搜索算法以及性能优化策略。通过阅读本文,读者将会对Lucene的工作原理有更深入的了解…...
拿捏算法的复杂度
目录 前言 一:算法的时间复杂度 1.定义 2.简单的算法可以数循环的次数,其余需要经过计算得出表达式 3.记法:大O的渐近表示法 表示规则:对得出的时间复杂度的函数表达式,只关注最高阶,其余项和最高阶…...
C语言实战—猜数字游戏(涉及循环和少部分函数内容)
对于前面一些内容的总结 不妨跟着一起试试吧 折半查找算法(二分查找) 比如我买了一双鞋,你好奇问我多少钱,我说不超过300元。你还是好奇,你想知道到底多少,我就让 你猜,你会怎么猜?…...
#define MODIFY_REG(REG, CLEARMASK, SETMASK)
#define MODIFY_REG(REG, CLEARMASK, SETMASK) WRITE_REG((REG), (((READ_REG(REG)) & (~(CLEARMASK))) | (SETMASK))) 这个宏 MODIFY_REG 是在嵌入式编程中,它用于修改一个寄存器的特定位,而不影响其他位。这个宏接受三个参数ÿ…...
使用 Docker 部署 Stirling-PDF 多功能 PDF 工具
1)Stirling-PDF 介绍 大家应该都有过这样的经历,面对一堆 PDF 文档,或者需要合并几个 PDF,或者需要将一份 PDF 文件拆分,又或者需要调整 PDF 中的页面顺序,找到的线上工具 要么广告满天飞,要么 …...
Cloudbox备份与恢复策略:数据安全的最佳实践
Cloudbox备份与恢复策略:数据安全的最佳实践 【免费下载链接】Cloudbox Ansible-based solution for rapidly deploying a Docker containerized cloud media server. 项目地址: https://gitcode.com/gh_mirrors/cl/Cloudbox 在当今数字媒体时代,…...
飞书文档批量导出工具:如何高效迁移海量团队知识库?
飞书文档批量导出工具:如何高效迁移海量团队知识库? 【免费下载链接】feishu-doc-export 飞书文档导出服务 项目地址: https://gitcode.com/gh_mirrors/fe/feishu-doc-export 还在为团队协作平台切换而烦恼吗?面对成百上千的飞书文档需…...
如何实现流水线函数_PIPELINED关键字与PIPE ROW应用
PIPE ROW 在 Oracle PL/SQL 中怎么写才不报错直接说结论:pipe row 只能在定义为 pipelined 的函数里用,且函数返回类型必须是已声明的集合类型(比如 table of number),不能是 ref cursor 或标量。常见错误现象…...
GME-Qwen2-VL-2B-Instruct开发入门:Git版本控制与团队协作实践
GME-Qwen2-VL-2B-Instruct开发入门:Git版本控制与团队协作实践 如果你刚开始接触GME-Qwen2-VL-2B-Instruct这类多模态大模型项目,可能会觉得有点手忙脚乱。模型文件、配置文件、推理脚本、数据集……文件又多又杂,今天改一点代码,…...
循环神经网络(RNN)深度解析:从数学原理到智能输入法实战
还在被 Transformer 的复杂度劝退?来认识一下序列建模的鼻祖 RNN——它的思想正以全新姿态回归大模型舞台中央。在自然语言处理中,词语的顺序对于理解句子的含义至关重要。虽然词向量能够表示词语的语义,但它本身并不包含词语之间的顺序信息。…...
Qwen1.5-0.5B-Chat和ChatGLM3-6B对比:轻量模型在边缘设备部署案例
Qwen1.5-0.5B-Chat和ChatGLM3-6B对比:轻量模型在边缘设备部署案例 1. 项目背景与需求 在边缘计算场景中,部署AI模型面临着严峻的资源约束挑战。传统的云端大模型虽然能力强大,但在边缘设备上往往因为计算资源、内存容量和功耗限制而难以实用…...
手把手教你用GD32的ADC+DMA实现多通道数据采集(含二分查找法优化技巧)
GD32多通道ADC数据采集实战:从DMA配置到二分查找优化 在嵌入式开发中,模拟信号采集是连接物理世界与数字系统的关键桥梁。GD32系列MCU凭借其高性能ADC模块和灵活的DMA控制器,为多通道数据采集提供了可靠解决方案。本文将带您从基础配置到高级…...
从GCC源码看DWARF栈展开:_Unwind_FrameState结构体详解与调试技巧
从GCC源码看DWARF栈展开:_Unwind_FrameState结构体详解与调试技巧 调试器如何实现栈回溯?当程序崩溃时,gdb为何能准确显示调用链?这一切的核心在于DWARF调试格式中的栈展开机制。本文将深入GCC 4.8.5源码,剖析_Unwind_…...
从拆解到参数解读:深度剖析B系列高压模块的电路设计奥秘
从拆解到参数解读:深度剖析B系列高压模块的电路设计奥秘 在电源设计领域,高压模块一直是工程师们关注的焦点。B系列高压模块以其紧凑的尺寸、高效的性能和稳定的输出,成为众多应用场景中的首选。本文将带领读者深入探索这款模块的设计精髓&am…...
豆包大模型API实战:从零构建智能对话应用
1. 豆包大模型API初探:为什么选择它? 第一次接触豆包大模型时,我和很多开发者一样好奇:市面上大模型API这么多,为什么偏偏要选它?实测几个月后,我发现了三个真香定律:响应速度快得像…...
