mqtt

MQTT higher QoS on subscriber

ぐ巨炮叔叔 提交于 2021-01-28 01:02:19
问题 If I have a publisher sending a message to my MQTT broker with QoS 1 (at least once delivery) and a subscriber with QoS 2 (exactly once delivery), is it possible for the subscriber to still receive duplicate messages? My concern is that the publisher could send duplicate messages to the broker (since QoS 1 states that is possible) and then the broker would view them all as different messages and forward all of them on to the subscriber. Is this how MQTT brokers work? Or are they smart enough

JavaScript client for MQTT not using WebSockets

风流意气都作罢 提交于 2021-01-27 06:55:09
问题 I am building an AngularJS application and using the Paho JavaScript client to connect to an MQTT broker (test.mosquitto.org) via web sockets. This works just fine. I wanted to connect to the MQTT broker via direct MQTT (for sake of completeness to support brokers that do not have websockets enabled). Since the Paho client does not support direct MQTT, I tried the browserified version of mqtt.js (browserMqtt.js). Here's the main lines from my code: //var options = { host: "test.mosquitto.org"

#2020征文-开发板#鸿蒙开发板智能家居项目

吃可爱长大的小学妹 提交于 2021-01-26 09:52:20
鸿蒙智能家居项目 目录: 一、系统介绍 1 二、功能描述 2 (1)家电控制功能 2 (2)配网功能 3 (3)数据存储功能 3 (4)MQTT、OneNET接入协议支持 3 (5)驱动能力 3 三、代码描述 3 (1)代码流程 3 (2)家电控制部分 4 (3)OneNET初始化部分 5 (4)LED亮度控制 6 (5)数据存储 6 (6)按键处理 7 一、系统介绍 本系统硬件采用Hispark WiFi开发板,主控芯片为Hi3861,操作系统为Harmony OS,软件上支持MQTT、OneNET接入协议,驱动开发包括按键驱动、OLED驱动、PWD驱动开发,其它功能模块有NV数据存储、WiFi配网功能。 整个系统框架如下: 整个系统主要分为3大部分: (1)云平台:这里我使用的是OneNET云平台 (2)Harmony OS软件开发:在开发板上实现相关功能。 (3)硬件:使用到的硬件有:LED灯、OLED屏幕、按键。 整个鸿蒙开发板的软件分为4层: (1)应用:实现智能家居的应用逻辑处理部分。 (2)功能组件:包括MQTT、JSON、数据存储、WiFi配网功能等,为智能家居应用提供关键能力。 (3)内核:Harmony OS内核提供关键能力。 (4)驱动:包括PWM驱动、OLED驱动、WiFi驱动、按键驱动等,为硬件控制提供了能力。 二、功能描述 (1)家电控制功能

ArduinoUNO+ESP8266实现MQTT简单发布(不烧录ESP8266)

我与影子孤独终老i 提交于 2021-01-23 12:49:30
分为以下部分: 1:接线并使用AT指令验证连接 2:使用软串口 3:搭建/配置/测试MQTT服务端 4:在Arduino实现MQTT的PUB客户端 5:总结 接线并使用AT指令验证连接 需要各种线+10k电阻*1 ESP8266的3V3/VCC 接到 3.3V ESP8266的EN 串联一个10k电阻 接到3.3V ESP8266的RX 接到 Arduino的RX0 ESP8266的TX 接到 Arduino的TX1 ESP8266的GND 接地 //验证程序 const int tx = 1 ; const int rx = 0 ; void setup ( ) { pinMode ( rx , INPUT_PULLUP ) ; pinMode ( tx , INPUT_PULLUP ) ; } void loop ( ) { } 将Serial Monitor调整为Both NL&CR,115200 baud 输入AT,ESP8266蓝色灯光闪烁,返回OK 输入AT+GMR,返回版本等信息 如下: 至此,可以验证连接成功。 一些其他常用的AT命令: AT + RST 重置wifi模块 AT + CWLAP 扫AP AT + CWJAP = ”SSID” , ”PASSWORD” 连接到AP AT + CWJAP = ”” , ”” 与所有访问点断开连接 AT + CIFSR

基于云原生CloudEvent实现服务目录

孤街浪徒 提交于 2021-01-18 09:38:49
基于事件驱动的系统架构在日常的平台开发中早已司空见惯,通过消息队列进行事件的发送,然后分别构建对应的生产者和消费者。不过在传统的业务开发模式不同的事件会有不同的格式,不同的生产者生成出的事件格式也各不相同,消费者能消费的格式也是千差万别,本质上事件、生产者、消费者还是耦合的。那如何解决该问题呢?那就是我们今天要聊的CloudEvent。 CloudEvent简介 从官网的CloudEvents描述中我们可以看出,CloudEvent本质上就是一个描述事件数据的规范。所以对于CloudEvents的学习有的时候,我们更多的应该是取理解其设计规范,而不是其所呈现出的数据结构形态。就像大家去学tcp协议一样, 你不是去学的这个字段叫什么,而是要理解为什么会有这个字段,其解决的问题是什么。 如何解耦 对于CloudEvents的学习笔者采用自顶向下的方式来进行学习,即先去了解CloudEvents是如何在平台上进行事件、消费者、生产者的解耦,然后在去思考底层的相关字段的细节 一个事件的生命周期通常会包含生产、传输、消费三个环节,下面我们分别对这三个环节来进行介绍cloudevent与传统事件开发模式的区别。 事件生产 在传统的开发模式下不同的业务生产的的事件也各不相同,并且事件本身数据会相对较少,更多的是类似信号传递的角色,即通知后端服务某个类型事件发生了

