New open source SMS Connector module

With Twilio - do I need to add the webhook URL under “Delivery Status Callback” when setting up a messaging service? Will this enable delivery status? Or do I need to do something else to get delivery reports/updates.

The module isn’t really doing anything with delivery reports. The only thing it is checking is whether the message was successfully delivered to the provider, and that just through simple success confirmation on the REST API call.

As far as I know there is nothing in UCP or the softphones that displays a delivery receipt status, anyway.

Version 16.0.11 is posted which adds Bulk Solutions (BulkVS), fixes a bug I introduced with adding numbers, and enhances logging and error handling.

If you installed 16.0.10 I recommend that you update to this version to resolve the adding-numbers bug.

2 Likes

Yeah, there probably wouldn’t be since the SMS module for FreePBX is built to use SIPStation and in a time where 10DLC didn’t exist. There are quite a few providers that offer DLR (delivery receipts) so the users are aware if the messages made it to the destination.

Additionally, when you do register a 10DLC campaign you need to provide keywords and replies for three things: Opt-in, Opt-out and Help. Basically you need to provide all the keywords that will allow someone to opt-in to your campaign, opt-out of the campaign and if they want help/info about said campaign. Along with those keywords you need to provide the message that will be automatically sent back to those users. It also means that if someone does opt-out of the campaign(s) then you are not allowed to send them messages anymore from any numbers associated with said campaign.

I had to completely overhaul the messaging solution I have for my customers to allow for these things to happen along with having to track and make sure that if an opted out number is in a list of destinations that it doesn’t get sent.

Voip.ms can also send SMS over the SIP channel, and over the weekend I was challenged to come up with a way to process inbound SMS over SIP, while still sending SMS to Voip.ms using the API. I wrote a small dialplan shim that does this: dialplan to bridge voip.ms SMS SIP messages to SMS Connector script · GitHub

If you want to do it this way, set Voip.ms to send you SMS by SIP on the Voip.ms portal, and in your Voip.ms trunk, set Message Context to voipms-sms-in . Add the referenced dialplan block to extensions_custom.conf and reload. Outbound SMS will be via API, and inbound via SIP. The case for this is to not have to allow inbound HTTPS calls from the provider.

1 Like

Ward Mundy has posted a VoIP.ms setup tutorial for Incredible PBX users that others may find helpful.

1 Like

To clarify, this module requires SMS module, which is non-free/commercial module, correct ?

Not clarified, IncrediblePBX is fully opensourced

SMS Connector requires the SMS module, which is in the Commercial repo but is free. SMS can be installed on non-distro machines; it doesn’t require Sys Admin.

Note that you don’t have to manually install SMS first. The manifest for SMS Connector specifies the requirement and installing SMS Connector will also install SMS for you.

2 Likes

any chance of getting this integrated with SIPtrunk.com and FlowRoute?

Flowroute is already available in the module. Siptrunk.com would have to be a community contribution.

FlowRoute is owned by BCMone and they also own SIPtrunk.com…they are interested in getting their SIPtrunk.com and NexVortex products certified for this… let me know the best way to get that to happen.

You contribute to the repo with additions for siptrunk.com and nexvortex.

2 Likes

Note this is a community initiative that Bill has graciously spearheaded with What I can imagine are countless unpaid hours. This directly competes with official offerings so there is no official support or backing of this. In other words there is no certification.

Options:

  • Develop the features and submit them
  • Pay someone to develop and submit them
  • Offer to pay Bill assuming he is open to such things, he may not be.

In any case if a company wants something in this that they are going to make money on they should probably contribute in code or cash to make it happen.

3 Likes

I will accept either. I will also add providers in my free time if provided access via temp credentials or test accounts. Shout outs to:

  • BulkVS - provided a test account configured with an SMS campaign for development purposes
  • Ward M. - Voip.ms test account for development
  • Eddie S. - Skyetel temp API keys for development

Thanks for everyone’s support on this open source module. :+1:

