当前位置: 首页 > news >正文

.net 使用MQTT订阅消息

在nuGet下载M2Mqtt   V4.3.0版本。(支持.net framework)

订阅主题

public void LoadMQQCData()
{string enpoint = "xxx.xxx.x.x";//ip地址int port = 1883;//端口string user = "usrname";//用户名string pwd = "pwd";//密码string clientid = Guid.NewGuid().ToString(); // 获取一个独一无二的idstring[] topic = new string[] { "topic" };//订阅主题byte[] qosLevels = new byte[] { MqttMsgBase.QOS_LEVEL_AT_LEAST_ONCE }; // qos=1MqttClient client = new MqttClient(enpoint, port, false, null, null, MqttSslProtocols.None);//消息接受client.MqttMsgPublishReceived += new MqttClient.MqttMsgPublishEventHandler(messageReceive);//连接Brokerclient.Connect(clientid, user, pwd);client.Subscribe(topic, qosLevels);}

接收数据

static void messageReceive(object sender, MqttMsgPublishEventArgs e)
{Thread.Sleep(1000 * 30);//等待半分钟 等待质控数据入库//接收到的数据byte[] Bytes = e.Message;//获取站点编号try{string sstation = e.Topic.Substring(e.Topic.IndexOf("qc") - 10, 9);if (!string.IsNullOrEmpty(sstation) && sstation.Length == 9){ //代表该(SS4201089)站点做了质控do some things;}}catch (Exception ex){MessageServcie.Instance.OnShowMessageDelegate.Invoke("出错:" + ex.Message.ToString(), false);}}

相关文章:

  • AirSim/Cosys-AirSim 游戏开发(三)打包可执行文件
  • AI代码助手需求说明书架构
  • OPenCV CUDA模块光流------高效地执行光流估计的类BroxOpticalFlow
  • day46python打卡
  • 市面上哪款AI开源软件做ppt最好?
  • 【前端】每日一道面试题6:解释Promise.any和Promise.allSettled的使用场景及区别。
  • T/SAIAS 018—2025《具身智能语料库建设导则》研究报告:体系解构与实施路径
  • Nuxt.js 中的路由配置详解
  • Webhook 配置备忘
  • Chrome 浏览器前端与客户端双向通信实战
  • 前端对WebSocket进行封装,并建立心跳监测
  • 前端项目初始化
  • Web 架构之 CDN 加速原理与落地实践
  • ESP8266(NodeMcu)+GPS模块+TFT屏幕实现GPS码表
  • 32单片机——窗口看门狗
  • 智能终端与边缘计算按章复习
  • Science Robotics:UCLA 贺曦敏团队综述自主软体机器人
  • npm install的原理
  • 【leetcode】3. 无重复字符的最长子串
  • JAVA学习 DAY2 java程序运行、注意事项、转义字符
  • 香河住房和建设局网站/公关负面处理公司
  • 日本 男女做受网站/长沙建站seo公司
  • 重庆做网站建设公司排名/深圳刚刚突然宣布
  • 济南做网站推广有哪些公司/app推广代理平台
  • 惠州建设局网站/论坛seo设置
  • 佛山网站设计是/网络营销的八大能力