Configuration
  • 04 Sep 2024
  • 20 Minutes to read
  • Contributors
  • Dark
    Light

Configuration

  • Dark
    Light

Article summary

SMPP Gateways (MO/MT)

The ITextPRO Application prioritizes a user-friendly experience through a flexible design interface and a simplified configuration workflow. The objective is to steer App owners away from the complexities of the Command Line Interface (CLI) and immerse them in a Graphic User Interface (GUI) based environment. An integrated communicator engine handles intricate backend commands, simplifying your operational tasks.

The "Manage Gateway" feature empowers users to efficiently handle connectivity with external Short Message Service Centers (SMSCs) through both SMPP and HTTP protocols.

For the SMPP protocol, a single bind allows the accomplishment of Mobile-Originated (MO), Mobile-Terminated (MT), and Delivery Reports (DLR). The system supports the addition of multiple SMPP Gateways, ensuring redundancy and cost-effective routing.


Configuring a New Gateway:

Initiating the configuration of an SMPP connector involves clicking on the "Add New" button. The necessary details are typically provided by your gateway vendor or telecom operator.

Required Credentials:


1. Gateway Name:
Enter a memorable name for your SMPP gateway, ensuring ease of identification.

2. IP Address:
Input the IP address provided by your SMSC/vendor gateway/telco.

3. System ID:
Enter the username provided by your SMSC/vendor gateway/telco, crucial for establishing a connection.

4. Password:
Provide the password from your SMSC/vendor gateway/telco, serving as authentication during connection establishment.

5. Tx Port:
Input the Transmitter port provided by the SMSC/vendor gateway/telco.

6. Rx Port:
Enter the Receiver port provided by the SMSC/vendor gateway/telco.

7. TxR Port:
Input the Transceiver port provided by the SMSC/vendor gateway/telco.

8. System Type (Optional):
Optionally, enter the system type provided by the SMSC/vendor gateway/telco. This parameter is non-mandatory, and leaving it blank is permissible.

Note: Ensure the accuracy of the provided details in alignment with the specifications from your SMSC/vendor gateway/telco. This configuration facilitates robust connectivity to your SMPP gateway, streamlining communication within the ITextPRO Application.


Gateway Properties:

Configuring the properties of SMPP Gateways in iTextPRO involves setting parameters for optimal performance and adherence to telco policies. Below is a comprehensive guide to configuring SMPP Gateway properties:

1. Keep Alive (Seconds):
Enquire Link interval determining the allowed time-lapse between operations. It ensures the application checks whether the SMSC still has active sessions.

2. Gateway Open Time:
Specifies the start operation time of the ESME within a limited time frame, often restricted by certain telcos to comply with the Do Not Disturb policy.

3. Gateway Close Time:
Determines the end operation time of the ESME within a limited time frame, aligning with telco policies such as the Do Not Disturb policy.

4. Gateway Encoding:
Selection of the character set used by the telco, ensuring compatibility with the SMSC.

5. Convert Message-ID:
Allows the selection of the appropriate conversion rule for Message-ID values in delivery reports. It accommodates variations between Decimal and Hex formats based on the SMSC document.
In instances where the vendor transmits the message ID in decimal format within the submit_sm_resp and subsequently converts it to Hex format in the corresponding deliver_sm_resp, this functionality proves valuable. The application seamlessly undertakes the conversion of the message ID to the specified format, ensuring accurate updates to the Delivery Receipts (DLRs).

6. Time Zone:
Selection of the Gateway Time Zone in alignment with telco requirements. All the gateway reports will be available as per the time zone that is configured in this field.

7. Stop Loss Price:
Maximum Gateway Cost Price to be configured by the user. Note: Applicable only when the gateway is Blind Routed.

8. Throughput per Second:
Definition of Throughput Per Second (TPS) based on telco specifications. For example, if the SMSC supports 50 messages/sec, configure it accordingly.

Formula: Total number of messages sent in 1 second X Number of sessions

SMPP Gateways TON/NPI Setup:

