Install
openclaw skills install jf-open-pro-device-battery-manage杰峰低功耗设备电池管理技能(开发版)。支持查询低电量阈值范围、设置低电量模式阈值等电池管理功能。
openclaw skills install jf-open-pro-device-battery-manage支持杰峰低功耗设备的电池管理功能:
适用场景: 低功耗电池设备、太阳能供电设备等
| 变量名 | 说明 | 默认值 | 必需 |
|---|---|---|---|
JF_UUID | 开放平台用户 uuid | - | ✅ |
JF_APP_KEY | 开放平台应用 appKey | - | ✅ |
JF_APP_SECRET | 开放平台应用密钥 | - | ✅ |
JF_MOVE_CARD | 移动卡标识(用于签名) | 2 | ✅ |
JF_DEVICE_SN | 设备序列号 | - | ✅ |
JF_DEVICE_TOKEN | 设备接口访问令牌 | - | ✅ |
JF_ENDPOINT | API 接入地址 | api-cn.jftechws.com | ❌ |
| 功能 | 地址 | 方法 |
|---|---|---|
| 获取低电量阈值范围 | POST /gwp/v3/rtc/device/getconfig/{token} | POST |
| 设置低电量阈值 | POST /gwp/v3/rtc/device/setconfig/{token} | POST |
API: POST /gwp/v3/rtc/device/getconfig/{deviceToken}
Name: Ability.AovAbility
说明: 查询设备支持的阈值范围(只返回 LowElectrMin 和 LowElectrMax)
响应参数:
| 字段 | 类型 | 说明 | 来源 |
|---|---|---|---|
| LowElectrMin | int | 最小电量阈值(%) | Ability.AovAbility.LowElectrMin |
| LowElectrMax | int | 最大电量阈值(%) | Ability.AovAbility.LowElectrMax |
响应示例:
{
"code": 2000,
"data": {
"Ability.AovAbility": {
"LowElectrMin": 10,
"LowElectrMax": 40
},
"Name": "Ability.AovAbility",
"Ret": 100
}
}
💡 注意:
Ability.AovAbility也返回LowElectrThreshold字段,但不使用该字段。当前生效的阈值从Dev.LowElectrMode.PowerThreshold获取。
API: POST /gwp/v3/rtc/device/getconfig/{deviceToken}
Name: Dev.LowElectrMode
说明: 查询当前已生效的低电量阈值
响应参数:
| 字段 | 类型 | 说明 | 来源 |
|---|---|---|---|
| PowerThreshold | int | 当前低电量阈值(%) | Dev.LowElectrMode.PowerThreshold |
响应示例:
{
"code": 2000,
"data": {
"Dev.LowElectrMode": {
"PowerThreshold": 20
},
"Name": "Dev.LowElectrMode",
"Ret": 100
}
}
API: POST /gwp/v3/rtc/device/setconfig/{deviceToken}
Name: Dev.LowElectrMode
请求参数:
| 参数 | 类型 | 必需 | 说明 |
|---|---|---|---|
| PowerThreshold | int | ✅ | 自动进入低电量模式的电量阈值(%) |
请求示例:
{
"Name": "Dev.LowElectrMode",
"Dev.LowElectrMode": {
"PowerThreshold": 20
}
}
官方文档:
| 功能 | API Name | 字段 | 用途 |
|---|---|---|---|
| 查询范围 | Ability.AovAbility | LowElectrMin, LowElectrMax | 获取阈值的最小/最大值 |
| 查询当前值 | Dev.LowElectrMode | PowerThreshold | 获取已生效的阈值 |
| 设置阈值 | Dev.LowElectrMode | PowerThreshold | 设置新阈值 |
推荐流程: 先获取设备支持的阈值范围,查询当前值,验证后设置新阈值
# 一步完成:查询范围 + 查询当前值 + 设置阈值(自动验证)
python3 battery_manage.py --action get-and-set --threshold 20
执行流程:
Ability.AovAbility)Dev.LowElectrMode)Dev.LowElectrMode)# 设置环境变量(使用占位符,请替换为实际值)
export JF_UUID="uuidxxxx"
export JF_APP_KEY="appkeyxxxx"
export JF_APP_SECRET="appsecretxxxx"
export JF_MOVE_CARD="2"
export JF_DEVICE_SN="devicesnxxxx"
export JF_DEVICE_TOKEN="devicetokenxxxx"
export JF_ENDPOINT="api-cn.jftechws.com"
cd ~/.openclaw/workspace/skills/developer/jf-open-pro-device-battery-manage/scripts
# 查询设备支持的电量阈值范围
python3 battery_manage.py --action get-range
# 设置低电量阈值为 15%
python3 battery_manage.py --action set-threshold --threshold 15
# 设置低电量阈值为 20%
python3 battery_manage.py --action set-threshold --threshold 20
# 方式一:分步执行
python3 battery_manage.py --action get-range
python3 battery_manage.py --action set-threshold --threshold 15
# 方式二:一步完成(推荐)- 自动获取范围并验证
python3 battery_manage.py --action get-and-set --threshold 15
| 参数 | 取值范围 | 说明 |
|---|---|---|
| LowElectrThreshold | LowElectrMin ~ LowElectrMax | 自动进入低电量模式的电量百分比 |
示例:
| code | 说明 | 处理建议 |
|---|---|---|
| 2000 | 成功 | - |
| 28007 | Header 参数错误 | 检查 uuid、appKey、timeMillis、signature |
| 40103 | 无效 Token | deviceToken 过期,重新获取 |
| 50000 | 服务器内部错误 | 联系杰峰技术支持 |
| Ret | 说明 |
|---|---|
| 100 | 成功 |
get-and-set 组合操作可自动获取范围并验证,避免手动查询| 文件 | 说明 |
|---|---|
SKILL.md | 技能文档 |
scripts/battery_manage.py | 主脚本(查询/设置阈值) |
scripts/crypto.py | 签名/时间戳加密工具 |
scripts/get_device_token.py | 获取设备 Token |
scripts/get_current_threshold.py | 查询当前阈值 |