← 返回 Skills 市场
🔌

jf-open-pro-local-record

作者 jftech · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
48
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install jf-open-pro-local-record
功能描述
杰峰设备本地录像技能(开发版)。支持 TF 卡/硬盘存储设备的录像日历查询、回放列表、录像回放下载、本地报警图片获取、主辅码流切换等功能。
使用说明 (SKILL.md)

jf-open-pro-local-record - 杰峰设备本地录像技能(开发版)

技能描述

支持杰峰设备本地录像管理功能,适用于搭载 TF 卡或硬盘存储的设备:

  • 录像日历查询 - 查询指定月份哪些日期有录像
  • 录像回放列表 - 获取指定时间段的录像文件列表
  • 录像回放地址 - 获取 FLV/HLS/RTSP/MP4 回放地址
  • 录像下载 - 获取 MP4 格式录像下载地址
  • 本地报警图片 - 获取设备本地存储的报警图片
  • 主辅码流切换 - 切换本地录像的主码流(高清)或辅码流(标清)

适用场景:

  • 回看历史录像
  • 下载重要录像片段
  • 查看报警时的抓拍图片
  • 调整录像存储质量(高清/标清)

触发词

  • 查询录像日历 / 查询录像列表 / 录像回放
  • 下载录像 / 获取报警图片 / 切换码流
  • 本地录像 / 卡存录像 / TF 卡录像 / 硬盘录像

前置条件

硬件要求

  1. 设备支持卡存录像 - 设备需有 TF 卡或硬盘存储
  2. 录像已开启 - 设备已配置录像计划并正常录像

必需配置

  1. 签名算法 - 使用杰峰官方移位加密算法生成 signature
  2. 时间戳算法 - counter(7 位) + timeMillis(13 位),实时生成
  3. 设备绑定 - 设备需先绑定到开放平台账号

环境变量

变量名 说明 默认值 必需
JF_UUID 开放平台用户 uuid -
JF_APP_KEY 开放平台应用 appKey -
JF_APP_SECRET 开放平台应用密钥 -
JF_MOVE_CARD 移动卡标识(用于签名) 2
JF_DEVICE_SN 设备序列号 -
JF_DEVICE_TOKEN 设备接口访问令牌 -
JF_DEVICE_USERNAME 设备用户名 admin
JF_DEVICE_PASSWORD 设备密码 -
JF_ENDPOINT API 接入地址 api-cn.jftechws.com

API 接口

功能 地址 方法 需要 Token 需要在线
录像日历 POST /gwp/v3/rtc/device/cardPlaybackCalendar/{token} POST
录像列表 POST /gwp/v3/rtc/device/opdev/{token} POST
回放地址 POST /gwp/v3/rtc/device/playbackUrl/{token} POST
报警图片 POST /gwp/v3/rtc/device/getDeviceLocalPic/{token} POST
切换码流 POST /gwp/v3/rtc/device/cardVideoSwitchStream/{token} POST

核心功能

1. 录像日历查询(CardPlaybackCalendar)

API: POST /gwp/v3/rtc/device/cardPlaybackCalendar/{deviceToken}

请求参数:

参数 类型 必需 说明
Name string 固定为 OPSCalendar
OPSCalendar.Event string 录像类型(*=全部,A=外部报警,M=动检,H=手动等)
OPSCalendar.FileType string 文件类型(h264=视频,jpg=图片)
OPSCalendar.Year int 年份
OPSCalendar.Month int 月份(1-12)
OPSCalendar.Channel int 通道号(默认 0)

响应参数:

字段 类型 说明
CalendarList object[] 日历列表
├─ date string 日期(YYYY-MM-DD)
├─ is_exist int 是否存在录像(0=不存在,1=存在)

2. 录像回放列表(OPFileQuery)

API: POST /gwp/v3/rtc/device/opdev/{deviceToken}

请求参数:

参数 类型 必需 说明
Name string 固定为 OPFileQuery
OPFileQuery.BeginTime string 开始时间(yyyy-MM-dd HH:mm:ss)
OPFileQuery.EndTime string 结束时间(yyyy-MM-dd HH:mm:ss)
OPFileQuery.Channel int 通道号(0=第一通道)
OPFileQuery.Event string 录像类型(*=全部,R=常规,A=报警,M=动检,H=手动等)
OPFileQuery.StreamType string 码流类型(0x00000000=主码流,0x00000001=辅码流)
OPFileQuery.Type string 文件类型(h264=视频,jpg=图片)
OPFileQuery.DriverTypeMask string 固定为 0x0000FFFF

录像类型说明:

类型 代码 说明
全部 * 所有类型的录像
常规录像 R 没有报警时的录像(包含 AOV 录像)
外部报警 A IO 口报警等非视频类报警
动态检测 M 移动侦测、人形检测等视频类报警
手动录像 H 手动开启的录像
AOV 录像 V 低功耗全时录像
入侵 I 入侵检测录像
人脸 F 人脸识别录像
车牌 N 车牌识别录像
关键录像 K 关键录像

响应参数:

字段 类型 说明
OPFileQuery object[] 录像文件列表
├─ BeginTime string 开始时间
├─ EndTime string 结束时间
├─ FileName string 录像文件名
├─ FileLength int 文件大小(KB)

3. 录像回放/下载地址(PlaybackUrl)

API: POST /gwp/v3/rtc/device/playbackUrl/{deviceToken}

请求参数:

参数 类型 必需 说明
channel int 通道号(0=第一通道)
streamType int 码流类型(0=高清主码流,1=标清辅码流)
protocol string 播放协议(flv/hls-ts/hls-fmp4/mp4/rtsp-sdp
startTime string 回放开始时间
endTime string 回放结束时间
fileName string 录像文件名(从回放列表获取)
username string 设备登录用户名
password string 设备登录密码
download int 0=在线回放,1=录像下载(仅 protocol=mp4 时有效)
playPrioritize int 回放优先级(0-2=普通,8=优先播放,9=持续播放)

协议说明:

协议 说明
FLV flv 标准 FLV 封装(推荐用于 Web 播放)
FLV 增强 flv-enhanced FLV 增强封装(H.265 编码推荐)
HLS-TS hls-ts HLS 协议,TS 格式切片
HLS-FMP4 hls-fmp4 HLS 协议,FMP4 格式切片
MP4 mp4 HTTP 协议,MP4 格式(用于下载)
RTSP rtsp-sdp RTSP 标准协议

响应参数:

字段 类型 说明
url string 播放/下载地址(有效期 10 小时
Ret int 设备响应状态码

⚠️ 注意:

  • URL 有效期为 10 小时
  • 同时只支持 一路回放或下载
  • 本地录像回放和下载按照流量计费

4. 本地报警图片(GetDeviceLocalPic)

API: POST /gwp/v3/rtc/device/getDeviceLocalPic/{deviceToken}

请求参数:

参数 类型 必需 说明
startTime string 开始时间
endTime string 结束时间
fileName string 图片文件名(从录像列表获取)

响应参数:

字段 类型 说明
image string 图片地址 URL

5. 切换主辅码流(CardVideoSwitchStream)

API: POST /gwp/v3/rtc/device/cardVideoSwitchStream/{deviceToken}

请求参数:

参数 类型 必需 说明
stream int 码流类型(0=高清主码流,1=标清辅码流)

说明:

  • 切换后新录制的视频将使用新码流
  • 不影响已存储的录像文件

使用示例

环境准备

# 设置环境变量
export JF_UUID="uuidxxxx"
export JF_APP_KEY="appkeyxxxx"
export JF_APP_SECRET="appsecretxxxx"
export JF_MOVE_CARD=0
export JF_DEVICE_SN="snxxx1"
export JF_DEVICE_TOKEN="NTQ0NzQ3YmE3MXwyYzFk..."
export JF_DEVICE_USERNAME="admin"
export JF_DEVICE_PASSWORD="xxxx"
export JF_ENDPOINT="api-cn.jftechws.com"

1. 查询录像日历

cd ~/.openclaw/workspace/skills/developer/jf-open-pro-local-record/scripts

# 查询本月录像日历
python3 local_record.py --action get-calendar --year 2026 --month 5

# 查询指定月份
python3 local_record.py --action get-calendar --year 2026 --month 4

2. 查询录像列表

# 查询今天录像列表
python3 local_record.py --action get-record-list \
  --start "2026-05-07 00:00:00" \
  --end "2026-05-07 23:59:59"

# 查询报警录像
python3 local_record.py --action get-record-list \
  --start "2026-05-07 00:00:00" \
  --end "2026-05-07 23:59:59" \
  --event "AMRH"

3. 获取录像回放地址

# 获取 FLV 回放地址(Web 播放)
python3 local_record.py --action get-playback-url \
  --file-name "/idea0/2026-05-07/001/10.00.00-11.00.00[R][@12345][0].h264" \
  --start "2026-05-07 10:00:00" \
  --end "2026-05-07 11:00:00" \
  --protocol flv

# 获取 HLS 回放地址(移动端播放)
python3 local_record.py --action get-playback-url \
  --file-name "/idea0/2026-05-07/001/10.00.00-11.00.00[R][@12345][0].h264" \
  --start "2026-05-07 10:00:00" \
  --end "2026-05-07 11:00:00" \
  --protocol hls-ts

4. 下载录像

# 获取 MP4 下载地址
python3 local_record.py --action download-record \
  --file-name "/idea0/2026-05-07/001/10.00.00-11.00.00[R][@12345][0].h264" \
  --start "2026-05-07 10:00:00" \
  --end "2026-05-07 11:00:00"

5. 获取本地报警图片

# 获取报警图片地址
python3 local_record.py --action get-alarm-pic \
  --file-name "/idea1/2026-05-07/001/10.24.01-10.24.02[M][@48][0].jpg" \
  --start "2026-05-07 10:24:01" \
  --end "2026-05-07 10:24:02"

6. 切换主辅码流

# 切换到标清辅码流(节省存储空间)
python3 local_record.py --action switch-stream --stream 1

# 切换到高清主码流(更高画质)
python3 local_record.py --action switch-stream --stream 0

# 查询当前码流状态
python3 local_record.py --action get-stream-status

状态码

平台状态码

code 说明 处理建议
2000 成功 -
28007 Header 参数错误 检查 uuid、appKey、timeMillis、signature
40103 无效 Token deviceToken 过期,重新获取
50000 服务器内部错误 联系杰峰技术支持

设备状态码(Ret)

Ret 说明
100 成功
200 成功(图片接口)

注意事项

  1. 设备要求 - 设备需支持卡存录像(TF 卡或硬盘)
  2. deviceToken 有效期 - 24 小时,过期需重新获取
  3. 设备在线要求 - 所有操作需要设备在线
  4. 回放 URL 有效期 - 10 小时,请及时使用
  5. 单路限制 - 同时只支持一路回放或下载
  6. 流量计费 - 本地录像回放和下载按照流量计费
  7. 时间格式 - 所有时间参数使用 yyyy-MM-dd HH:mm:ss 格式
  8. 文件名获取 - 录像文件名需从回放列表接口获取

相关文件

文件 说明
SKILL.md 技能文档
scripts/local_record.py Python 执行脚本
scripts/crypto.py 签名/时间戳加密工具(复用)

参考文档

安全使用建议
Install only if you trust the publisher and will set JF_ENDPOINT to an official JFTech regional host. Treat device tokens, app secrets, device passwords, playback URLs, download URLs, and alarm-image URLs as secrets, since they can expose private surveillance footage or device access.
能力标签
crypto
能力评估
Purpose & Capability
The scripts and documentation coherently support JF device local-record queries, playback/download URL generation, alarm-image retrieval, and stream switching.
Instruction Scope
The skill discloses the required credentials and API calls, but does not clearly constrain returned playback/image URLs as sensitive secrets or warn against sharing/logging them.
Install Mechanism
The artifact contains documentation and Python scripts only; I found no hidden installer, package-install step, autostart behavior, or persistence setup.
Credentials
The script reads app credentials, a device token, and a device password from the environment, then sends authenticated requests to a host derived from unvalidated JF_ENDPOINT.
Persistence & Privilege
There is no local privilege escalation or background persistence, but the skill can perform authenticated device actions, including switching recording stream quality, when invoked.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install jf-open-pro-local-record
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /jf-open-pro-local-record 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
jf-open-pro-local-record 1.0.0 - 首次发布,支持杰峰 TF 卡/硬盘本地录像的日历查询、录像列表、回放、下载、主辅码流切换及本地报警图片获取。 - 提供详细参数说明、API 接口文档和完整使用示例,支持多地区服务端点。 - 支持多种录像类型筛选(常规、报警、动检、手动等)。 - 支持主辅码流配置切换,满足存储和画质不同需求。 - 需配置相关环境变量,设备需已完成绑定和配网。
元数据
Slug jf-open-pro-local-record
版本 1.0.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

jf-open-pro-local-record 是什么?

杰峰设备本地录像技能(开发版)。支持 TF 卡/硬盘存储设备的录像日历查询、回放列表、录像回放下载、本地报警图片获取、主辅码流切换等功能。 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 48 次。

如何安装 jf-open-pro-local-record?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install jf-open-pro-local-record」即可一键安装,无需额外配置。

jf-open-pro-local-record 是免费的吗?

是的,jf-open-pro-local-record 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

jf-open-pro-local-record 支持哪些平台?

jf-open-pro-local-record 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 jf-open-pro-local-record?

由 jftech(@jftech)开发并维护,当前版本 v1.0.0。

💬 留言讨论