1. TON (Type of Number):
Specifies whether the number is a full International Number (requires the + prefix), a Country Code Number, or an alphanumeric sender. Configure based on SMSC documentation.

2. NPI (Numbering Plan Indicator):
Specifies the type of numbering standard the given mobile number is following. Configure as per SMSC documentation.


Session Setup:
Configuration of the number of Transmitter (Tx), Receiver (Rx), and Transceiver (TxR) Sessions allocated by the telco.


Roles:

1. Is Active:
When enabled, marks the SMPP Gateway as active and live.

2. Is Async:
Enables asynchronous mode for faster submission of SMS traffic to the SMSC.

3. Blind Routing:
When enabled, allows users to send messages to countries for which Gateway cost prices are not defined for the particular gateway.

Note: Clicking "Save" triggers an on-the-fly bind request, connecting the SMPP gateway without requiring manual restarts in iTextPRO.

 

Gateway Error codes:


Configuring Gateway Error Codes in iTextPRO allows you to manage responses from the Short Message Service Center (SMSC) when messages cannot be delivered. Follow the steps below to set up and manage Gateway Error Codes:
 

1. Overview:
In cases where the SMSC encounters issues delivering a message, it returns a non-zero error code along with a reference message status. These non-zero error codes are referred to as Gateway Error Codes.

2. Purpose:
iTextPRO enables you to configure these error codes. Upon receiving a Delivery Report from the SMSC, iTextPRO checks for configured error codes. If a match is found, the relevant error-tag and mapped standard message status are visible in user and admin reports.

3. Prerequisites:
Obtain the Gateway Error Code list from your SMSC before proceeding with the configuration.

4. Configuration Steps:
a. Gateway Selection:

Choose the gateway for which the error code is being configured.
b. Error Code:

Enter the error code provided by your SMSC.
c. Display Error Tag:

Enter the reference status provided by your SMSC.
d. Standard Error Code (Mapped):

Map your reference status with one of the standard message statuses (DELIVRD, EXPIRED, UNDELIV, UNKNOWN, REJECTD) supported by the SMPP protocol.

e. Error Description:

Add a brief description of the Display Error Tag for better user understanding. This description is visible in the user account report.

f. Is Active:
Activate or deactivate the specific gateway error code.

g. Credit Rollback:
Enable this option to roll back credits deducted from the user account for a specific error code.

h. Bulk Upload:
Upload multiple gateway error codes at once by clicking the Bulk Upload option. Download the sample file provided and map the column names when importing.

5. Sample File Mapping:
Map the column names in the imported Excel file to the respective options in iTextPRO.

6. Submission:
Click "Submit" to successfully configure all the gateway error codes for the respective gateway in iTextPRO.

Note: Properly configured Gateway Error Codes enhance the visibility and management of message delivery issues, providing administrators with valuable insights into the status of sent messages.

 

OA/DA Normalization Rules in iTextPRO:

OA/DA Normalization in iTextPRO, where OA stands for Originator Address and DA for Destination Address, allows you to normalize the originator (source) and destination address or message content of Mobile Terminated (MT) messages entering or leaving your Short Message Service Center (SMSC). This feature is particularly useful when dealing with various vendors following different rule sets or protocols for connectivity.

1. Purpose:
Normalize originator and destination addresses to meet regulatory guidelines or specific business requirements.

2. iTextPRO OA/DA Engine:
iTextPRO is equipped with a proprietary OA/DA engine that operates alongside the routing engine, providing flexibility in manipulating Protocol Data Unit (PDU) headers.

3. Example:
Original Message Sent:

Original Sender ID: ACCINF

Original Message: "Dear User, according to Facebook, Messenger uses the same secure communications protocols as banking and shopping sites."

Message After OA/DA Rule Applied:

Sender ID: WEBSMS
Message: "According to FB, Messenger uses the same secure communications protocols as banking and shopping sites."

4. Note on Unicode Characters:
If the message text is of Unicode type, the system will accept 70 characters (160 characters for English SMS). If the character count exceeds the specified limit, the system automatically trims the extra characters.

