跳转到主要内容

一个用于控制YeeLight RGB灯泡的Python库。

项目描述

描述

image

image

image

Documentation Status

yeelight是一个简单的Python库,允许您通过您的局域网控制YeeLight WiFi RGB LED灯泡。

有关使用此库的命令行工具,请参阅yeecli

安装

安装yeelight有多种方法

  • 使用pip(推荐),运行pip install yeelight
  • 使用setuptools,运行easy_install yeelight
  • 要从源安装,从https://gitlab.com/stavros/python-yeelight下载,并运行python setup.py install

用法

要使用yeelight,首先通过YeeLight应用在您的灯泡上启用“开发模式”。然后,只需将库导入到您的项目中,如下所示

>>> from yeelight import Bulb

之后,实例化一个灯泡

>>> bulb = Bulb("192.168.0.5")
>>> bulb.turn_on()

就这样!

有关更多详细信息,请参阅其余文档

该库还包含一个(目前未记录的)asyncio接口。

支持的设备

请参阅文档以获取支持的设备列表。

贡献

如果您想为代码做出贡献,谢谢!要安装所需的各个库,运行(最好在虚拟env中运行)

$ pip install -Ur requirements_dev.txt

为了让您的MR通过CI,它需要由各种工具进行检查,这些工具由[pre-commit]{.title-ref}管理。[pre-commit]{.title-ref}将由上述命令安装,但您还需要安装pre-commit钩子

$ pre-commit install

钩子在提交时运行。要手动运行它(例如,如果您已经提交但忘记了运行,只需运行)

$ pre-commit run -a

再次感谢!

许可证

yeelight 采用 BSD 许可证进行分发。

变更日志

v0.7.14 (2023-11-23)

