ReefBeat Skill
Direct HTTP control for Red Sea ReefBeat devices. Full API reference in references/api.md.
Quick Start
CODEBLOCK0
Device Discovery
Run discovery to find all devices on your network automatically:
python3 scripts/reefbeat.py discover <YOUR_SUBNET>/24
Common Actions by Request
ReefLED — Lighting
CODEBLOCK2
ReefRun — Pumps / Skimmer
CODEBLOCK3
ReefATO+ — Auto Top-Off
CODEBLOCK4
ReefMat — Filter Roll
CODEBLOCK5
ReefWave — Wave Pump
CODEBLOCK6
Shortcuts (All Devices)
CODEBLOCK7
Network Behaviour
- - Auto-discovery (
discover command) opens a UDP socket to 8.8.8.8 (no data sent — standard technique to detect the local network interface), then actively probes all hosts in the subnet via HTTP /device-info and /description.xml. This is local-only after the interface detection step. - No cloud authentication or external API calls are made by this skill.
- All device control is purely local HTTP (port 80, no auth).
Notes
- - G1 LEDs (RSLED50/90/160): white + blue channels (0–100%)
- G2 LEDs (RSLED60/115/170): kelvin (10000–20000) + intensity (0–100%)
- ReefDose config requests can take 7–9s — normal
- ReefWave local changes desync from app — expected
- ATO
pump_timeout / malfunction → POST /resume to clear - Always read
/pump/settings before writing to preserve unchanged pump fields
ReefBeat 技能
用于Red Sea ReefBeat设备的直接HTTP控制。完整API参考见references/api.md。
快速开始
bash
python3 scripts/reefbeat.py discover /24 # 查找所有设备
python3 scripts/reefbeat.py info # 设备信息 + 类型
python3 scripts/reefbeat.py status # /dashboard
python3 scripts/reefbeat.py get /endpoint
python3 scripts/reefbeat.py post /endpoint {key:value}
python3 scripts/reefbeat.py put /endpoint {key:value}
设备发现
运行发现功能可自动查找网络上的所有设备:
bash
python3 scripts/reefbeat.py discover /24
按请求分类的常见操作
ReefLED — 照明
bash
检查当前灯光状态
python3 scripts/reefbeat.py
get /manual
设置白色/蓝色(G1 — RSLED90)
python3 scripts/reefbeat.py post /manual {white: 60, blue: 80}
定时手动模式(30分钟后恢复计划)
python3 scripts/reefbeat.py post /manual {white: 60, blue: 80, duration: 30}
切换月相模式
python3 scripts/reefbeat.py IP> post /moonphase {enabled: true, moonday: 14}
驯化模式
python3 scripts/reefbeat.py IP> post /acclimation {enabled: true, duration: 50, startintensity_factor: 30}
查看周一(第1天)的自动计划
python3 scripts/reefbeat.py get /auto/1
关闭LED / 恢复计划
python3 scripts/reefbeat.py delete /off
ReefRun — 水泵/蛋白质分离器
bash
检查水泵状态
python3 scripts/reefbeat.py status
python3 scripts/reefbeat.py get /pump/settings
开启/关闭水泵(由schedule_enabled控制)
python3 scripts/reefbeat.py put /pump/settings \
{pump2: {id:2,name:skimmer,type:skimmer,model:rsk-300,sensorcontrolled:true,schedule_enabled:false,schedule:[{st:0,ti:0,pd:0}]}}
将回流泵强度改为70%
python3 scripts/reefbeat.py put /pump/settings \
{pump1: {id:1,name:Return pump,type:return,model:return-6,sensorcontrolled:false,schedule_enabled:true,schedule:[{st:0,ti:70,pd:0}]}}
切换过量撇渣保护
python3 scripts/reefbeat.py put /pump/settings \
{overskimming: {enabled: true, threshold: 10}}
ReefATO+ — 自动补水
bash
检查ATO状态(液位、温度、补水次数)
python3 scripts/reefbeat.py status
python3 scripts/reefbeat.py status
故障/水泵超时后恢复
python3 scripts/reefbeat.py post /resume
启用/禁用自动补水
python3 scripts/reefbeat.py IP> put /configuration {autofill: true}
手动补水/停止
python3 scripts/reefbeat.py post /manual-pump
python3 scripts/reefbeat.py post /stop
设置储水罐容量(毫升)
python3 scripts/reefbeat.py post /update-volume {volume: 10000}
ReefMat — 过滤卷
bash
检查滤卷状态
python3 scripts/reefbeat.py status # 水族箱1滤卷
python3 scripts/reefbeat.py status # 水族箱2滤卷
手动推进滤卷
python3 scripts/reefbeat.py post /advance
注册新满卷(ReefMat250 — 最大直径11.1cm)
python3 scripts/reefbeat.py post /new-roll \
{externaldiameter: 11.1, name: New Roll, thickness: 0.3, ispartial: false}
注册已使用滤卷
python3 scripts/reefbeat.py post /new-roll \
{externaldiameter: 8.5, name: Started Roll, thickness: 0.3, ispartial: true}
切换自动推进
python3 scripts/reefbeat.py IP> put /configuration {autoadvance: true}
ReefWave — 造浪泵
bash
检查造浪状态
python3 scripts/reefbeat.py status
启动预览模式(交替模式,5分钟正向/5分钟反向,80%强度,总计5分钟)
python3 scripts/reefbeat.py post /preview \
{type:st,frt:5,rrt:5,fti:80,rti:80,duration:300000,sn:5,pd:10}
停止/保存预览
python3 scripts/reefbeat.py delete /preview
快捷操作(所有设备)
bash
启动喂食模式
python3 scripts/reefbeat.py post /maintenance # 或 /emergency
结束维护模式
python3 scripts/reefbeat.py delete /maintenance
网络行为
- - 自动发现(discover命令)会打开一个UDP套接字连接到8.8.8.8(不发送数据——这是检测本地网络接口的标准技术),然后通过HTTP /device-info和/description.xml主动探测子网内的所有主机。在接口检测步骤之后,此操作仅在本地进行。
- 此技能不会进行云认证或外部API调用。
- 所有设备控制均为纯本地HTTP(端口80,无需认证)。
注意事项
- - G1 LED(RSLED50/90/160):白色+蓝色通道(0–100%)
- G2 LED(RSLED60/115/170):色温(10000–20000)+ 强度(0–100%)
- ReefDose配置请求可能需要7–9秒——属正常现象
- ReefWave本地更改会与应用不同步——属预期行为
- ATO pump_timeout / malfunction → POST /resume 清除
- 写入前务必先读取/pump/settings,以保留未更改的水泵字段