Install
openclaw skills install jf-open-pro-cloud-record杰峰设备云存储技能(开发版)。支持云存视频列表查询、云存视频回放/下载、云存报警消息查询等功能。设备需开通云存储套餐。
openclaw skills install jf-open-pro-cloud-record支持杰峰设备云存储视频管理功能:
⚠️ 前提条件: 设备需开通云存储套餐
| 变量名 | 说明 | 默认值 | 必需 |
|---|---|---|---|
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/getVideoList/{token} | POST |
| 获取云存回放地址 | POST /gwp/v3/rtc/device/getVideoUrl/{token} | POST |
| 获取云存报警消息 | POST /gwp/v3/rtc/device/getDeviceAlarmList/{token} | POST |
API: POST /gwp/v3/rtc/device/getVideoList/{deviceToken}
请求参数:
| 参数 | 类型 | 必需 | 说明 |
|---|---|---|---|
| startTime | string | ✅ | 开始时间(yyyy-MM-dd HH:mm:ss) |
| stopTime | string | ✅ | 结束时间(yyyy-MM-dd HH:mm:ss) |
| sn | string | ✅ | 设备序列号 |
| channel | int | ❌ | 通道号(默认 0) |
| pageStart | int | ❌ | 起始页(默认 1) |
| pageSize | int | ❌ | 每页数量(1-200,默认 200) |
| events | string[] | ❌ | 报警类型过滤 |
响应参数:
| 字段 | 类型 | 说明 |
|---|---|---|
| VideoArray | object[] | 视频列表 |
| ├─ StartTime | string | 录像开始时间 |
| ├─ StopTime | string | 录像结束时间 |
| ├─ IndexFile | string | 录像文件名(.m3u8) |
| ├─ PicFlag | int | 是否有缩略图(1=有,0=无) |
| ├─ VideoSize | int | 视频大小(字节) |
| ├─ thumbURL | string | 缩略图 URL |
| ├─ events | string[] | 报警类型 |
| └─ videoId | string | 视频 ID |
API: POST /gwp/v3/rtc/device/getVideoUrl/{deviceToken}
请求参数:
| 参数 | 类型 | 必需 | 说明 |
|---|---|---|---|
| videoId | string | ❌ | 视频 ID(精准查询) |
| startTime | string | ❌ | 开始时间(条件查询) |
| stopTime | string | ❌ | 结束时间(条件查询) |
| channel | int | ❌ | 通道号(默认 0) |
| fileFormat | string | ❌ | 格式(m3u8=在线播放,MP4=下载) |
| multiVideo | string | ❌ | 多目设备标识(1=多目) |
响应参数:
| 字段 | 类型 | 说明 |
|---|---|---|
| url | string | 视频地址(有效期 24 小时) |
API: POST /gwp/v3/rtc/device/getDeviceAlarmList/{deviceToken}
请求参数:
| 参数 | 类型 | 必需 | 说明 |
|---|---|---|---|
| startTime | string | ✅ | 开始时间(yyyy-MM-dd HH:mm:ss) |
| endTime | string | ✅ | 结束时间(yyyy-MM-dd HH:mm:ss) |
| pageNum | int | ❌ | 页数(默认 1) |
| pageSize | int | ❌ | 每页数量(1-100,默认 10) |
| alarmEvent | string | ❌ | 报警类型 |
# 设置环境变量(使用占位符,请替换为实际值)
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-cloud-record/scripts
# 查询今天云存视频
python3 cloud_record.py --action get-video-list \
--start "2026-05-07 00:00:00" \
--stop "2026-05-07 23:59:59"
# 查询报警视频(人体检测)
python3 cloud_record.py --action get-video-list \
--start "2026-05-07 00:00:00" \
--stop "2026-05-07 23:59:59" \
--event "HumanDetect"
# 获取回放地址(在线播放)
python3 cloud_record.py --action get-video-url \
--video-id "videoIdxxxx" \
--format m3u8
# 获取下载地址(MP4)
python3 cloud_record.py --action get-video-url \
--video-id "videoIdxxxx" \
--format MP4
# 查询今天报警消息
python3 cloud_record.py --action get-alarm-list \
--start "2026-05-07 00:00:00" \
--end "2026-05-07 23:59:59"
# 查询人体检测报警
python3 cloud_record.py --action get-alarm-list \
--start "2026-05-07 00:00:00" \
--end "2026-05-07 23:59:59" \
--event "appEventHumanDetectAlarm"
| 报警类型 | 说明 |
|---|---|
HumanDetect | 人形检测 |
VehicleDetect | 车辆检测 |
PetDetect | 宠物检测 |
MotionDetect | 移动侦测 |
appEventHumanDetectAlarm | 人体检测报警 |
| code | 说明 | 处理建议 |
|---|---|---|
| 2000 | 成功 | - |
| 28007 | Header 参数错误 | 检查 uuid、appKey、timeMillis、signature |
| 40103 | 无效 Token | deviceToken 过期,重新获取 |
| 50000 | 服务器内部错误 | 联系杰峰技术支持 |
yyyy-MM-dd HH:mm:ss 格式| 文件 | 说明 |
|---|---|
SKILL.md | 技能文档 |
scripts/cloud_record.py | Python 执行脚本 |
scripts/crypto.py | 签名/时间戳加密工具(复用) |