Mobile messaging short code translation and routing system and method

09736662 · 2017-08-15

Assignee

Inventors

Cpc classification

International classification

Abstract

Provided herein is a system, method and product for performing address translation and routing of short codes. The embodiment described herein primarily supports the wireless and standardized SMS; however, one skilled in the art can readily appreciate that the present invention can also be applied to any mobile messaging technology, e.g., Multimedia Messaging Service (“MMS”), etc.

Claims

1. In a network system comprising at least one mobile device, message entity gateway, short code translator and a plurality of application servers, a method of translating and routing short code addresses, comprising: providing a plurality of short codes and corresponding application servers destination addresses; at said mobile device, initiating a mobile-originated message to one of the plurality of application servers, said message having a short code; and forwarding the mobile-originated message to the message entity gateway; at said message entity gateway, if the corresponding destination address of the short code was previously cached, routing the mobile-originated message to the one of the plurality of application servers based on the destination address, else, querying the short code translator with said short code for said corresponding application server destination address, caching the destination address for future use, establishing a connection between the message entity gateway and the one of the plurality of application servers, routing the mobile-originated message to one of the plurality of application servers based on the destination address received via an aggregator; and connecting the aggregator to the plurality of application servers and performing a lookup of the destination address via the short code translator; wherein the short code is a logical address within a telephony numbering plan.

2. In a network system comprising at least one mobile device, message entity gateway, short code translator and a plurality of application servers, a method of translating and routing short code addresses, comprising: providing a plurality of short codes and corresponding mobile device destination addresses; at one of said plurality of application servers, initiating an application-originated message to the mobile device, said message having a short code; and forwarding the application-originated message to the message entity gateway; at said message entity gateway, if the corresponding destination address of the short code was previously cached, routing the application-originated message to the mobile device based on the destination address, else, querying the short code translator with said short code for said corresponding mobile device destination address, caching the destination address for future use, establishing a connection between the message entity gateway and the mobile device, routing the application-originated message to the mobile device based on the destination address received via an aggregator; and connecting the aggregator to the plurality of application servers and performing a lookup of the destination address via the short code translator wherein the short code is a logical address within a telephony numbering plan.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) FIG. 1 Exemplary High-Level Architecture of a Common Short Code Address Translation System

(2) FIG. 2 Exemplary High-Level Architecture of a Common Short Code Address Translation Server

(3) FIG. 3 Exemplary High-Level Architecture of a Common Short Code Address Translation System used in an Aggregation Context

(4) FIG. 4 Exemplary Short Code Address Translation and Routing Flow Chart

SUMMARY DESCRIPTION OF THE INVENTION

(5) Provided herein is a system, method and product for performing address translation and routing of short codes. The embodiment described herein primarily supports the wireless and standardized SMS; however, one skilled in the art can readily appreciate that the present invention can also be applied to any mobile messaging technology, e.g., Multimedia Messaging Service (“MMS”), etc.

(6) According to one aspect of the present invention, a rapid method for issuing, provisioning and rapidly deploying common short codes for use is the deployment of a centralized address translation server.

(7) According to a second aspect of the present invention, if a centralized short code administration service is available, such a system could directly connect to the short code administration service.

(8) According to a third aspect of the present invention, the system would provide for address translation for value-added applications and services. The system deploys one or more robust carrier-grade databases that performs the translation of a short code into a physically routable destination address, such as an Internet Protocol (IP) address. Wireless carrier network gateways could perform a query to the system and receive a response including the routable address for a mobile-originated SMS message. A carrier's gateway could then route the SMS message to the appropriate value-added application.

(9) According to a fourth aspect of the present invention, the system supports various messaging protocols used in the wireless industry for SMS and MMS, including, for example: ANSI-41 SMS; GSM SMS; Short Message Peer-to-Peer (SMPP) protocol; Simple Mail Transfer Protocol (SMTP); Computer Interface for Message Distribution (CIMD) for Nokia SMSCs; Universal Computer Protocol (UCP) for CMG SMSCs; HyperText Transport Protocol (HTTP).

