SMS stands for Short Message Service. A standard text message has a maximum length of 160 characters, which includes spaces and punctuations. Users can send text through SMS to other users or application or get SMS from applications. Phone users send messages to short codes to gain a variety of contents. Short code is a variable number normally of 4 to 6 digits used to send text messages to a receiver.
Based on source and destination, there are various types of SMS.
Mobile to Mobile SMS are used mostly for personal interaction with family, friends and co-workers. This is known as Person-to-Person (P2P).
SMSs are generated by applications to interact with customer is known as Application-to-Person (A2P)/Mobile Terminated (MT). We get Auto Generated Messages from Operators, Banks etc.
When consumer wants some information or wants to participate in some activities, s/he sends SMS to a short code which in turn replies back automatically, this is known as Person-to-Application (P2A)/ Mobile Originated (MO). For example, if you want to know your bank balance using SMS, you have to send one SMS on particular number with prescribed format and in return you get answer from SMS application hosted in bank with your bank balance details. You can also participate in Voting, Lucky Draw, Opt-In Competitions, Text-To-Win, etc. by sending SMS.
User’s SMS is transmitted via an SMSC (Short Messaging Service Center) – The most widely used technology for transmission and reception of SMS is GSM. In general, a mobile operator owns one (or many) SMSC(s), but it is also possible for 3rd parties to operate their own SMSC that is connected to a mobile operator’s network.
As discussed earlier there are mainly 3 types of SMS – P2P (Person to Person), P2A (Person to Application) and A2P (Application to Person). Now let us see how they work through operator’s network.
Sender composes the SMS text using the handset (here Mobile Handset is known as SME – Short Message Entity.) and then sends to the other person’s (intended receiver) MSISDN(Mobile No). Receiver receives the SMS – s/he can see the sender’s MSISDN in the sender’s (from field) information section. User experience is more or less like this (we are not considering the fail cases). Now, let us take a look at one step details inside operator’s network.
When Sender sends an SMS – the message is submitted to the SMSC. SMSC then analyzes the source (sender) and destination (receiver) numbers. If both source and destination numbers are valid then SMSC sends (often described as ‘forwards’) the message to the receiver. If the receiver is unreachable then SMSC keeps the message for a certain time period and retries to deliver the message. There is a maximum limit for the number of SMS to be held in Queue for retry and also a limit for maximum time to retry (often 24 hours).
Based on request by Sender, Receiver handset issues a delivery receipt which is again submitted to SMSC from the receiver. SMSC deliver’s the delivery receipt to the sender following its regular process. Sometimes, delivery receipts are issued by intermediary systems instead of final destination device. Those are more advanced topics and are out of scope of this document.
Sender composes the SMS text using the handset, sends to a short code and gets some replies automatically from Application. Applications are ESME – External Short Message Entity, any application which can either receive or send or both is an ESME. Normally there are some prescribed SMS formats to get content from Applications. Depending on that SMS format, there are specific contents delivered by Application. Users get reply message if s/he sends wrong SMS format.
When Sender sends an SMS – the message is submitted to the SMSC. SMSC then analyzes the source (sender) and destination numbers. If both source and destination numbers are valid then SMSC sends (often described as ‘forwards’) the message to the receiver. Based on the SMS text, the application sends reply message to the sender’s MSISDN. This reply message is forwarded to sender via SMSC.
There are many technologies and protocols that can be used to send and receive SMS from an application. These types of messages are normally sent over Short Message Peer-to-Peer (SMPP) protocol. SMPP protocol is used to exchange the SMS between SMSC and external entities like business applications. SMPP is an application layer protocol to send messages over TCP/IP connection.
SMPP protocol defines
The ESME first establishes a network connection with the SMSC, then issues an SMPP bind request to open an SMPP operation for sending and/or receiving messages.
Auto generated SMS from Application to person. Messages can be sent to one/more person(s).
In CRM terms, A2P messaging serves as a dynamic service tool, for instance, updating subscribers on progress of their service delivery. Companies are now also using it as an information service platform in its own right.
Like P2A SMS, Application (ESME) establishes network connection with the SMSC through SMPP protocol and send messages to end User.
Demand for P2A and A2P SMS is increasing day by day. Different applications are coming in place. All applications need to be connected to SMSC, exchange messages between SMSC and applications. If all applications need to directly communicate with SMSC, there will be More Licensing Cost at SMSC. Because of many applications, management difficulty is there. There is a possibility of exposure to security threats since many connections need to be opened and failure scenario may be high.
All Applications can connect to SMS Gateway (SMS GW). SMS Gateway connects to SMSC. So, Licensing Cost at SMSC will be reduced and security will be higher.Also, management is simpler and high availability can be ensured on both gateways.
SMS Gateway communicates with SMSC through SMPP Protocol and application through http/SMPP/ Database push. So, from user to application, application to user and user to user – all connecting nodes are like
SMSGW sends SMS through HTTP to application and receives SMS through HTTP from application.
TPS of SMSGW is the main selling factor. The quicker SMSGW sends/receives messages to SMSC and Applications, the smoother will be the service delivery.
Some information (ID, password and system type) are required connection with SMSC via SMPP from SMSGW. Depending on system, some more information may be required.
Charging SMS based service is often a very critical concern. The concern lies in charging, not charging and selective charging for services provided by different applications. The charging process needs to be aligned with general SMS Charging Flow.
When user sends SMS, it will first come to SMSC. When SMS request comes to SMSC (MO), it will charge IN for Prepaid Users and generate CDR for Postpaid Users.
Regarding charging, SMSC can do P2A/MO charging, normally A2P/MT charging is not much available at SMSC. SMSGW can do MT charging by using Charging Gateway.
Regarding SMS based services, some general considerations need to be thought about. In an SMS based system, sent/received SMSs are kept in Database for record. Number of SMSs received/sent and and retention period are major points to decide otherwise the data volume will be high and transaction will be slower. SMS per second is another major point in an SMS based service.