5. Implementation:
Create OA/DA Normalization Rules to specify how originator and destination addresses or message content should be transformed.

6. Benefits:
Ensures seamless connectivity between vendor gateways.
Meets regulatory guidelines.
Addresses specific business requirements.

OA/DA Normalization in iTextPRO provides a powerful tool to customize and standardize message content, sender IDs, and other addressing elements, ensuring a consistent and compliant messaging experience for users and businesses.

Message Body Normalization in iTextPRO:

The Message Body Normalization Rule is a built-in feature within PowerSMPP, designed to give admin the flexibility to modify and refine the contents of their messages before submitting them to the gateway. This feature is especially useful for ensuring that messages are formatted correctly, enhancing both the readability and effectiveness of the content.

In this document, we will explore how Message Body Normalization functions and how administrators can leverage this feature to optimize their message content. This process allows for the automatic adjustment of message content according to predefined rules, ensuring consistency and compliance with gateway requirements.

Key Features of Message Body Normalization

The Message Body Normalization Rule is an enhancement of the existing OA/DA Normalization Rule. This feature provides a range of options for manipulating message content, including:

1. Extraction of Codes/OTPs: Automatically identify and extract codes or One-Time Passwords (OTPs) from within the message text.
2. Adding Prefixes or Suffixes: Customize messages by adding specific prefixes or suffixes, ensuring that all messages adhere to the desired format.
3. Text Replacement: Replace specific words within the message body according to predefined rules, allowing for quick updates and standardization.

By using this feature, administrators can ensure that all outgoing messages are properly formatted and consistent with the standards required by the gateway, ultimately improving the overall messaging experience.



To access and configure the Message Body Normalization settings, follow these steps:

1. Navigate to the Configuration Module.
2. Select Gateway Configuration.
3. Choose Message Body Normalization.
4. Click on Add New to create a new normalization rule.

Once you click on Add New a new page will pop-up on the screen consisting of all the configuration parts.



Rule Name- Define a user-friendly name of the rule.

Condition:

  1. Select Interface

The Select Interface option allows the administrator to specify the interface to which the rule will apply. The admin has the flexibility to choose any or all of the following interfaces:

  • WEB
  • API
  • SMPP
  • All Interfaces

This enables the admin to tailor the rule application based on the operational needs and specific interfaces in use.

2. User

Under the User setting, the administrator can determine whether the rule should apply to a specific user account or to all users. To apply the rule universally, the admin can select the option ANY, which ensures that the rule affects all user accounts within the system.

3. Sender ID

The Sender ID configuration offers various conditions that can be customized according to the client’s use case and requirements:

  • Equal: This condition applies to the rule if the Sender ID exactly matches the specified [SENDER ID].
  • Start With: This condition triggers the rule if the Sender ID begins with the defined [Key].
  • End With: The rule is applied if the Sender ID ends with the specified [Key].
  • Contains: If the [Key] is found anywhere within the Sender ID, this condition will apply the rule.

These conditions provide granular control over how and when a rule is triggered based on the format and content of the Sender ID.

4. Destination Address

The Destination Address parameter functions similarly to the Sender ID configuration, offering the same set of conditions—Equal, Start With, End With, and Contains. This allows the admin to apply rules based on the specific format and content of the destination address, aligning with the client's requirements.

5. Message

The Message parameter provides the admin with the same conditional options available under Sender ID and Destination Address. This ensures consistent and precise rule application based on the content of the message. By using these conditions, the admin can effectively control how the rules influence message formatting, ensuring compliance with the desired standards.

Actions: Detailed Explanation and Configuration
In PowerSMPP, the Action section provides administrators with three powerful features to manipulate and customize message content before submission to the gateway. These features are:

  1. Extract Code
  2. Find and Replace
  3. Append and Prepend

Each of these actions is designed to meet specific use cases and can be configured to ensure messages are formatted and presented according to the requirements. Let's explore each action in detail.

1. Extract Code