(10) The short code address translation server embodiment has many benefits: it delivers simple provisioning of all short codes into a centralized system. Provisioning consists of a short code and it's associated routable address. The routable address is obtained from the entity to which the short code was assigned. Further, it delivers carrier independent routing. Short code routing can be performed independent of the wireless carrier delivering the message. This is similar to the use of dialable toll-free 800-numbers. Any subscriber from any wireless carrier can interact with a value-added service regardless of whether they are roaming or not. Each carrier would not have to provision short codes and routing tables. Rather, they perform a simple query and perform routing based on dynamic instructions. Short codes can be made portable and used by any entity providing a value-added application or service. The system can centrally enable or disable access to any value-added application or service that violates short code qualification rules. Short codes can easily be re-claimed, renewed and re-issued. The system can provide transaction authorization for short code routing. Applications and services can be granted different statuses (such as active or suspended) and routing can be performed based on these statuses. The system can provide centralized clearinghouse functions between all wireless carriers and application providers. Short codes can be centrally managed possibly in conjunction with the common short code administrator.

DETAILED DESCRIPTION OF THE INVENTION

(11) Aspects, features and advantages of exemplary embodiments of the present invention will become better understood with regard to the following description in connection with the accompanying drawing(s). It should be apparent to those skilled in the art that the described embodiments of the present invention provided herein are illustrative only and not limiting, having been presented by way of example only. All features disclosed in this description may be replaced by alternative features serving the same or similar purpose, unless expressly stated otherwise. Therefore, numerous other embodiments of the modifications thereof are contemplated as falling within the scope of the present invention as defined herein and equivalents thereto. Hence, use of absolute terms, such as, for example, “will,” “will not,” “shall,” “shall not,” “must,” and “must not,” are not meant to limit the scope of the present invention as the embodiments disclosed herein are merely exemplary.

(12) Referring to FIG. 1, an exemplary system illustrating the components of this invention and constructed in accordance with the teachings expressed herein comprises the following components: wireless devices (100), wireless networks (102), message entity gateways (104), a data network (106), a plurality of application servers (108), a short code translator (110).

(13) The wireless devices (100), wireless networks (102) and message entity gateways (104) being existing systems providing for one way or two way messaging technologies by wireless service providers. Messages can be exchanged between the wireless devices (100) and application servers (108) by means of a wireless service provider message entity gateway (104). Each wireless service provider operates one or more message entity gateways (104) to provide access to their wireless network and subscribers.

(14) The data network (106) being any data network capable of connecting message entity gateways (104) with application servers (108). In one exemplary embodiment, the data network is the Internet, using the IP protocol. In one exemplary embodiment, the data network consists of leased data lines.

(15) The application servers (108) host value added services.

(16) In one exemplary implementation the short code translator (110) being programmed to resolve the address of the destination application server (108) in the data network (106) naming space based on the message source and destination address in the Public Switched Telephone Network (PSTN) numbering plan, whereby the message is correctly routed from one message entity gateway (104) to the application server (108).

(17) In one exemplary implementation the short code translator (110) being programmed to resolve the address of the destination message entity gateway (104) based on the message source and destination address in the Public Switched Telephone Network (PSTN) numbering plan, whereby the message is correctly routed from one application server (108) to the message entity gateway (104).

(18) Referring to FIG. 2, an exemplary system illustrating the components of the short code translator (108) and constructed in accordance with the teachings expressed herein comprises the following components: one or more short code translator servers (118), a short code administration system (112), a short code translator database (114).

(19) The short code translator servers (118) being one or more computing devices programmed to support the resolution and administration of message routing. The short code translator servers being accessible for management and administrative access by remote systems (116).

(20) The short code translator database (114) being a database holding short code routing information.

(21) The short code administration system (112) being a system to administer a common pool of short code address. In one exemplary embodiment, the short code administration system being part of the same system as the short code translator (108), as illustrated in FIG. 2. In another exemplary embodiment, the short code administration system (112) being external and independent of the short code translator (108) and connected to the short code translator server (110) by means of the data network (106).

(22) In one exemplary implementation, the short code translator (110) is queried via the Domain Name System (DNS) protocol. For example, the query could be made against a top level domain set for this purpose like 12345.sc, or 5.4.3.2.1.sc, which would return a list of IP address of the destination application server (108). In one exemplary implementation, the short code translator (110), is queried via a protocol based on Telephone Number Mapping (ENUM).

