python

您所在的位置:网站首页 pythonmqtt服务器 python

python

2023-03-25 06:09| 来源: 网络整理| 查看: 265

python--mqtt

后台消息的接收与转发

# coding=utf-8

#接收数据代码模块

import paho.mqtt.client as mqtt

import json

def on_message(client, userdata, msg,user_id = XXX):

    data = str(msg.payload)

    jsonDict = json.loads(data)

    if(jsonDict is not None) and (jsonDict.has_key('runData')):

        if (jsonDict['runData'] is not None):

            userId = jsonDict['runData'].get("userId", None)

            if(userId == user_id):

                print("主题--:"+msg.topic+" 消息:"+str(msg.payload))

    if(jsonDict is not None) and (jsonDict.has_key('configData')):

        if (jsonDict['configData'] is not None):

            userId = jsonDict['configData'].get("userId", None)

            if(userId == user_id):

                print("主题--:"+msg.topic+" 消息:"+str(msg.payload))

# 当连接上服务器后回调此函数

def on_connect(client, userdata, flags, rc):

    print("Connected with result code "+str(rc))

    

# 从服务器接受到消息后回调此函数

# def on_message(client, userdata, msg):

#     print("主题:"+msg.topic+" 消息:"+str(msg.payload))

   

def on_subscribe(client, userdata, mid, granted_qos):

    print "On Subscribed: qos = %d" % granted_qos

#     print "client: "+ str(client) + " userdata :"+str(userdata) + " mid:"+str(mid) + " granted_qos:"+str(granted_qos)

def on_log(client, userdata, level, buf):

    print "%s: %s"%(level,buf)

client = mqtt.Client()

client.on_connect = on_connect #设置连接上服务器回调函数

client.on_message = on_message  #设置接收到服务器消息回调函数

client.connect(host=xxxxxx,port=xxx) #连接服务器,端⼝为xxx,维持⼼跳为60秒

client.loop_forever()

#产⽣数据模块



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3