树莓派安装和实现MQTT协议

下载Mosquitto

更新软件源:sudo apt-get  update

下载g++编译器:sudo apt-get install g++

安装:sudo apt-get install libssl-dev

安装:sudo apt-get install uuid-dev

下载客户端文件:http://mosquitto.org/files/source/mosquitto-1.5.tar.gz

也可以直接网页下载:

解压:sudo tar zxfv mosquitto-1.5.tar.gz

进入解压目录:cd mosquitto-1.5

注意:此处不需要一般源码包安装步骤:./configure..........

编译:make

安装:sudo make install

测试:mosquitto -v

下载python第三方库:

方法1:

pip3 install paho-mqtt

方法2:

下载:https://github.com/eclipse/paho.mqtt.python

打开:cd paho.mqtt.python
安装:python setup.py install

编写实现代码:

#************************************************************************************

import paho.mqtt.client as mqtt
import time

HOST = "服务器IP地址-----" #如 192.168.11.23
PORT = 61613#端口号----

def client_loop():
client_id = time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))# ClientId不能重复,所以使用当前时间
client = mqtt.Client(client_id) 
client.username_pw_set("用户名---", "密码---")
client.on_connect = on_connect
client.on_message = on_message
client.connect(HOST, PORT, 60)
client.publish("消息号-----", "MQTT start", qos=0, retain=False) # 发布消息
client.loop_forever()

def on_connect(client, userdata, flags, rc):
print("Connected with result code "+str(rc))
client.subscribe("消息号------")

def on_message(client, userdata, msg):#打印订阅消息
print(msg.topic+" "+msg.payload.decode("utf-8"))

if __name__ == '__main__':
client_loop()

#********************************************************************************

运行效果:

云端java自编客户端捕获和推送消息:

成功,接下来是手机编程连接,然后树莓派接入GPIO口,实现初级控制。


参考:

https://blog.csdn.net/itas109/article/details/78873257

https://blog.csdn.net/xukai871105/article/details/39255089

树莓派MQTT客户端搭建的更多相关文章

  1. Mqtt服务器搭建

    .bg { background: #99CC99 } Mqtt服务器搭建 测试环境:CentOS64位 1.安装基础软件 yum install gcc-c++ yum install cmake ...

  2. 常见MQTT服务器搭建[转载]

    简介 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,它比较适合于在低带宽.不可靠的网络的进行远程传感器和控制设备通 ...

  3. 常见MQTT服务器搭建与试用

    常见MQTT服务器搭建与试用   简介 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,它比较适合于在低带宽.不可靠 ...

  4. mqtt server搭建和web中使用js-sdk订阅发布消息

    1.mqtt server搭建(From:https://www.cnblogs.com/huhongy/p/7929299.html) window安装MQTT服务器,我这里下载了一个apache- ...

  5. 个人智能家居系统 - MQTT服务器搭建(centOS7.3)

    个人智能家居系统 - MQTT服务器搭建(centOS7.3) 0x00 参考 在CentOS7 上安装mosquitto1.4.1服务器,实现MQTT信息推送功能并增加websocket功能 mos ...

  6. 树莓派(Raspberry Pi)搭建简单的lamp服务

    树莓派(Raspberry Pi)搭建简单的lamp服务: 1. LAMP 的安装 sudo apt-get install apache2 mysql-server mysql-client php ...

  7. MQTT Client library for C (MQTT客户端C语言库-paho)

    原文:http://www.eclipse.org/paho/files/mqttdoc/MQTTClient/html/index.html 来自我的CSDN博客   最近在使用Paho的MQTT客 ...

  8. MQTT客户端库-Paho GO

    为了加深理解,本文是翻译文章.原文地址 Paho GO Client   语言 GO 协议 EPL AND EDL 官网地址 http://www.eclipse.org/paho/ API类型 As ...

  9. oauth2.0服务端与客户端搭建

    oauth2.0服务端与客户端搭建 - 推酷 今天搭建了oauth2.0服务端与客户端.把搭建的过程记录一下.具体实现的功能是:client.ruanwenwu.cn的用户能够通过 server.ru ...

随机推荐

  1. 安装swoole

    php需要安装swoole扩展 swoole4.3.2 cd /usr/local/src/ wget https://pecl.php.net/get/swoole-4.3.2.tgz tar -z ...

  2. 使用JS在页面进行数据处理时显示等待画面

    使用js在页面进行数据处理期间显示等待画面: 在页面选择执行函数进行数据处理期间,显示等待画面. <script> function fun(the,row_id) { //测试函数 // ...

  3. c语言实验一

    #include <stdio.h> int main(){ int a,b,sum; a=123; b=456; sum = a + b; printf("sum is %d\ ...

  4. Minieye杯第十五届华中科技大学程序设计邀请赛现场同步赛 I Matrix Again

    Minieye杯第十五届华中科技大学程序设计邀请赛现场同步赛 I Matrix Again https://ac.nowcoder.com/acm/contest/700/I 时间限制:C/C++ 1 ...

  5. 计算机爱好者协会技术贴markdown第二期

    上一期我们学了多级标题,加粗,加斜以及蛮好看的小方块,这一期来继续学习吧 Txt版本: *上一期说这样可以加斜* _其实这样也可以加斜_ **上一期说这样可以加粗** __其实这样也可以加粗__ ** ...

  6. Promise注意点

    一. Promise API  概述 var p = new Promise( function(resolve,reject){ // resolve(..) 用于决议 / 完成这个 promise ...

  7. Javascript中表达式和语句的区别

    一.表达式:一个表达式会产生一个值,它可以放在任何需要一个值的地方,比如,作为一个函数调用的参数. 以下例子就是表达式: a=35: b=1+a; a=function (){return 6}: b ...

  8. python模块:csv

    """ csv.py - read/write/investigate CSV files """ import re from _csv ...

  9. s6-6 TCP 连接释放

    TCP 连接释放 任何一方在没有数据要传送的时候,都可以发送一个FIN置位了的 TCP 数据段 当FIN被确认的时候,该方向的连接被关闭 当双向连接都关闭了的时候,连接释放 两军队问题 两军队问题 ( ...

  10. Day10 (黑客成长日记) Urllib库的使用

    什么是Urllib: Urllib是python内置的HTTP请求库包括以下模块urllib.request 请求模块urllib.error 异常处理模块urllib.parse url解析模块ur ...