Jio (1)
Jio (1)
Jio Platforms,
Reliance Corporate Park Thane Belapur Road,
Ghansoli-400 701
TRADEMARKS
All the brand names and other products or services mentioned in this document are
identified by the trademarks or service marks of their respective owners.
DISCLAIMER
The information in this document is subject to change without notice and should not be
construed as commitment by Jio Platforms. Jio Platforms assumes no responsibility or
makes no warranties for any errors that may appear in this document and disclaims any
implied warranty of merchantability or fitness for a particular purpose.
b) Clarification
To request a change to this document, contact the Document Author or Owner. Changes to
this document are summarized in the following table in reverse chronological order (latest
version first)
The SMPP (Short Message Peer-to-Peer) protocol is an open, industry standard protocol designed to
provide a flexible data communications interface for the transfer of short message data between
External Short Message Entities (ESME), Routing Entities (RE) and Message Centres (MC). It is a
means by which applications can send SMS messages to mobile devices and receive SMS from
mobile devices.
Scrubbing Logic
Terms Definition and Remark
Service Explicit Check for Sender registration, header registration, check for consent
and template
If the consent scrub fails then preferences will be checked w.r.t Fully
Block.
If preference scrub passes (i.e. Customer is not on FULLY BLOCK)
then the message will be delivered. If both of these fail (i.e.
Customer is on FULLY BLOCK), message will not be delivered.
Promotional Check for Sender registration, header registration, check for consent
and template
If the consent scrub fails then preferences will be checked.
If preference scrub passes then the message will be delivered. If
both of these fails, message will not be delivered.
SMPP Specifications
SMPP 3.4: Short Message Peer to Peer Protocol Specification v3.4, 12-Oct-1999, Issue 1.2
Encoding Format
Please ensure that you choose the correct data coding scheme as per the below
Bind Operations
There are three ways to open a connection using SMPP. You can connect as:
Transmitter (TX): Send short messages to SMSC and receive responses from SMSC.
Receiver (RX): receive delivery receipts from the SMSC and return the corresponding
responses.
Transceiver (TRX): send and receive messages to and from the SMSC over a single SMPP
session.
Bind Duration
We recommend enquire link for every 90 seconds to keep the bind alive at the server end,
failing to do this may cause the bind getting disconnected.
If Image is not visible, please use WireShark for inspecting sample pcap file
2. Ignoring space.
E.g.:
Content Template: “WELCOME TO JIO.” Message: “WELCOME TO JIO.”
`£ $ ¥ è é ù ì ò Ç Ø ø Å å Δ Φ Γ Λ Ω Π Ψ Σ Θ Ξ € Æ æ ß É # ¤ % ¡ Ä Ö Ñ Ü § ¿ ä
ö ñü à_ ~`!@ #$% ^ &*() – - +={}[]| /:; "' <>, .? — “” ‘ ’ ½ ¾®
™`; \
Error
Sr. No. Status Description
Code
1. 601 ENTITY_INACTIVE Entity is inactive on Jio's platform
Entity is blacklisted on all
2. 603 ENTITY_BLACKLISTED
platforms
No record found with PEID as
3. 609 ENTITY_NOT_FOUND
primary key
602,
4. 604 – ENTITY_RESERVED Reserved for Entity
608
610 – Revered for Telemarketer
5. TELEMARKETER_RESERVED
619 validations
No record found with header (case
6. 620 HEADER_NOT_FOUND
sensitive) as primary key
7. 621 HEADER_INACTIVE Header is inactive on the platform
Header is blacklisted on all
8. 622 HEADER_BLACKLISTED
platforms
Principle Entity Id is not matched
9. 623 PEID_NOT_MATCHED_WITH_HEADER
with Header Id
624-
10. HEADER_RESERVED Reserved for Header
627
Header type is not matching with
11. 628 HEADER_AND_ACCO UNTTYPE_MISMATCH
account type
12. 629 HEADER_IN_FREEPOOL Header in free pool
No record found with Template Id
13. 630 TEMPLATE_NOT_FOUND
as primary key/no template found
Template is inactive on the
14. 631 TEMPLATE_INACTIVE
platform
Template is blacklisted on all
15. 632 TEMPLATE_BLACKLISTED
platforms
Template not matched for given
Template ID
16. 633 TEMPLATE_NOT_MATCHED
Or failed due to content violation
in static part
Header is not registered for the
17. 634 HEADER_NOT_REGISTERED_FOR_TEMPLATE
template
Template scrubbing failed due to
18. 635 TEMPLATE_FAILED_O N_DYNAMIC_PART constraints violation in dynamic
part
19. 646 UNSUPPORTED_DCS Data coding not supported
20. 647 TEMPLATE_NOT_REGISTERED_TO_ENTITY Template does not belong to PE
Promotional Template used on
21. 648 PROMOTIONAL_TEMPLATE_USED_ON_OTHERS_HEADER
other/transaction header
22. 649 INVALID_TEMPLATE_TYPE Invalid template type
Blocked in preferences with
23. 650 PREFERENCE_NOT_MATCHED
MSISDN as PK.
635-
24. TEMPLATE_RESERVED Reserved for Template
645
25. 651 INVALID_PROMO_TIME Block promo hours (9PM to 10AM)
Bind Errors
Sr. No. Error code that is sent in Command Status Description
SMPP bind-resp Name
1. 8 ESME_RSYSERR System Error
2. 13 ESME_RBINFFAIL Bind Failed
3. 14 ESME_RINVPASWD Invalid Password
4. 15 ESME_RINVSYSID Invalid System ID
For e.g. if message failed with RP error code 22 and message not going to try in MAP then A2P-
IPSMGW will send its corresponding Delivery Receipt error code value as 122. RP error codes can
also be retrieve from CDRs.
3.Other Failures
DR error code for other failures shall be formed using series 2xx. In these cases following scenarios
can occur:
a. for M2M user if trigger UDR is false or if all SH peers are down then A2P-IPSMGW will send DR
with delivery state as STATE_REJECTED and error code as 202.
b. for M2M user if the sender address is not allowed to send the message (M2M-Blocking) then
A2P-IPSMGW will send DR with delivery state as STATE_REJECTED and error code as 203.
c. if user’s PLMN is blocked then A2P-IPSMGW will send DR with delivery state as
STATE_REJECTED and DR error code as 205.
d. if user’s Cell-Id is blocked then A2P-IPSMGW will send DR with delivery state as
STATE_REJECTED and DR error code as 206.
For e.g. if message failed with SIP error code 486 and message not going to try in MAP then A2P-
IPSMGW will send its corresponding Delivery Receipt error code value as 486. SIP error codes can
also be retrieve from CDRs.
5.Diameter Failures
DR error code for Diameter (SH interface) failures shall be formed by using series 7xx-9xx. A
configurable Diameter to DR error code map is used for sending different error code in case of
different Sh failure. If no mapping is found for Diameter error code to DR error code then a default
error code 999 shall be send in the DR error code field. This Diameter to DR error code map can be
configure using EMS from tab “IPSMGW_DIA_To_DR_Code” and from CLI using command
“addToa2pdiaToDrErrorCodeMap”. In this case delivery state shall be STATE_UNDELIVERABLE.
For e.g. if message failed with Diameter error code 5012 and message not going to try in MAP then
A2P-IPSMGW will send its corresponding Delivery Receipt error code value as 912. Since Diameter
error codes are of 4 digit and Delivery Receipt error codes are of 3 digit so we have provided
mappings like 3xxx mapped with 7xx, 4xxx mapped with 8xx and 5xxx mapped with 9xx. Diameter
error codes can also be retrieve from CDRs.