Skip to content

Voice Escalation Procedures ​

Document ID: PLCY-VOI-003
Version: 1.1
Effective Date: January 21, 2026
Last Review: January 21, 2026
Owner: Hop And Haul Team


CONFIDENTIAL

This document is CONFIDENTIAL and for internal use only. Do not distribute outside the organization.

1. Purpose ​

This document defines the procedures for escalating voice agent calls to human support. It establishes role definitions, routing logic, on-call configurations, and handoff protocols to ensure drivers receive timely assistance for safety, support, and operational needs.

Related Documents:


2. Escalation Architecture ​

2.1 Tier Overview ​

┌─────────────────────────────────────────────────────────────────────┐
│  TIER 1: LLM VOICE AGENT                                            │
│                                                                      │
│  Handles: Ride offers, status inquiries, ETA, cancellation, FAQ    │
│                                                                      │
│  Escalation Triggers:                                                │
│  • "Speak to a person" / "human" / "help"                          │
│  • Safety keywords (accident, emergency, threat)                    │
│  • Unresolved after 3 attempts                                      │
│  • System error preventing completion                               │
└──────────────────────────────┬──────────────────────────────────────┘
                               │
           ┌───────────────────┼───────────────────┐
           ↓                   ↓                   ↓
┌─────────────────┐  ┌─────────────────┐  ┌─────────────────┐
│  SAFETY OPS     │  │ DRIVER SUPPORT  │  │  FLEET ADMIN    │
│                 │  │                 │  │                 │
│  • Accidents    │  │  • App issues   │  │  • Fleet-specific│
│  • Emergencies  │  │  • Disputes     │  │  • Policy Q's   │
│  • SOS          │  │  • Technical    │  │  • Custom rules │
│  • Threats      │  │  • General help │  │                 │
│                 │  │                 │  │                 │
│  24/7 On-Call   │  │  Biz hrs + OC   │  │  Per-fleet cfg  │
└────────┬────────┘  └────────┬────────┘  └────────┬────────┘
         │                    │                    │
         └───────────────────┬┴────────────────────┘
                             ↓
┌─────────────────────────────────────────────────────────────────────┐
│  TIER 3: COMPANY LEADERSHIP                                         │
│                                                                      │
│  Handles: Serious accidents, DOT contact, media, legal             │
│  Escalation: Via Safety Ops or per incident severity               │
└─────────────────────────────────────────────────────────────────────┘

2.2 Escalation Paths ​

TriggerInitial RouteBackup RouteSLA
Safety emergencySafety OpsCompany LeadershipImmediate
"Speak to human"Driver SupportFleet Admin<2 min
Technical issueDriver SupportSafety Ops (if urgent)<5 min
Fleet-specificFleet AdminDriver Support<5 min
Unresolved issueDriver SupportSafety Ops<5 min

3. Escalation Triggers ​

3.1 Safety Escalation (Immediate) ​

Keywords/Phrases:

  • "accident" / "crash" / "collision"
  • "emergency" / "911" / "help me"
  • "threat" / "danger" / "unsafe"
  • "SOS" / "panic" / "attack"
  • "hurt" / "injured" / "medical"

System Triggers:

  • SOS button pressed in app
  • Route deviation alert unresolved
  • Duress code entered
  • Driver incapacitation detected

Action: Route immediately to Safety Ops, no delay.

3.2 Support Escalation (Standard) ​

Keywords/Phrases:

  • "speak to a person" / "human" / "representative"
  • "help" / "support" / "problem"
  • "not working" / "broken" / "error"
  • "cancel" / "refund" / "dispute"

System Triggers:

  • Driver requests transfer
  • 3 failed interaction attempts
  • Tool execution failure
  • OpenAI unavailable

Action: Route to Driver Support queue.

3.3 Fleet-Specific Escalation ​

Triggers:

  • Fleet Admin configured keywords
  • Fleet-specific policy questions
  • Custom escalation rules per fleet

Action: Route to designated Fleet Admin if available, else Driver Support.


4. Role Definitions ​

4.1 Safety Ops ​

AttributeDetail
ResponsibilitySafety incidents, emergencies, SOS response, accident handling
Availability24/7 on-call rotation
AuthorityCan dispatch emergency services, contact fleet management, escalate to leadership
ToolsLive GPS access, driver contact, 911 dispatch integration
TrainingEmergency response, de-escalation, DOT regulations

