📦 Appointment Booking System — 预约预订管理系统

v1.0.1

为服务行业提供的通用预约预订和管理系统,支持预约接收、确认、自动提醒(24小时、2小时)、无预约跟进和日程报告。包含5个生产就绪的n8n工作流,后端使用Google Sheets。

0· 351·1 当前·1 累计
by @mhmalvi (Muhammad H.M. Alvi)·MIT-0
下载技能包
License
MIT-0
最后更新
2026/4/10
0
安全扫描
VirusTotal
可疑
查看报告
OpenClaw
可疑
medium confidence
该技能的工作流和指令与预约系统匹配,功能正常,但元数据不匹配和一些运营安全漏洞(公开Webhook、未声明的n8n凭据要求)存在不一致,安装前应验证。
评估建议
["验证作者/所有者:注册元数据(ownerId和版本)与_meta.json和SKILL.md不匹配。如果重要,请询问发布者哪个是权威的。","n8n凭据和范围:工作流需要Google Sheets OAuth2和SMTP凭据。仅授予最小Google范围(仅Sheets访问)并使用专用SMTP账户发送事务性电子邮件。","Webhook安全:默认公开的Webhook(booking/new和booking/confirm)。使用秘密令牌、IP限制或n8n身份验证保护它们,否则攻击者可能会发送垃圾预约或触发大规模电子邮件。","Sheet ID处理:Google Sheet ID在JSON文件中作为占位符嵌入。导入后,确保表格位于您控制的项目/账户中,并审查表格的共享设置——不要使用广泛共享的表格。","在阶段测试:将其导入n8n阶段实例,使用测试凭据,验证逻辑(时区、日期解析、重复处理)并确保没有意外的网络调用。","数据保护和合规:预约包含个人数据(姓名、电子邮件、电话号码)。在生产环境中使用前确认保留、访问控制和合规义务(例如HIPAA、GDPR)。如果无法验证所有者或来源,请将...
详细分析 ▾
用途与能力
工作流、SKILL.md和JSON文件实现了一致的预约预订系统(Webhook接收、Google Sheets存储、SMTP电子邮件、提醒、无预约处理、日报)。然而,元数据存在不一致:注册级的ownerId和版本与_meta.json和SKILL.md不同(注册列出ownerId 'kn75ky42...'和版本1.0.1,而_meta.json和SKILL.md引用'mhmalvi'和版本1.2.0)。此不匹配本身并非恶意,但降低了来源信心,应进行验证。
指令范围
SKILL.md和包含的工作流仅限制n8n操作(Webhook、Google Sheets读/写、SMTP发送)。它们不指示代理读取本地文件或无关的环境变量。运营风险:工作流创建公开的Webhook端点(booking/new, booking/confirm),而SKILL.md中没有关于身份验证或超出简单字段检查的请求验证指南。公开暴露之前,您应确保Webhook受到保护(令牌、IP允许列表或防火墙)。
安装机制
无安装规范或外部下载 — 仅包含指令和n8n工作流JSON文件。安装程序未将代码写入磁盘,从安装机制的角度看,这是低风险的。
凭证需求
声明的必需环境变量(BUSINESS_NAME、BUSINESS_PHONE、STAFF_EMAIL)对于电子邮件内容是合理的。SKILL.md元数据还需要n8n凭据(Google Sheets OAuth2和SMTP),这些对于描述的功能是必要的,但未列在顶级注册表的“主要凭据”块中 — 这是注册元数据中的疏漏。验证您仅提供Google Sheets所需的最小OAuth范围,并使用专用SMTP账户发送事务性电子邮件。工作流将Google Sheet ID嵌入JSON中作为占位符(不是环境变量) — 考虑安全管理该值。
持久化与权限
always:false和正常模型调用设置。该技能不请求持久的平台级权限,也不修改其他技能。其计划工作流将在n8n中按预期运行;确保您审查n8n的执行权限以及谁可以导入/激活工作流。
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

🖥️ OSLinux · macOS · Windows

版本

latestv1.0.12026/3/3

修复:在requires.env元数据中声明工作流中使用的所有环境变量,以符合安全扫描要求。

可疑

安装命令

点击复制
官方npx clawhub@latest install appointment-booking-system
镜像加速npx clawhub@latest install appointment-booking-system --registry https://cn.longxiaskill.com

技能文档

一个完整的预约预订和服务管理系统。处理预约接收、确认邮件、自动提醒、爽约检测和每日日程报告。

问题

服务行业企业(沙龙、诊所、咨询顾问工作室)因预约错过、爽约和调度混乱而损失收入。预订平台每月收取 30-100 美元以上的费用,且通常缺乏定制化功能。人工提醒不可靠。本系统提供零月费的自托管预约管理功能。

功能说明

  • 预约接收 — Webhook API 接收预订、验证字段、生成预订 ID、存储到 Sheets
  • 确认 — 立即向客户发送确认邮件,并向员工发送通知
  • 智能提醒 — 自动发送 24 小时和 2 小时提醒
  • 爽约跟进 — 检测错过的预约并发送重新预约邮件
  • 每日日程 — 早晨发送今天和明天的预约以及每周统计的邮件

包含的工作流程

#文件用途
0101-booking-intake.jsonWebhook → 验证 → 存储 → 确认客户 → 通知员工
0202-booking-confirmation.json通过 Webhook 更新预订状态(确认/取消)
0303-reminder-engine.json每小时检查 → 发送 24h 和 2h 提醒
0404-noshow-followup.json检查过去的预约 → 检测爽约 → 跟进邮件
0505-daily-schedule.json早晨报告,包含今日日程和每周统计

架构

客户在线预订(表单/API) |
v
工作流程 01:预约接收
+-> 验证必填字段
+-> 生成预订 ID
+-> 保存到 Google Sheets
+-> 向客户发送确认邮件
+-> 向员工发送通知邮件
+-> 返回预订 ID

状态更新(确认/取消): | v 工作流程 02:预订确认 +-> 在 Sheets 中更新状态

每小时: | v 工作流程 03:提醒引擎 +-> 读取已确认的预约 +-> 检查:预约是否在 24 小时内?-> 发送提醒 +-> 检查:预约是否在 2 小时内?-> 发送提醒 +-> 在 Sheets 中标记提醒已发送

每 2 小时: | v 工作流程 04:爽约跟进 +-> 检查过去的预约(1-48 小时前) +-> 如果没有 showed_up 状态 -> 标记为爽约 +-> 发送重新预约邮件

每天早上 7 点: | v 工作流程 05:每日日程 +-> 构建今天和明天的日程表 +-> 计算每周统计(已完成、爽约、已取消) +-> 发送邮件给员工

所需的 n8n 凭证

凭证类型用途JSON 中的占位符
Google Sheets OAuth2预约存储YOUR_GOOGLE_SHEETS_CREDENTIAL_ID
SMTP确认、提醒、报告YOUR_SMTP_CREDENTIAL_ID

环境变量

# 业务详情(用于面向客户的邮件)
BUSINESS_NAME=Your Business Name
BUSINESS_PHONE=+1234567890
STAFF_EMAIL=staff@yourbusiness.com
注意: Google Sheet ID 在工作流程 JSON 文件中配置为 YOUR_BOOKING_SHEET_ID 占位符(不是环境变量)。导入后在 n8n 中直接替换。

配置占位符

占位符描述
YOUR_BOOKING_SHEET_ID预约用的 Google Sheet ID
YOUR_GOOGLE_SHEETS_CREDENTIAL_IDn8n Google Sheets 凭证 ID
YOUR_SMTP_CREDENTIAL_IDn8n SMTP 凭证 ID
YOUR_NOTIFICATION_EMAIL用于日程报告的员工邮箱

Google Sheets 数据结构(预约)

类型描述
booking_idtext唯一预订 ID(自动生成)
nametext客户全名
emailtext客户邮箱
phonetext客户电话
servicetext服务类型(如:剪发、咨询)
datedate预约日期(YYYY-MM-DD)
timetext预约时间(HH:MM)
notestext客户备注
statustextconfirmed / cancelled / no-show / completed
showed_upboolean客户是否出席
reminder_24hboolean24h 提醒已发送
reminder_2hboolean2h 提醒已发送
created_atdatetime预订创建时间戳

快速开始

1. 前置条件

  • n8n v2.4+(自托管)
  • Google Sheets OAuth2 凭证
  • SMTP 邮箱凭证

2. 创建预约表

创建一个包含上述列的 Google Sheet。将工作表命名为"Appointments"。

3. 导入与配置

将所有 5 个 JSON 文件导入 n8n。替换所有 YOUR_* 占位符并设置环境变量。

4. 测试预约

curl -X POST https://your-n8n.com/webhook/booking/new \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Jane Smith",
    "email": "jane@example.com",
    "phone": "+1234567890",
    "service": "Consultation",
    "date": "2026-03-10",
    "time": "14:00",
    "notes": "First visit"
  }'

使用场景

  • 美发沙龙 — 造型师的预订、提醒和爽约跟踪
  • 医疗/牙科诊所 — 患者预约管理
  • 咨询顾问 — 战略通话安排,带自动提醒
  • 健身工作室 — 课程和个人训练预订
  • 汽车修理厂 — 服务预约安排

要求

  • n8n v2.4+(自托管或云端)
  • Google Sheets OAuth2 凭证
  • SMTP 邮箱凭证
数据来源ClawHub ↗ · 中文优化:龙虾技能库