MPCUUID is the SDK call_id. Plivo CallUUID is the SDK leg_id.
At a glance
1. Dial the agent (leg 1)
Dialing is asynchronous:
create returns initiated; progress arrives as Call Status events.
2. Dial the customer after the agent answers
3. Play and stop audio
4. End the call
end on a call that already ended answers 202 again (a 404 only briefly right after
hangup) - treat it as done.
5. Webhooks
Same three routes as Plivo. Swap Plivo’s signature check forparse_call_event:
client.telephony.webhook_secret.rotate(). See Webhooks.
Call Status
Recording Callback
One 2-channel WAV per call: agent on the left, customer on the right. Whether a call
is recorded follows the recording policy (set by the Unpod team):
record=True doesn’t
override it today. See Recording.
Incoming Call
StartApp / Hangup / RecordStop events and the reply XML are the same as Plivo’s -
see Incoming Calls.
6. Hangup causes
Any other cause on the customer leg also ends the call. For every cause and code, see
Hangup causes.
Known differences
- Per-participant recordings: no per-participant files. One 2-channel WAV per call (split it).
- Two participants per call at most.
- Callback and audio URLs must be public https.
speakdepends on TTS being available for your org.- Buying numbers from a carrier is not in the SDK - use the Unpod pool, or bring your own trunk.