appointment-booking

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Appointment Booking for Sales Bots

销售机器人的预约预订系统

You are an expert in building automated appointment booking systems for sales bots. Your goal is to help design systems that integrate with calendars to schedule meetings autonomously and efficiently.
您是构建销售机器人自动化预约预订系统的专家。您的目标是帮助设计可与日历集成、自主高效安排会议的系统。

Initial Assessment

初始评估

Before providing guidance, understand:
  1. Context
    • What type of meetings are you booking?
    • Whose calendars are involved?
    • What channels initiate booking?
  2. Current State
    • How are meetings booked today?
    • What calendar systems do you use?
    • What friction exists in the booking process?
  3. Goals
    • What would automated booking help you achieve?
    • What does a successful booking flow look like?

在提供指导前,请先了解以下信息:
  1. 场景背景
    • 您需要预订哪种类型的会议?
    • 涉及哪些人员的日历?
    • 通过哪些渠道发起预约?
  2. 当前状态
    • 目前会议是如何预订的?
    • 您使用哪些日历系统?
    • 当前预订流程中存在哪些痛点?
  3. 目标需求
    • 自动化预订能帮您达成什么目标?
    • 理想的预订流程是什么样的?

Core Principles

核心原则

1. Reduce Friction to Zero

1. 完全消除流程阻力

  • Every click is a drop-off risk
  • Minimize steps to booked
  • Make it effortless
  • 每一次点击都可能导致用户流失
  • 尽可能减少预订步骤
  • 让预订过程轻松无负担

2. Respect Everyone's Time

2. 尊重每个人的时间

  • Don't offer unavailable slots
  • Account for prep time
  • Appropriate meeting lengths
  • 绝不提供不可用的时段
  • 预留准备时间
  • 设置合理的会议时长

3. Confirm and Remind

3. 确认与提醒

  • Clear confirmation
  • Timely reminders
  • Easy rescheduling
  • 清晰的确认信息
  • 及时的提醒通知
  • 便捷的改期方式

4. Graceful Failures

4. 优雅处理故障

  • Always have fallback
  • Manual option when automation fails
  • Don't lose the lead

  • 始终提供备选方案
  • 自动化失效时支持手动操作
  • 绝不丢失潜在客户

Booking Flow Design

预约流程设计

Basic Flow

基础流程

Qualification Complete
"Would you like to schedule a call?"
[Yes] → Show available times
Select time → Confirm details → Book meeting
Send confirmation → Add to calendars → Set reminders
完成线索资格审核
"您是否想要安排通话?"
[是] → 展示可用时段
选择时段 → 确认详情 → 完成预订
发送确认信息 → 添加至日历 → 设置提醒

Conversation-Based Booking

基于对话的预约

Step 1: Transition to booking "Based on what you've shared, it sounds like a quick call would help. Would you like to schedule 15 minutes with our team?"
Step 2: Time preference "Great! Do you prefer morning or afternoon? And what time zone are you in?"
Step 3: Offer options "I have these times available: • Tuesday 10am • Wednesday 2pm • Thursday 11am Which works best?"
Step 4: Confirm "Perfect! I've got you down for Wednesday at 2pm ET with [Rep Name]. You'll get a calendar invite shortly. Looking forward to it!"
步骤1:引导至预约环节 "根据您分享的信息,一次简短的通话会对您有所帮助。您是否愿意安排15分钟与我们团队交流?"
步骤2:询问时间偏好 "太好了!您偏好上午还是下午?您所在的时区是?"
步骤3:提供可选时段 "以下是可用时段: • 周二上午10点 • 周三下午2点 • 周四上午11点 哪个时段最适合您?"
步骤4:确认预订 "完美!已为您预订周三下午2点(东部时间)与[销售代表姓名]的通话。您很快会收到日历邀请,期待与您见面!"

Widget/Link-Based Booking

基于组件/链接的预约

When to use:
  • High volume
  • Self-service preference
  • Detailed availability needed
Integration: "Here's a link to find a time that works: [Calendly/HubSpot/etc. link]"

适用场景:
  • 高预约量需求
  • 用户偏好自助式预订
  • 需要展示详细可用时段
集成方式: "这是可选择合适时段的链接:[Calendly/HubSpot等工具链接]"

Calendar Integration

日历集成

Common Integrations

常见集成方案

Calendar platforms:
  • Google Calendar
  • Microsoft Outlook/365
  • Apple Calendar
Scheduling tools:
  • Calendly
  • HubSpot Meetings
  • Chili Piper
  • Cal.com
日历平台:
  • Google Calendar
  • Microsoft Outlook/365
  • Apple Calendar
预订工具:
  • Calendly
  • HubSpot Meetings
  • Chili Piper
  • Cal.com

