Sage CRM and Outbound SMS Messaging

5 minute read time.


Introduction

SMS Stands for Short Message Service and is the service available on digital GSM networks allowing text messages of up to 160 characters to be sent and received to a mobile phone. If the phone is powered off or out of range, messages are stored in the network and are delivered at the next opportunity.

An SMTP to SMS gateway server enables software capable of generating an SMTP email to send a message to the gateway and in turn be delivered as an SMS text message to a mobile phone almost instantaneously.

Depending on the Gateway software used either Plain Text & Language (Unicode) SMS Text messages can be sent.

Typical Formats of Outbound Email sent to Gateways

Each SMTP to SMS Gateway Server is different and therefore can expect SMTP messages to arrive at the server in different formats. Some Gateways require you to include account authentication information in the message. In the examples below these are the Username and Password fields. The square brackets indicate that this data may be optional.



Example Format 1

The Parameters needed by the SMTP/SMS Gateway are included in the on the subject line. The email body contains the SMS text message.

e.g.

To: [email protected]
Subject: [Username:MyID Password:MyPassword] To:44775990242
Body: You have a new opportunity for Gatecom. 30 Time Manager Licenses. Call Simon Yaltoy



Example Format 2

Parameters are specified in the email body. The subject contains the SMS text message.

e.g.

To: [email protected]
Subject: You have a new opportunity for Gatecom. 30 Time Manager Licenses. Call Simon Yaltoy
Body:
[Username:MyID
Password:MyPassword]

To:44775990242
From: CRMAdmin



Example Format 3

Phone numbers are specified in the email's To address. The subject contains the SMS text message.

e.g.

To: [email protected]
Subject: You have a new opportunity for Gatecom. 30 Time Manager Licenses. Call Simon Yaltoy
Body:
[Username:MyID
Password:MyPassword]

From: CRMAdmin



Example Format 4

Phone number, username and password are specified in the email's To address. The email body contains the SMS text message.

e.g.

To: 44775990242[.Username.Password]@gateway.myserver.com
Subject:
Body:
You have a new opportunity for Gatecom. 30 Time Manager Licenses. Call Simon Yaltoy



The Sage CRM SMS features

In order to test the SMS features then you will need to have access to an email server. This can be a server like Exchange or one of the typical servers that are used for demos such as VPOP or CMail.

Note: Sage CRM sends will send its emails in a format of similar to example 3 above. For example, Sage CRM sends its email to addresses formatted like [email protected] to the email server, which then will forward the email onto an SMS gateway based upon the mail domain used("test.sms.com")

The SMS gateway, in turn, will strip the mobile phone number ("0833354675") from the email address and send an SMS to that mobile phone number with the contents of the email message.

Setting Up the Users

If you are going to send SMS messages to Sage CRM users then you will need to complete their mobile phone number and mark the "User SMS Notification" need to be set to "True". Setting this to True allows a user to be sent an SMS notification message to their mobile phone as part of a workflow using the "Send SMS" action.

Note: "Mobile number" needs to be numerical (no spaces or any other character and no international prefix ("+").


For testing purposes, you should set all default targets for all reminder messages to SMS initially and then once you have got the SMS messaging working you can change this. This needs to be changed for the application's default

Administration -> Advanced Customization -> Workflow & Escalation Configuration

and for the individual test user via their preferences

The Workflow Action
To test the SMS behaviour we will need to make sure that it has been added to the workflow for the entities with which we are working.

For example, if we wish an SMS message to be sent as a communication reminder then we will need to check that the existing Escalation Rule "Communication Reminder" has an SMS Action associated with it.



If the "Send SMS Message" isn't there then you can add it manually.



The recipient of the message can be "hard-coded" by entering a mobile telephone number. Alternatively, the ## symbols can be used to send the message to, for example, the person assigned to the communication.

In the above diagram "#cmli_comm_userid#" indicates to CRM that it should grab the mobile phone number from the user assigned the communication. Sage CRM resolves this by passing the mobile phone number rather than the userid. Note that the mobile phone number of the user must be correctly set up in the User table.

System Settings
The SMS setting for the system are controlled under the email configuration screen:

Administration -> E-mail and Documents -> E-mail Configuration



Set the "Outgoing SMTP server" to the correct address (e.g. 127.0.0.1) with "SMTP port" set to "25".
Set the "SMS domain name" to the correct subdomain/domain (e.g. sms.test.com) with "SMTP Server for SMS messaging" set to correct address (e.g. 127.0.0.1).
Set "Use SMS Features" to "Yes".

You can now test the SMS features by creating tasks with the reminder flag set.



The proof of Sage CRM's action is the arrival of the email message on the SMTP server. You can use the mail server features to monitor this. The hard part will actually be the configuration of the SMTP to SMS Gateway.