`
rensanning
  • 浏览: 3569098 次
  • 性别: Icon_minigender_1
  • 来自: 大连
博客专栏
Efef1dba-f7dd-3931-8a61-8e1c76c3e39f
使用Titanium Mo...
浏览量:38588
Bbab2146-6e1d-3c50-acd6-c8bae29e307d
Cordova 3.x入门...
浏览量:609008
C08766e7-8a33-3f9b-9155-654af05c3484
常用Java开源Libra...
浏览量:684404
77063fb3-0ee7-3bfa-9c72-2a0234ebf83e
搭建 CentOS 6 服...
浏览量:90534
E40e5e76-1f3b-398e-b6a6-dc9cfbb38156
Spring Boot 入...
浏览量:403176
Abe39461-b089-344f-99fa-cdfbddea0e18
基于Spring Secu...
浏览量:69971
66a41a70-fdf0-3dc9-aa31-19b7e8b24672
MQTT入门
浏览量:92332
社区版块
存档分类
最新评论

MQTT入门(6)- 主题Topics

阅读更多
MQTT是基于topic来发布消息的,发布者在发布消息时需要指定该消息发布在哪个topic下。

topic最容易的理解方式是文件夹路径。如果有成千上万的不同类型的文件要保存,为了合理放置这些文件,需要创建一系列有层次性的文件夹来管理它们。发布消息就好比把文件保存到不同的文件夹下。

和文件夹类似,topic有主题级别,各级别之间是以斜杠(/)来分隔的。
比如: rensanning/home/room1/light/brightness 就有5个级别。
  • 第1层:用户
  • 第2层:场所
  • 第3层:位置
  • 第4层:物件
  • 第5层:数据指标




(1)topic名是大小写敏感的。
比如以下四个是分别不同的主题:
引用
room1/light/brightness
room1/Light/brightness
Room1/light/brightness
Room1/Light/Brightness


(2)topic名中的每个主题级别可以使用任何UTF-8字符。

(3)尽可能避免使用美元符$开头。
因为一般MQTT服务器都会使用$开头的topic存储统计信息。

比如:$SYS主题
用于存贮Broker的运行信息,只读topic不能往里publish消息。
$SYS主题有很多,具体可以参考:
http://mosquitto.org/man/mosquitto-8.html
https://github.com/mqtt/mqtt.github.io/wiki/SYS-Topics

(4)通配符:+、#
基于主题的消息过滤,可以使用通配符来订阅多个主题的消息。

但是发布消息时,不可以使用通配符,必须指定完整的topic名,如果想发送给多个topic,需要发布多次。

加号+:单层匹配


井号#:多层匹配,多用于前方一致的匹配


准确匹配一个topic:


匹配所有topic:

  • 大小: 3.6 KB
  • 大小: 6.2 KB
  • 大小: 6.5 KB
  • 大小: 6.2 KB
  • 大小: 5.6 KB
分享到:
评论
2 楼 ipodao 2018-12-20  
写的很是清楚了,我找到一份中文协议:
https://mcxiaoke.gitbooks.io/mqtt-cn/content/mqtt/01-Introduction.html
1 楼 Cavani_cc 2018-09-29  
还行

相关推荐

    1200 appinventor项目:MQTT即时通信

    发布者发送消息到特定的主题(Topics),订阅者则订阅感兴趣的主题以接收消息。代理作为中间人,负责路由消息到正确的订阅者。 在App Inventor中实现MQTT通信,可能需要用到第三方组件,如MAPIE(MAPI for App ...

    ActiveMQ实践入门指南_ActiveMQ实践入门指南_源码

    ActiveMQ是Apache软件基金会的一个项目,它遵循JMS规范,支持多种协议,包括OpenWire、STOMP、AMQP、MQTT和WS-Messaging。ActiveMQ不仅提供了消息传递的功能,还支持发布/订阅和点对点模式,可以处理事务、持久化和...

    HETF-ActiveMQ入门手册.zip

    2. **主题(Topics)与队列(Queues)**:主题支持发布/订阅模式,一条消息可以被多个消费者接收;队列则遵循FIFO(先进先出)原则,每条消息仅被一个消费者接收。 3. **持久化(Persistence)**:ActiveMQ可以将...

    activemq入门实例

    ActiveMQ是一个高性能、灵活且功能丰富的消息代理,支持多种消息协议,如OpenWire、STOMP、AMQP、MQTT等,使得不同平台和语言的应用可以方便地进行通信。它提供了多种消息模型,包括点对点(Point-to-Point)、发布/...

    Windows系统字体转unifont字体v2.0(grub4dos字体生成工具)

    在IT领域,尤其是在图形设计和跨平台应用开发中,字体的选择和使用是非常关键的。"Windows系统字体转unifont字体工具"是一个专门用于将Windows操作系统中的字体转换为unifont格式的工具。这个工具的主要目标是帮助用户解决在不同操作系统之间字体兼容性的问题,特别是对于那些需要支持大量字符集,如Unicode的项目。 Unifont是一种开放源代码的字体,包含了几乎所有的Unicode字符,因此在多语言环境和开源软件中特别受欢迎。它提供了一种统一的视觉体验,确保无论在哪种操作系统或设备上,都能准确显示各种语言的文字。然而,Windows系统默认的字体并不包含所有Unicode字符,这可能导致在某些情况下无法正确显示非标准字符。 转换过程涉及以下几个核心知识点: 1. **字体格式**:Windows系统中常见的字体格式有TrueType(.ttf)和OpenType(.otf),而unifont是一种特殊的Bitmap字体,通常以.gz ufnt或.ttf.gz形式存在。Bitmap字体将每个字符绘制为位图,适合低分辨率屏幕或嵌入式系统,但可能在高分辨率下显得模糊。

    uClinux源代码中Make文件完全解析.pdf.rar

    uClinux源代码中Make文件完全解析.pdf.rar

    最新更新!上市公司股吧舆论数据(2008-2023年)

    ## 介绍 进入互联网新媒体时代,“股吧”作为一类专门针对上市公司的社交媒介,已经成为中小投资者分享投资经验和发表对公司运营意见的重要平台,股吧舆论作为投资者情绪的反映,直接影响股票的市场表现。 ## 一、上市公司股吧舆论数据的介绍 “股吧”作为新兴社交媒体代表,本身并不提供信息,仅提供多方交互平台,其将个体间的实时交流和回应形成公众关注和舆论;因此,股吧舆论数据可以帮助研究人员深入分析网络舆论与企业表现之间的关系,并为投资者提供情绪波动的参考依据。 本分享数据年份为2008年到2023年,数据来源于东方财富网股吧,涉及A股上市公司的讨论情况,涵盖了股吧发帖数量、阅读量、评论次数等多个维度。 ## 二、数据指标

    【东海证券-2025研报】公司深度报告:AIOT次新品显著放量,产品矩阵拓展布局新市场.pdf

    【东海证券-2025研报】公司深度报告:AIOT次新品显著放量,产品矩阵拓展布局新市场.pdf

    基于SpringBoot的图书管理系统(源码+数据库+万字文档+ppt)358

    图书管理系统,系统包含两种角色:管理员、用户,系统分为前台和后台两大模块,主要功能如下。 前台: - 首页:展示系统的概览信息。 - 图书信息:展示图书的详细信息。 - 公告信息:展示图书馆相关的通知公告。 - 在线咨询:提供在线客服咨询服务。 - 个人中心:用户可以登录后进入个人中心 后台: 管理员角色: - 个人中心:管理员可以管理个人信息,修改密码等。 - 用户管理:管理员可以对用户的信息进行增删改查等操作。 - 图书分类管理:管理员可以管理图书分类信息,添加、修改、删除分类名称及其描述。 - 图书信息管理:管理员可以管理图书的基本信息。 - 系统管理:管理员可以管理系统的一些通用配置。 二、项目技术 编程语言:Java 数据库:MySQL 项目管理工具:Maven 前端技术:Vue 后端技术:SpringBoot 三、运行环境 操作系统:Windows、macOS都可以 JDK版本:JDK1.8以上都可以 开发工具:IDEA、Ecplise、Myecplise都可以 数据库: MySQL5.7以上都可以 Maven:任意版本都可以

    企业数字化转型IT信息化战略.pdf

    企业数字化转型IT信息化战略.pdf

    LB1Q-PHP+MySql_1个通用条件工资成绩等通用查询系统手机加强版版(Utf-8)_2024最终版.zip

    LB1Q-PHP+MySql_1个通用条件工资成绩等通用查询系统手机加强版版(Utf-8)_2024最终版

    基于Python卷积神经网络人脸识别驾驶员疲劳检测与预警系统+源码+文档(毕业设计)

    基于Python卷积神经网络人脸识别驾驶员疲劳检测与预警系统+源码+文档(毕业设计)本资源中的源码都是经过本地编译过可运行的,评审分达到95分以上,适合正在准备毕业设计或者大作业的学生和实战人员,可作为毕业设计、大作业,资源项目的难度比较适中,内容都是经过助教老师审定过的能够满足学习、使用需求,如果有需要的话可以放心下载使用。 基于Python卷积神经网络人脸识别驾驶员疲劳检测与预警系统+源码+文档(毕业设计)基于Python卷积神经网络人脸识别驾驶员疲劳检测与预警系统+源码+文档(毕业设计)基于Python卷积神经网络人脸识别驾驶员疲劳检测与预警系统+源码+文档(毕业设计)基于Python卷积神经网络人脸识别驾驶员疲劳检测与预警系统+源码+文档(毕业设计)基于Python卷积神经网络人脸识别驾驶员疲劳检测与预警系统+源码+文档(毕业设计)基于Python卷积神经网络人脸识别驾驶员疲劳检测与预警系统+源码+文档(毕业设计)基于Python卷积神经网络人脸识别驾驶员疲劳检测与预警系统+源码+文档(毕业设计)基于Python卷积神经网络人脸识别驾驶员疲劳检测与预警系统+源码+文档(毕业设

    江门市乡镇边界,矢量边界,shp格式

    矢量边界,行政区域边界,精确到乡镇街道,可直接导入arcgis使用

    平芯微PW4584应用电路pcb,ad格式

    平芯微PW4584应用电路pcb,ad格式

    基于SpringBoot的民宿管理系统(源码+数据库+万字文档)336

    民宿管理系统,系统包含两种角色:管理员、用户,系统分为前台和后台两大模块,主要功能如下。 前台功能: 1. 首页:展示民宿的相关信息和推荐房源。 2. 房间信息:用户可以查看房间的详细信息。 3. 论坛:用户可以在论坛上进行讨论和交流。 4. 公告信息:展示民宿的公告信息,包括优惠活动、重要通知等。 5. 个人中心:用户可以管理个人信息、订单记录、收藏房源等。 后台功能: 用户: 1. 个人中心:管理个人信息。 2. 房间信息管理:管理房间信息,包括添加、编辑、删除房间信息。 3. 论坛管理:管理论坛帖子,包括查看、删除、置顶等操作。 4. 公告信息管理:管理公告信息,包括添加、编辑、删除公告等操作。 管理员: 1. 个人中心:管理个人信息。 2. 管理员管理:管理其他管理员账号,包括添加、编辑、删除管理员等操作。 3. 基础数据管理:管理基础数据,包括地区信息、设施信息等。 4. 房间信息管理:管理房间信息,包括添加、编辑、删除房间信息。 5. 论坛管理:对论坛帖子进行管理,包括查看、删除、置顶等操作。 6. 公告信息管理:管理公告信息,包括添加、编辑、删除公告等操作。

    30012第9章MCS-51单片机IO接口技术20140413.ppt

    30012第9章MCS-51单片机IO接口技术20140413.ppt

    【最新版】 JESD22-A104F.01 2023.rar

    【最新版】 JESD22-A104F.01 2023.rar

    基于SpringBoot的船舶维保管理系统(源码+数据库+万字文档)381

    船舶维保管理系统,系统包含四种角色:管理员、船家、维保人员、维保公司,系统分为前台和后台两大模块,主要功能如下。 船家: - 个人中心:管理个人信息。 - 公告管理:查看和发布系统公告。 - 船舶管理:管理自己的船舶信息。 - 维保公司管理:选择和管理维保公司。 - 维保计划管理:制定和管理船舶的维保计划。 - 故障上报管理:上报船舶的故障情况。 维保公司: - 个人中心:管理个人信息。 - 公告管理:查看和发布系统公告。 - 船舶管理:管理负责的船舶信息。 - 维保人员管理:管理维保人员的信息。 - 维保计划管理:制定和管理船舶的维保计划。 - 故障上报管理:接收和处理船舶的故障上报。 - 维修成本管理:记录和统计维修过程中的成本。 维保人员: - 个人中心:管理个人信息。 - 公告管理:查看系统公告。 - 船舶管理:管理负责的船舶信息。 - 维保计划管理:查看和执行船舶的维保计划。 - 故障上报管理:上报船舶的故障情况。 - 维修成本管理:记录和统计维修过程中的成本。

    LW3T-PHP+TXT_3个通用条件工资成绩等通用查询系统电脑网页版版(Utf-8)_2024最终版.zip

    LW3T-PHP+TXT_3个通用条件工资成绩等通用查询系统电脑网页版版(Utf-8)_2024最终版

    【东兴证券-2025研报】食品饮料行业:市场预期逐渐改变,关注短期估值修复行情.pdf

    【东兴证券-2025研报】食品饮料行业:市场预期逐渐改变,关注短期估值修复行情.pdf

Global site tag (gtag.js) - Google Analytics