Paho MQTT 嵌入式c客户端研究笔记

  最近做物联网设备,需求长连接推送功能。当前物联网有一个标准协议是MQTT,对应有很多开源服务端,如何快速接入这个服务呢。有两种接入方案:
  1.自己clone 代码修改维护。
  2.找第三方服务,比如当前提供支持的有云巴,bat。bat目前都还处于公测中,at使用都需要申请设备,b可以直接接入。对比了价格,b最便宜,一个月免费消息1百万条。
  最后决定先尝试使用百度云的MQTT服务后台,在百度云里术语叫做“”物接入“”。
  百度云MQTT客户端兼容PAHO,PAHO也是一个开源的MQTT协议项目。下面需要写客户端对接服务,百度云提供了如下语言的支持:
  https://cloud.baidu.com/doc/IOT/MQTTClientSDK.html
  由于是物联网设备,我们选择Embedded C/C++。点击进入github工程页面:
  https://github.com/eclipse/paho.mqtt.embedded-c
  在Linux环境下:
  git clone https://github.com/eclipse/paho.mqtt.embedded-c.git
  cd 到工程根目录
  make
  编译成功,build目录生成如下文件:
  **samples/pub0sub1
  samples/qos0pub
  libpaho-embed-mqtt3c.so
  libpaho-embed-mqtt3c.so.1
  libpaho-embed-mqtt3c.so.1.0**
  将三个so文件copy到/lib目录下,然后运行qos0pub,会发送一条消息。
  再运行pub0sub1,会显示收到qos0pub之前发的那条消息。至此,paho mqtt 嵌入式linux平台c的客户端就跑起来了。

你可能感兴趣的:(IOT)