Telco Application Provisioning

The provisioning of an application is an important part as it helps to connect the developed app with the relevant Telco via the Service Develop Platform with the precise configuration settings.

Provisioning Overview

The provisioning contains the following stages,

  • Network Capability Service (NCS) Configuration : Creation of an app profile, configuring the API, connecting the hosted application file paths with the Telco app profile,specifying the charging amounts ,specifying user friendly keywords,configuring responses directed by the app to mobile users etc. Finally apply for limited production approval. These configurations may contain restrictions or limitations according to the relevant Telco.
  • Limited Production : This is an intermediate state which is used for live testing of the app with a specified set of users (White listed Users). These white listed users have to be predefined during NCS configurations. Once the live testing is over apply for active production approval.
  • Pending Approval : At this stage the application is not functional, it is being reviewed by the relevant authorities for production.
  • Active Production : When an application reaches this stage, the application is available for all the users within that Telco network. The application can also be published in the relevant Telco App Store at this stage.

Basic Configurations

When creating an app profile, the basic configurations contains the below details,

  • APP ID : Usually Auto Generated
  • Application Name should be unique in regards to the existing apps with the relevant Telco
  • Application Short Description, the description should contain the purpose of the application and information sources.
  • Note : Bad app descriptions can lead to a tarried approval from the Telco provider.
  • Allowed Host Address is the Application Hosted Server IP address (in CPanel look for the Shared IP), if the application is dependent on multiple servers multiple IP addresses can be added separated via a comma.
  • White listed users are users who can test the application before active production.
  • Black listed users are who are denied the of the relevant app services. (Blocked Users)
  • Revenue share percentage consists the revenue share for the developer, as seen above 70% to Developer and 30% to Telco Provider. These revenue shares vary according to the Telco network.
  • Production start time specifies the date of the app creation, usually the current date.
  • Production expiration date can be specified according to the nature of the content. Ex : Christmas Seasonal Greetings

Note : If a Production Expiration Date is specified the application will be terminated automatically.

Network Capability Service (NCS) Configurations

API Configurations for an app profile defines the relevant application’s dependent API.

The image shows the APIs allowed through a relevant Telco.

These API’s can be individually configured once selected.

CAAS Configurations

  • Service Charge Percentage : The charge for the Telco provider when using this API. (Usually defined by the Telco provider)
  • Charging Notification URL : The hosted server file path for acquiring the charging response. This file usually logs these charging responses.
  • Maximum Transactions per second/ per day : This is usually configured by the Telco provider with default values, these values are increased by the Telco service providers when the app caters to a larger subscriber base.
  • Allowed payment instruments : This specifies the mode of paying, some Telco providers have their mobile payment instruments unique to their network , if so they can be checked here as a medium for charging.
  • Allow Query Balance Requests : This is to enable a feature in CAAS API, the application can retrieve the account balance and other related information of a given subscriber MSISDN only if this is checked.
  • Allow Debit Requests : This enables whether the subscriber is charged from their bill and also a max/min debit amount can be specified. Ex : Charity App — Subscriber is donating for a cause and the minimum donation is Rs.20.
  • Allow In-App Purchasing : This has to checked in order to use CAAS in Android applications. Ex : An android game which uses CAAS to pay for coins/tokens.
  • Subscription Required : If this is checked the charging can only be done by the subscribed users. Ex : Charity App — Users have to be subscribed to the app to make donations. Note : The subscription API has to be selected and configured if this is checked.

IVR Configurations

  • Charging Type : This option enables you to choose from Flat Charging or Free Charging. If Flat Charging is selected subscriber is the charged party.
  • Charging Amount Per Minute : Here the amount for a minute during the IVR call is specified.
  • Subscription Required : If this is checked, the application’s IVR services can only be accessed by the subscribed users.
    Note : The subscription API has to be selected and configured if this is checked.
  • IVR Number : The dialing number for the particular app. A number is unique for a particular app which will appear from the available ranges defined by the Telco provider.
  • Connection URL : The hosted server file path/URL for the application IVR listener.
    This URL starts with ‘ws://’ clause due to the use of web-sockets in IVR applications.
  • Maximum Requests per second/per day : This is usually configured by the Telco provider with default values, these values are increased by the Telco service providers when the app caters to a larger subscriber base.
  • Audio File Configurations : The uploader for the audio.zip and JSON file, as specified in the IVR documentation.

Subscription Configurations

  • Maximum messages per day : This is usually configured by the Telco provider with default values, these values are increased by the Telco service providers when the app caters to a larger subscriber base.
  • Subscription/Unsubscription Response Message : The text message which is sent to the users once they register/unregister to the app.
  • Allow Subscription via HTTP : This enables users to be subscribed to the app via HTTP requests.
  • Charging Type : This option enables you to choose from Flat Charging or Free Charging. If Flat Charging is selected subscriber is the charged party.
  • Frequency : This option enables the app for Monthly or Daily Charging.
  • Charging Amount : This specifies the numeric value which is charged according to the frequency.
  • Send Subscription Notification : Enable/Disable Subscription responses whenever a subscription request is sent.
  • Subscription Notification URL : The hosted server file path/URL for acquiring the subscription response. This file usually logs these subscription responses.

