1. Field of the Invention
The present invention is related to improvements in mobile telephone networks' Short Message Service (SMS). More particularly, the present invention is related to systems and methods for administering, monitoring and controlling short codes such that the short codes can be employed consistently across different networks.
2. Background
Short Message Service (SMS) is a convenient and easy to use messaging application available to mobile telephone users. SMS offers a new way to communicate by sending text or data messages between mobile phones or between a mobile phone and information devices, such as a personal computer (PC), a PDA (personal digital assistant), or a handheld email/calendar organizer (e.g., a wireless email device). Messages are composed of words, up to 160 characters in length for Latin alphabets (about 30 to 40 words) and 70 characters for non-Latin alphabets like Arabic and Chinese. To send, text messages are keyed into a mobile phone keypad or other information device. Received text messages are presented on the mobile telephone's screen.
Usually, messages are delivered almost immediately, even when the mobile phone is in use. However, if the phone is turned off, for example, or if the user is in an area without cellular coverage, messages are stored in the network and delivered as soon as the phone is switched back on or the phone enters an area that has coverage.
Introduced in Europe and the United Kingdom (U.K.) during the mid-1990s and in Asia soon thereafter, SMS encountered great enthusiasm, especially among teenagers and young adults. And although SMS had originally been conceived as a paging system, users quickly adapted text messaging for their own objectives. By the late 1990s, GSM carriers in both Europe and the U.K. had connected their networks, allowing their subscribers to exchange text messages across other GSM carriers. In 2001, 700 million mobile phone users worldwide sent 20 billion messages every month, making SMS the fastest growing service in the wireless industry.
Typically, messages are addressed to another telephone via the telephone number belonging to the recipient's mobile telephone. On the other hand, a portion of messages that are sent via SMS are not sent to another telephone or PDA as in a Person-to-Person communication, but are instead directed to a central location. While the central location could have a regular 10-digit telephone number as does a typical mobile telephone, SMS messages directed to a central location are often so-directed using a short code address. A short code address is a convenient short number that identifies a central location to which an SMS message can be sent. A typical application of short code use is Tele-voting in which, for example, a television program flashes on the screen instructions to “Send an SMS message to 8012 to vote yes.” In the United States, exclusive ranges of available short codes have been assigned to each of the several mobile telephone service providers to be used at their discretion. Consequently, the market penetration for, for example, a Tele-voting application, is limited because the designated short code will operate on (or only have meaning to) a particular mobile telephone service provider.
In other words, if the television program flashes a single SMS short code on the screen, only the votes of users who happen to be customers of the service provider that “owns” that short code will be received. Thus, any resulting vote will necessarily be skewed, since only a segment of the viewing population will have the opportunity to vote.
The foregoing use and associated problems with this type of short code use is meant to be exemplary only. Those skilled in the art will appreciate that there are myriad other uses for short codes, but all such uses would still have the deficiency of having short codes restricted to a particular service provider.
In a preferred embodiment of the present invention a single centralized SMS Universal Short Code (USC) Administrator (UA) maintains a database containing all of the available short codes and whether they are currently in use. The available short codes may include all four digit, five digit, six digit, or other short code number combinations.
When an Application Provider (AP) needs a short code, either a particular short code or any randomly available short code, it submits a request for a short code to the UA. The AP may want to use a particular code for any number of purposes, such as, for example, promotional activities, tele-voting, advertising campaigns. The UA reviews the request and, upon approval, “leases” the short code to the AP. In this context, the term “lease” means that the UA assigns the short code to the AP for a specific period of time. Once the AP has leased the short code, it informs the public of the existence of the short code and encourages the public to perform some task using the short code, such as “Send a SMS to 8012 to enter the contest.”
When a mobile subscriber (MS) sends an SMS message using the short code, the message is transmitted to the subscriber's wireless carrier (WC). The WC, in turn, passes the SMS message to a Network Facilitator (NF). In a preferred implementation, the NF is an SMS message routing intermediary, which is capable of receiving SMS messages and routing them to the specified destination, even between different wireless carriers.
Upon receipt of the message, the NF issues a routing request to the UA to resolve the short code. The UA then returns a routing response to the NF indicating the AP that is associated with the short code at that particular point in time so that the NF can deliver the SMS message to the proper AP.
Thus, as can be readily appreciated, it is possible to temporarily assign a short code to one AP for a lease period and, thereafter, assign the same short code to another AP. By temporarily assigning short codes it is possible to ensure that a sufficient number of short codes are available. In addition, it is possible for APs to provide services to a greater number of MSs across different WCs without concern about each WC using its own short codes.
The foregoing and other features and attendant advantages of the present invention will be more fully appreciated upon a reading of the following detailed description in conjunction with the associated drawings.
The present invention addresses the short code deficiency described above with respect to the prior art by implementing a universal short code regime that is administered by, for example, a third party, and that enables the use of the same short codes across different service providers.
Before one or more embodiments of the invention are described in detail, one skilled in the art will appreciate that the invention is not limited in its application to the details of construction, the arrangements of components, and the arrangement of steps set forth in the following detailed description or illustrated in the drawings. The invention is capable of other embodiments and of being practiced or being carried out in various ways. Also, it is to be understood that the phraseology and terminology used herein is for the purpose of description and should not be regarded as limiting.
When an Application Provider (AP) needs a short code, either a particular short code or any randomly available short code, it submits a request for a short code to the UA at I1. The AP may want to use a particular code for any number of purposes, such as, for example, promotional activities, tele-voting, advertising campaigns. The UA reviews the request and, upon approval, “leases” the short code to the AP. In this context, the term “lease” means that the UA assigns the short code to the AP for a specific period of time. Once the AP has leased the short code, it informs the public of the existence of the short code and encourages the public to perform some task using the short code, such as “Send a SMS to 8012 to enter the contest.”
When a mobile subscriber (MS) sends an SMS message using the short code, it is transmitted to a wireless carrier (WC) at I2.The WC, in turn, passes the SMS message to a Network Facilitator (NF) at I3.The NF is preferably an SMS message routing intermediary, which is capable of receiving SMS messages and routing them to the specified destination. Such an intermediary is described in U.S. Ser. No. 10/426,662, filed May 1, 2003, which is incorporated herein by reference in its entirety.
The NF issues a routing request to the UA to resolve the short code at I4. The UA then returns a routing response to the NF indicating the AP that is associated with the short code at that particular point in time at I5 so that the NF can deliver the SMS message to the proper AP at I6.
In this exemplary embodiment, it is possible to temporarily assign a short code to one AP for a lease period and, thereafter, assign the short code to another AP. By temporarily assigning short codes it is possible to ensure that a sufficient number of short codes are available. In addition, it is possible for APs to provide services to a greater number of MSs across different WCs without concern about each WC using its own short codes.
As shown in
An exemplary embodiment of a UA 400 is shown in
The centralized database 410 preferably includes at least two files that maintain the status of the short codes. A lease status file 440 contains a list of all short codes that have been leased and the status of the lease. The status of the lease may include the holder of the lease (the AP), time remaining on the lease, and any other relevant information. A history archive file 450 is provided for auditing purposes. This file may contain information about all APs that have been assigned to a particular short code, the duration that the short code was leased by each AP, the number of times the short code was accessed during each lease, or any other information that would be tracked for auditing purposes. In addition, the centralized database 410 may include files that store profiles for all external entities—APs, WCs, and NFs—that communicate with the UA 400. These profiles may contain information identifying the particulars of, and the options for, each of the external entities. The centralized database 410 may also include configuration files that specify the acknowledgement model used by the UA. The acknowledgement models will be described below in relation to
Once AP 520 determines that it will need a short code for an upcoming event, such as, for example, promotional campaign or tele-voting, AP 520 establishes a secure TCP/IP connection with a server of UA 510 and requests a logical session be established between AP 520 and UA 510. For example, AP 520 may send a session request that includes AP 520's identification value and password, if required. UA 510 receives the session request from AP 520, logs the request, performs a validation and authentication operation, and returns a positive acknowledgement to AP 520.
Once the session request is acknowledged, AP 520 submits a lease request for a particular (or randomly available) short code for a specified period of time. For example, when a particular short code is requested, the AP 520 may send a lease request for short code 8012 with a start date of Dec. 9, 2002 and an end date of Dec. 13, 2002. UA 510 receives the lease request from AP 520 and logs the request. UA 510 then performs a series of validation and authentication operations to determine that the short code is available for lease during the requested time, period. For example, UA 510 may read the lease status file stored on the centralized database to determine whether the short code is available. If the short code is available, UA 510 updates the centralized database to reflect that short code 8102 has been requested by AP 520 for the time period of Dec. 9, 2003 through Dec. 13, 2003 and is pending approval. This information may be identified with a unique lease identification value.
Alternatively, when a random available short code is requested, the UA looks for the next available short code and updates the centralized database to reflect that the next available short code has been requested for a specified period of time and is pending approval.
Finally, the UA 510 may issue a response back to AP 520 including the lease identification value and the pending status. This entire session interaction for the particular (or randomly available) short code is shown at S562 in
UA 510 may issue a short code lease review request to WC 540 at 5564 and/or NF 530 at S566. The WC 540 and/or NF 530 review the short code lease review request and, provided that everything is in order, in an exemplary embodiment issue a positive acknowledgement back to the UA 510. After receiving positive acknowledgement from the WC 540 and/or NF 530, the UA 510 logs the responses and performs a series of validation and authentication operations. UA 510 updates its centralized database to indicate that short code 8102 has been leased to AP 520 for the time period Dec. 9, 2003 through Dec. 13, 2003. UA 510 returns a positive acknowledgement that the lease is approved to AP 520 at 5568.
There are alternative acknowledgement models that may be used in place of the positive acknowledgement model described above. For example, the UA 510 may set a threshold value, which may be less than the total number of WCs and NFs sent the short code lease review, for the number of positive acknowledgements necessary for lease approval. Alternatively, a negative acknowledgement model may be used. For this model, the UA 510 would set a threshold value for which the number of negative responses cannot exceed if the lease is to be approved. This may be set as low as 1 so that a single WC or NF can block the lease assignment. In this model, only those WCs and NFs that do not want the short code to be leased need respond.
A further modification to either the positive or negative acknowledgement model includes assigning a “weighting” value or factor to each responding WC or NF. At any point in time the resulting “weighted” lease response total equals:
Σ(WeightingFactori*Entityi)
where WeightingFactor1 is the weighting factor assigned to the entity (WC or NF) and Entityi is the response of the entity.
Each entity may have a different weighing value depending on which entities a UA wants to give special preference to. For example, the UA may give greater preference to NFs, or a particular NF, over all other entities. Alternatively, the UA may give greater preference to one or more WCs if they are the predominate WCs in the area. These weighting values may be adjustable over time based on market factors, contracts, or any other changing conditions.
The UA may also want to specify a particular period for responding to the lease request, such as, for example, several hours, one or more calendar days, or an infinite number of days. This period for responding along with choosing a particular acknowledgement model provides great flexibility to the UA.
After the lease is approved to AP 520 at S568, MS 550 sees AP's promotional use of short code 8102 and sends an SMS message to short code 8102. This may be accomplished through a number of intermediary steps. For example, the SMS message is transmitted to WC 540 at S570. WC 540 determines that the SMS message is addressed to a particular short code and forwards the message to NF 530 associated with the WC 540 at S572.
NF 530 receives the SMS message and issues a routing inquiry to the UA 510 to resolve the destination for short code 8102. In other words, to authoritatively determine which AP 520 the NF 530 should deliver the SMS message to. NF 530 establishes a secure TCP/IP connection with the UA 510 and establishes a logical session with the UA 510 and receives a session ID. After establishing the logical session, NF 530 sends a short code routing request for the particular short code. The UA 510 receives and logs the short code routing request and performs a series of validation and authentication operations. The UA 510 returns a routing response to NF 530 indicating which AP 520 is currently associated with the particular short code.
NF 530 delivers the SMS message to AP 520 after receiving the routing response from UA 510. AP 520 processes the SMS message appropriately. Any subsequent messaging traffic may follow a path similar to the path described above.
One advantage to the above system is that the AP leases the short code for a specific period of time, after which, the short code may be reassigned to another AP. Any subsequent SMS messages to the short code may indicate that it is unassigned or be transmitted to a different AP that is leasing the short code. Therefore, a finite number of short codes may be utilized to serve a much larger group of APs. Moreover, the UA may monitor the volume of SMS message traffic addressed to the short code, for example, by monitoring the number of incoming short code routing requests. Depending on circumstances, such as, for example, a low usage with a lengthy lease period or a low usage with a desirable short code, the UA may optionally rescind the short code lease.
In addition, a further modification to the leasing of short codes includes providing an automatic lease renewal for a number of time periods, where each time period is defined as a number of days. This would allow an AP to have extended use of an assigned short code without having to send repeated requests each time a short code lease is set to expire. The UA may maintain control by setting a limit as to the number of automatic lease renewals or by monitoring the use of the short code.
It should be understood that the physical implementation of the system may include any number of elements that increase performance, improve operational reliability, or improve operational efficiency. For example, a NF may cache or store locally some or all of the routing information returned from the UA for a particular short code. In such a scenario, the NF would be responsible for ensuring that the cache or locally stored information is synchronized with the UA's authoritative list.
The UA may also “broadcast” information to all interested parties at specified periods. For example, the broadcast may include information about which short codes' leases are to expire the following day and/or the short codes leased that day. The interested parties may include all NFs associated with the UA. This broadcast may be continuous or scheduled (e.g., hourly, daily, weekly) to exchange or transfer information from the UA to the NF containing updates on short code lease assignments. The NFs may also broadcast information that is locally cached to the UA continuously or at scheduled times regarding short code usage to assist the UA in monitoring the short code usage and determining whether a short code lease should be terminated.
The foregoing disclosure of the preferred embodiments of the present invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many variations and modifications of the embodiments described herein will be apparent to one of ordinary skill in the art in light of the above disclosure. The scope of the invention is to be defined only by the claims appended hereto, and by their equivalents.
Further, in describing representative embodiments of the present invention, the specification may have presented the method and/or process of the present invention as a particular sequence of steps. However, to the extent that the method or process does not rely on the particular order of steps set forth herein, the method or process should not be limited to the particular sequence of steps described. As one of ordinary skill in the art would appreciate, other sequences of steps may be possible. Therefore, the particular order of the steps set forth in the specification should not be construed as limitations on the claims. In addition, the claims directed to the method and/or process of the present invention should not be limited to the performance of their steps in the order written, and one skilled in the art can readily appreciate that the sequences may be varied and still remain within the spirit and scope of the present invention.
This application is a continuation of U.S. patent application Ser. No. 13/020,434, filed Feb. 3, 2011, which is a continuation of U.S. patent application Ser. No. 10/742,764, filed Dec. 23, 2003, which claims the benefit of U.S. Provisional Application No. 60/445,453 filed Feb. 7, 2003, all of which are incorporated herein by reference in their entireties.
Number | Name | Date | Kind |
---|---|---|---|
5351235 | Lahtinen | Sep 1994 | A |
5621727 | Vaudreuil | Apr 1997 | A |
5768509 | Gunluk | Jun 1998 | A |
5835583 | Hetz et al. | Nov 1998 | A |
5845207 | Amin et al. | Dec 1998 | A |
5887249 | Schmid | Mar 1999 | A |
5894478 | Barzegar et al. | Apr 1999 | A |
6061716 | Moncreiff | May 2000 | A |
6064880 | Alanara | May 2000 | A |
6134432 | Holmes et al. | Oct 2000 | A |
6208870 | Lorello et al. | Mar 2001 | B1 |
6230009 | Holmes et al. | May 2001 | B1 |
6240293 | Koster | May 2001 | B1 |
6292669 | Meuronen et al. | Sep 2001 | B1 |
6327267 | Valentine et al. | Dec 2001 | B1 |
6366663 | Bauer et al. | Apr 2002 | B1 |
6404858 | Farris et al. | Jun 2002 | B1 |
6421437 | Slutsman | Jul 2002 | B1 |
6421733 | Tso et al. | Jul 2002 | B1 |
6535746 | Yu et al. | Mar 2003 | B1 |
6560226 | Torrey et al. | May 2003 | B1 |
6587680 | Ala-Laurila et al. | Jul 2003 | B1 |
6594254 | Kelly | Jul 2003 | B1 |
6658260 | Knotts | Dec 2003 | B2 |
6674357 | Bermel | Jan 2004 | B1 |
6738630 | Ashmore | May 2004 | B2 |
6772267 | Thaler et al. | Aug 2004 | B2 |
6782035 | Nakamura et al. | Aug 2004 | B1 |
6782038 | Khlat | Aug 2004 | B1 |
6889325 | Sipman et al. | May 2005 | B1 |
6920487 | Sofer et al. | Jul 2005 | B2 |
7043230 | Geddes et al. | May 2006 | B1 |
7072678 | Allison | Jul 2006 | B2 |
7072941 | Griffin et al. | Jul 2006 | B2 |
7110780 | Bantukul et al. | Sep 2006 | B2 |
7155243 | Baldwin et al. | Dec 2006 | B2 |
7231176 | Levy | Jun 2007 | B2 |
7245929 | Henderson et al. | Jul 2007 | B2 |
7587210 | Sweatman et al. | Sep 2009 | B2 |
8019362 | Sweatman et al. | Sep 2011 | B2 |
20010049636 | Hudda et al. | Dec 2001 | A1 |
20020012351 | Sofer et al. | Jan 2002 | A1 |
20020015403 | McConnell et al. | Feb 2002 | A1 |
20020016175 | Marce et al. | Feb 2002 | A1 |
20020016750 | Attia | Feb 2002 | A1 |
20020029189 | Titus et al. | Mar 2002 | A1 |
20020038259 | Bergman et al. | Mar 2002 | A1 |
20020112014 | Bennett et al. | Aug 2002 | A1 |
20020167909 | Balazinski et al. | Nov 2002 | A1 |
20030083078 | Allison et al. | May 2003 | A1 |
20030118027 | Lee et al. | Jun 2003 | A1 |
20030134614 | Dye | Jul 2003 | A1 |
20030171993 | Chappuis | Sep 2003 | A1 |
20030202521 | Havinis et al. | Oct 2003 | A1 |
20030236823 | Patzer et al. | Dec 2003 | A1 |
20040032856 | Sandstrom | Feb 2004 | A1 |
20040122735 | Meshkin | Jun 2004 | A1 |
20040131081 | Bhatia et al. | Jul 2004 | A1 |
20040244102 | Benzon et al. | Dec 2004 | A1 |
20040260719 | Giraud-Sauveur et al. | Dec 2004 | A1 |
20040260838 | Lovell et al. | Dec 2004 | A1 |
20050027741 | Eichstaedt et al. | Feb 2005 | A1 |
20050176450 | Bantukul et al. | Aug 2005 | A1 |
20050180392 | Watkins | Aug 2005 | A1 |
20050197144 | Tam et al. | Sep 2005 | A1 |
20050209861 | Hewes et al. | Sep 2005 | A1 |
20050222933 | Wesby | Oct 2005 | A1 |
20060148495 | Wilson | Jul 2006 | A1 |
20060167699 | Rontynen et al. | Jul 2006 | A1 |
20070066328 | Sweatman et al. | Mar 2007 | A1 |
20070175978 | Stambaugh | Aug 2007 | A1 |
20070224979 | O'Neal et al. | Sep 2007 | A1 |
Number | Date | Country |
---|---|---|
0777394 | Apr 1997 | EP |
0959600 | Nov 1999 | EP |
9720442 | Jun 1997 | WO |
9736434 | Oct 1997 | WO |
9911078 | Mar 1999 | WO |
9933226 | Jul 1999 | WO |
0041533 | Jul 2000 | WO |
0225875 | Mar 2002 | WO |
0228129 | Apr 2002 | WO |
03019959 | Mar 2003 | WO |
03069924 | Aug 2003 | WO |
03081871 | Oct 2003 | WO |
2004073323 | Aug 2004 | WO |
2004105405 | Dec 2004 | WO |
Entry |
---|
http://www.usshortcodes.com/Mar. 12, 2004. |
European Supplementary Search Report, EP05770894, Mar. 31, 2011, (10 pages). |
Number | Date | Country | |
---|---|---|---|
20130217425 A1 | Aug 2013 | US |
Number | Date | Country | |
---|---|---|---|
60445453 | Feb 2003 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13020434 | Feb 2011 | US |
Child | 13853285 | US | |
Parent | 10742764 | Dec 2003 | US |
Child | 13020434 | US |