The Extract Code action allows the admin to extract codes or OTPs from the message content using the following methods:

a) From Fixed Template

If the message content follows a fixed format, the admin can use the From Fixed Template option to extract the code by specifying the exact character count within the template using {{}} brackets.

Example:

  • Message Content: "This is your OTP 56789"
  • Configuration: "This is your OTP {{5}}"

This configuration will extract the 5-digit OTP, 56789, from the message and send it to the gateway vendor. The admin can also configure this for alphanumeric codes.

Output: The OTP 56789 will be extracted by the application.


b) By Its Occurrence Index

If the message content varies and does not follow a fixed template, the By Its Occurrence Index option can be used. This is particularly useful when extracting one code from a message that contains multiple codes.

 Example:

  • Message Content: "Hello User, Your OTP is 67334 and for more info send a text message to 63772."

In this case, there are two codes with the same length. To extract the OTP (67334), the configuration would be:

  • Length: 5 (character count of the code)
  • Index: 0 (indexing starts at 0 for the first occurrence)

Output: The code 67334 will be extracted and submitted to the gateway.

2. Find and Replace

The Find and Replace action is designed to help clients modify specific words or phrases within the message content.

Example:

  • Message: "Dear User, your Facebook code is 74537."

Configuration:

  • Text to Find: "Facebook"
  • Text to Replace: "FB"

This will replace the word "Facebook" with "FB".

Output: "Dear User, your FB code is 74537."




3. Append and Prepend

The Append and Prepend action allows the admin to add text either at the beginning (prepend) or the end (append) of the message content, or both.




a) Append

The Append condition adds a word or sentence to the end of the message.

Example:

  • Message: "Your Whatsapp code is 63763."
  • Append: "Validity of the code is 5 minutes."

Output: "Your Whatsapp code is 63763. Validity of the code is 5 minutes."

b) Prepend

The Prepend condition adds a word or sentence to the beginning of the message.

Example:

  • Message: "Validity of the code is 5 minutes."
  • Prepend: "Your Whatsapp code is 63763."

Output: "Your Whatsapp code is 63763. Validity of the code is 5 minutes."

c) Both

The Both condition allows the admin to add both a prefix and a suffix to the message.

Example:

  • Message: "63763"
  • Prepend: "Your code is "
  • Append: " Validity of the code is 5 minutes."

Output: "Your code is 63763 Validity of the code is 5 minutes."


Combining Multiple Actions

In Message Body Normalization, the admin can configure more than one action within a single rule to meet complex requirements.

Example:

  • Message: "The OTP is 87837"
  • Use Case: The client requires extracting the OTP and adding both a prefix and suffix.

Configuration:

  • Action 1: Extract Code with From Fixed Template
  • Action 2: Append and Prepend with Both

Whenever the user sends a message in the specified format, the OTP will be extracted, and the message will be formatted as per the append and prepend configuration.

Priority and Compatibility with OA/DA Normalization

It's important to note that the Message Body Normalization is applied before the OA/DA Normalization. Therefore, the rules configured under Message Body Normalization will be processed first, ensuring that both normalization rules do not interfere with each other.

This layered approach ensures that message content is fully optimized and formatted according to all configured rules before being submitted to the gateway.

PowerSMPP's Message Body Normalization is a feature that enables administrators to customize message content. This feature, an enhancement of the OA/DA Normalization Rule, offers options to extract codes/OTPs, add prefixes or suffixes, and replace text within messages. Administrators can apply these rules to specific interfaces, users, Sender IDs, and destination addresses, tailoring the message format to meet precise requirements. The Action section includes powerful features like code extraction, find and replace, and text appending or prepending, allowing for complex content manipulation. These actions can be combined within a single rule, with Message Body Normalization taking precedence over OA/DA Normalization to ensure seamless message processing.

Manage Interface:

  1. SMPP Connector (ESME Account):

  

SMPP connector, also known as ESME Account, facilitates the connection of partners to the SMPP Server.

Adding a new SMPP connector involves searching for the user account, then clicking on "Add New."