5 Likes

cool…

Just wanted to thank you for your awesome work. We have started to by-default using the Sangoma Talk PC and Mobile client, versus others, and this module you created is working great using the latest FreepBX updates as of today.
I did not find a “contribute” option on github, but I would like to send you some appreciation :), please let me know how.

For those caching up on this awesome module, here is what I had to do to get it working in addition to the the provided guide; using VOIP>ms setup option

  1. enable SSL using you cert or Lets Encrypt - so simple
  2. White list the Voip.ms POP IP in the firewall configuration on Freepbx
    … follow the simple provided steps :slight_smile:

Carrier side:::

In VoIP.ms under Manage DID, edit DID you have enabled SMS and select the option “SMS/MMS URL Callback” and then enter the Webhook generated during the " SMS Connector - Provider setup" process in the Freepbx.

After, I did the SMS Connector - Setup Number process on the PBX, I went to the UCP to test. Initially things were not working however after updating FreepBX, viola, it is working in the UCP and Sangoma Talk apps - two inbound/outbound.

Now, to figure out how to make it work with Zopier :slight_smile:

I am not sure what to do, the SMS Connector is working great in the UCP and Sangoma Talk Desktop client however the mobile client keeps on cycling the downloading of sms messages and each time it sets the current time of download. IE: I have made about 50 sms tests however when I got up this morning the mobile client reports 1000+ new messages.

Any suggestions would be great… I am happy to pay for some assistance and / or development.

Cheers

That’s a new one to me. You can find logs related to the soft client in /var/log/asterisk, and the SMS connector logs into the general /var/log/asterisk/freepbx.log

One thing to check is whether you are getting the messages in duplicate from the provider (you should see that in the SMS connector logs in freepbx.log). If not, other logs might provide a clue why it keeps showing up in your soft client.

Thanks for the direction. I did find the log and reviewed it and it seems when I open the Sangoma Talk Mobile client, it calls for all the messages. Happy to send the full log if that assists. Again happy to pay consulting/pro services fee, as I would like to use this feature :slightly_smiling_face:

PBX Version: 16.0.40.7
PBX Distro: 12.7.8-2306-1.sng7
Asterisk Version: 20.5.2

