types
Runner session argument types for the development runner.
These types are used by the development runner to pass transport-specific information to bot functions.
- class pipecat.runner.types.DialinSettings(*, call_id: str, call_domain: str, To: str | None = None, From: str | None = None, sip_headers: dict[str, str] | None = None)[source]
Bases:
BaseModelDial-in settings from the Daily webhook.
This model matches the structure sent by Pipecat Cloud and Daily.co webhooks for incoming PSTN/SIP calls.
- Parameters:
call_id – Unique identifier for the call (UUID representing sessionId in SIP Network)
call_domain – Daily domain for the call (UUID representing Daily Domain on SIP Network)
To – The dialed phone number (optional)
From – The caller’s phone number (optional)
sip_headers – Optional SIP headers from the call
- call_id: str
- call_domain: str
- To: str | None
- From: str | None
- sip_headers: dict[str, str] | None
- class pipecat.runner.types.DailyDialinRequest(*, dialin_settings: DialinSettings, daily_api_key: str, daily_api_url: str)[source]
Bases:
BaseModelRequest data for Daily PSTN dial-in requests.
This is the structure passed in runner_args.body for dial-in calls. It matches the payload structure from Pipecat Cloud’s dial-in webhook handler.
- Parameters:
dialin_settings – Dial-in configuration including call_id, call_domain, To, From
daily_api_key – Daily API key for pinlessCallUpdate (required for dial-in)
daily_api_url – Daily API URL (staging or production)
- dialin_settings: DialinSettings
- daily_api_key: str
- daily_api_url: str
- class pipecat.runner.types.RunnerArguments(*, body: Any | None = <factory>, session_id: str | None = None)[source]
Bases:
objectBase class for runner session arguments.
- Parameters:
handle_sigint – Whether the bot should install a SIGINT handler.
handle_sigterm – Whether the bot should install a SIGTERM handler.
pipeline_idle_timeout_secs – Seconds the pipeline may stay idle before shutting down.
body – Optional request body data passed from the runner entry point.
session_id – Identifier for this bot session.
cli_args – Parsed CLI arguments from the runner, when launched via the development runner.
- handle_sigint: bool
- handle_sigterm: bool
- pipeline_idle_timeout_secs: int
- body: Any | None
- session_id: str | None = None
- cli_args: Namespace | None = None
- class pipecat.runner.types.DailyRunnerArguments(room_url: str, token: str | None = None, *, body: Any | None = <factory>, session_id: str | None = None)[source]
Bases:
RunnerArgumentsDaily transport session arguments for the runner.
- Parameters:
room_url – Daily room URL to join
token – Authentication token for the room
body – Additional request data
- room_url: str
- token: str | None = None
- class pipecat.runner.types.WebSocketRunnerArguments(websocket: fastapi.WebSocket, *, body: Any | None = <factory>, session_id: str | None = None)[source]
Bases:
RunnerArgumentsWebSocket transport session arguments for the runner.
- Parameters:
websocket – WebSocket connection for audio streaming
body – Additional request data
- websocket: fastapi.WebSocket
- class pipecat.runner.types.SmallWebRTCRunnerArguments(webrtc_connection: Any, *, body: Any | None = <factory>, session_id: str | None = None)[source]
Bases:
RunnerArgumentsSmall WebRTC transport session arguments for the runner.
- Parameters:
webrtc_connection – Pre-configured WebRTC peer connection
- webrtc_connection: Any
- class pipecat.runner.types.LiveKitRunnerArguments(room_name: str, url: str, token: str, *, body: Any | None = <factory>, session_id: str | None = None)[source]
Bases:
RunnerArgumentsLiveKit transport session arguments for the runner.
- Parameters:
room_name – LiveKit room name to join
token – Authentication token for the room
body – Additional request data
- room_name: str
- url: str
- token: str