Details required for ESME Account setup:
System ID: Username for connecting to the ESME Account.
Password: Password for connecting to the ESME Account.
Whitelist IP Address: Validated IP Address for successful connection.
Tx Count: Number of Transmitter Sessions.
Rx Count: Number of Received Sessions.
TRx Count: Number of Transceiver Sessions.

Advanced Settings:
Validate IP: iTextPRO validates the source IP Address, allowing only whitelisted IP Addresses.
Is Account Active: ESME user connects only when this is enabled.
Blacklisted: iTextPRO enables this if the ESME User violates the ESME Blacklist Rule.

 

  1. HTTP Connector:

  

Enables partners to connect with iTextPRO over HTTP.

Activate API status in the user account to enable HTTP services.

Download API documentation in PDF or view API credentials directly.

Once activated, Developer API option in the user account includes API credentials and documentation.

  

iTextPRO's Manage Interface provides a seamless process for configuring SMPP and HTTP connectors, enhancing connectivity and communication capabilities for partners and users.

 

ESME Blacklist Rule:

In scenarios where a rogue ESME User poses a threat to the performance of your iTextPRO SMPP server, whether due to misconfiguration or faulty implementation, the ESME Blacklist Rule serves as a protective measure. This rule allows you to permanently drop requests from any rogue ESME client to prevent further damage to server performance.

  

Rule Configuration:

Rule Name: Enter a friendly name for this rule.
User: Select the username of your ESME user account.
ESME System ID: Select the System ID of the ESME user account.
Command Type: Choose between Enquire Link and Bind as a condition for this rule.
Time Interval: Define a time interval in hours, minutes, and seconds.
Frequency: Set the number of occurrences during the specified time interval.
After configuring these parameters, click the "Save" button to save the ESME Blacklist Rule.

Example:

Suppose you want to blacklist an ESME that repeatedly sends bind/enquire link requests at an interval of 1 minute with a frequency of 10. In this case, once the rule is violated, iTextPRO blacklists the specific ESME account and sends an email alert to your registered email ID.

The ESME Blacklist Rule is a valuable tool to maintain the integrity and performance of your iTextPRO SMPP server by identifying and mitigating potential threats from misbehaving ESME users.

  

ESME Client List:

ESME client displays the list of all your ESME users who opted for SMPP services, a search option helps you to search the details of an ESME account based on Username and System ID.

 
Routing Rule Manager: 

Routing is very important in terms of competitive edge and revenue generation, this option helps you to forward your user SMS traffic to their ultimate destination.  

Because there are so many routes to forward SMS, SMPP applications are built to optimize the route for the best pricing and quality. These logics also include SMS delivery, gateway selection (according to delivery time), Traffic distribution, and more. 

iTextPro allows you to create dynamic MT routing rules in the routing engine, you can create a different type of dynamic routing logic as per your requirement, biggest advantage of dynamic routing is to toggle HTTP and SMPP between upstream and downstream SMS traffic. 

Once you click the MT routing rule option, iTextPRO displays the list of already configured MT routing rules in the main routing engine, you can edit an existing MT routing rule by clicking on the edit icon.

Note: No manual restart or reload is required after creating or updating any routing rule on the fly.


Manage MT Routing Rule:

A new routing rule can be created by clicking on Add new MT rule option, you need to configure the below details:

Rule name: You need to enter a friendly rule name to identify the specific rule in the future.

Filter type: You can configure two different types of filters as per your requirement.

Pass through the filter: Pass through the filter is usually created for any global routing policy. it is highly recommended to create a high-priority pass-through filter for the default routing of your SMS traffic in case of the non-availability of any matching routing.

Custom filter: Custom filter allows to route of the messages based on the below parameters, iTextPRO identifies the best matching rule and routes the message to the desired vendor gateway.

Country Code: You need to select the country to route the SMS traffic. 

MCC/MNC:  You need to select the specific network of the selected country to route the SMS traffic. 

User: You need to select the specific username or the group of users on which the MT routing rule is to be applied. 