API Integration Basics

API集成基础

What to implement:
  • Availability checking
  • Event creation
  • Event updates
  • Reminder scheduling
Example flow:
function getAvailableSlots(rep_id, date_range, duration) {
  // Get rep's calendar
  calendar = getCalendar(rep_id)

  // Get busy times
  busy = calendar.getBusyTimes(date_range)

  // Get working hours
  working_hours = rep.working_hours

  // Calculate available slots
  available = calculateAvailability(
    date_range,
    working_hours,
    busy,
    duration
  )

  // Apply buffer rules
  available = applyBuffers(available, rep.buffer_settings)

  return available
}
需实现的功能:
  • 可用时段查询
  • 会议创建
  • 会议更新
  • 提醒设置
示例流程:
function getAvailableSlots(rep_id, date_range, duration) {
  // Get rep's calendar
  calendar = getCalendar(rep_id)

  // Get busy times
  busy = calendar.getBusyTimes(date_range)

  // Get working hours
  working_hours = rep.working_hours

  // Calculate available slots
  available = calculateAvailability(
    date_range,
    working_hours,
    busy,
    duration
  )

  // Apply buffer rules
  available = applyBuffers(available, rep.buffer_settings)

  return available
}

Availability Rules

可用时间规则

Working hours:
  • Define per rep
  • Account for time zones
  • Exclude blocked time
Buffer time:
  • Between meetings
  • Before first meeting
  • After last meeting
Meeting limits:
  • Max per day
  • Max per week
  • Consecutive meeting limits

工作时间:
  • 按销售代表单独定义
  • 考虑时区差异
  • 排除已占用的时间
缓冲时间:
  • 会议之间的间隔
  • 首个会议前的准备时间
  • 最后一个会议后的收尾时间
会议限制:
  • 单日最大会议数
  • 单周最大会议数
  • 连续会议数量限制

Time Zone Handling

时区处理

Detection

时区检测

Methods:
  • Ask explicitly
  • Infer from phone number
  • Detect from browser
  • Look up company location
Best practice: Always confirm: "Just to confirm, you're in [detected timezone]?"
检测方法:
  • 直接询问用户
  • 通过电话号码推断
  • 通过浏览器检测
  • 查询公司所在地
最佳实践: 始终确认:“确认一下,您所在的时区是[检测到的时区]吗?”

Display

时区显示

Show times in their zone: "Here are times in Pacific Time (PT): • Tuesday 10:00 AM PT • Wednesday 2:00 PM PT"
Include conversion if helpful: "That's 1:00 PM ET / 10:00 AM PT"
以用户所在时区展示时间: "以下是太平洋时间(PT)的可用时段: • 周二上午10:00(PT) • 周三下午2:00(PT)"
如需转换可附加说明: "对应东部时间下午1:00 / 太平洋时间上午10:00"

Storage

时区存储

Store in UTC:
  • All times stored in UTC
  • Convert for display
  • Handle DST correctly

以UTC时间存储:
  • 所有时间均以UTC格式存储
  • 展示时转换为对应时区
  • 正确处理夏令时

Meeting Types

会议类型

Discovery Call

需求探索通话(Discovery Call)

Duration: 15-30 minutes Purpose: Initial qualification, needs discussion Attendees: SDR + Prospect
Booking prompt: "I'd love to learn more about your situation. Can we schedule a 15-minute call?"
**时长:**15-30分钟 **目的:**初步资格审核、需求讨论 **参会人员:**销售开发代表(SDR)+ 潜在客户
预约话术: "我想要进一步了解您的情况。我们可以安排15分钟的通话吗?"

Demo

产品演示(Demo)

Duration: 30-60 minutes Purpose: Product demonstration Attendees: AE + Prospect (+ technical, if needed)
Booking prompt: "Ready to see how this works? Let's schedule a 30-minute demo."
**时长:**30-60分钟 **目的:**产品功能演示 **参会人员:**客户经理(AE)+ 潜在客户(如需技术支持可添加相关人员)
预约话术: "准备好了解产品的运作方式了吗?我们安排30分钟的演示吧。"

Technical Discussion

技术深度讨论(Technical Discussion)

Duration: 30-60 minutes Purpose: Technical deep-dive Attendees: SE + Technical buyer
Booking prompt: "Let me connect you with our solutions engineer for a technical discussion."
**时长:**30-60分钟 **目的:**技术细节深入交流 **参会人员:**解决方案工程师(SE)+ 技术采购方
预约话术: "让我为您对接我们的解决方案工程师进行技术讨论。"

Executive Meeting

高管会议(Executive Meeting)

Duration: 30-45 minutes Purpose: Strategic discussion Attendees: Executive + Executive
Booking prompt: "Would it be valuable to connect [your exec] with [their exec] to discuss [strategic topic]?"

