MQTT客户端paho.mqtt.XXX

2024-04-27 01:38
文章标签 客户端 mqtt xxx paho

本文主要是介绍MQTT客户端paho.mqtt.XXX,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. MQTT客户端C代码库

  • C语言库:https://github.com/eclipse/paho.mqtt.c

1.1 C源码下载构建

# centos7 OS 方法一
$ git clone https://github.com/eclipse/paho.mqtt.c.git
$ cd paho.mqtt.c
$ make
$ sudo make install
# make help查看当前Makefile支持命令
# make package 构造安装包压缩目录,解压缩后是生成项目链接库mkdir -p build/output/samples
mkdir -p build/output/test
echo OSTYPE is Linux
OSTYPE is Linux
mkdir -p /usr/local/include
install -m 644  build/output/libpaho-mqtt3c.so.1.3 /usr/local/lib
install -m 644  build/output/libpaho-mqtt3cs.so.1.3 /usr/local/lib
install -m 644  build/output/libpaho-mqtt3a.so.1.3 /usr/local/lib
install -m 644  build/output/libpaho-mqtt3as.so.1.3 /usr/local/lib
install  build/output/paho_c_version /usr/local/bin
install  build/output/samples/paho_c_pub /usr/local/bin
install  build/output/samples/paho_c_sub /usr/local/bin
install  build/output/samples/paho_cs_pub /usr/local/bin
install  build/output/samples/paho_cs_sub /usr/local/bin
/sbin/ldconfig /usr/local/lib
ln -s libpaho-mqtt3c.so.1 /usr/local/lib/libpaho-mqtt3c.so
ln -s libpaho-mqtt3cs.so.1 /usr/local/lib/libpaho-mqtt3cs.so
ln -s libpaho-mqtt3a.so.1 /usr/local/lib/libpaho-mqtt3a.so
ln -s libpaho-mqtt3as.so.1 /usr/local/lib/libpaho-mqtt3as.so
install -m 644 src/MQTTAsync.h /usr/local/include
install -m 644 src/MQTTClient.h /usr/local/include
install -m 644 src/MQTTClientPersistence.h /usr/local/include
install -m 644 src/MQTTProperties.h /usr/local/include
install -m 644 src/MQTTReasonCodes.h /usr/local/include
install -m 644 src/MQTTSubscribeOpts.h /usr/local/include
install -m 644 src/MQTTExportDeclarations.h /usr/local/include
install -m 644 doc/man/man1/paho_c_pub.1 /usr/local/share/man/man1
install -m 644 doc/man/man1/paho_c_sub.1 /usr/local/share/man/man1
install -m 644 doc/man/man1/paho_cs_pub.1 /usr/local/share/man/man1
install -m 644 doc/man/man1/paho_cs_sub.1 /usr/local/share/man/man1#方法二,cmake指定构建安装目录,作为第三方动态链接库
#将项目目录下载到/root下面,同时指定生成目标安装位置为/root/mqtt
mkdir -p root/mqtt/build
cd /root/mqtt/
cmake -DCMAKE_INSTALL_PREFIX="/root/mqtt" ../paho.mqtt.c
make
make install

编译成功后,生成4个二进制可执行文件,paho_c_pub paho_c_sub paho_cs_pub paho_cs_sub。c表示客户端,pub表示发布,sub表示订阅,cs表示安全openssl。还有4个动态链接库

libpaho-mqtt3a.so - asynchronous (MQTTAsync)
libpaho-mqtt3as.so - asynchronous with SSL (MQTTAsync)
libpaho-mqtt3c.so - "classic" / synchronous (MQTTClient)
libpaho-mqtt3cs.so - "classic" / synchronous with SSL (MQTTClient)

1.2 C客户端可执行文件使用

  • 可执行文件

命令行使用可参考 https://modelbasedtesting.co.uk/2018/08/08/paho-c-client-mqtt-5-0-and-command-line-utilities/

paho_c_sub -t topic -h 127.0.0.1 -p 1883  -q 2paho_c_pub -t topic -h 127.0.0.1 -q 2 -m "hello,user"

2. MQTT客户端Golang代码库

  • Golang语言库:https://github.com/eclipse/paho.mqtt.golang

