Skip to main content

Nanoleaf Aurora 的 Python 接口。

项目描述

一个 Python 模块,用于最酷的灯光和最差的软件支持。

这个模块的目的不仅仅是作为 API 调用的包装器。它提供了几个方便的功能来执行比我见过的其他一些 Aurora 包装器更复杂和更强大的操作。例如,能够切换到随机的新效果,或使用单个命令切换开/关状态。

支持项目

这是一个宠物项目,我这样做是因为我和你一样需要 API 支持。但是,如果它真的让你的生活变得更好,我会很感激一杯咖啡。

BTC: 1Gr31rgb6UXEdXwbwQGUsadcd7AnY7okXT
LTC: Lajqnm28UipLbzJqvyy4tRQFf39xQy6B48

安装

超级简单 - 只需使用 pip 获取最新版本。

pip install nanoleaf --upgrade

设置

控制 Aurora 需要两条信息:IP 地址和身份验证令牌。

查找 IP 地址

对于大多数人来说,Aurora 用于通信的 IP 地址是您的路由器分配的地址,但这可能不一定是正确的,具体取决于您的网络设置。无论哪种方式,您都可以通过使用安装程序类来获得它。大约 90 秒后,这将返回在网络上找到的每个 Aurora 的 IP 地址列表。

from nanoleaf import setup

ipAddressList = setup.find_auroras()

生成身份验证令牌

要生成身份验证令牌,您必须先按住 Aurora 上的电源按钮约 5-7 秒,直到白色 LED 短暂闪烁。然后,像这样调用 Setup 类:

from nanoleaf import setup

token = setup.generate_auth_token("192.168.1.129")

请务必将此身份验证令牌存储在某处以备将来使用。如果您丢失了此令牌,则必须生成另一个令牌。就个人而言,我只是将它保存在我编写的调用这个库的脚本中。

例子

打开并设置效果

from nanoleaf import Aurora

my_aurora = Aurora("169.254.123.123", "5EvbR2FjfmYfAkEtOkEnolnZbe6qOB")
my_aurora.on = True
my_aurora.effect = "Violets Are Blue"

将多个极光设置为相同的随机效果

left_side = Aurora("192.168.1.56", "5EvbR2FjfmYfAkEtOkEnolnZbe6qOB")
right_side = Aurora("192.168.1.78", "fAkeR2FjfmYfAkEtOkEnolnZtOkEn")
left_side.effect = right_side.effect_random()

添加新效果

目前,您必须创建自己的原始字典,该字典与API 文档中的结构完全匹配。为将来的更新计划了使这更容易的方法。

effect_data = {
    "command": "add",
    "animName": "My Random Animation",
    "animType": "random",
    "colorType": "HSB",
    "animData": None,
    "palette": [
        {
            "hue": 0,
            "saturation": 100,
            "brightness": 100
        },
        {
            "hue": 120,
            "saturation": 100,
            "brightness": 100
        },
        {
            "hue": 240,
            "saturation": 100,
            "brightness": 100
        }
    ],
    "brightnessRange": {
        "minValue": 25,
        "maxValue": 100
    },
    "transTime": {
        "minValue": 25,
        "maxValue": 100
    },
    "delayTime": {
        "minValue": 25,
        "maxValue": 100
    },
    "loop": True
}

my_aurora.effect_add_raw(effect_data)

删除效果

my_aurora.effect_delete("My Random Animation")

项目详情


下载文件

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

源分布

nanoleaf-0.4.1.tar.gz (32.9 kB 查看哈希)

已上传 source

内置分布

nanoleaf-0.4.1-py3-none-any.whl (10.4 kB 查看哈希

已上传 py3