(23) In one exemplary implementation, the short code translator (110) has the capability of mapping a whole range of short code to a single application server (108). As an illustrative example, short code address 1234-00 through 1234-99 could map to a unique Internet address 234.255.189.001.

(24) In one exemplary embodiment, the short code translator, in addition to storing a map from short code address to the corresponding data network (106) address of the destination application server (108), also stores an end date for how long the mapping is valid. This enables high performance caching of the translation at multiple points in the network.

(25) In one exemplary embodiment, the short code translator (110) is not a centralized system, but a set of decentralized servers that cache a common short code translation database (114). As an illustrative example, if the short code translator is built using the DNS protocol, such distributed, cached database design is inherent in the DNS design. The availability of multiple decentralized servers provides for greater availability and redundancy. This is similar to the role played by the 13 top-level root DNS servers in DNS.

(26) Referring to FIG. 3, an exemplary system illustrating an exemplary embodiment of this invention where message is routed via an aggregator (120). An aggregator is responsible for routing all traffic from application servers (108) to the appropriate message entity gateway (104), based in the subscriber address. In one exemplary embodiment, the aggregator (120) uses the short code translator (110) internally for the application servers connected to the aggregator (120). In another exemplary embodiment, the aggregator (120) administers the short code translator (110) for the application servers connected to the aggregator (120), and makes it available externally to the message entity gateways (104).

(27) Referring to FIG. 4, there is shown a flow chart of an exemplary embodiment of the routing Functionality provided by the short code translator (110). In step 200, the subscriber initiates a mobile-originated message addressed with short code. In step 202, the message is forwarded to the message entity gateway (104) for routing to the message destination by means of the wireless data network (102). In step 204, if the message entity gateway (104) checks if it already knows how to route the mobile-originated message based on the destination service code. If it does, it used the cached destination address in the data network (106) naming space corresponding to the short code, to forward the message to application server (108) and proceeds to step 212. If it does not know how to route the mobile-originated message, it proceeds to step 206. In step 206, the message entity gateway (104) queries the short code translator passing in the short code. The query is done over the data network (106). In step 208, the short code translator returns a routable address for the short code in the naming space of the data network (106). In Step 210, the message entity gateway caches the routable address for future use, and in most cases, establishes a connection between itself and the application servers (110) over data network (106) using the routable address. In step 212, the mobile-originated message is forwarded to the application server (108) by means of data network (106), using the routable address.

(28) In one exemplary implementation, a similar flow exists for mobile-terminated messages, with the difference that the application server (108) is the system making the query to the short code translator, and the address passed in the destination subscriber mobile number. The short code translator being further programmed to resolve the message entity gateway address within the data network (106) based on the destination subscriber mobile number.

(29) Having now described one or more exemplary embodiments of the invention, it should be apparent to those skilled in the art that the foregoing is illustrative only and not limiting, having been presented by way of example only. All the features disclosed in this specification (including any accompanying claims, abstract, and drawings) may be replaced by alternative (including any accompanying claims, abstract, and drawings) may be replaced by alternative features serving the same purpose, and equivalents or similar purpose, unless expressly stated otherwise. Therefore, numerous other embodiments of the modifications thereof are contemplated as falling within the scope of the present invention as defined by the appended claims and equivalents thereto.

(30) For example, the techniques may be implemented in hardware or software running on appropriate hardware, such as, for example, the Dell™ PowerEdge 1750 Intel Xeon systems, or a combination of the two. In one embodiment, the techniques are implemented in computer programs executing on programmable computers that each include a processor, a storage medium readable by the processor (including volatile and non-volatile memory and/or storage elements), at least one input device and one or more output devices. Program code is applied to data entered using the input device to perform the functions described and to generate output information. The output information is applied to one or more output devices.

(31) Each program may be implemented in a high level procedural or object oriented programming language such as Java, to communicate with a computer system, however, the programs can be implemented in assembly or machine language, if desired. In any case, the language may be a compiled or interpreted language.

(32) Each such computer program may be stored on a storage medium or device (e.g., CD-ROM, hard disk or magnetic diskette) that is readable by a general or special purpose programmable computer for configuring and operating the computer when the storage medium or device is read by the computer to perform the procedures described in this document. The system may also be considered to be implemented as a computer-readable storage medium, configured with a computer program, where the storage medium so configured causes a computer to operate in a specific and predefined manner.