官方示例:在官方库中存在样本,例如paho.mqtt.golang库示例在paho.mqtt.golang/cmd目录中,可以编译参考

2.1 GO客户端API

	//安装go mqtt客户端go get github.com/eclipse/paho.mqtt.golanggo get github.com/gorilla/websocketgo get golang.org/x/net/proxy//引入mqtt 客户端的APIimport "github.com/eclipse/paho.mqtt.golang"

2.2 GO客户端API

  • 客户端go函数使用解释 https://www.cnblogs.com/veviDP/p/8900748.html

  • MQTT非官方中文API手册 https://www.jianshu.com/p/05914c15b9a8

这篇关于MQTT客户端paho.mqtt.XXX的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/939208

相关文章

MYSQL查询结果实现发送给客户端

《MYSQL查询结果实现发送给客户端》:本文主要介绍MYSQL查询结果实现发送给客户端方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql取数据和发数据的流程(边读边发)Sending to clientSending DataLRU(Least Rec

Python FastMCP构建MCP服务端与客户端的详细步骤

《PythonFastMCP构建MCP服务端与客户端的详细步骤》MCP(Multi-ClientProtocol)是一种用于构建可扩展服务的通信协议框架,本文将使用FastMCP搭建一个支持St... 目录简介环境准备服务端实现(server.py)客户端实现(client.py)运行效果扩展方向常见问题结

MQTT SpringBoot整合实战教程

《MQTTSpringBoot整合实战教程》:本文主要介绍MQTTSpringBoot整合实战教程,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录MQTT-SpringBoot创建简单 SpringBoot 项目导入必须依赖增加MQTT相关配置编写

C#使用MQTTnet实现服务端与客户端的通讯的示例

《C#使用MQTTnet实现服务端与客户端的通讯的示例》本文主要介绍了C#使用MQTTnet实现服务端与客户端的通讯的示例,包括协议特性、连接管理、QoS机制和安全策略,具有一定的参考价值,感兴趣的可... 目录一、MQTT 协议简介二、MQTT 协议核心特性三、MQTTNET 库的核心功能四、服务端(BR

基于C#实现MQTT通信实战

《基于C#实现MQTT通信实战》MQTT消息队列遥测传输,在物联网领域应用的很广泛,它是基于Publish/Subscribe模式,具有简单易用,支持QoS,传输效率高的特点,下面我们就来看看C#实现... 目录1、连接主机2、订阅消息3、发布消息MQTT(Message Queueing Telemetr

SpringBoot快速搭建TCP服务端和客户端全过程

《SpringBoot快速搭建TCP服务端和客户端全过程》:本文主要介绍SpringBoot快速搭建TCP服务端和客户端全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录TCPServerTCPClient总结由于工作需要,研究了SpringBoot搭建TCP通信的过程

Redis客户端工具之RedisInsight的下载方式

《Redis客户端工具之RedisInsight的下载方式》RedisInsight是Redis官方提供的图形化客户端工具,下载步骤包括访问Redis官网、选择RedisInsight、下载链接、注册... 目录Redis客户端工具RedisInsight的下载一、点击进入Redis官网二、点击RedisI

Qt 中集成mqtt协议的使用方法

《Qt中集成mqtt协议的使用方法》文章介绍了如何在工程中引入qmqtt库,并通过声明一个单例类来暴露订阅到的主题数据,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录一,引入qmqtt 库二,使用一,引入qmqtt 库我是将整个头文件/源文件都添加到了工程中进行编译,这样 跨平台

使用Java实现获取客户端IP地址

《使用Java实现获取客户端IP地址》这篇文章主要为大家详细介绍了如何使用Java实现获取客户端IP地址,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 首先是获取 IP,直接上代码import org.springframework.web.context.request.Requ

解决Spring运行时报错:Consider defining a bean of type ‘xxx.xxx.xxx.Xxx‘ in your configuration

《解决Spring运行时报错:Considerdefiningabeanoftype‘xxx.xxx.xxx.Xxx‘inyourconfiguration》该文章主要讲述了在使用S... 目录问题分析解决方案总结问题Description:Parameter 0 of constructor in x