Qt + mqtt对接阿里云平台(一)

一、阿里云平台

官网:点击跳转

二、创建产品与设备

1、“公共实例”

2、“设备管理”->“产品”->“创建产品”

3、“产品名称”->“自定义品类”->"确认"

4、“前往添加”

5、“添加设备”

6、摄入DeviceName和备注名称

7、"前往查看"

三、添加功能定义

1、“产品”->“查看”

2、“功能定义”->“前往编辑草稿”

3、“添加自定义功能”

4、发布上线

四、代码测试

1、生成设备端代码

2、获取product_key、device_name、device_secret

3、修改测试代码

根据之前的操作,我们可以下载得到一个压缩包,将其解压,然后修改 mqtt_basic_demo.c 里面的相应代码:

1)修改product_key、device_name、device_secret

2)修改mqtt_host

由于我是21年之前注册的,并且地址为 华东2(上海),所以修改该值为:

const char  *mqtt_host = “${YourProductKey}.iot-as-mqtt.cn-shanghai.aliyuncs.com”;  //(${YourProductKey}.iot-as-mqtt.${YourRegionId}.aliyuncs.com)

3)添加发布消息功能

打开下面代码注释,并修改里面的YourProductKey、YourDeviceName,根据自己的功能修改LightSwitch值

char *pub_topic = "/sys/${YourProductKey}/${YourDeviceName}/thing/event/property/post";
        char *pub_payload = "{\"id\":\"1\",\"version\":\"1.0\",\"params\":{\"LightSwitch\":0}}";

        res = aiot_mqtt_pub(mqtt_handle, pub_topic, (uint8_t *)pub_payload, (uint32_t)strlen(pub_payload), 0);
        if (res < 0) {
            printf("aiot_mqtt_sub failed, res: -0x%04X\n", -res);
            return -1;
        }

我的修改如下:

4)编译运行

make

./output/mqtt-basic-demo

出现如下打印,说明连接成功了:

然后在云平台可以看到设备 在线 了,并且显示 “1(开)” ,说明我们的发布也成功了。

5)下发控制

根据上面操作,设备端可以看到打印:

五、qmqtt代码:

例程:点击跳转

需要代做项目的可以私信!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/520757.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaWeb实验 JSP 基本语法(续

实验目的 掌握JSP基本语法&#xff1b;掌握JSP常见用法。 实验内容 【1】创建index.jsp、first.jsp和second.jsp三个jsp文件&#xff0c;页面的内容分别显示“This is my JSP page of index.jsp.”、“This is my JSP page of first.jsp.”和“This is my JSP page of secon…

JavaEE进阶(14)Linux基本使用和程序部署(博客系统部署)

接上次博客&#xff1a;JavaEE进阶&#xff08;13&#xff09;案例综合练习——博客系统-CSDN博客 目录 程序配置文件修改和打包 构建项目并打包 分平台配置 数据准备 上传jar包到云服务器并运行 开放端口号 验证程序 如何查看日志得到报错信息 常见问题 关于Linux基…

深入探讨 AutoGPT:彻底改变游戏的自主 AI

原文地址&#xff1a;Deep Dive into AutoGPT: The Autonomous AI Revolutionizing the Game 2023 年 4 月 24 日 AutoGPT 是一个功能强大的工具&#xff0c;它通过 API 使用 GPT-4 和 GPT-3.5&#xff0c;通过将项目分解为子任务并在自动循环中使用互联网和其他工具来创建完…

Android自定义横向滑动菜单的实现

本文讲述了Android自定义横向滑动菜单的实现。分享给大家供大家参考&#xff0c;具体如下&#xff1a; 前言 开发安卓过程中&#xff0c;经常会用到标题栏的样式&#xff0c;有时候传统方式不能满足开发者的需要&#xff0c;这时候就需要自定义控件来实现。&#xff08;注意&…

【MySQL 系列】MySQL 架构篇

在我们开始了解 MySQL 核心功能之前&#xff0c;首先我们需要站在一个全局的视角&#xff0c;来看 SQL 是如何运作执行的。通过这种方式&#xff0c;我们可以在头脑中构建出一幅 MySQL 各组件之间的协同工作方式&#xff0c;有助于我们加深对 MySQL 服务器的理解。 文章目录 1、…

【Memory协议栈】NVRAM Manager 模块介绍

目录​​​​​​​ 前言 正文 1.功能简介 2.关键概念 3.功能详解 3.1 内存硬件抽象层Ea/Fee的寻址方案 3.2 基本存储对象Basic storage objects 3.2.1 NV Block 3.2.2 RAM Block 3.2.3 ROM Block 3.2.4 Administrative block 3.2.5 NV Block Header 3.3块管理类型…

Django高级之-cookie-session-token

Django高级之-cookie-session-token 发展史 1、很久很久以前&#xff0c;Web 基本上就是文档的浏览而已&#xff0c; 既然是浏览&#xff0c;作为服务器&#xff0c; 不需要记录谁在某一段时间里都浏览了什么文档&#xff0c;每次请求都是一个新的HTTP协议&#xff0c; 就是请…

《水处理用臭氧陶瓷膜一体化装置》团体标准立项

一、标准编制单位 《水处理用臭氧陶瓷膜一体化装置》是由北京林业大学提出&#xff0c;中华环保联合会水环境治理专业委员会组织实施。本标准参编单位有山东华瓷环保设备科技有限公司、江苏永冠给排水设备有限公司、博天环境集团股份有限公司、天健水务集团、北京科泰兴达高新技…

【论文精读】【DETR】End-to-End Object Detection with Transformers

End-to-End Object Detection with Transformers 0.论文摘要 我们提出了一种新的方法&#xff0c;将目标检测视为一个直接的集合预测问题。我们的方法简化了检测管道&#xff0c;有效地消除了对许多手工设计组件的需求&#xff0c;如非极大抑制程序或锚生成&#xff0c;它们…

AI安全白皮书 | “深度伪造”产业链调查以及四类防御措施

以下内容&#xff0c;摘编自顶象防御云业务安全情报中心正在制作的《“深度伪造”视频识别与防御白皮书》&#xff0c;对“深度伪造”感兴趣的网友&#xff0c;可在文章留言中写下邮箱&#xff0c;在该白皮书完成后&#xff0c;会为您免费寄送一份电子版。 “深度伪造”就是创建…

SpringMVC | SpringMVC的“入门“

目录: Spring MVC入门 :Spring MVC 概述第一个Spring MVC应用SpringMVC 的 “工作流程” Spring MVC入门 : 作者简介 &#xff1a;一只大皮卡丘&#xff0c;计算机专业学生&#xff0c;正在努力学习、努力敲代码中! 让我们一起继续努力学习&#xff01; 该文章参考学习教材为&a…

css相邻元素边框重合问题,解决方案

1、如下图所示&#xff0c;在给元素设置边框后&#xff0c;相邻元素会出现重合的问题 2、解决方案 给每个元素设置margin-top以及margin-left为负的边框 <div style"width: 300px;display: flex;flex-wrap: wrap;margin-top: 50px;"><div style"border…