# MQTT-Websocket **Repository Path**: qkaaron/mqtt-websocket ## Basic Information - **Project Name**: MQTT-Websocket - **Description**: MQTT-Websocket示例。 - **Primary Language**: Python - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2023-02-13 - **Last Updated**: 2023-02-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # MQTT-Websocket 本示例主要针对问题:有一定数量设备通过MQTT协议上报数据的场景,服务端如何通过websocket协议将这些数据可靠转发到相应的客户端? ## 设备端 具备网络连接,并支持MQTT协议。典型如:ESP32设备。 ## 服务端 1. Python 安装 paho.mqtt 2. 系统安装websocketd 3. (扩展)安装redis ## 客户端 1. Python 安装 websocket_client 2. (扩展)通过js实现数据图形化展示。 ## 现有文件说明 1. mqtt_client.py 是MQTT客户端代码,连接MQTT Broker,订阅指定的Topic并显示。 2. ws_client.py 是websocket客户端代码 可直接python运行 3. ws_server.py 是websocket服务端代码,通过websocketd --port=xxx python ws_server.py 命令使用 ## 运行步骤 1. 安装mosquitto和websocketd,一切默认。 2. 设备上传message 3. ws_server订阅topic message,按需下发给ws_client 4. ws_client维持与ws_server连接,显示接收数据。 ## 问题 1. mqtt和ws_server需要解耦,考虑redis?