Safety Ops Actions:

  1. Acknowledge call within 30 seconds
  2. Assess situation severity
  3. Dispatch emergency services if needed
  4. Contact fleet management
  5. Document incident per PLCY-INC-001
  6. Escalate to leadership for serious incidents

4.2 Driver Support ​

AttributeDetail
ResponsibilityTechnical issues, app problems, disputes, general inquiries
AvailabilityBusiness hours (8 AM - 8 PM local) + after-hours on-call
AuthorityCan resolve disputes, issue credits, modify ride status
ToolsAdmin dashboard, ride history, driver profile
TrainingPlatform operations, customer service, basic troubleshooting

Driver Support Actions:

  1. Acknowledge call within 2 minutes
  2. Identify issue category
  3. Resolve or escalate as appropriate
  4. Document resolution
  5. Follow up if needed

4.3 Fleet Admin ​

AttributeDetail
ResponsibilityFleet-specific issues, policy questions, driver management
AvailabilityPer-fleet configuration (typically business hours)
AuthorityManages fleet drivers, sets fleet policies, approves exceptions
ToolsFleet dashboard, driver roster, policy configuration
TrainingFleet management, platform configuration

Fleet Admin Actions:

  1. Handle fleet-specific inquiries
  2. Authorize policy exceptions
  3. Manage driver issues within fleet
  4. Escalate to Driver Support for platform issues

4.4 Company Leadership (Tier 3) ​

AttributeDetail
ResponsibilitySerious incidents, media inquiries, legal matters, DOT contact
AvailabilityOn-call for escalations
AuthorityFull decision authority, external communications
Escalation TriggersSerious injury, fatality, regulatory contact, media inquiry

5. Call Routing Logic ​

5.1 Keyword-Based Routing ​

INPUT: Driver utterance or system event

IF contains_safety_keywords(input):
    → Route to Safety Ops (immediate)

ELSE IF contains_support_keywords(input):
    → Route to Driver Support

ELSE IF fleet_has_custom_routing(driver.fleet_id):
    IF matches_fleet_keywords(input, driver.fleet_id):
        → Route to Fleet Admin
    ELSE:
        → Route to Driver Support

ELSE IF agent_unresolved_count >= 3:
    → Route to Driver Support

ELSE IF system_error:
    → Route to Driver Support

5.2 Safety Keywords (Priority List) ​

python
SAFETY_KEYWORDS = [
    # Emergency
    "emergency", "911", "accident", "crash", "collision",
    # Threat
    "threat", "danger", "unsafe", "attack", "weapon",
    # Medical
    "hurt", "injured", "medical", "ambulance", "hospital",
    # Panic
    "sos", "panic", "help me", "scared", "kidnap",
    # Incident
    "fire", "smoke", "breakdown", "stranded"
]

5.3 Support Keywords ​

python
SUPPORT_KEYWORDS = [
    # Transfer request
    "speak to", "human", "person", "representative", "agent",
    # Help
    "help", "support", "assist", "problem", "issue",
    # Technical
    "not working", "broken", "error", "bug", "glitch",
    # Dispute
    "cancel", "refund", "wrong", "mistake", "complaint"
]

5.4 Routing Decision Flow ​

┌─────────────────────────────────────────────────────────────────┐
│                    ESCALATION TRIGGERED                          │
└──────────────────────────────┬──────────────────────────────────┘
                               ↓
                    ┌──────────────────────┐
                    │ Analyze trigger type │
                    └──────────┬───────────┘
                               ↓
        ┌──────────────────────┼──────────────────────┐
        ↓                      ↓                      ↓
   ┌─────────┐           ┌──────────┐           ┌──────────┐
   │ Safety  │           │ Support  │           │  Fleet   │
   │ keyword │           │ keyword  │           │ specific │
   └────┬────┘           └────┬─────┘           └────┬─────┘
        ↓                     ↓                      ↓
   ┌─────────┐           ┌──────────┐           ┌──────────┐
   │ Safety  │           │  Driver  │           │  Fleet   │
   │   Ops   │           │ Support  │           │  Admin   │
   └────┬────┘           └────┬─────┘           └────┬─────┘
        │                     │                      │
        │              ┌──────┴──────┐               │
        │              ↓             ↓               │
        │         Available?    Unavailable         │
        │              │             │               │
        │              ↓             ↓               │
        │         ┌────────┐   ┌──────────┐         │
        │         │ Connect│   │ Voicemail│         │
        │         │        │   │ + Page   │         │
        │         └────────┘   └──────────┘         │
        │                                           │
        └──────────────────┬────────────────────────┘
                           ↓
                    ┌─────────────┐
                    │ Log event   │
                    │ Start timer │
                    └─────────────┘

