SignalWire | Rasa Documentation
Build your first agent in just a few minutes with Rasa Copilot.
On this page
New in 3.17
The SignalWire connector has been made generally available in Rasa Pro 3.17.
Use this channel to connect your Rasa assistant to SignalWire. SignalWire is a cloud communications platform that provides Voice APIs and phone numbers.
Basic Rasa configuration
Create or edit your credentials.yml and add a new channel configuration:
signalwire:
server_url: "<your-domain>"
username: "<username>"
password: "<password>"
asr:
name: "deepgram" # or "azure"
# ASR-specific configuration
tts:
name: "deepgram" # or "cartesia", "azure"
# TTS-specific configuration
interruptions: # optional
enabled: true
min_words: 3
You can run that assistant using rasa run. To configure the SignalWire channel, you will need a URL to your Rasa assistant. You can use a tunneling solution like ngrok to expose your assistant for development.
Configuring SignalWire
To route calls to your Rasa assistant, you need to have a SignalWire account and a phone number.
Sign up for SignalWire.
Once logged in, buy a phone number from SignalWire.
Create a cXML Script with Calling call type. To route calls to your assistant, choose to handle using External URL. You'll either need to deploy your assistant to a server or use a tunneling solution like ngrok for development.
The External URL will be in the format wss://<your-server>/webhooks/signalwire/webhook
or if using ngrok, it will look like this:
wss://recently-communal-duckling.ngrok-free.app/webhooks/signalwire/webhook
- You can add Status change URL.
It will be in the format wss://<your-server>/webhooks/signalwire/call_status
or in the case of ngrok look like this:
wss://recently-communal-duckling.ngrok-free.app/webhooks/signalwire/call_status
- After saving the script, in the Addresses & Phone Numbers section, add the chosen number to your application.
Usage
You can call the SignalWire number from any other number in order to talk to the deployed bot.
Audio format
The default audio format on SignalWire channel is Linear 16 bit 24KHz PCM mono