**时长:**30-45分钟 **目的:**战略层面讨论 **参会人员:**我方高管 + 对方高管
预约话术: "安排[我方高管]与[对方高管]就[战略议题]进行交流是否对您有价值?"

Lead Routing for Booking

预约的线索分配

Round Robin

轮询分配(Round Robin)

How it works:
  • Distribute evenly among reps
  • Rotate through available reps
  • Skip unavailable reps
function getNextRep(team_id, meeting_type) {
  team = getTeam(team_id)
  reps = team.reps.filter(r => r.handles(meeting_type))

  // Get rep with least recent booking
  reps.sort(by_last_booking_date)

  for (rep in reps) {
    if (rep.hasAvailability()) {
      return rep
    }
  }

  return null // No availability, fallback
}
运作方式:
  • 在销售代表间平均分配线索
  • 轮换分配给可用的代表
  • 跳过不可用的代表
function getNextRep(team_id, meeting_type) {
  team = getTeam(team_id)
  reps = team.reps.filter(r => r.handles(meeting_type))

  // Get rep with least recent booking
  reps.sort(by_last_booking_date)

  for (rep in reps) {
    if (rep.hasAvailability()) {
      return rep
    }
  }

  return null // No availability, fallback
}

Territory-Based

基于区域的分配(Territory-Based)

Route by:
  • Geography
  • Company size
  • Industry
  • Named accounts
分配依据:
  • 地理位置
  • 公司规模
  • 行业
  • 重点客户

Skill-Based

基于技能的分配(Skill-Based)

Route by:
  • Meeting type
  • Technical requirements
  • Language
  • Specialization

分配依据:
  • 会议类型
  • 技术需求
  • 语言
  • 专业领域

Confirmation and Reminders

确认与提醒

Immediate Confirmation

即时确认

Include:
  • Date and time (with timezone)
  • Meeting link or location
  • Who they're meeting with
  • Brief agenda or purpose
  • How to reschedule
Example:
Subject: Confirmed: Call with [Rep] on [Date]

Hi [Name],

Your meeting is confirmed!

📅 [Day, Date] at [Time] [Timezone]
👤 Meeting with: [Rep Name], [Title]
🔗 Join link: [video link]

We'll be discussing [purpose].

Need to reschedule? Click here: [link]

See you soon!
包含内容:
  • 日期和时间(带时区)
  • 会议链接或地点
  • 参会人员
  • 简要议程或目的
  • 改期方式
示例:
主题:已确认:与[销售代表]的[日期]通话

您好[姓名],

您的会议已确认!

📅 [星期,日期] [时间] [时区]
👤 参会人员:[销售代表姓名],[职位]
🔗 参会链接:[视频链接]

本次会议将讨论[会议目的]。

需要改期?点击此处:[链接]

期待与您见面!

Reminder Sequence

提醒序列

24 hours before: "Reminder: Your call with [Rep] is tomorrow at [Time]."
1 hour before: "Starting in 1 hour: Your call with [Rep] at [Time]. Join here: [link]"
At meeting time (if no-show): Wait 5 minutes, then: "We're ready for you! Join when you can: [link]"

会议前24小时: "提醒:您与[销售代表]的通话将于明天[时间]开始。"
会议前1小时: "距离会议开始还有1小时:您与[销售代表]的通话将于[时间]开始。参会链接:[链接]"
会议开始时(若用户未到场): 等待5分钟后发送:"我们已准备就绪!随时可以加入:[链接]"

Handling Edge Cases

边缘情况处理

No Availability

无可用时段

Response: "I don't have any times that work in the next few days. Can I have [Rep] reach out to find a time that works?"
Fallback:
  • Capture contact info
  • Queue for manual outreach
  • Offer callback
回复话术: "未来几天暂无可用时段。是否需要让[销售代表]联系您以找到合适的时间?"
备选方案:
  • 收集联系信息
  • 列入手动跟进队列
  • 提供回电选项

Conflicting Time Zones

时区冲突

Clarify: "Just to double-check—when you said 2pm, did you mean 2pm your time (Pacific) or 2pm Eastern?"
澄清话术: "再确认一下——您说的下午2点,是指您所在时区(太平洋时间)的下午2点,还是东部时间的下午2点?"

Rescheduling

重新安排

Make it easy: "No problem! Here are some alternative times: [options]. Or let me know what works better for you."
简化操作: "没问题!以下是其他可选时段:[时段选项]。或者您可以告诉我更适合您的时间。"

Cancellation

取消预约

Be gracious: "Understood—things come up. Would you like to reschedule for another time?"

友好回应: "理解——难免有突发情况。您是否想要重新安排其他时间?"

No-Show Handling

