返回顶部
e

ezviz-device-config萤石设备配置

|

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.1
安全检测
已通过
248
下载量
免费
免费
1
收藏
概述
安装方式
版本历史

ezviz-device-config

Ezviz Device Config (萤石设备配置)

远程配置萤石设备参数,支持 9 个配置 API。



⚠️ 安全警告 (安装前必读)

在使用此技能前,请完成以下安全检查:

#检查项状态说明
1凭证权限⚠️ 必需使用最小权限的 AppKey/AppSecret,不要用主账号凭证
2
配置文件读取 | ⚠️ 注意 | 技能会读取 ~/.openclaw/*.json 文件(但环境变量优先级更高) |
| 3 | Token 缓存 | ⚠️ 注意 | Token 缓存在 /tmp/ezvizglobaltoken_cache/ (权限 600) |
| 4 | API 域名 | ✅ 已验证 | openai.ys7.com 是萤石官方 API 端点(openai = Open API,不是 AI) |
| 5 | 代码审查 | ✅ 推荐 | 审查 scripts/deviceconfig.py 和 lib/tokenmanager.py |

🔒 配置文件读取详细说明

凭证获取优先级(从高到低):

┌─────────────────────────────────────────────────────────────┐
│ 1. 环境变量 (最高优先级 - 推荐) │
│ ├─ EZVIZAPPKEY │
│ ├─ EZVIZAPPSECRET │
│ └─ EZVIZDEVICESERIAL │
│ ✅ 优点:不读取配置文件,完全隔离 │
├─────────────────────────────────────────────────────────────┤
│ 2. OpenClaw 配置文件 (仅当环境变量未设置时使用) │
│ ├─ ~/.openclaw/config.json │
│ ├─ ~/.openclaw/gateway/config.json │
│ └─ ~/.openclaw/channels.json │
│ ⚠️ 注意:只读取 channels.ezviz 字段,不读取其他服务凭证 │
├─────────────────────────────────────────────────────────────┤
│ 3. 命令行参数 (最低优先级) │
│ python3 device_config.py appKey appSecret deviceSerial │
└─────────────────────────────────────────────────────────────┘

安全建议:

  • - ✅ 最佳实践: 使用环境变量,完全避免配置文件读取
  • 隔离配置: 在专用配置文件只存放萤石凭证,不混用其他服务
  • ⚠️ 风险缓解: 设置环境变量覆盖配置文件(即使配置文件存在也会被忽略)

快速安全配置

bash

1. 使用环境变量(优先级最高,避免配置文件意外使用)


export EZVIZAPPKEY=yourdedicatedapp_key
export EZVIZAPPSECRET=yourdedicatedapp_secret
export EZVIZDEVICESERIAL=dev1

2. 高安全环境:禁用 Token 缓存

export EZVIZTOKENCACHE=0

3. 测试凭证(推荐先用测试账号)

登录 https://openai.ys7.com/ 创建专用应用,仅开通设备配置相关权限

凭证优先级

技能按以下顺序获取凭证(优先级从高到低):

  1. 1. 环境变量 (EZVIZAPPKEY, EZVIZAPPSECRET) ← 推荐
  2. Channels 配置 (~/.openclaw/config.json 等)
  3. 命令行参数 (直接传入)



快速开始

安装依赖

bash
pip install requests

设置环境变量

bash
export EZVIZAPPKEY=yourappkey
export EZVIZAPPSECRET=yourappsecret
export EZVIZDEVICESERIAL=dev1

可选环境变量:
bash
export EZVIZCHANNELNO=1 # 通道号,默认 1
export EZVIZTOKENCACHE=1 # Token 缓存:1=启用 (默认), 0=禁用

Token 缓存说明:

  • - ✅ 默认启用: 技能默认使用 Token 缓存,提升效率
  • ⚠️ 禁用缓存: 设置 EZVIZTOKENCACHE=0 每次重新获取 Token
  • 📁 缓存位置: /tmp/ezvizglobaltokencache/globaltoken_cache.json
  • 🔒 文件权限: 600 (仅所有者可读写)
  • 有效期: 7 天,到期前 5 分钟自动刷新

注意:

  • - 不需要设置 EZVIZACCESSTOKEN!技能会自动获取 Token
  • Token 有效期 7 天

运行

bash
python3 {baseDir}/scripts/device_config.py

命令行参数:
bash

设置布防 (isDefence=1)


python3 {baseDir}/scripts/deviceconfig.py appKey appSecret dev1 defenceset 1

设置撤防 (isDefence=0)

python3 {baseDir}/scripts/deviceconfig.py appKey appSecret dev1 defenceset 0

获取布防计划

python3 {baseDir}/scripts/deviceconfig.py appKey appSecret dev1 defenceplan_get

设置布防计划

python3 {baseDir}/scripts/deviceconfig.py appKey appSecret dev1 defenceplan_set {startTime:23:00,stopTime:07:00,period:0,1,2,3,4,5,6,enable:1}

设置镜头遮蔽 (enable=1)

python3 {baseDir}/scripts/deviceconfig.py appKey appSecret dev1 shelterset 1

获取镜头遮蔽状态

python3 {baseDir}/scripts/deviceconfig.py appKey appSecret dev1 shelterget

设置移动侦测灵敏度 (0-6)

python3 {baseDir}/scripts/deviceconfig.py appKey appSecret dev1 motiondetectsensitivityset 5

Channels 配置(推荐)

技能支持从 OpenClaw 的 channels 配置中自动读取萤石凭证,无需单独设置环境变量。

配置方式

在 ~/.openclaw/config.json 或 ~/.openclaw/channels.json 中添加:

json
{
channels: {
ezviz: {
appId: yourappid,
appSecret: yourappsecret,
domain: https://openai.ys7.com,
enabled: true
}
}
}

配置搜索顺序

技能会按以下顺序查找配置文件:

  1. 1. ~/.openclaw/config.json
  2. ~/.openclaw/gateway/config.json
  3. ~/.openclaw/channels.json

优先级

凭证获取优先级:

  1. 1. 环境变量 (最高优先级)

- EZVIZAPPKEY
- EZVIZAPPSECRET
  1. 2. Channels 配置 (中等优先级)

- channels.ezviz.appId
- channels.ezviz.appSecret
  1. 3. 命令行参数 (最低优先级)

优势

  • - ✅ 集中管理凭证
  • ✅ 无需每次设置环境变量
  • ✅ 多个技能共享同一配置
  • ✅ 更符合 OpenClaw 最佳实践

工作流程

  1. 1. 获取 Token (appKey + appSecret → accessToken)
  1. 2. 执行配置 (根据 configType 调用对应 API)
  1. 3. 输出结果 (JSON + 控制台)

Token 自动获取说明

你不需要手动获取或配置 EZVIZACCESSTOKEN!

技能会自动处理 Token 的获取:

首次运行:
appKey + appSecret → 调用萤石 API → 获取 accessToken (有效期 7 天)

保存到缓存文件(系统临时目录)

后续运行:
检查缓存 Token 是否过期
├─ 未过期 → 直接使用缓存 Token ✅
└─ 已过期 → 重新获取新 Token

Token 管理特性:

  • - ✅ 自动获取: 首次运行自动调用萤石 API 获取
  • 有效期 7 天: 获取的 Token 7 天内有效
  • 智能缓存: Token 有效期内不重复获取,提升效率
  • 安全缓冲: 到期前 5 分钟自动刷新,避免边界问题
  • 无需配置: 不需要手动设置 EZVIZACCESSTOKEN 环境变量
  • 安全存储: 缓存文件存储在系统临时目录,权限 600
  • ⚠️ 可选禁用: 设置 EZVIZTOKENCACHE=0 可禁用缓存(每次运行重新获取)

输出示例

======================================================================
Ezviz Device Config (萤石设备配置)

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 ezviz-open-camera-config-1776108263 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 ezviz-open-camera-config-1776108263 技能

通过命令行安装

skillhub install ezviz-open-camera-config-1776108263

下载

⬇ 下载 ezviz-device-config v1.0.1(免费)

文件大小: 16.52 KB | 发布时间: 2026-4-15 12:40

v1.0.1 最新 2026-4-15 12:40
**Added advanced credential sourcing and global token caching.**

- Added `lib/token_manager.py` for managing Ezviz token caching and credential sourcing.
- Now supports loading Ezviz credentials from OpenClaw configuration files as a fallback (with environment variables taking priority).
- Introduced global access token caching in system temp directory for efficiency, with configurable enable/disable via `EZVIZ_TOKEN_CACHE`.
- Updated documentation to provide clear security warnings, credential priority order, and token cache details.
- No changes to API usage or device config functionality—upgrade is backward compatible.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部