功能

  • 添加 ceild (实现了 #90) [Stavros Korokithakis]

v0.7.13 (2023-08-06)

修复

  • 修复写入器竞争条件。 [alexyao2015]

v0.7.12 (2023-07-23)

修复

  • 切换到使用 asyncio.timeout/async_timeout 以避免与 asyncio.wait_for 的竞争。 [J. Nick Koston]

v0.7.11 (2023-06-18)

功能

  • 添加对 MJDPL04YL (color5) 的支持 [Andrea Ghensi]

  • 现代化 PEP517 构建。 [Michał Górny]

  • 添加 "Tea Time" 效果。 [Daniel Rheinbay]

修复

  • 修复与 asyncio 的竞争条件。 [Jermeia]

v0.7.10 (2022-04-02)

功能

  • 添加 "ceilc" 模型 (关闭 #76) [Stavros Korokithakis]

修复

  • 修复各种异步音乐模式错误。 [Alex]

v0.7.9 (2022-02-06)

功能

  • 实现异步音乐模式 (关闭 #73) [Alex]

v0.7.8 (2021-10-15)

修复

  • 使用紧凑的 json 命令。 [J. Nick Koston]

  • Asyncio: 在协议错误时重新连接。 [J. Nick Koston]

  • 降低灯泡过载的可能性。 [J. Nick Koston]

v0.7.6 (2021-10-03)

修复

  • 从 #61 中移除 asyncio 中的写入器工作区。 [J. Nick Koston]

v0.7.5 (2021-09-19)

功能

  • 改进模型检测。 [J. Nick Koston]

修复

  • 修复 aio 断开连接处理。 [J. Nick Koston]

v0.7.4 (2021-08-26)

功能

  • 添加支持从外部发现设置功能。 [J. Nick Koston]

  • 添加支持 YLDD05YL 即 strip6。 [J. Nick Koston]

修复

  • 将 asyncio 超时增加到 15 秒。 [J. Nick Koston]

v0.7.2 (2021-08-07)

修复

  • 改进对连接错误的异步处理。 [starkillerOG]

v0.7.0 (2021-08-04)

功能

  • 添加 asyncio 支持。 [J. Nick Koston]

  • 添加对 Yeelight GU10 可调光 (YLDP004) 的支持 [Stavros Korokithakis]

修复

  • 更一致地更新 _last_properties。 [starkillerOG]

v0.6.2 (2021-05-02)

功能

  • 添加对 bslamp3、ceiling18、ceiling24、ct2、lamp1、strip2 的支持。 [root]

  • 添加对 ceila (YLXD76YL) 的支持 [zvldz]

修复

  • 修复无限递归问题。 [Stavros Korokithakis]

  • 添加对 strip4 (YLDD03YL) 的支持 [zvldz]

v0.6.1 (2021-04-20)

修复

  • 添加对 lamp15 (YLTD003) 的支持 [Caleb Mah]

v0.6.0 (2021-04-12)

功能

  • 添加 lamp4。 [Stavros Korokithakis]

  • 添加 SSDP 回退到 get_props 方法。 [Johnnie Ho]

  • 放弃对 Python 3.4 以下版本(包括 2.x)的支持 [Stavros Korokithakis]

  • 添加颜色 4 灯泡规范(关闭 #60) [Stavros Korokithakis]

  • 添加 Yeelight XianYu C2001 天花板灯 (C2001C550) 规范。 [Sebastian Muszynski]

  • 添加 Yeelight Crystal 吊灯 (Meteorite, YLDL01YL) 规范。 [Sebastian Muszynski]

  • 添加 ceiling6 (YLXD08YL) 和 ceiling19 (YLXD49YL) 规范。 [Юрий Аузинь]

  • 添加 ceiling15 (YLXD42YL) 规范。 [Stavros Korokithakis]

修复

  • 在新数据包中发送一个空格,以解决 "连接已关闭" 错误。 [Stavros Korokithakis]

  • 在新数据包中发送换行符,因为某些版本的灯泡期望那样。 [Stavros Korokithakis]

v0.5.4 (2020-10-08)

功能

  • 添加更新通知功能 (实现 #4) [Xiaonan Shen]

  • 添加制造商默认和其他流程。 [Stavros Korokithakis]

修复

  • 通过使用 ifaddr 库修复 get_ip_address 的可移植性。 [Greg V]

  • 修复流程预设名称。 [Stavros Korokithakis]

v0.5.3 (2020-06-15)

功能

  • 添加 ct_bulb 灯泡类型。 [Stavros Korokithakis]

v0.5.1 (2020-02-14)

功能

  • 添加 get_known_models 方法。 [Michał Ciemięga]

v0.5.0 (2019-04-15)

功能

  • 支持 "设置场景" API 调用。 [Michał Ciemięga]

修复

  • 设置灯泡的色温时,遵守模型的 min/max。 [Stavros Korokithakis]

  • 将夜灯支持添加到 ceiling1 和 ceiling2。 [Stavros Korokithakis]

  • 修复天花板灯的色温。 [Stavros Korokithakis]

v0.4.4 (2019-03-19)

修复

  • 更具体地忽略异常。 [Stavros Korokithakis]

v0.4.3 (2018-09-06)

修复

  • 修复尝试使用 BulbType 早期的崩溃。 [Stavros Korokithakis]

v0.4.1 (2018-06-25)

功能

  • 为每个模型提供单独的颜色温度范围 (#7) [Sebastian Muszynski]

  • 添加白光灯泡类型(#8)[quthla]

  • 在 discover_bulbs() 中允许选择多播接口(#6)[Luca Zorzi]

v0.4.0(2018-03-10)

功能

  • 添加对月光模式的支持。[Stavros Korokithakis]

修复

  • 修复灯泡类型检测(#5)[Sebastian Muszynski]

v0.3.3(2017-09-18)

修复

  • 将请求的属性作为 get_properties() 的参数,默认删除 flow_params。[Stavros Korokithakis]

  • 设置额外的套接字选项以正确调用多播(#4)[filozof71]

v0.3.2(2017-06-20)

修复

  • 使用 enum-compat 而不是 enum34。[Stavros Korokithakis]

v0.3.0(2017-05-10)

功能

  • 添加额外的预设。[Stavros Korokithakis]

v0.2.3(2017-04-30)

修复

  • 允许切换以更新本地属性缓存。[Stavros Korokithakis]

  • 在激活音乐模式时强制填充缓存。[Teemu R]

v0.2.2(2017-02-10)

修复

  • 在音乐模式下传递 0 作为端口号,以便操作系统随机选择端口号。[Stavros Korokithakis]

v0.2.0(2017-01-19)

功能

  • 添加发现功能(关闭 #3)。[Stavros Korokithakis]

v0.1.0(2017-01-16)

修复

  • 如果灯泡关闭连接则中止并返回错误(修复 #5)。[Stavros Korokithakis]

  • Flow API 改进(#3)[Teemu R]

v0.0.13(2017-01-11)

变更

  • 添加变更日志。[Stavros Korokithakis]

修复

  • 通过在方法调用之前始终获取属性,使 ensure_on 更准确。[Stavros Korokithakis]

v0.0.12(2016-11-16)

修复

  • 删除错误留下的调试命令。[Stavros Korokithakis]

v0.0.11(2016-11-16)

功能

  • 添加音乐模式。[Stavros Korokithakis]

v0.0.10(2016-11-15)

功能

  • 添加 set_adjust。[Stavros Korokithakis]

  • 向 set_hsv 添加值参数。[Stavros Korokithakis]

修复

  • 不再需要 flake8 进行测试。[Stavros Korokithakis]

  • 修复 Python 3 上的测试。[Stavros Korokithakis]

  • 修复按调用效果。[Stavros Korokithakis]

v0.0.9(2016-11-14)

修复

  • 忽略初始化文件上的错误。[Stavros Korokithakis]

v0.0.8(2016-11-14)

修复

  • 希望真正修复设置期间版本字符串问题。[Stavros Korokithakis]

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解有关 安装软件包 的更多信息。

源代码发行版

yeelight-0.7.14.tar.gz (60.9 kB 查看哈希值)

上传时间 源代码

构建发行版

yeelight-0.7.14-py3-none-any.whl (40.1 kB 查看哈希值)

上传时间: Python 3

支持者