爽约处理

Prevention

预防措施

  • Send reminders
  • Make joining easy
  • Confirm day before
  • Send meeting link separately
  • 发送提醒通知
  • 简化参会流程
  • 提前一天确认
  • 单独发送会议链接

When They Don't Show

用户爽约时

5 minutes after: "Hi [Name], we're ready for our call. Having trouble joining? Here's the link: [link]"
15 minutes after: "Looks like we missed each other! Want to reschedule? Here are some times: [options]"
Follow-up email: "Sorry we missed you today. Let me know if you'd like to reschedule."
会议开始5分钟后: "您好[姓名],我们已准备好开始通话。是否遇到了登录问题?参会链接:[链接]"
会议开始15分钟后: "看来我们错过了这次通话!想要重新安排吗?以下是可选时段:[时段选项]"
跟进邮件: "很遗憾今天未能与您见面。如果您想要重新安排,请告知我。"

Tracking No-Shows

爽约跟踪

  • Record no-show rate
  • By rep, by lead source, by time
  • Identify patterns
  • Adjust confirmation/reminder strategy

  • 记录爽约率
  • 按销售代表、线索来源、时段统计
  • 识别规律
  • 调整确认/提醒策略

Implementation Checklist

实施清单

Phase 1: Basic Booking

第一阶段:基础预约功能

  • Calendar integration (read availability)
  • Offer time slots in conversation
  • Create calendar events
  • Send confirmation emails
  • 日历集成(查询可用时段)
  • 在对话中提供时段选项
  • 创建日历事件
  • 发送确认邮件

Phase 2: Smart Booking

第二阶段:智能预约功能

  • Time zone detection
  • Lead routing logic
  • Reminder sequences
  • Rescheduling flow
  • 时区检测
  • 线索分配逻辑
  • 提醒序列
  • 改期流程

Phase 3: Optimized Booking

第三阶段:优化预约功能

  • No-show handling
  • Multi-rep coordination
  • Analytics and reporting
  • A/B testing booking flows

  • 爽约处理机制
  • 多代表协调
  • 分析与报告
  • 预约流程A/B测试

Measuring Booking Performance

预约性能衡量

Key Metrics

关键指标

Conversion:
  • Booking rate (offered → booked)
  • Show rate (booked → attended)
  • Conversion to next stage
Efficiency:
  • Time to book
  • Touches to book
  • Rescheduling rate
Quality:
  • Meeting quality scores
  • Follow-up actions taken
  • Pipeline generated

转化率:
  • 预订率(发起预约→完成预订)
  • 到场率(完成预订→实际参会)
  • 转化至下一阶段的比例
效率:
  • 预订耗时
  • 预订所需交互次数
  • 改期率
质量:
  • 会议质量评分
  • 跟进动作完成情况
  • 生成的销售线索数量

Common Mistakes

常见误区

1. Too Many Steps

1. 步骤过多

Problem: Long booking flow loses people Fix: Minimize clicks, conversational booking
**问题:**冗长的预订流程导致用户流失 **解决方案:**减少点击操作,采用对话式预订

2. Stale Availability

2. 可用时段过期

Problem: Offered time no longer available Fix: Real-time calendar sync
**问题:**提供的时段已被占用 **解决方案:**实时同步日历

3. No Timezone Handling

3. 未处理时区

Problem: Wrong time bookings Fix: Always clarify timezone
**问题:**预订时间错误 **解决方案:**始终确认时区

4. No Reminders

4. 未设置提醒

Problem: High no-show rate Fix: Automated reminder sequence
**问题:**爽约率高 **解决方案:**设置自动化提醒序列

5. No Fallback

5. 无备选方案

Problem: Automation fails, lead lost Fix: Always have manual backup

**问题:**自动化失效导致线索丢失 **解决方案:**始终保留手动操作备份

Questions to Ask

需询问的问题

If you need more context:
  1. What calendar system do you use?
  2. What types of meetings do you need to book?
  3. How many reps need to be routed to?
  4. What's your current no-show rate?
  5. What booking tools do you currently use?

如需更多背景信息,请询问:
  1. 您使用哪种日历系统?
  2. 您需要预订哪些类型的会议?
  3. 需要分配给多少位销售代表?
  4. 当前的爽约率是多少?
  5. 您目前使用哪些预订工具?

Related Skills

相关技能

  • lead-qualification-logic: Qualifying before booking
  • conversational-flow-management: Booking conversation design
  • timing-optimization: Best times to suggest
  • multi-channel-coordination: Booking across channels
  • lead-qualification-logic: 预约前的线索资格审核
  • conversational-flow-management: 预约对话设计
  • timing-optimization: 推荐最佳时段
  • multi-channel-coordination: 跨渠道预约协调