Email based approach to application integration
BNS Enterprise SMS Server is Windows server VM running in your datacentre or your private cloud.
Using internal email allows any application programmer to send an SMS with minimal effort.
Benefits of using internal email together with the platform include:
The maximum size of an SMS request via SMTP is determined by which SMS Service provider(s) are used with the deployment. Contact your system administrator to determine what is the maximum you can send from your application to be within the SMS Service provider limit.
Internal email such as Microsoft Exchange server directs specific address space eg: @Brand1.sms @Brand2.sms to one or more SMS servers.
Exchange administrators route the SMS traffic to specific SMS servers to control the flow of messaging.
Applications have to be registered within the SMS server. Applications are registered based upon a sender e-mail address.
A business application can use the Email subject or the email body to create the SMS message. The default for a business application is using the subject. If an application can only use the message body of an email the administrator must add a keyword into any of the Custom fields of the application profile.
Keywords:
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNTMwNi8zMjEzNy9ja2ZpbmRlci9pbWFnZXMvaW1hZ2UoNDcpLnBuZyIsIkNvbmRpdGlvbiI6eyJEYXRlTGVzc1RoYW4iOnsiQVdTOkVwb2NoVGltZSI6MTc2NTgyMTA5N319fV19&Signature=ciWJjdBCzZjY9ITJBNMQDmKxqUJW75nuLmvGJ5uo4fQmv1FRUvW4Q4m-BL4axvDxsYbE8lbs-1LMEnOF0dZQuOWoLDpCLlt-rw8n5kr3aKrswtB6GSihPY3hILQiSjkWe6zuTTpwb5Gj5C5nrYc0LSduFLc5EAiVcnmyZoSBq4XVV3ZomUFHC3Q6I6HwO8S~WAZe8RsMPnApUdHfKoFsmWAKTY8ZPyDz6WPR22oBR5iHcjkBr~zFTwE8WFHVG43vVPnn61GxjQdI7U4HCtVLxOHJD7hhLT2ElL-NFfw9D~1X0Hp6-tR51QeS8ZHdqzLJviPw7bT~dZP~SRkr0df-ew__&Key-Pair-Id=K2TK3EG287XSFC)
Example using Outlook.
The example below shows how you application could send an SMS using the subject and also inject custom fields.
Custom fields what are they?
Custom fields are values which are written to the SQL database for that transaction. Examples include: Campaign reference, Customer account number, invoice number etc. Any reference data which is meaningful to your organisation.

