Set up an autoresponder for your 10DLC, Short Code, or Toll-Free messaging campaigns.
To be compliant with SMS/MMS Application-to-Person (A2P) Messaging, it’s required that senders support standard keyword interactions so their audience can opt-in, opt-out and get customer care information through text messaging. Voxology’s Autoresponder makes compliance simple. We are listening for a standard list of keywords used for opt-in, opt-out and customer care and will send a predefined response.
Further, for customers who want a broader list of keywords and more advanced message flows, the control-flow Call Flow Actions used in Programmable Voice can also be used on Programmable Messaging to define custom responses.
Messaging Keywords are one-word messages anyone can send to your phone numbers to either opt-in, opt-out or get help. Ingesting these keywords and responding to them promptly is mandatory to be compliant with regulations governing A2P messaging.
To make compliance simple for our users, Voxology has built-in keyword detection for messages with an exact match on some of the most common keywords. When a keyword is detected, we notify you in the Inbound Message Callback Request. The callback will include which keyword was detected and the type. All sms-enabled numbers inherit this feature.
START
, SUBSCRIBE
STOP
, UNSUBSCRIBE
, CANCEL
, QUIT
, END
HELP
, INFO
keyword_detected
// the keyword detected on the inbound message, from the list abovekeyword_type
// the type of keyword detected, Opt-Out
, Opt-In
, Help
When an Opt-Out keyword is detected on an inbound message, the sending number is automatically added to the Messaging Blocklist for your Voxology Application. All future attempts to message that number will fail with an ‘opt-out’ status until the number sends an Opt-In keyword to remove themselves from the Messaging Blocklist. The scope of the blocklist varies based on the number type (10DLC, Toll-Free, Short Code).
When enabled, the Voxology Autoresponder will automatically send a response to any of the keywords captured by our Keyword Detection feature described above. We include a parameter, auto_response
, in the Inbound Message Callback Request, indicating an auto response was triggered by an inbound message.
If your number is registered to a 10DLC campaign with defined Opt-In, Opt-Out and Help keyword responses, those messages are automatically synced to the Voxology Autoresponder and will be sent in response to the appropriate keywords.
If not, the default messages listed below will be used.
The Voxology Autoresponder is enabled on a per-number basis by updating the Callback Configuration for the number. If set on the Default Callback Configuration, then all numbers using it will inherit the Voxology Autoresponder feature.
A. Go to the Manage Phone Numbers page in the Portal and select an SMS-enabled number.
B. Click on the Callback Configuration tab.
C. Disable the Inherit Default Callback Configuration from Application toggle.
D. Under the SMS/MMS Callback Configuration section, enable the Turn SMS autoresponder on toggle.
E. Click Save.
To enable the Voxology Autoresponder using the Update Callback Configuration API method, simply set the sms_autresponder.status
property to “enabled”.
curl -X PUT \
'https://api.voxolo.gy/v1/CallFlows/Configurations/PhoneNumbers/%2B17145551213' \
-H 'Cache-Control: no-cache' \
-H 'Content-Type: application/json' \
-H 'X-API-Key: YOUR_API_KEY' \
-d '{
"callback": {
"method": "POST",
"url": "https://your-callback-url.com",
"headers": null,
"content_type": "application/json",
"timeout": 5
},
"callback_sms": {
"method": "POST",
"url": "https://your-sms-callback-url.com",
"headers": null,
"content_type": "application/json",
"timeout": 5
},
"sms_autoresponder":{
"status":"enabled"
},
"answer_on_ring": 1,
"custom_data": {
"custom": "data"
},
"log_callbacks_until": "2024-01-01T00:00:00.000Z",
}'
Now that your number is configured with the Voxology Autoresponder, send any of the keywords listed above in the Keyword Detection section. If successful, you will receive an auto-response to your message and the Inbound Message HTTP Callback Request will detail which keyword was detected keyword_detected
, the type keyword_type
, and that an auto-response 'auto_response` was sent.
Bask in the simplicity of SMS compliance with Voxology.
There are cases where you may want to have an autoresponder that responds to inbound messages that don’t match the predefined keywords the Voxology Autoresponder responds to. This tutorial is a step-by-step guide to creating a custom SMS autoresponder using Call Flow Actions with Programmable Messaging.
To enable custom auto-response messaging from your number, you need to tell Voxology where to fetch your instructions. When a text comes in, we will make a request to your server or CDN and expect you to tell us what to do next using our list of Call Flow Actions.
For your convenience, we posted a sample JSON call flow script using our Actions and Variables at the following URL:
https://s3-us-west-2.amazonaws.com/com.voxology.actions/docs/Example-SMSAutoResponse.json
(contents below).
{
"actions": [
{
"$subscribeList": "['START', 'YES', 'SUBSCRIBE'].join()",
"$unsubscribeList": "['STOP', 'NO', 'UNSUBSCRIBE'].join()",
"$helpList": "['HELP', 'INFO'].join()"
},
{
"$formattedMessage": "$textMessage.toUpperCase()"
},
{
"type": "IF",
"condition": "$subscribeList.indexOf($formattedMessage) !== -1",
"then": [
{
"type": "SESSIONDATA",
"session_data": {
"response": "You have opted in."
}
},
{
"type": "GOTO",
"params": {
"label": "sendMessage"
}
}
]
},
{
"type": "IF",
"condition": "$unsubscribeList.indexOf($formattedMessage) !== -1",
"then": [
{
"type": "SESSIONDATA",
"session_data": {
"response": "You have opted out."
}
},
{
"type": "GOTO",
"params": {
"label": "sendMessage"
}
}
]
},
{
"type": "IF",
"condition": "$helpList.indexOf($formattedMessage) !== -1",
"then": [
{
"type": "SESSIONDATA",
"session_data": {
"response": "This is a helpful message."
}
},
{
"type": "GOTO",
"params": {
"label": "sendMessage"
}
}
]
},
{
"type": "SESSIONDATA",
"session_data": {
"response": "You've sent an invalid response."
}
},
{
"type": "LABEL",
"name": "sendMessage"
},
{
"type": "SMS",
"params": {
"message": "${sessionData.response}"
}
}
]
}
A. Go to Manage Inbound Phone Numbers page in the Portal and select the number you want to configure.
B. Click on the Callback Configuration tab.
C. Disable the Inherit Default Callback Configuration from Application toggle and then enable the Designated a Callback URL to where Voxology will send Callback Requests toggle to display the Callback Configuration form.
D. 'Copy/Paste'
https://s3-us-west-2.amazonaws.com/com.voxology.actions/docs/Example-SMSAutoResponse.json
(JSON Call Flow Script) into the Callback URL field.
E. Set the Callback Method field to
GET
.
F. Click Save.
NOTE: You can also set the HTTP callback configuration using the Update Call Flow Configuration method.
Once you’ve configured your number, send a text message with one of the keywords:
START
, YES
, SUBSCRIBE
STOP
, NO
, UNSUBSCRIBE
HELP
, INFO
You should receive a text message back with the corresponding response.
Congratulations! Your Voxology phone number can now return automated response messages. Next, you can point your number to a URL on your own server or CDN and start building intelligent SMS auto-responses into your application.