Voice Notification Module with Twilio as the SIP Gateway

BLUF: I am having issues creating a notification profile to use Twilio as the SIP Gateway.

To clarify, my question is not about the Twilio Module, I can send SMS using Twilio Module. My expected answer is to make Twilio work as the voice notification service for Ignition alarms. I would appreciate any experience shared to have this working.

Here is a bit more description of my progress so far:

I set SIP on Twilio side and I was able to call myself using console and python code on my Ubuntu desktop. Now, I am trying to set a notification profile on ignition gateway to do the same when there is an alarm.

The following is my VOIP Gateway Settings:
Gateway Address: {domainname}.sip.us1.twilio.com
Username/Account: {username}@{domainname}.sip.us1.twilio.com
Password: {Password}

Advanced Settings
Authorization Id: {AuthToken}

The rest remains as default.

The status shows registering for a while, then returns “Request Timeout [408]”

On Twilio dashboard, there is no debug notifications, which means, I believe, it does not make it to the Twilio servers.

Am I on the right path at all?

Can anyone who has successfully made it through help me set this up? Thanks.

1 Like

Im trying to make twilio sip work right now. I am waiting to hear back from them. If you figure somethign out post here, and Ill do the same.

1 Like

Sounds perfect.

I am a little confused about whether ignition can use Twilio directly as the SIP gateway or if it needs something in between as the gateway then this gateway uses Twilio SIP.

Update:
I have deleted the Authorization Id in the advanced settings because somewhere in twilio documentation user id/authorization id are used interchangeably, thus I believe it is not supposed to be auth_token. That resulted in the same “Request Timeout [408]” :slight_smile:

1 Like

If I remember correctly, Twilio provides SIP Trunk capabilities, but it isnt a PBX per say. Have you tried the Kymera Systems Twilio module? It supports bi directional sms and voice.

Thanks for bringing the Kymera twilio module to my attention. Your twilio module looks promising. I will provide more feedback after I try all of its features for a while.

atay,

Could you please send me the Twilio SIP configuration screenshots? I would like to configure Twilio SIP as well as voice notification in Ignition 8.1.

1 Like

Did you get this working? I am trying to do the same

Did you ever get the Voice Notification Module working with Twilio? I am trying to do the same thing

I do SMS as well. Did you have to purchase a second number for Voice?

Was there ever any update to this? I have tried using the AWS Chime as a Voice connector, but it seems to lose registration with Ignition, and I have to restart the registration process to get the Voice alarms to work.

Was looking at Twilio as an option, since I use it already for SMS messages for alarms. Did anyone ever get this working?

Not that I heard of. I've been using AWS CHIME and is been working fine for almost a year.

I haven't seen anything regarding how to set this up anywhere, but is what worked for me:

Gateway Address: localized Termination SIP URI
Username/Account: phone number in e.164 format that is assigned to Twilio account
Password: blank

Advanced settings: Auth Token

1 Like

I'm able to register with Twilio, but no calls go thru. Do you have any insight to what you configured in Twilio?

Are you able to view your logs in Twilio or Ignition to see where they are failing? In my experience, it's usually due to the access lists. You'll want to make sure that you have added your network's IP address range to your IP / CIDR Access Control Lists in your Twilio account. You'll also want to allow all of the Twilio IP address ranges on your firewall

I’m probably looking in the wrong place, but no errors in the call logs of Twilio.

I’ll update the ACL to use IP range instead of username/password. I think that’s where I messed up and I’ll report back after the changes.

I have Twilio working through a 3CX PBX, but can't get it direct.

could use some verification if you're willing..

with your suggested setup (and others) - I always get the following:

Logger Time Message
Agent 11Dec2023 23:19:35 cannot find invite client transaction for call lmLFEDVU-1702358374689@192.168.1.188
CallManager 11Dec2023 23:19:34 Error state received from call manager. Reason: Proxy Authentication required [407]

questions:

in your config, is this yourdomain.**pstn**.us1.twilio.com (Elastic SIP Trunking) or yourdomain.**sip**.us1.twilio.com (Programmable SIP Domain)

are you using e.164 format in your user source/roster numbers?

In my experience, leaving the password blank on any Voice notification profile results in Registered with VOIP Host, regardless.

e.g. here's a profile with a Gateway address of asdf

the fix

  • Twilio (Elastic SIP Trunking)
    • IP ACL correctly configured
    • NO Credential Lists
    • NO Origination URIs
    • Secure Trunking disabled (default)
  • Ignition
    • address: yourdomain.pstn.twilio.com - localization optional
    • username: e164 Twilio number (+1 prefix) - may not be mandatory
    • NO password
    • NO Auth ID
4 Likes

Oy! Do you have to leave it like that?

I also never would've guessed this configuration is "correct", but surprisingly it's the same for the "official" AWS Chime setup.

It seems if the Twilio trunk is configured with origination URIs/credential lists, it expects to be getting an INVITE from a proxy (PBX or SBC) - thus the Proxy Authentication required [407] error.

Without those configured, it works a treat straight from Ignition. Of course the IP ACLs give a bit of security, and in AWS Chime's case, the gateway address is pseudo-anonymized (22 char string - at least on the free tier).

I suppose we can manually define a complex trunk address in Twilio as well.

1 Like

How did you configure IP ACL?

I'm trying to configure Twilio SIP as well as voice notification in Ignition.
My logs are the following: