Configuring TWILIO SMS provider

From MiRTA PBX documentation
Revision as of 21:41, 3 December 2021 by Admin (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Twilio has announced a new API to deliver SMS, but the old RESTful simple API is still working. We are going to use it. Configure a new Provider, type SMS with protocol WEB URL.

Twiliosmsprovider.png

Use the following link:

https://api.twilio.com/2010-04-01/Accounts/<ACCOUNT SID>/Messages.json

Replacing <ACCOUNT SID> with your Twilio Account SID

Twilioconsole.png

Complete the configuration with the Auth Token and the Post Data like:

To=${URIENCODE(${SMSDESTNUM})}&From=${URIENCODE(+18584334434)}&Body=${URIENCODE(${SMSTEXT})}

Twiliosmsproviderbottom.png

Once created the provider, create the Routing Profile, type SMS and define the rules, for example as following

Smsroutingprofilereules.png

If you want to send a MMS, use:

To=${URIENCODE(${SMSDESTNUM})}&From=${URIENCODE(${SMSSOURCENUM})}&Body=${URIENCODE(${SMSTEXT})}&MediaUrl=http://<your server>/pbx/mms/${MMSKEY}/${MMSFILENAME}

Receiving SMS

To receive SMS with Twilio, the best is to use the Custom format in POST/GET. Twilio seems to have problems in delivering messages over https when using a LetsEncrypt certificate. Not a smart move from them. This will force you to use HTTP as protocol. Beware, if using LetsEncrypt certificate, you may have a redirect forcing all communications to go over HTTPS. You need to disable it in /etc/httpd/conf/httpd.conf.

TwilioInboundSMS.png