2个稳定版本
2.1.0 | 2020年7月12日 |
---|---|
2.0.0 | 2020年6月7日 |
#859 in 硬件支持
79KB
2K SLoC
light-control
Mqtt灯光控制适用于单身人士。它包含房间跟踪功能,在单身环境中表现最佳。
如何安装
cargo install install --path .
如何运行
export RUST_LOG=light_control=info
~/.cargo/bin/light-control examples/home.json
概述
以下是一个关于light-control如何查看您的传感器的简要概述
阈值是另一个房间需要达到的时间阈值,在我们将其检测为用户的当前存在之前。
配置文件
应该很简单。light-control知道
- sensors : 生成存在输入
- switches : 接收开关命令(包括亮度信息RGB)
- scenes: 白天,晚上或户外
查看./examples/home.json以获得印象。
如何查找键和主题
您可以使用mosquitto客户端订阅所有消息
mosquitto_sub -v \
-u light-control \
-P password \
-h localhost \
-t "#"
这将是一条您会看到的线
zigbee2mqtt/motion_sensor_7 {"battery":100,"voltage":3015,"linkquality":99,"occupancy":true}
zigbee2mqtt/motion_sensor_7
是主题occupancy
是描述状态的键
light-control只接受扁平json的消息
传感器
topic
: 监听的主题。key
: 读取状态的json键。room
: 如果触发此传感器,则应将其视为存在。invert_state
: (默认false)有时传感器会在检测到存在时发送false。此选项用于在这种情况下反转状态。delay
: (默认60)在设备发布不存在消息后,等待多长时间(以秒为单位)直到存在状态变为不存在。
开关
topic
: 监听状态的主题。key
: 读取状态的json键。rooms
: 开关将响应的房间。delay
: 在所有订阅房间变为不存在后,等待多长时间(以秒为单位)直到开关关闭。command
: 命令控制。command
: 打开和关闭命令 这是一个mustache模板。注入的参数是- state : 开/关(请参阅开/关声明)
- brightness : 0 - 255
init_command
: (默认null)在程序启动时将触发获取设备状态的命令。topic
: 发送命令的主题on
: (默认"ON")发送给状态参数以打开开关的字符串off
: (默认 "关闭") 发送到状态参数以关闭开关的字符串
场景
程序启动后选定的第一个场景。
name
:场景名称brightness
:此场景的亮度级别disabled_switches
:列出应关闭的所有开关主题。enabled_switches
:列出应开启的所有开关主题。ignored_switches
:列出不应设置的所有开关主题。room_tracking_enabled
:是否启用跟踪ignored_sensors
:列出应忽略以检测房间存在的所有传感器主题。
通过mqtt交互
Mqtt是控制照明控制的完美场所。
如何更改场景
mosquitto_pub \
-h localhost \
-u homeassistant \
-P password \
-t "control/lights/set" \
-m '{"scene":"<scene-name>"}'
依赖关系
~18–27MB
~476K SLoC