User Group: You can also select the particular user group on which the MT routing rule is to be applied. 

Start Date & End Date:  It defines the validity of any rule. 

Source Address: iTextPRO allows you to configure the Source Address wise routing 

Destination Address: iTextPRO allows you to configure the destination Address wise routing 

Routing policy: You can configure different types of dynamic routing policies based on your business requirement and service level agreement. Details of each routing policy are described below.

LCR: Least cost routing i.e. LCR routing policy helps you automatically terminate the SMS traffic to the vendor gateway consisting of the least cost price configured for a particular country and network in the Master billing module, it helps you in case of pricing and revenue generation. 

Fixed Gateway: You can route all the SMS SMS traffic from a selected gateway. It will be fixed as per your preferences. So you can select one default gateway for the particular user 

Round Robin: Round Robin routing policy allows you to select multiple gateways and helps you to automatically route the SMS traffic among multiple gateways so that it's utilized equally and optimally. 

Distributed: Distributed routing policy allows you to distribute your SMS traffic among multiple gateways, it's often used as an advanced Load balancer based on a predefined percentage ratio (%) defined by you to route your SMS SMS traffic smoothly in less time. 

ACD/DLR: Acknowledged DLR routing is also known as delivery-based routing it helps you to route your SMS traffic in real-time to the vendor gateway holding the highest & accurate delivery ratio.

Note: If more than one routing rule qualifies to terminate the message, then iTextPRO routes the message with the routing rule holding high priority i.e. higher numeric value.

Routing Rules Simulator

The Routing Rules Simulator is a valuable tool designed to simulate and visualize the best-matching MT (Mobile-Terminated) rules for routing SMS traffic within iTextPRO. By entering specific details, users can obtain a comprehensive understanding of the qualifying rules for routing.

Simulation Details:
User: Specify the user account for which the routing rules are to be simulated.
Enter Source: Input the sender ID or originator address for simulation.
Enter Destination: Provide the mobile number for simulation.
Done Date: Set the date for which the routing rules are to be simulated.

Upon clicking the "Find All Routes" button, iTextPRO generates a list of best-matching MT routing rules, highlighting the applicable rule on the user account. The date parameter serves to filter out relevant routing rules for a specific day.

The Routing Rules Simulator is a user-friendly feature that empowers users to preview and understand the routing logic applied to their SMS traffic, aiding in effective management and optimization of message delivery.


Manage Services:

Manage services displays the list of background & foreground services about the iTextPRO, Expert knowledge is required to manage these services. 

These services are displayed for viewing purposes only along with the application version, though you can stop and start a service from the web interface but should be used judiciously as it may affect data loss during peak load. 

Below is a short brief for each service:

Service

Description

Client Service

SMPP Client service connects iTextPRO with your SMSC for managing SMS MT/ SMS MO traffic.

DLR Service

DLR service automatically updates the DLR in iTextPRO and provides real-time delivery reports to your users.

SMPP Server Service

It accepts your ESME user traffic listening on your server on a pre-defined port

File pickup Service

File pickup service is for reading your users' campaign messages and submitting them further to the gateway queue

Validator Service

 

Validator Service validates the binding parameters of the users submitting the traffic from API & SMPP interfaces.

Data Builder service

The data builder service is for storing the PDU logs, and message logs in the database.

Report builder service

Report builder service is used for profiling the user sent counts.

Download Report Service

Download Report Service downloads the requested reports of the admin and user.

Notification Service

 

Notification Service sends the Email alert notification to the admin and user and also checks the gateway health status.

 
Housekeeping:

Housekeeping is a handy tool to reset master billing data in a single go, it may be noted that data once deleted, cannot be restored.

To reset the data, you can toggle between the Yes/No buttons shown against various master data tables & select the Yes option and finally click on the reset button.

Once you click on the reset button, Textor shows you the Master Data Alert and provides you the option to take a backup of your data if required, once you click on the Reset Option, iTextPRO wipes out the selected billing data.




Was this article helpful?

What's Next