6. On-Call Configuration ​

6.1 Schedule Structure ​

RolePrimaryBackupRotation
Safety Ops1 person1 personWeekly
Driver Support (after-hours)1 person1 personDaily
Fleet AdminPer fleetPer fleetFleet-defined

6.2 On-Call Schedule Example ​

Safety Ops (24/7):
┌─────────────────────────────────────────────────────────────┐
│ Week 1: Alice (Primary), Bob (Backup)                       │
│ Week 2: Bob (Primary), Charlie (Backup)                     │
│ Week 3: Charlie (Primary), Alice (Backup)                   │
└─────────────────────────────────────────────────────────────┘

Driver Support (After-Hours: 8 PM - 8 AM):
┌─────────────────────────────────────────────────────────────┐
│ Mon: David | Tue: Eve | Wed: Frank | Thu: Grace | Fri: David│
│ Sat: Eve (all day) | Sun: Frank (all day)                   │
└─────────────────────────────────────────────────────────────┘

6.3 Escalation Timeouts ​

ScenarioTimeoutAction
Primary no answer30 secondsPage backup
Backup no answer30 secondsPage leadership
Leadership no answer60 secondsEmergency protocol

6.4 Notification Methods ​

PriorityMethodTool
Critical (Safety)Phone + SMS + PushPagerDuty
High (Support)Phone + PushPagerDuty
NormalPush notificationPagerDuty
LowEmailAutomated

7. Handoff Protocol ​

7.1 Agent → Human Transition ​

Voice Agent Script:

"I'm connecting you with a [Safety Specialist / Support Representative].
Please hold for just a moment."

[Music/Hold tone plays]
[Transfer initiated]

If transfer fails:

"I'm having trouble connecting. A team member will call you back
within [X] minutes at this number. Is that okay?"

7.2 Context Transfer ​

When transferring, pass to human agent:

FieldContent
call_idUnique call identifier
driver_idDriver identifier
driver_nameFirst name, last initial
driver_phoneCallback number
vehicle_stateMOVING / STOPPED / PARKED
escalation_reasonSafety / Support / Fleet / Unresolved
conversation_summaryLast 3 exchanges summarized
active_ride_idIf applicable
fleet_idDriver's fleet
recording_consentGRANTED / DENIED / WAIVED

Context Transfer Format:

json
{
  "call_id": "call_abc123",
  "driver_id": "drv_xyz789",
  "driver_name": "John D.",
  "driver_phone": "+1XXXXXXXXXX",
  "vehicle_state": "STOPPED",
  "escalation_reason": "support",
  "conversation_summary": "Driver reported app showing wrong pickup location. Attempted to refresh, issue persists.",
  "active_ride_id": "ride_456",
  "fleet_id": "fleet_001",
  "recording_consent": "granted"
}

7.3 Human Agent Greeting ​

Standard Greeting:

"Hi [Driver Name], this is [Agent Name] from Hop And Haul [Safety/Support].
I see you were having [issue from summary]. Let me help you with that."

Safety Greeting:

"[Driver Name], this is [Agent Name] from Hop And Haul Safety.
Are you safe right now? What's happening?"

7.5 Human Dispatcher Standards (per PLCY-COM-001 Section 6) ​

Human dispatchers contacting drivers MUST follow the same communication principles as the automated system:

PrincipleRequirement
Voice-onlyNo required screen interaction while driver is moving
No time pressureNever use urgent or pressuring language
Hands-freeAll communication completable via voice response only
No coercionAccept "no" immediately, no follow-up pressure

When Human Dispatch Applies:

  • System failures or escalations
  • Complex multi-stop coordination
  • Driver-initiated questions

Prohibited for Human Dispatchers (same as automated system):

  • Urgent or pressuring language ("hurry," "last chance," "you need to decide now")
  • Requests to view a screen or tap a button
  • Complex routing instructions during the decision call
  • Guilt-based framing for declines

7.4 Recording Handoff ​

