Skip to main content
Use createSignalWireCallProvider from @agentium/core/telephony. It implements outbound create, read, hangup, and normalization of already verified status events.

Before you connect

An HTTPS *.signalwire.com Space URL, project/account identifier, owned caller ID, cXML answer endpoint, and Basic authorization.
This adapter uses HTTP and does not require the carrier’s Node SDK. You may still use that SDK in your host to validate callbacks or issue application credentials.

Configure the provider

This complete factory accepts host-owned configuration. Constructing it does not place a call. Read secrets and route values from your server configuration before calling it.
routeId identifies a fixed host-approved route. Version it when the account or destination infrastructure changes. allowedFrom is a snapshot of permitted E.164 caller IDs. authorization returns the full HTTP header and can read rotating credentials on each request. Pass this provider to OutboundCallService with an intent store and an authorization function. The call lifecycle recipe exercises create, deduplication, read, and hangup without dialing.

Provider behavior

Uses the Compatibility API and cXML call instructions. It does not use SWML. Hangup updates call status; deleting the call resource is not a hangup operation. Your host serves cXML and terminates media streams.

Status and failure handling

Verify provider signature, account, freshness, and replay constraints before normalizing a callback. Resolve tenant and intent from trusted storage; see callbacks and recovery. Create is never automatically retried by this adapter. A timeout after dispatch may mean the carrier accepted the call. Keep the original intent and reconcile it before attempting another effect. Hangup acknowledgement is not a terminal call status. See the provider’s call API documentation for account provisioning, answer documents, and media configuration. Agentium’s telephony contract describes its neutral request, status, and error types.