SIP PBX icon

SIP PBX

Dial → Make Call

AI-generated

Summary

Initiates a call according to the selected mode, using provided destination info and credentials.

Inputs

  • callMode (required) — Selection of dialing mode: trunk, extension, direct, or websocket.
  • ref (required) — Identifier for the trunk to use when callMode is trunk.
  • destination (required) — Comma‑separated phone numbers or SIP usernames; server/auth data omitted.
  • sipPbxExternal (required) — Credentials for the SIP connection used in direct mode.
  • extensionNumbers (required) — Comma‑separated extension numbers to dial across matching extensions.
  • options — Mode‑specific options such as call strategy, timeouts, caller details, and custom SIP headers.
  • codecs — Preferred audio codecs for the call (e.g., opus, g722, alaw, mulaw, g729).
  • dtmfMethods — DTMF transmission methods (rfc2833, info, inband).
  • transportProfile (required) — Transport profile for WebSocket mode (openai_realtime, gemini_live, generic).
  • websocketUrl (required) — WebSocket endpoint URL (e.g., wss://example.com/realtime).
  • websocketStartMode — When to start the websocket leg (immediate or deferred).
  • websocketHeadersJson — JSON object of outgoing WebSocket headers.
  • websocketInitialMessagesJson — JSON array of initial messages sent after connect.
  • websocketAudioInputEventType — Event type for incoming audio.
  • websocketAudioInputField — Field name for incoming audio payload.
  • websocketAudioInputSampleRate — Sample rate for incoming audio.
  • websocketAudioOutputEventTypes — Event types for outgoing audio.
  • websocketAudioOutputField — Field name for outgoing audio payload.
  • websocketAudioOutputSampleRate — Sample rate for outgoing audio.
  • extensionOnlyFreeEndpoints — When true, dials only endpoints that are registered and not in a call.
  • openAiApi — OpenAI credential for real‑time AI integration.
  • googlePalmApi — Gemini API credential for AI integration.
  • openaiRealtimeModel — Model identifier for OpenAI real‑time mode.
  • openaiRealtimeVoice — Voice selection for OpenAI real‑time.
  • openaiRealtimeInputTranscriptionModel — Transcription model for OpenAI real‑time.
  • openaiRealtimeInstructions — Instructions passed to the real‑time model.
  • openaiRealtimePromptId — Identifier for the prompt used.
  • openaiRealtimePromptVersion — Version of the prompt.
  • openaiRealtimePromptVariablesJson — JSON object with variables to substitute in the prompt.
  • geminiLiveModel — Model identifier for Gemini live mode.
  • geminiLiveVoice — Voice selection for Gemini live.
  • geminiLiveApiVersion — API version for Gemini live.
  • geminiLiveInstructions — Instructions for Gemini live session.

Output shape

A JSON object representing the newly created call, containing at least a call identifier and status.

On success the response includes the call ID and connection state; on failure an error object is returned. The shape is consistent regardless of the selected mode.

Examples

Example 1: Dial multiple extensions in parallel with default options

callMode=extension, extensionNumbers=100,200, options={callStrategy=parallel}

Example 2: Open a WebSocket AI session and stream audio

callMode=websocket, transportProfile=openai_realtime, websocketUrl=wss://api.openai.com/v1/realtime, websocketStartMode=immediate, openaiRealtimeModel=gpt-realtime

Example 3: Make a direct SIP call using credentials

callMode=direct, destination=12345, sipPbxExternal=openai_credentials

Links

Discussion