Consent StatusHandoff Action
GRANTEDContinue recording, human informed
DENIEDRecording off, human informed
WAIVED (emergency)Recording continues, documented

8. Single-Person Operations ​

8.1 Use Case ​

For small fleets or early-stage operations, one person may handle all escalation types.

8.2 Simplified Configuration ​

Single Operator Mode:
┌─────────────────────────────────────────────────────────────┐
│  ALL ESCALATIONS → Single On-Call Person                    │
│                                                              │
│  Primary: [Operator Name]                                    │
│  Backup: [Backup Name or Voicemail]                         │
│                                                              │
│  Hours: 8 AM - 10 PM                                        │
│  After-hours: Voicemail + SMS alert                         │
└─────────────────────────────────────────────────────────────┘

8.3 After-Hours Behavior ​

UrgencyAfter-Hours Action
Safety (critical)Page operator immediately (phone + SMS)
Support (normal)Voicemail + SMS, callback next business day
Fleet-specificVoicemail, callback next business day

8.4 Voicemail Script ​

"Thank you for calling Hop And Haul. Our team is currently unavailable.

If this is a safety emergency, please hang up and call 911.

For all other inquiries, please leave a message with your name and
phone number, and we'll return your call within [X] hours.

[Beep]"

9. Audit Logging ​

9.1 Escalation Event Log ​

FieldDescription
escalation_idUnique identifier
call_idSource call identifier
timestampWhen escalation triggered
trigger_typeSAFETY / SUPPORT / FLEET / UNRESOLVED / SYSTEM
trigger_detailKeyword or event that triggered
sourceLLM_AGENT / DRIVER_REQUEST / SYSTEM
destination_roleSAFETY_OPS / DRIVER_SUPPORT / FLEET_ADMIN
destination_personWho received the escalation
response_time_msTime to human answer
resolutionHow escalation was resolved
resolution_time_msTotal time to resolution

9.2 Sample Log Entry ​

json
{
  "escalation_id": "esc_001",
  "call_id": "call_abc123",
  "timestamp": "2025-12-30T14:30:00.000Z",
  "trigger_type": "SUPPORT",
  "trigger_detail": "Driver said 'speak to a person'",
  "source": "DRIVER_REQUEST",
  "destination_role": "DRIVER_SUPPORT",
  "destination_person": "agent_david",
  "response_time_ms": 45000,
  "resolution": "App refresh resolved pickup display issue",
  "resolution_time_ms": 180000
}

9.3 Metrics & Reporting ​

MetricCalculationTarget
Escalation rateEscalations / Total calls<10%
Average response timeAvg(response_time_ms)<120 sec
First-call resolutionResolved without re-escalation>85%
Safety response timeAvg for safety escalations<60 sec

10. Integration Points ​

10.1 PagerDuty Integration ​

EventPagerDuty Action
Safety escalationCreate P1 incident, page on-call
Support escalationCreate P3 incident, notify on-call
No answer (timeout)Escalate to backup
ResolutionResolve incident

10.2 Twilio Call Transfer ​

Transfer Types:

TypeUse CaseImplementation
Warm transferStandard supportAgent stays on briefly
Cold transferHigh volumeDirect transfer
ConferenceComplex issues3-way call

Warm Transfer TwiML:

xml
<Response>
    <Dial>
        <Number statusCallback="/transfer-status">+1XXXXXXXXXX</Number>
    </Dial>
</Response>

10.3 Hop And Haul API Integration ​

EndpointPurpose
POST /escalationsLog escalation event
GET /drivers/{id}/contextGet driver context for handoff
POST /incidentsCreate incident record (safety)

11. NIST 800-53 Control Mapping ​

ControlTitleImplementation
IR-4Incident HandlingSafety escalation procedures
IR-5Incident MonitoringEscalation logging and metrics
IR-6Incident ReportingEscalation audit trail
AU-2Event LoggingAll escalations logged
AU-3Content of Audit RecordsFull context captured

12. Document Control ​

VersionDateAuthorChanges
1.0December 30, 2025Hop And Haul TeamInitial release
1.1January 21, 2026Hop And Haul TeamAligned with PLCY-COM-001 v3.0: Added Section 7.5 Human Dispatcher Standards defining voice-only, no time pressure, and hands-free requirements for human dispatchers per PLCY-COM-001 Section 6.

CONFIDENTIAL - Internal Use Only - Hop And Haul Policy Documentation