–extraction of log----
[2024-02-04 19:37:41] [freepbx.INFO]: Exception Webhook (voipms): file_get_contents({MEDIA}): failed to open stream: No such file or directory
[2024-02-04 19:37:41] [freepbx.INFO]: Webhook (voipms) in: Array ( [provider] => voipms [to] => 2894262493 [from] => 6475021488 [message] => Last message [id] => 74056351 [date] => 2024-02-01 23:04:07 [media] => {MEDIA} )
[2024-02-04 19:37:41] [freepbx.INFO]: Exception Webhook (voipms): file_get_contents({MEDIA}): failed to open stream: No such file or directory
[2024-02-04 19:37:41] [freepbx.INFO]: Webhook (voipms) in: Array ( [provider] => voipms [to] => 2894262493 [from] => 6475021488 [message] => Last message [id] => 74056362 [date] => 2024-02-01 23:04:11 [media] => {MEDIA} )
[2024-02-04 19:37:41] [freepbx.INFO]: Exception Webhook (voipms): file_get_contents({MEDIA}): failed to open stream: No such file or directory
[2024-02-04 19:37:42] [freepbx.INFO]: Webhook (voipms) in: Array ( [provider] => voipms [to] => 2894262493 [from] => 6475021488 [message] => Testing abc [id] => 74056693 [date] => 2024-02-01 23:07:58 [media] => {MEDIA} )
[2024-02-04 19:37:42] [freepbx.INFO]: Exception Webhook (voipms): file_get_contents({MEDIA}): failed to open stream: No such file or directory
[2024-02-04 19:37:44] [freepbx.INFO]: Webhook (voipms) in: Array ( [provider] => voipms [to] => 2894262493 [from] => 6475021488 [message] => Testingzcv [id] => 74060136 [date] => 2024-02-02 00:47:37 [media] => {MEDIA} )
[2024-02-04 19:37:44] [freepbx.INFO]: Exception Webhook (voipms): file_get_contents({MEDIA}): failed to open stream: No such file or directory
[2024-02-04 19:38:13] [freepbx.INFO]: Webhook (voipms) in: Array ( [provider] => voipms [to] => 2894262493 [from] => 6475021488 [message] => Testing text 259 [id] => 74166407 [date] => 2024-02-03 02:59:24 [media] => {MEDIA} )
[2024-02-04 19:38:13] [freepbx.INFO]: Exception Webhook (voipms): file_get_contents({MEDIA}): failed to open stream: No such file or directory
[2024-02-04 19:38:17] [freepbx.INFO]: Deprecated way to add Console commands for module api, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:38:17] [freepbx.INFO]: Deprecated way to add Console commands for module backup, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:38:17] [freepbx.INFO]: Deprecated way to add Console commands for module sangomartapi, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:38:17] [freepbx.INFO]: Deprecated way to add Console commands for module voicemail, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:38:22] [freepbx.INFO]: Webhook (voipms) in: Array ( [provider] => voipms [to] => 2894262493 [from] => 6475021488 [message] => Received mobile test [id] => 74183060 [date] => 2024-02-03 16:18:31 [media] => {MEDIA} )
[2024-02-04 19:38:22] [freepbx.INFO]: Exception Webhook (voipms): file_get_contents({MEDIA}): failed to open stream: No such file or directory
[2024-02-04 19:39:01] [freepbx.INFO]: Deprecated way to add Console commands for module api, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:39:01] [freepbx.INFO]: Deprecated way to add Console commands for module backup, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:39:01] [freepbx.INFO]: Deprecated way to add Console commands for module sangomartapi, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:39:01] [freepbx.INFO]: Deprecated way to add Console commands for module voicemail, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:40:18] [freepbx.INFO]: Deprecated way to add Console commands for module api, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:40:18] [freepbx.INFO]: Deprecated way to add Console commands for module backup, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:40:18] [freepbx.INFO]: Deprecated way to add Console commands for module sangomartapi, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:40:18] [freepbx.INFO]: Deprecated way to add Console commands for module voicemail, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:40:19] [freepbx.INFO]: Deprecated way to add Console commands for module api, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:40:19] [freepbx.INFO]: Deprecated way to add Console commands for module backup, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:40:19] [freepbx.INFO]: Deprecated way to add Console commands for module sangomartapi, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:40:19] [freepbx.INFO]: Deprecated way to add Console commands for module voicemail, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:41:06] [freepbx.INFO]: Deprecated way to add Console commands for module api, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:41:06] [freepbx.INFO]: Deprecated way to add Console commands for module backup, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:41:06] [freepbx.INFO]: Deprecated way to add Console commands for module sangomartapi, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:41:06] [freepbx.INFO]: Deprecated way to add Console commands for module voicemail, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:42:25] [freepbx.INFO]: Deprecated way to add Console commands for module api, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:42:25] [freepbx.INFO]: Deprecated way to add Console commands for module backup, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:42:25] [freepbx.INFO]: Deprecated way to add Console commands for module sangomartapi, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:42:25] [freepbx.INFO]: Deprecated way to add Console commands for module voicemail, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:43:13] [freepbx.INFO]: Deprecated way to add Console commands for module api, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:43:13] [freepbx.INFO]: Deprecated way to add Console commands for module backup, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:43:13] [freepbx.INFO]: Deprecated way to add Console commands for module sangomartapi, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands
[2024-02-04 19:43:13] [freepbx.INFO]: Deprecated way to add Console commands for module voicemail, adding console commands this way can have negative performance impacts. Please use module.xml. See: https://wiki.freepbx.org/display/FOP/Adding+fwconsole+commands

–end log sample----