安全扫描
OpenClaw
可疑
medium confidence该技能的工作流和指令与预约系统匹配,功能正常,但元数据不匹配和一些运营安全漏洞(公开Webhook、未声明的n8n凭据要求)存在不一致,安装前应验证。
安全有层次,运行前请审查代码。
运行时依赖
无特殊依赖
版本
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 小时提醒
- 爽约跟进 — 检测错过的预约并发送重新预约邮件
- 每日日程 — 早晨发送今天和明天的预约以及每周统计的邮件
包含的工作流程
| # | 文件 | 用途 |
|---|---|---|
| 01 | 01-booking-intake.json | Webhook → 验证 → 存储 → 确认客户 → 通知员工 |
| 02 | 02-booking-confirmation.json | 通过 Webhook 更新预订状态(确认/取消) |
| 03 | 03-reminder-engine.json | 每小时检查 → 发送 24h 和 2h 提醒 |
| 04 | 04-noshow-followup.json | 检查过去的预约 → 检测爽约 → 跟进邮件 |
| 05 | 05-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_ID | n8n Google Sheets 凭证 ID |
YOUR_SMTP_CREDENTIAL_ID | n8n SMTP 凭证 ID |
YOUR_NOTIFICATION_EMAIL | 用于日程报告的员工邮箱 |
Google Sheets 数据结构(预约)
| 列 | 类型 | 描述 |
|---|---|---|
| booking_id | text | 唯一预订 ID(自动生成) |
| name | text | 客户全名 |
| text | 客户邮箱 | |
| phone | text | 客户电话 |
| service | text | 服务类型(如:剪发、咨询) |
| date | date | 预约日期(YYYY-MM-DD) |
| time | text | 预约时间(HH:MM) |
| notes | text | 客户备注 |
| status | text | confirmed / cancelled / no-show / completed |
| showed_up | boolean | 客户是否出席 |
| reminder_24h | boolean | 24h 提醒已发送 |
| reminder_2h | boolean | 2h 提醒已发送 |
| created_at | datetime | 预订创建时间戳 |
快速开始
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 ↗ · 中文优化:龙虾技能库