一、实现思路

img

二、具体操作

第一步:注册Yeelink帐号和新建一个传感器

注册帐号较为简单,这里就不再啰嗦,注册好帐号后,转到 用户中心-设备管理界面:

增加完新设备后,选择 管理设备>>>增加一个传感器

然后在“设备管理”界面中获得当前传感器的 URL:

在“账户”>>>>>“我的账户设置”中获得 " API KEY ":

第二步:编写python驱动程序

使用vim文本编辑工具,新建一个 cpu_temp_yeelink.py 文件,并写入以下代码:

#!/usr/bin/python
# -*- coding: utf-8 -*-
import requests
import json
import time

while True:
    # 获取RaspberryPI CPU温度值
    file = open("/sys/class/thermal/thermal_zone0/temp")
    # 读取结果,并转换为浮点数
    temp = float(file.read()) / 1000
    #关闭文件
    file.close()
    # 向控制台打印结果
    print "cpu_temp : %.3f" %temp

    # 传感器URI
    URL = 'http://api.yeelink.net/v1.0/device/359404/sensor/409412/datapoints'
    #用户API KEY
    API_KEY = '686591ae4f3b09ea4435a62be96fc3bc'
    # 定义一个字典,并指定上传编码为JSON格式
    apiheaders = {'U-ApiKey': API_KEY, 'content-type': 'application/json'}
    # 字典类型数据,温度值在post过程中被json.dumps转换为JSON格式字符串
    payload = {'value': temp}
    #发送请求
    r = requests.post(URL, headers=apiheaders, data=json.dumps(payload))

    # 打印返回码
    print "response status: %d" %r.status_code
    #休眠20 s
    time.sleep(20)

第三步:执行代码

在 cpu_temp_yeelink.py 目录下输入以下指令来运行脚本:

python cpu_temp_yeelink.py

执行后返回结果如下:

cpu_temp : 40.101

response status: 200

第四步:在线查看实时上传的cpu温度值

第五步:退出程序

回到管理终端,使用 ctrl+c 即可退出程序。

最后修改:2022 年 06 月 09 日
如果觉得我的文章对你有用,请随意赞赏