wss nginx代理无法获取真实IP解决

夙愿已清 提交于 2021-01-17 03:35:22
最近在做一个小游戏项目,准备上线的时候,却发现移动网络居然连接不了mqtt ,后来客户端把ws 换成wss就解决连接的问题了,但是随之而来的还有另一个问题,服务器无法获取到真实IP了。大致数据是这样的 猜测方向,应该是由于使用了证书文件有关 Nginx简单配置如下 upstream mqttServer { server 127.0.0.1:3088 weight=1; } server { listen 80; listen 443 ssl; server_name www.*****.com; ssl_certificate cert/*****.pem; ssl_certificate_key cert/********.key; ssl_session_timeout 5m; ssl_ciphers ******************************; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; location / { index index.htm index.html index.php; } location /mqtt { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded

Mosquitto: Starting in local only mode

早过忘川 提交于 2021-01-16 04:13:37
问题 I have a virtual machine that is supposed to be the host, which can receive and send data. The first picture is the error that I'm getting on my main machine (from which I'm trying to send data from). The second picture is the mosquitto log on my virtual machine. Also I'm using the default config, which as far as I know can't cause these problems, at least from what I have seen from other examples. I have very little understanding on how all of this works, so any help is appreciated. What I

Mosquitto: Starting in local only mode

怎甘沉沦 提交于 2021-01-16 04:10:07
问题 I have a virtual machine that is supposed to be the host, which can receive and send data. The first picture is the error that I'm getting on my main machine (from which I'm trying to send data from). The second picture is the mosquitto log on my virtual machine. Also I'm using the default config, which as far as I know can't cause these problems, at least from what I have seen from other examples. I have very little understanding on how all of this works, so any help is appreciated. What I

LoRa网关在智慧沙漠油田的应用

浪子不回头ぞ 提交于 2021-01-14 12:56:43
LoRa网关在智慧沙漠油田的应用背景: 随着勘探技术的进步,越来越多的油田在沙漠中被发现,沙漠油田项目数量日益增长。冬季严寒,夏季酷暑,昼夜温差大,恶劣的环境是每个沙漠油田项目的特性;项目覆盖面积广、油田井口分散,种种条件使得沙漠油田项目对于采集系统及通讯设备有极高的要求。 需求难点: 1、沙漠油田项目面积广,井口分布散,蜂窝网络覆盖不全,需要有新方案来实现全面覆盖 2、与各种油田设备及仪表的设备接口对接,实现数据采集 3、设备需在昼夜温差大,沙尘大的恶劣环境下稳定工作 相关产品: 1、LoRa网关—星纵智能UG87 通讯无阻:支持标准LoRaWAN协议V1.0/V1.0.2 接口丰富:支持DI/DO, RS232, 以太网口连接 可扩展容量:支持SSD和Micro SD容量扩展 二次开发:提供Python SDK二次开发 稳定连接:支持双SIM卡/有线/Wi-Fi链路备份 多种频段:支持433/470/868/915/923MHz等频段 快速部署:内置NS服务器,且兼容第三方NS服务,如TTN, LORIOT 2、LoRa远程控制器—星纵智能UC11xx系列 配置方便:支持USB接口和Ursalink Cloud远程配置 安全可靠:上百种触发条件和响应动作 灵活操作:可自定义各种条件和程序化动作 稳定信号:全向性天线最高可覆盖10KM范围 标准协议:遵循LoRaWAN 1.0/1

NB-IOT模块与MQTT.fx使用MQTT协议通讯

主宰稳场 提交于 2021-01-14 11:06:07
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的轻量级消息协议,MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。 本文将演示MQTT PC客户端应用MQTT.fx与上海域格NB-IoT模块LPM2100通过MQTT协议进行通讯。 安装MQTT.fx http://mqttfx.jensd.de/index.php/download 下载MQTT.fx 本文选用MQTT.fx Version 1.7.0 下载完成后双击安装程序,安装MQTT.fx到PC上。 MQTT.fx配置好MQTT服务器参数之后,连接域格MQTT服务器 MQTT.fx 订阅主题为“YUGA/MQTT”的消息 域格NB-IoT模组LPM 2100通过AT命令连接域格MQTT服务器 域格NB-IoT模组LPM 2100订阅主题为“YUGA/MQTT”的消息 MQTT.fx发布主题“YUGA/MQTT”,内容为“Hello! I am MQTT.fx”的消息。 可以看到订阅“YUGA/MQTT”主题的MQTT客户端MQTT.fx与LPM2100 模组都接受到了主题