Channels and entry points
AVX has two channels, voice and text, and both run in the tenant’s app or web surface. Amazon Connect is where a conversation goes when it needs a person. Both channels reach the same supervisor, and both escalate the same way: the P0 or P1 card, then /escalate, then a Connect chat. A phone rings only for the P0 callback.
| Channel | Stack | Typical use |
|---|---|---|
|
Voice |
AVX app → WebSocket → AgentCore bidirectional runtime ( |
Drivers on the road, hands-free interactions, primary channel for fleet drivers and vehicle owners |
|
Text |
AVX app or the CMS web chat → |
Text interactions, including the web chat opened from a vehicle page in the CMS console |
Voice channel [functional]
The voice channel is the in-app voice session:
-
The driver opens the assistant in the AVX app. The app opens a WebSocket to the AgentCore bidirectional runtime, passing the user’s token, tenant, vehicle and driver at session start.
-
Nova 2 Sonic handles audio transcription and synthesis within the streaming session. The VSA supervisor runs on Claude Sonnet 4.6.
-
When the triage classifier returns P0 or P1, the session sends the classification to the app, which shows the escalation card. On P0 the stop-driving instruction comes first, word for word.
-
The session continues until the driver ends it. A handoff opens a Connect chat alongside the voice session rather than ending it.
Nova 2 Sonic latency target for voice is sub-700 ms from customer end-of-speech to first synthesized audio — achieved through streaming delivery of the supervisor’s first tokens before the full response is complete.
Text channel [functional]
The text channel goes through the AVX API:
-
The app or the CMS web chat sends each message to
POST /assistant/chatbehind a Cognito authorizer. -
The Lambda function reads the tenant from the caller’s
custom:tenantIdclaim and, for a driver bound to a vehicle, the vehicle from thecustom:vehicleIdclaim. A vehicle named in the request that doesn’t match the claim is dropped. -
The function invokes the AgentCore text runtime with the message and returns the reply.
Mobile and web escalation into Connect [functional]
Sessions that start in the AVX app or the web chat escalate into Connect mid-conversation. The pattern:
-
The driver talks to the supervisor in the app over the AgentCore WebSocket, or types in the web chat (
POST /assistant/chat). -
The triage classifier returns P0 or P1. The app shows a card with Talk to an agent, plus Request roadside on P0. The supervisor recommends the handoff; it does not open one by itself.
-
The driver’s tap sends only an intent (
humanorroadside) over the WebSocket. The runtime callsPOST /escalatewith the severity the classifier surfaced, never a value from the client or the model. A driver who asks for a person at any priority gets a service escalation, which carries no severity. -
/escalatestarts a Connect chat withStartChatContact. The response carries the participant credentials, and the app joins the chat through the Connect Participant Service in the same screen.
The tier-2 agent sees the same triage result and summary whether the conversation started in Connect or in the app.