SMS Configurations

  • Maximum messages per day : This is usually configured by the Telco provider with default values, these values are increased by the Telco service providers when the app caters to a larger subscriber base.
  • Subscription/Unsubscription Response Message : The text message which is sent to the users once they register/unregister to the app.
  • Allow Subscription via HTTP : This enables users to be subscribed to the app via HTTP requests.
  • Charging Type : This option enables you to choose from Flat Charging or Free Charging. If Flat Charging is selected subscriber is the charged party.
  • Frequency : This option enables the app for Monthly or Daily Charging.
  • Charging Amount : This specifies the numeric value which is charged according to the frequency.
  • Send Subscription Notification : Enable/Disable Subscription responses whenever a subscription request is sent.
  • Subscription Notification URL : The hosted server file path/URL for acquiring the subscription response. This file usually logs these subscription responses.

SMS Configurations Overview

  • Allow Mobile Originated/Terminated Traffic : Enables/Disables the communications according to the above figure.
  • SMS Number/Shortcode/Default Sender Address : The number which the app interaction text messages are sent to.
    This can be chosen from the available number ranges provided by Telco providers.
  • Keyword : This is the unique syntax for a particular application, this syntax is used for all app interactions, usually this syntax has to be sent appended to the user response. Ex : tx name shehan , tx user delete [tx — Keyword]
  • Messages Per Second/Per Day : This is usually configured by the Telco provider with default values, these values are increased by the Telco service providers when the app caters to a larger subscriber base.
  • Message Receiving URL : The hosted server file path/URL for acquiring Mobile Originated SMS (SMS Listener).
  • Charging Type : This option enables you to choose from Flat Charging or Free Charging. If Flat Charging is selected subscriber is the charged party. In MO, subscriber is charged for each message sent to the application. In MT, subscriber is charged for each message received by the mobile, sent via the application.
  • Alias : The application name, this is the name/alias which the messages are being sent to the mobile. It is advised to use an alias which is unique and understandable.
  • Charging Amount : This specifies the numeric value for Flat Charging.
  • Subscription Required : If this is checked, the application’s SMS services can only be accessed by the subscribed users.
    Note : The subscription API has to be selected and configured if this is checked.
  • Delivery Reports Required : Enables/Disables the MT messages delivery reports.
  • Delivery Report URL : The hosted server file path/URL for acquiring the delivery reports. This file usually logs these delivery reports.

USSD Configurations

  • Service Code : The first few digits of the number which is dialed by the mobile user to access the relevant application via USSD.
    This can be chosen from the available number ranges provided by Telco providers.
  • Keyword : This is the combination of last few digits to access a particular application.
    The combination of the Service Code and the Keyword adds upto the unique Shortcode for a particular application.
  • Messages Per Second/Per Day : This is usually configured by the Telco provider with default values, these values are increased by the Telco service providers when the app caters to a larger subscriber base.
  • Connection URL : The hosted server file path/URL for USSD Listener.
  • Subscription Required : If this is checked, the application’s USSD services can only be accessed by the subscribed users.
    Note : The subscription API has to be selected and configured if this is checked.
  • Charging Type : This option enables you to choose from Flat Charging or Free Charging. If Flat Charging is selected subscriber is the charged party.
  • Charging Amount : This specifies the numeric value for Flat Charging.

Downloadable Configurations

  • Application ID : Usually Auto Generated
  • Number of Download Attempts : Attempts given for a generated download link.
  • Maximum Concurrent Downloads/Downloads per Day : Usually configured by the Telco provider.
  • Download Link Expiration : Duration for a generated download link to expire.
  • Charging Type : This option enables you to choose from Flat Charging or Free Charging. If Flat Charging is selected subscriber is the charged party.
  • Charging Amount : This specifies the numeric value for Flat Charging.
  • Subscription Required : If this is checked, the application can only be downloaded by the subscribed users.
    Note : The subscription API has to be selected and configured if this is checked.

LBS Configurations

LBS Overview

  • Location Requests per second/per day : This is usually configured by the Telco provider with default values, these values are increased by the Telco service providers when the app caters to a larger subscriber base.
  • Response Time : This defines the time taken for the response.
    They are prioritized as,
    1.NO_DELAY
    2.LOW_DELAY
    3.DELAY_TOLERANCE
    Ex : Application sends the LBS request, then has a high computation/slow task to be executed before receiving the location, then LOW_DELAY or DELAY_TOLERANCE can be used.
  • Horizontal Accuracy : This defines the horizontal accuracy needed in the response. They are prioritized as,
    1. 0–100M
    2. 100–500M
    3. 500–1000M
    4. Above 1000M
    Note : Application which needs a very high accuracy, 0–100M should be used.
    Ex : Application which determines the position of users at the same building but different floor levels.
  • Freshness of Location : This defines the location’s freshness stating time in the response. They are prioritized as,
    1. HIGH
    2. HIGH TO LOW
    3. LOW TO HIGH
    4. LOW
    Ex : If an application uses HIGH, the freshness of the location freshness is very high. if the application uses HIGH TO LOW, the freshness of the location will be under approximately two minutes.
    This is used if the mobile user’s location is likely to change rapidly (Travelling).

The above configurations are for the APIs that are used widely , it is important to know the relevant configurations to create an app profile and leverage the services precisely.