Loading...
Loading...
Make and receive calls, transfer, bridge, and manage call lifecycle with Call Control. Includes application management and call events. This skill provides Python SDK examples.
npx skill4agent add team-telnyx/telnyx-ext-agent-skills telnyx-voice-pythonpip install telnyximport os
from telnyx import Telnyx
client = Telnyx(
api_key=os.environ.get("TELNYX_API_KEY"), # This is the default and can be omitted
)clientPOST /calls/{call_control_id}/actions/answerresponse = client.calls.actions.answer(
call_control_id="call_control_id",
)
print(response.data)POST /calls/{call_control_id}/actions/bridgecall_control_idresponse = client.calls.actions.bridge(
call_control_id_to_bridge="call_control_id",
call_control_id_to_bridge_with="v3:MdI91X4lWFEs7IgbBEOT9M4AigoY08M0WWZFISt1Yw2axZ_IiE4pqg",
)
print(response.data)POST /callsconnection_idtofromresponse = client.calls.dial(
connection_id="7267xxxxxxxxxxxxxx",
from_="+18005550101",
to="+18005550100",
)
print(response.data)POST /calls/{call_control_id}/actions/hangupresponse = client.calls.actions.hangup(
call_control_id="call_control_id",
)
print(response.data)POST /calls/{call_control_id}/actions/transfertoresponse = client.calls.actions.transfer(
call_control_id="call_control_id",
to="+18005550100",
)
print(response.data)GET /connections/{connection_id}/active_callspage = client.connections.list_active_calls(
connection_id="1293384261075731461",
)
page = page.data[0]
print(page.call_control_id)GET /call_control_applicationspage = client.call_control_applications.list()
page = page.data[0]
print(page.id)POST /call_control_applicationsapplication_namewebhook_event_urlcall_control_application = client.call_control_applications.create(
application_name="call-router",
webhook_event_url="https://example.com",
)
print(call_control_application.data)GET /call_control_applications/{id}call_control_application = client.call_control_applications.retrieve(
"id",
)
print(call_control_application.data)PATCH /call_control_applications/{id}application_namewebhook_event_urlcall_control_application = client.call_control_applications.update(
id="id",
application_name="call-router",
webhook_event_url="https://example.com",
)
print(call_control_application.data)DELETE /call_control_applications/{id}call_control_application = client.call_control_applications.delete(
"id",
)
print(call_control_application.data)GET /call_eventspage = client.call_events.list()
page = page.data[0]
print(page.call_leg_id)telnyx-timestamptelnyx-signature-ed25519| Event | Description |
|---|---|
| Call Answered |
| Call Streaming Started |
| Call Streaming Stopped |
| Call Streaming Failed |
| Call Bridged |
| Call Initiated |
| Call Hangup |
| Call Recording Saved |
| Call Machine Detection Ended |
| Call Machine Greeting Ended |
| Call Machine Premium Detection Ended |
| Call Machine Premium Greeting Ended |