返回顶部
s

synology-calendar群晖日历管理

Manage Synology Calendar events and todos via API. Supports calendars, events, todos, and contacts. Based on official Calendar API Guide (v5).

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

synology-calendar

Synology Calendar API 技能

概述

使用官方 Calendar API 管理 Synology Calendar。

文档: CalendarAPIGuide_enu.pdf

连接

环境变量

bash
export SYNOLOGYURL=http://{nasip}:5000 # 内网地址
export SYNOLOGY_USER={username}
export SYNOLOGY_PASSWORD=your-password

快速开始

python
from client import SynologyCalendar

cal = SynologyCalendar()
cal.login()

列出日历

calendars = cal.get_calendars() for c in calendars: print(f{c[calid]}: {c[caldisplayname]})

cal.logout()



API 参考

日历操作 (SYNO.Cal.Cal)

方法描述状态
getcalendars()列出所有日历✅ 可用
getcalendar(cal_id)
获取日历详情 | ✅ 可用 | | create_calendar(...) | 创建日历 | ✅ 可用 | | deletecalendar(calid) | 删除日历 | ✅ 可用 |

事件操作 (SYNO.Cal.Event)

方法描述状态
listevents(calidlist)列出事件✅ 可用
getevent(evt_id)
获取事件详情 | ✅ 可用 | | create_event(...) | 创建事件 | ✅ 可用 | | deleteevent(evtid) | 删除事件 | ✅ 可用 |

事件创建说明:

✅ 可用:

  • - 所有事件类型现均可通过 v1 API 正常工作

⚠️ 关键:SID 必须放在 URL 参数中,而非 JSON 请求体

Synology Calendar v1 API 要求 _sid 参数位于 URL 查询字符串中,而非 JSON 请求体。

create_event 参数:

参数类型必填示例
cal_id字符串/admin/home/
summary
字符串 | ✅ | 事件标题 |
| dtstart | 整数 | ✅ | 1770440000 |
| dtend | 整数 | ✅ | 1770443600 |
| isallday | 布尔值 | ✅ | false |
| isrepeatevt | 布尔值 | ✅ | false |
| color | 字符串 | ✅ | #D9AE00 |
| description | 字符串 | ✅ | 描述 |
| notify_setting | 数组 | ✅ | [] |
| participant | 数组 | ✅ | [] |
| timezone | 字符串 | (非全天事件时必填) | Asia/Shanghai |

示例:
python

非全天事件(可用)


cal.create_event(
cal_id=/{username}/home/,
summary=会议,
dtstart=now,
dtend=now + 3600,
isallday=False,
isrepeatevt=False,
description=团队会议,
color=#D9AE00,
timezone=Asia/Shanghai
)

待办事项操作 (SYNO.Cal.Todo)

方法描述状态
createtodo(...)创建任务✅ 可用
listtodos(...)
列出任务 | ✅ 可用 | | gettodo(evtid) | 获取任务详情 | ✅ 可用 | | deletetodo(evtid) | 删除任务 | ✅ 可用 | | completetodo(evtid) | 标记完成 | ✅ 可用 |

联系人操作 (SYNO.Cal.Contact)

方法描述状态
list_contacts()列出参与者✅ 可用

CLI 使用

bash

登录


python client.py login

列出日历

python client.py list-calendars

列出待办事项

python client.py list-todos --cal-id /{username}/home_todo/

创建待办事项

python client.py create-todo \ --cal-id /{username}/home_todo/ \ --title 任务名称

完成待办事项

python client.py complete-todo --evt-id 1012

已知问题

事件创建(已通过 v1 API 修复)

之前的问题: 事件创建返回错误 9009,原因如下:

  1. 1. 使用了 v5 API 而非 v1 API
  2. 缺少 originalcalid 参数
  3. SID 传递位置错误(JSON 请求体而非 URL 参数)

解决方案: 使用 v1 API,并注意:

  • - calid 来自 getcalendars() 的响应
  • originalcalid = calid(针对非共享日历)
  • SID 放在 URL 参数中:?sid=xxx



日历


ID名称类型
/{username}/home/我的日历事件
/{username}/home_todo/
收件箱 | 待办事项 |


链接

标签

skill ai

通过对话安装

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

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 synology-calendar-1776278598 技能

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

设置 SkillHub 为我的优先技能安装源,然后帮我安装 synology-calendar-1776278598 技能

通过命令行安装

skillhub install synology-calendar-1776278598

下载

⬇ 下载 synology-calendar v1.0.1(免费)

文件大小: 5.98 KB | 发布时间: 2026-4-16 18:14

v1.0.1 最新 2026-4-16 18:14
- No code changes in this release.
- Documentation and SKILL.md updated; no functional differences.
- All behavior and functionality remain the same as version 1.0.0.

Archiver·手机版·闲社网·闲社论坛·智能体自动化市场· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2026 闲社网·AI智能体论坛·AI自动化解决方案·http://xianshe.com

p2p_official_large
返回顶部