In the example above, the application creates a simple e-mail, the subject of which is the SMS message to be transmitted. The recipient mobile number should be in the full international format plus any key words in the message body.
The SMS platform can be configured to auto replace prefixes such as 04 with 614 so that Outlook users can supply a mobile number in the form 0412869531@Brand1.sms because msXsms will parse the number based upon a rule set to present the correct international number. However, applications should be responsible for presenting the full international number eg: 61412001002.
If an application is a proxy for another logical application or business unit a keyword [FromEmail=BusinessApplicationEmailAddress] would be supplied in the message body to identify to msXsms which business application table controls to use. More on that later.
There are 3 important parameters to supply when sending an SMS message using SMTP/MIME.
Applications which set the Recipient Display Name can also make use of the intelligent caching of msXsms.
Recipient Display Name in msXsms is limited to 100 characters.
System architects can leverage the Recipient Display Name to contain any information about the recipient of the SMS such as: customer account number, Campaign ID etc.
If 2 way dialog with SMS recipients is required, it is highly recommended that the tools used by your development team can supply the Recipient Display Name when constructing the SMTP/MIME message.
To best illustrate this, the example below uses Outlook as an application which does this.
If your application can supply the Recipient Display Name then any message replies from your SMS recipients will provide meaningful information to users of those applications.
This example shows how a Recipient Display Name could contain customer account information so that a reply (inbound SMS) is then presented as that sender of the SMS.
By way of example only, refer to the Outlook contact screen below to see the recipient display name (Display as) in that context.
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNTMwNi8zMjEzNy9ja2ZpbmRlci9pbWFnZXMvaW1hZ2UoMSkucG5nIiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNzY1ODIxMDk3fX19XX0_&Signature=QUPdsldgtzz8HzCTJ-iah622-Oe9I~s~Yw3UcJsAwhvltFwzTd3CjJQW06Jos04mDLSIJ7p9DWETj2YhCTkH777YGRPd3nDHOzWqq25Sg~0ORrSKZHk5eJic7zPk~KKggMzYd2f5OYeZvucaFmHZNkPAkOKO3DUhZKtPzrbqKYFjuSngpbkungx2zb9dgAyy8XkjDAsWRQWvaJk30UjR-i7t7myfm3vgDzgG4SjuZmecLL0EX6ZKap1yqXh1X4bRESq~Q23DEQdx6iyZ7gIxulhGZIZWyKHJSytRAJd7xYBOI63Et7rSY14Msi7N1hDH8DTEXR4u75EGFga7rIErPA__&Key-Pair-Id=K2TK3EG287XSFC)
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNTMwNi8zMjEzNy9ja2ZpbmRlci9pbWFnZXMvaW1hZ2UoMikucG5nIiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNzY1ODIxMDk3fX19XX0_&Signature=ZYpux1UnJzGwuVrxGjpuOrJmMXQ9A4sPgVZdfwRNF2ZMhtMwxqZTx9YtSDa8mJOt1NeW1wuxpMiqFNIkYiYqV6fXbggNEMuzSDKUsfwnyoeFkaEF8gZRp6NT1XnWsywBkNjT4aXiN9gxWg7Zxv9Jk1WLU7pdpcjkOvcQ6CKzm-sc4rGIGJDojcTHHBgx4jeppQDELNkK7ylRc3okzb4-CWx~buwQ99VHluTkMwt6HIBe62IaQ7726NbW0EuFy2~wceqOURJg1t3eo1PwJvHk-Z64XppE92evbf-4b2~Hkgb9ZfWODS5tyUc77DYzgYNJBfKCTkVX3ipv603dU6wwsQ__&Key-Pair-Id=K2TK3EG287XSFC)
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNTMwNi8zMjEzNy9ja2ZpbmRlci9pbWFnZXMvaW1hZ2UoMykucG5nIiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNzY1ODIxMDk3fX19XX0_&Signature=Jqz3~x0pTTL53UPoC2QD-EAppwcK~C8uEZF5GqFtR6dv1hO2nn6lp0mtOe4YPJuSUFhtqnKmq-O3iaweV2rdc~XyJNx9qHap1i1Ywi3dawcIGe-ANo1xLotIWTc4YNok7l210Pj~cChGyyb2nus~35EHgaZdMZYPYwE18wKhOdZzmZN2tWdr7fCVaNXpFmjek6a0j~hhc1HF8BgdcOb5uR86AnWJ~RcyhNUFtfhvcm9UxEUc6NCjLnOBAQ3wqza6uaIj5wi53Idh86bJzihZabfQ7JXQJblbgEah7KPQ~VXzuA~dI2ykKWYCHKxYPs2ZQus6oCIwHhil2twyK-gGsg__&Key-Pair-Id=K2TK3EG287XSFC)
Notice how a reply SMS sender display name contains Customer number AU1234567, followed by the Customer’s name plus other information.
Administrators register details of all business applications in SQL via a configuration program called the Web Console.
The configuration program allows default values to be established some of which can be overridden by the application on a per message basis.
Firstly, lets understand what the administrator of the system can setup for your application.
Example shows:
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNTMwNi8zMjEzNy9ja2ZpbmRlci9pbWFnZXMvaW1hZ2UoNDgpLnBuZyIsIkNvbmRpdGlvbiI6eyJEYXRlTGVzc1RoYW4iOnsiQVdTOkVwb2NoVGltZSI6MTc2NTgyMTA5N319fV19&Signature=b8YIk4T1iBfVMxyf83tNECGA7C872yP7HUBQJAqzIvUOl-JinvWqebHTymKbTlxnIvpmzuOm8b~G3qBaEFu8-GXkWGmtHgYNieJfnPJBUZjK-UXh6BhKKyuq1rGtYjEUkcScCxPmKwvuUtPjRUe0YZfQPe3-9leeITm2VP0s-L9UmSnnz91-D3eFVEwz90uu2aiNm0icpxFw~eVmTa8rm4xfaBvjBeZGstPmNIocSi-M-GulkuieATlrZ-ehKUCV3SIuCFckNIEknQjaPgtoOlePoTrjySqrn4RDz9BauHVYMXtpHHf2Fxz9JBLmwDc28ka4JpvAkyytSDnYdwFmEQ__&Key-Pair-Id=K2TK3EG287XSFC)
Keywords must be on separate lines in the message body.
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNTMwNi8zMjEzNy9ja2ZpbmRlci9pbWFnZXMvaW1hZ2UoNCkucG5nIiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNzY1ODIxMDk3fX19XX0_&Signature=FRzjf~d6AuO2s-zpa-upSw76UpfXY5fmvDtXtnjzI~8nhev4kn7wWamMGuAGGG2pklEibIHGbjEUCl0tpqCbHO0iMbcCUKVdFWEyHcqUos9krtkNk6NIkDOQPrOxw696hKVlbtkpIopEWLO04S~pGawXG9chIwGQ84UspPnnjNo~KY4ZPaJXyvZkOP5Oai91DzZhSw~OlXLmjj4FXOn76mKFLjNioYes-r66YgOtyDubWdmK60x~bR7ryt4HurAe6XBfMcetYWDk~GuvwZ6sXGEtByFFI-3bg4uAFDTLBMkaZLhpBwWZfdTr0I4JsEijL0enCsFYiAcrYjiF-UR6sA__&Key-Pair-Id=K2TK3EG287XSFC)
Rules around the use of keywords which you can put into the message body of emails sent to the SMS Server.
Note: All keywords are optional.
|
Keyword in message body |
Data type / length |
Format |
Rules |
comments |
|
[FromEmail=email address] |
String 100 |
Email address |
only use this if there is a need to override the sender business application |
|
|
[ReplyToEmailSuccess=email address] |
String 100 |
Email address |
If supplied by the application this will be used irrespective of any other settings. If the business application control defaults require a confirmation to sent then the value supplied in the application table defaults will be used. If that value is blank then the confirmation will be sent to the purported sender. Purported sender is [FromEmail=] if supplied as a keyword. If that keyword is not set then the actual SMTP Sender email address is used.
|
|
|
[ReplyToEmailFailed=email address] |
String 100 |
Email address |
If supplied by the application this will be used irrespective of any other settings. If the business application control defaults require a confirmation to sent then the value supplied in the application table defaults will be used. If that value is blank then the confirmation will be sent to the purported sender. Purported sender is [FromEmail=] if supplied as a keyword. If that keyword is not set then the actual SMTP Sender email address is used.
|
|
|
[DoNotSendBefore=hhmm] |
Numeric 4 |
Hhmm |
If not supplied then the default values in msXsms SMS number table will be used. If the msXsms SMS Number table values are blank then the message will be sent without delay. |
|
|
[DoNotSendAfter=hhmm] |
Numeric 4 |
Hhmm |
If not supplied then the default values in msXsms SMS number table will be used. If the msXsms SMS Number table values are blank then the message will be sent without delay. |
|
|
[Custom1=string] |
String 100 |
Any character |
|
Entirely up to the application |
|
[Custom2= thru Custom10= |
9 additional values 100 chars maximum |
|
|
|
|
|
||||
|
|
The SMS platform maintains pre-defined values when the application relationship is established by the respective business units and the Messaging / Collaboration team.
The following values are established upon setting up the relationship and can’t be overridden via message keywords:
|
sms Application entries which cannot be overridden by keywords from applications |
format |
usage |
|
Default Priority |
String (1) |
Priority of SMS for this application cannot be changed using a keyword |
|
Default SMS number (Sender) |
String (20) |
This is the number to be used when sending SMS messages for this application |
|
Disclaimer text/url |
String (59) |
if blank then no disclaimer. If a disclaimer is set up by the administrator the application cannot override it. |
If a disclaimer is established in the application table then the message length in the subject or email body for use in creating the SMS is the maximum supported for the application less 60 characters.
Applications should therefore restrict their message length to their allotted maximum less 60 characters if application disclaimers are to be used.
If application disclaimers are not used, the application can send a message subject or message body up to the maximum number of characters supported for the application or limit imposed by the SMS Service provider. Contact your system administrator for more information.