使用mosquitto库编程实现与腾讯云的通信(subscriber)

源码链接地址https://gitee.com/ma_kung/mqtt

在学习mosquitto之前,大家先了解一下怎么使用mqtt.fx和腾讯云的通信,可以参考一下我的博客:https://blog.csdn.net/makunIT/article/details/107330190

一、使用mosuqitto命令接入阿里云实现通信

如果看过我MQTT.fx连接腾讯云那篇文章的同学,一定记得我们在创建产品时,一定要选择证书认证,证书认证为非对称加密方式,而密钥认证方式为对称加密方式,而MQTT.fx不支持对称加密PSK, 但是在这里,我们使用的是mosquitto上接入腾讯云的,在这里支持PSK加密也就是对称加密

所以我们需要重新创建产品:
我们打开物联网通信
使用mosquitto库编程实现与腾讯云的通信(subscriber)_第1张图片
创建完产品之后,我们就创建一个设备

使用mosquitto库编程实现与腾讯云的通信(subscriber)_第2张图片
设备创建之后,我们点击管理,然后再最下面设备密钥是我们要用mosquitto命令实现与腾讯云的通信
使用mosquitto库编程实现与腾讯云的通信(subscriber)_第3张图片

在阿里云时我们把设备下的东西称为三元组
使用mosquitto库编程实现与腾讯云的通信(subscriber)_第4张图片
以上是阿里云的 ,不要弄混淆了,在这里我只是作个介绍,

以下是阿里云的,我习惯把它记录在笔记本上,方便我们复制粘贴
在这里插入图片描述
现在我们打开Linux,用mosqitto实现与腾讯云的通信,命令行

makun@makun:~$ mosquitto_sub -h “553R6G4OGC.iotcloud.tencentdevices.com” -p 1883 -t “553R6G4OGC/sht20/control” -i “553R6G4OGCsht20” -u “553R6G4OGCsht20;12010126;SI7H7;1631179570” -P “2a4f9d385871b5abd60b794394de56222ddfafeae7c1b8b0762bcc3c3d92f518;hmacsha256”

在这里插入图片描述
然后我们打开腾讯云,就会看到我们已经连上腾讯云了
使用mosquitto库编程实现与腾讯云的通信(subscriber)_第5张图片
然后我们选择在线调试

使用mosquitto库编程实现与腾讯云的通信(subscriber)_第6张图片
给Linux下发送数据,然后Linux下就会接收到我们的信息。

使用mosquitto库编程实现与腾讯云的通信(subscriber)_第7张图片
接下来我用mosquitto库搭建subscriber实现与腾讯云的通信,
我们这边订阅了腾讯云,然后我们给subscriber发送消息:

{
  "method" : "thing.service.property.set", "id" : "470404143","params" : {
  "data" : "112",
    "CurrentTemperature":25.5
  },
  "version" : "1.0.0"
}

使用mosquitto库编程实现与腾讯云的通信(subscriber)_第8张图片
发送成功后,订阅方会收到腾讯云给他发来的消息如下:

使用mosquitto库编程实现与腾讯云的通信(subscriber)_第9张图片
在这里我们要把之前写的阿里云的三元组都要修改了 ,用腾讯云的来做。我在的conf.h文件中修改了 ,我们也可以用参数的格式也可以来实现
使用mosquitto库编程实现与腾讯云的通信(subscriber)_第10张图片
关于腾讯云的讲解其实跟阿里云的很像,可以参考一下我的阿里云的讲解,在这里我主要了解了一下各个的物联网平台,为了以后工作上能用到。更多的代码,可以看我开头的源码的链接。

这里我没有写mosquitto_pub命令的过程,是因为,我们在测试的时候,总是不能被连接上,如下图,
在这里插入图片描述
他告诉我们没有操作的权限,至此我了解到需要加密证书,所以,关于加密证书,我放到下一篇博客中,讲解。

你可能感兴趣的:(腾讯云,mosquitto,编程,mqtt)