method_id. The
constants below are emitted into every SDK at build time by the IDL
compiler — these are the source of truth.
Method table
| Method | method_id (decimal) | method_id (hex) | Request DTO | Response DTO |
|---|---|---|---|---|
Originate | 1430677891 | 0x554d_8a83 | OriginateRequest | OriginateResponse |
OriginateBulk | 721069100 | 0x2af9_a52c | BulkRequest | BulkResponse |
AbortBulk | 3861915064 | 0xe629_4af8 | AbortBulkRequest | BulkResponse |
Terminate | 3834253405 | 0xe486_24dd | TerminateRequest | TerminateResponse |
StreamEvents | 959835745 | 0x3935_e0e1 | EventStreamRequest | CallEvent (server-streamed) |
SetInboundRouting | 1933986897 | 0x7345_15d1 | SetInboundRoutingRequest | Empty |
GetIncomingCalls | 1161946746 | 0x4540_dffa | GetIncomingCallsRequest | GetIncomingCallsResponse |
AnswerIncomingCall | 2990157256 | 0xb234_0e08 | AnswerIncomingCallRequest | AnswerIncomingCallResponse |
GetActiveBuckets | 2624504207 | 0x9c70_734f | Empty | ListBucketsResponse |
GetBucketCalls | 1217351135 | 0x489c_d49f | BucketRequest | BucketCallList |
ExecuteBucketAction | 4030863293 | 0xf04f_36fd | BucketActionRequest | BucketActionResponse |
ExecuteDialplan | 3514036100 | 0xd166_7944 | ExecuteDialplanRequest | ExecuteDialplanResponse |
Barge | 3854301714 | 0xe5b0_6412 | BargeRequest | Empty |
AudioFrame | 2991054320 | 0xb241_b9b0 | AudioFrame (uni-stream) | AudioFrame (uni-stream) |
ReloadCertificates | 3357922138 | 0xc827_06da | Empty (admin) | Empty |
method_id is a CRC32-based hash of service_name, method name, and the
fully-qualified DTO names. It is stable across versions as long as none of
those three change. Don’t fork the table — regenerate it from the IDL
if you change anything.
How to use
Pick the method, encode its request DTO as a serde envelope, prepend the envelope header, and write it onto a fresh QUIC bidirectional stream. The gateway responds on the same stream (for single-shot RPCs) or on a server-initiated unidirectional stream (for streaming methods likeStreamEvents and AudioFrame).
Method semantics
Originate
Originate
Place a single outbound call. The gateway assigns a
call_sid if the
request omits one. Subsequent state changes arrive as CallEvents on
the event stream subscribed via StreamEvents.OriginateBulk / AbortBulk
OriginateBulk / AbortBulk
Bulk dialer. Reads phone numbers from
csv_url, paces at
calls_per_second, caps at max_concurrent_calls. AbortBulk cancels
a campaign by campaign_id.Terminate
Terminate
Hang up an active call by
call_sid.StreamEvents
StreamEvents
Subscribe to call lifecycle events. The
client_id should be a stable
UUID per process — the gateway uses it to demux uni-streams across many
parallel SDK instances.SetInboundRouting
SetInboundRouting
Tell the gateway what to do with PSTN-originated calls hitting
trunk_id:
reject, play and hangup, fire a webhook, or hand off to the AI bridge.GetIncomingCalls / AnswerIncomingCall
GetIncomingCalls / AnswerIncomingCall
Poll incoming calls (per trunk) and answer one explicitly. Use this when
the SDK is acting as a click-to-answer agent rather than letting
SetInboundRouting auto-handle.GetActiveBuckets / GetBucketCalls / ExecuteBucketAction
GetActiveBuckets / GetBucketCalls / ExecuteBucketAction
Operational cleanup tooling. A “bucket” is a server-side set of calls
that share an attribute the gateway tracks for triage — typically
parked-too-long, abandoned, or orphaned (no SDK heartbeat). Use these
RPCs to enumerate stuck calls and bulk-act on them. The intended
action is 0=hangup to clear them during ops incidents.
These are not a transfer or conferencing primitive — neither
capability is supported on this platform.ExecuteDialplan
ExecuteDialplan
Override the in-flight dialplan for a
call_sid: hang up, park,
music-on-hold, playback, unpark+bridge, answer, or open the AI
bidirectional stream.Barge
Barge
The platform’s AI-network unblocker. While the AI is talking,
the gateway watches the inbound leg for the human caller’s voice
(energy / VAD / semantic detection, per-trunk via
auto_bargein_mode).
When the human starts speaking, the AI’s outbound audio is gated
within barge_in_patience_ms so the human is heard immediately.
This RPC is the explicit handle to trigger or arm barge-in for a
call_sid; the per-call knobs auto_barge_in and
barge_in_patience_ms on OriginateRequest arm it automatically.
Not the supervisor-injection feature found in legacy PBXs.AudioFrame
AudioFrame
Bidirectional audio. Outbound frames are written on a client → server
uni-stream; inbound frames arrive on a server → client uni-stream.
See Audio Frames.