Parses incoming Twilio voice webhook POST requests and routes them to the correct output.
Usage
[HTTP In] → [Call Handler] → Output 1: speech interaction
→ Output 2: call status events
Inputs
- payload string | object
- URL-encoded Twilio webhook body, or pre-parsed object. Also reads from
msg.req.body.
Output 1 — Speech / DTMF / Recording
- payload.speechResult string
- Transcribed speech from Gather
- payload.speechConfidence number
- Confidence 0.0–1.0
- payload.digits string
- DTMF key presses from Gather
- payload.recordingUrl string
- URL of recording file
- payload.inputType string
- speech | dtmf | recording | none
- payload.callSid string
- Twilio Call SID
- payload.from / payload.to string
- Phone numbers
- payload.queryParams object
- Query parameters from webhook URL (if enabled)
Output 2 — Call Status Events
- payload.callStatus string
- queued | ringing | in-progress | completed | busy | no-answer | failed | canceled
- payload.callDuration string
- Duration in seconds (available on completed)
- payload.callSid string
- Twilio Call SID