提供一个简单的用c++调用Eclipse Paho MQTT的客户端代码
时间: 2024-03-21 09:42:07 浏览: 132
好的,以下是一个简单的 C++ 代码片段,用于连接到 MQTT 代理并发布消息,需要使用 Eclipse Paho MQTT C++ 客户端库:
```c++
#include "mqtt/async_client.h"
const std::string ADDRESS = "tcp://mqtt.eclipse.org:1883";
const std::string CLIENT_ID = "cpp-sample";
const std::string TOPIC = "test/topic";
const std::string PAYLOAD = "Hello, World!";
const int QOS = 1;
int main(int argc, char* argv[]) {
mqtt::async_client client(ADDRESS, CLIENT_ID);
mqtt::connect_options connOpts;
connOpts.set_keep_alive_interval(20);
connOpts.set_clean_session(true);
auto conntok = client.connect(connOpts);
conntok->wait();
mqtt::message_ptr pubmsg = mqtt::make_message(TOPIC, PAYLOAD);
pubmsg->set_qos(QOS);
auto pubtok = client.publish(pubmsg);
pubtok->wait();
client.disconnect()->wait();
return 0;
}
```
这个客户端连接到 Eclipse 的公共 MQTT 测试代理,并发布一条消息到 "test/topic" 主题。你可以根据你的实际需求进行修改。注意,需要在代码中引用 Paho MQTT C++ 客户端库头文件并链接该库。
阅读全文