Enabling Messages

From Integrics Wiki
Jump to: navigation, search

SMS messages are sent using:

  • SIP SIMPLE messages when the destination is a phone registered with Enswitch.
  • A custom script for external destinations.

Inbound SMS to the Enswitch system is not supported in versions 3.14 and older, except as an add-on from Voisonics. In 3.15 and later inbound SMS messages can be send to the web API methods at:

  • /api/bandwidth/
  • /api/twilio/
  • Any custom-written API which then uses Integrics::Enswitch::Texts or the messages/text/send JSON API method.

The outbound custom script:

  • Must be customised for each provider to match the protocol they use
  • Is located at: /usr/local/sbin/enswitch_message_out
  • Must be on the same machines as enswitch_sipd.
  • Should be careful to properly escape characters in the message.

Here is an example enswitch_message_out script to send requests via HTTP.

Besides customising this script, you need to:

  • In System -> Configuration set "Enable text messages" (or "Enable messaging" in 3.13 and earlier) to Yes.
  • Restart enswitch_sipd.
  • In System -> Roles set "Actions » Send a message" to "Yes" for desired roles.
  • In System -> Routes create routes with the "Media type" set to "Message".
  • In System -> Peers for each peer which is used by a message route, edit the outbound costs and define the "Cost to send a message".
  • In each Rate plan set:
    • Features -> "Send SMS messages" to "Allow".
    • Optionally, set relevant fields in "Default markups" and "Included in rate plan".
    • Optionally, set "Outbound call cost exceptions" -> "Cost to send message".

We recommend your configuration is thoroughly tested prior to making it available to users.