Skip to content

ChenWes/thingsboard-mqtt-client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Thingsboard MQTT Client

Python Version

app.py

import json
import random
from time import sleep
import paho.mqtt.client as mqtt

# 使用docker运行时,需要是外网的地址

THINGSBOARD_HOST = '172.17.130.117'
ACCESS_TOKEN = '6F54a9PFnXBulm5sjMny'

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))

#创建MQTT连接
client = mqtt.Client()
#设置用户名
client.username_pw_set(ACCESS_TOKEN)

#两个事件
client.on_connect = on_connect
client.on_message = on_message

#开始连接
client.connect(THINGSBOARD_HOST, 1883, 60)
#开始处理
client.loop_start()

data = {}

#循环生成数据
while True:
    # 熔炉温度
    newnumber = "%.2f" % random.random()
    data['StoveTemperature'] = random.randint(420, 430) + float(newnumber)

    # 炉咀温度
    newnumber = "%.2f" % random.random()
    data['StoveMouthTemperature'] = random.randint(420, 430) + float(newnumber)

    # 模具入水温度
    newnumber = "%.2f" % random.random()
    data['MouldInputWaterTemperature'] = random.randint(30, 80) + float(newnumber)

    # 模具出水温度
    newnumber = "%.2f" % random.random()
    data['MouldOutputWaterTemperature'] = random.randint(40, 100) + float(newnumber)

    # 机器油压力
    newnumber = "%.2f" % random.random()
    data['MachineOilPressure'] = random.randint(400, 500) + float(newnumber)

    # 机器空气压力
    newnumber = "%.2f" % random.random()
    data['MachineAirPressure'] = random.randint(400, 500) + float(newnumber)

    # 电流
    newnumber = "%.2f" % random.random()
    data['GalvanicCurrent'] = random.randint(18, 20) + float(newnumber)

    # 电压
    newnumber = "%.2f" % random.random()
    data['Voltage'] = random.randint(240, 450) + float(newnumber)

    # client.publish("v1/devices/me/telemetry",str(json.dumps(data)),2)
    client.publish("v1/devices/me/telemetry", json.dumps(data), 2)
    print(str(json.dumps(data)))

    sleep(5)

Docker

build docker image

docker build -t thingsboard-mqtt-client .

run docker container

docker run -it thingsboard-mqtt-client

About

Python 推送MQTT消息到Thingsboard中

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published