WO2001080534A1 - Short messaging service center mobile-originated to http internet communications - Google Patents

Short messaging service center mobile-originated to http internet communications Download PDF

Info

Publication number
WO2001080534A1
WO2001080534A1 PCT/US2001/011547 US0111547W WO0180534A1 WO 2001080534 A1 WO2001080534 A1 WO 2001080534A1 US 0111547 W US0111547 W US 0111547W WO 0180534 A1 WO0180534 A1 WO 0180534A1
Authority
WO
WIPO (PCT)
Prior art keywords
message
short message
wireless device
internet protocol
communicating
Prior art date
Application number
PCT/US2001/011547
Other languages
French (fr)
Inventor
Richard A. Smith
Johanna Wilson
Original Assignee
Telecommunication Systems, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=26893483&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=WO2001080534(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Telecommunication Systems, Inc. filed Critical Telecommunication Systems, Inc.
Priority to AU2001259045A priority Critical patent/AU2001259045A1/en
Publication of WO2001080534A1 publication Critical patent/WO2001080534A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • H04W4/14Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/18Service support devices; Network management devices
    • H04W88/184Messaging devices, e.g. message centre
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion

Definitions

  • This invention relates generally to communications networks. More particularly, it relates to the communication between a mobile (i.e., wireless) device and an application server via a short message service center (SMSC) and the Internet.
  • SMSC short message service center
  • Wireless communication services are in increasing demand in response to a society which is becoming increasingly mobile.
  • wireless communication services include voice cellular phone and paging services in which a user can make a telephone call or send/receive a page including a numeric message indicating a telephone number over a wireless network.
  • paging services have been expanded to offer alphanumeric paging, which allows a short text based message to be sent to and displayed at a handheld pager.
  • voice cellular telephone and the paging services each require an intended subscriber to be on-line or active to receive a telephone call or transmitted paging message. In other words, these services do not typically offer the capability of storing the messages for a temporarily unavailable subscriber.
  • SMS short messaging service
  • GSM global standard for mobiles
  • SMS short messaging service
  • An SMS allows transmission of short messages, typically up to 160 characters, to and from communication devices, e.g., cellular telephone handsets, telephones or computers with appropriate modems.
  • communication devices e.g., cellular telephone handsets, telephones or computers with appropriate modems.
  • CDMA code division multiple access
  • TDMA time division multiple access
  • Short message services are advantageous over text based paging services because .of the capability of bi-directional communication. Such bidirectional communication allows, for example, notification to the originating device of the success or failure of the short message delivery.
  • Each SMS network typically includes a short message service center (SMSC) which acts as a store-and-forward mechanism providing guaranteed delivery of short messages to a subscriber, even if the subscriber is inactive when the message was transmitted, by delivering the short messages once the subscriber becomes active. Delivery of all short messages is guaranteed regardless of whether or not the intended subscriber is "on-line" because the transmitted short message is stored within the SMS network and delivered to the intended subscriber from their assigned SMSC when the subscriber becomes available.
  • SMSC short message service center
  • SMS networks including, for example, integrated electronic mail and fax, integrated paging, interactive banking, and information services such as stock quotes and airline schedule delivery.
  • an SMSC receives a short message from any source intended to be delivered to a particular subscriber.
  • the intended subscriber is not available because, for example, it is turned off or is outside of the service area of the SMS network, the attempt to deliver the short message at that time will fail. In this case, the short message will be retained in the SMS network for a later delivery attempt.
  • the subscriber finally becomes available, e.g., is turned on or has moved into the service area of the SMS network, the relevant portions of the network (e.g., the mobile servicing center (MSC) and the home location register (HLR)) notify the SMSC to initiate delivery of the stored (i.e., previously failed) short messages.
  • MSC mobile servicing center
  • HLR home location register
  • Fig. 6 shows an exemplary structure of a SMS network 500.
  • the following example is described using terms and protocols mainly as defined by the North American standard IS-41 , it will be apparent to one skilled in the art that the example is applicable to any networks that offer store-and-forward type short message service.
  • the SMS network 500 typically includes one short message service center (SMSC) 501.
  • the SMSC 501 typically includes a storage subsystem to store short messages that had failed to be delivered.
  • the SMSC 501 typically further includes various interfaces (not shown) to receive short messages originating from various sources and protocols, such as a Voice Mail System (VMS) 508, paging networks using, e.g., Telocator Numeric Paging Protocol (TNPP) 509, devices using the Short Message Peer-to-Peer (SMPP) protocol 510 via TCP/IP, e-mail systems using the Simple Mail Transport Protocol (SMTP) 511 , and/or devices using the Telocator Alphanumeric Protocol (TAP) 512.
  • VMS Voice Mail System
  • TNPP Telocator Numeric Paging Protocol
  • SMPP Short Message Peer-to-Peer
  • TCP Simple Mail Transport Protocol
  • TAP Telocator Alphanumeric Protocol
  • Some of the various sources of the short messages may be gateways to other networks.
  • the SMSC 501 may further include a gateway/interworking block (not shown) that enables the SMSC 501 to communicate with the rest of the SMS network 500, such as a Home Location Register (HLR) 503 or a Mobile Switching Center (MSC) 505, using the Signaling System No. 7 (SS7) 502.
  • the methods and mechanism of communication in the SMS network 500 are defined by the mobile application part (MAP) layer, which uses the services of the SS7 transaction capabilities application part (TCAP) as the signaling infrastructure of the SMS network 500.
  • the protocol for the signaling is referred to as the IS-41 protocol under the American standard as published by the Telecommunication Industry Association (TIA) or as the GSM MAP under the European standard published by European Telecommunication Standards Institute (ETSI).
  • the Home Location Register (HLR) 503 includes a database that permanently stores and manages subscriptions and service profiles of users having a subscription to the SMS network 500. Although only one HLR 503 is shown, the SMS network 500 may include two or more HLRs.
  • the SMS network 500 also typically includes several visitor location registers (VLR) 504.
  • VLR visitor location registers
  • a VLR 504 is a database temporarily holding information about visiting subscribers who move into its service area. Thus, a VLR 504 contains information regarding routing information for all subscribers within its service area, and informs the relevant HLR 503 of the availability and routing information regarding its subscribers.
  • the mobile switching center (MSC) 505 obtains subscriber information from the VLR 504 to service visiting subscribers.
  • the mobile switching center (MSC) 505 performs switching and call control functions, and receives short messages from the SMSC 501 for delivery to the appropriate mobile subscriber 507 (shown, e.g., as a cellular phone handset). It is to be understood that, although only one MSC 505 is shown, the wireless network 500 may include two or more MSCs.
  • the base station subsystem (BSS) 506 handles the wireless communications, e t g., RF transmission and reception of voice and data traffic, to and from the mobile subscriber 507.
  • the BSS 506 is typically composed mainly of two parts: the base transceiver station (BTS, not shown) which houses the radio transceivers that define a cell and handles the radio-link protocols with the mobile subscriber 507, and the base station controller (BSC, also not shown) which manages the radio resources, and handles radio channel set up, frequency hopping, and handoffs (or handovers as is sometimes referred as).
  • BSC base station controller
  • the BSC is the interface between the MSC 505 and the subscriber 507.
  • the subscriber 507 also sometimes referred to as a mobile station (MS), typically consists of mobile equipment (e.g., a cellular phone handset) preferably uniquely identifiable by an identifying number, e.g., mobile identification number (MIN), International mobile subscriber identification (IMSI) and/or electronic serial number (ESN), for the subscriber 507.
  • the mobile equipment may include a storage area, e.g., a flash memory, a ROM, a RAM or the like to hold the unique identifying number within the mobile equipment.
  • a smart card typically referred to as a subscriber identity module (SIM) is utilized to store a unique identifying number.
  • SIM subscriber identity module
  • Fig. 7 shows an exemplary flow of a short message through a conventional SMS network.
  • Fig. 7 shows only an example of short message delivery to a mobile subscriber, it is to be understood that a mobile subscriber or any other sources may originate a short message.
  • the flow of a mobile subscriber originated short message would involve similar processes as the following mobile subscriber terminated short message example, and would be apparent to one of ordinary skill in the art.
  • the SMSC 601 receives a short message intended for a subscriber
  • SMSC 604 from a source of short message 605 which may be any one or more of the aforementioned sources of short messages, e.g., 508-512 of Fig. 6.
  • the SMSC 601 Upon receiving a short message, the SMSC 601 sends a request for routing information, i.e., an SMS request (SMSREQ), to the HLR 602.
  • the HLR 602 maintains information regarding the availability of the intended subscriber 604 and the appropriate MSC 603 that services the intended subscriber, and sends the information as routing information 608 back to the SMSC 601.
  • the SMSC 601 forwards the short message to the appropriate MSC 603 using the routing information 608 received from the HLR 602, for example, in accordance with the short message delivery point-to-point (SMDPP) mechanism of IS-41 standard.
  • SMSDPP short message delivery point-to-point
  • the MSC 603 queries the VLR (not shown) for subscriber information.
  • the VLR may perform a paging and authentication process, and sends the subscriber information to the MSC 603.
  • the SMSC 601 may send the result of the delivery, i.e., the status report 613, to the source of the short message 605 if requested.
  • the MSC 603 informs the HLR 602 of the failure.
  • the HLR 602 then turns on an SMS notification indicator flag for the subscriber, and the SMSC 601 retains the failed message for a later delivery attempt.
  • Fig. 8 shows a pending short message delivery process in a conventional short message service network after the mobile subscriber becomes available for delivery of the retained messages.
  • the subscriber 704 turns his or her handset on or comes within the service area
  • the subscriber's handset sends a registration signal 709 to the MSC 703.
  • the registration signal 709 may or may not include authentication process.
  • the MSC 703 informs the registration signal 709.
  • HLR 702 (or the VLR 711 ) of the availability of the subscriber 704 by sending a subscriber available signal 708. Because the SMS notification flag for the subscriber is on, the HLR 702 or the VLR 703 sends an SMS notification (SMSNOT) message 705 in case of networks implementing IS-41 standard, or an equivalent notification alerting the fact that the subscriber has become available in networks implemented in accordance with other standards, to the SMSC 701 assigned to service that particular intended subscriber 704.
  • SMS notification SMS notification
  • the SMSC 701 then sends a delivery request 706 to the MSC 703 via, for example, the SMDPP protocol in the IS-41 standard.
  • the MSC 703 finally delivers the short message 710 to the subscriber 704, and sends a message delivered message 707 back to the SMSC 701 to confirm and finalize the delivery of the short message.
  • the SMSC 701 may further send a delivery report to the source of the short message if it was requested.
  • WAP Wireless Application Protocol
  • a special browser be loaded on the handset, and requires the user to enter into a dedicated 'browser mode' in order to interact with 2-way services.
  • SMSCs Short message communications
  • a gateway comprises a first communication path to accept a short message from a short message service center.
  • a translation module inserts the short message into an
  • a second communication path transmits the HTTP protocol message to at least one URL.
  • a method of communicating between a wireless device and an application program on an Internet Protocol server in accordance with another aspect of the present invention comprises sending a short message from the wireless device to the Internet Protocol server.
  • the short message is routed using a wireless protocol message.
  • the short message is conveyed to the Internet Protocol server using an HTTP protocol POST message.
  • a mobile to HTTP gateway application in accordance with yet another aspect of the present invention comprises an SMPP relayer, a message director to process messages from the SMPP relayer, a poster collector to obtain at least one target poster, and a poster.
  • Fig. 1 illustrates an exemplary system adapted to push mobile originated (MO) messages to an IP (web) sever, in accordance with the principles of the present invention.
  • Fig. 2 depicts a mobile-to-HTTP gateway (MHG) as a 'black box' which is easily installed into existing systems to enable bi-directional communication between a mobile device and one or more IP servers within the parameters of standard protocol communications (e.g., SMPP and HTTP) between system elements, in accordance with the principles of the present invention.
  • MHG mobile-to-HTTP gateway
  • Fig. 3 shows a message flow between the system elements shown in Fig. 1.
  • Fig. 4 shows software elements of an exemplary MO-HTTP
  • Gateway (MHG) 100 in accordance with the principles of the present invention.
  • Fig. 5 shows various classes in an exemplary embodiment of a MHG 100, in accordance with the principles of the present invention.
  • Fig. 6 shows relevant portions of a conventional short message service network.
  • Fig. 7 shows a process of short message flow within a conventional short message service network.
  • Fig. 8 shows a pending message delivery process in a conventional short message service network.
  • the present invention provides a mobile-to-HTTP protocol gateway (MHG, or "MO Gateway”) which translates between standard wireless protocol commands (e.g., SMPP from an SMSC), and an application server on the Internet (i.e., a "Web Server”).
  • MHG mobile-to-HTTP protocol gateway
  • An MHG in accordance with the principles of the present invention allows any standard 2-way SMS capable handset to interact with specialized web applications. Using an MHG, it is no longer necessary for a user to launch a phone browser in order to access the services. Moreover, an MHG provides a simpler model than WAP for developing 2-way applications.
  • MO-HTTP gateway uses the SMPP protocol.
  • principles of the present invention relate equally to other 2-way messaging protocols, e.g., ReFlex for 2-way pagers.
  • the MO-HTTP gateway provides a mechanism for developers to produce 2-way wireless applications using familiar Web-based tools and methodologies.
  • the MO-HTTP gateway hides the details of communicating with the wireless network by interacting with applications using familiar HTTP posting.
  • SMS and SMPP for its reference implementation, the MO-HTTP gateway avoids problems common to the WAP environment.
  • a developer may create mobile applications using standard Web development tools, e.g., Java Servlets.
  • Fig. 1 illustrates an exemplary system adapted to push mobile originated (MO) messages to an IP (web) sever using standardized equipment and message protocols together with an MHG 100, in accordance with the principles of the present invention.
  • a mobile (i.e., wireless) device 120 communicates with an appropriate wireless network 122 using any appropriate wireless standard protocol.
  • the wireless network 122 communicates with a short message service center 124 using standard IS-41 communication protocol messages.
  • SMPP Short Message Peer- to-Peer Protocol
  • the SMSC 124 communicates with a wireless internet gateway 126 via SMPP protocol commands in substantial conformance with the SMPP interface specification attached hereto in Appendix A.
  • a suitable wireless Internet gateway 126 is described in co-owned
  • the wireless Internet Gateway 126 communicates with a MHG 100 using Java Remote Method Invocation (RMI) technology to provide server-to- server capability.
  • RMI Java Remote Method Invocation
  • the mobile to HTTP Gateway (MHG) 100 translates standard format
  • IP Internet protocol
  • Fig. 2 depicts the MHG 100 as a 'black box' which is easily installed into existing systems to enable bi-directional communication between a mobile device 120 and one or more IP servers 152-156 within the parameters of standard protocol communications (e.g., SMPP and HTTP) between system elements, in accordance -with the principles of the present invention.
  • standard protocol communications e.g., SMPP and HTTP
  • the mobile to HTTP gateway (MHG) 100 preferably is bi-directional in that it generates HTTP protocol POST commands to an application program on a relevant IP server 152-156 based on mobile-originated messages, and translates responses to the same from HTTP protocol back into standard format SMPP messages for forwarding back to the relevant mobile device 120.
  • an HTTP protocol POST command is used by the MHG 100 to forward a request from the mobile device 120 to the relevant web IP server(s) 152-156.
  • the HTTP protocol POST command is well known and documented in, e.g., RFC2068 and later IETF RFC's on the subject. This document is publicly available, e.g., at http://ietf.org/rfc.html.
  • an HTTP protocol POST command is used to request that a particular destination web IP server 152-156 accept the entity enclosed in the request (i.e., the mobile device 120) as a new subordinate of the resource identified by the Request-URI in the Request-Line.
  • the HTTP protocol POST command is designed to allow a uniform method for various tasks, e.g., to allow annotation of existing resources, to allow posting of a message to a bulletin board, newsgroup, mailing list, or similar group of articles, to provide a block of data, such as the result of submitting a form, to a data-handling process, and/or to extend a database through an append operation.
  • the actual function performed by the HTTP protocol POST method is determined by the particular web IP server 152-156, and is usually dependent on the Request-URI.
  • the posted entity i.e., the wireless device 120
  • the posted entity is subordinate to that URI in the same way that a file is subordinate to a directory containing it, a news article is subordinate to a newsgroup to which it is posted, or a record is subordinate to a database.
  • the action performed by the HTTP protocol POST command might not result in a resource that can be identified by a URI.
  • either 200 (OK) or 204 (No Content) is the appropriate response status, depending on whether or not the response includes an entity that describes the result. If a resource has been created on the origin server, the response should be 201 (Created) and contain an entity which describes the status of the request and refers to the ⁇ new resource, and a location header.
  • Responses to the HTTP protocol POST are not cachable, unless the response includes appropriate Cache-Control or Expires header fields. However, the 303 (See Other) response can be used to direct the user agent to retrieve a cachable resource.
  • the submitted HTTP protocol POST command includes mobile_num, resp_track_id and body fields. Also embedded within the HTTP protocol POST command is a CGI name/value pair providing information about the particular request from the mobile device 120.
  • a response back to the mobile device 120 originates from the relevant web IP server 152-154 synchronously in response to the received HTTP protocol POST command.
  • Fig. 3 shows an exemplary message flow between the system elements shown in Fig. 1.
  • steps 1 to 12 are depicted between system elements in Fig. 3 as an example of message routing between a mobile device 120 and a relevant web IP server 152-154.
  • the mobile device 120 sends a short message to a pre-defined address (e.g., 'info', or 4636). If the body of the short message is empty, or if the body contains a special string such as 'menu', then ultimately a menu would be sent by the HTTP Application on the relevant web IP server 152-156 to the mobile device 120.
  • a pre-defined address e.g., 'info', or 4636.
  • Other bodies may be used to, e.g., identify global commands, or provide context-sensitive information from the mobile device 120 to the HTTP application on the web IP server 152-156. Requirements for body content depend on the particular HTTP application as it exists on the particular web IP server 152- 156.
  • the SMSC 124 routes the short message to an ESME (e.g., the wireless Internet gateway 126) for delivery using a standard SMPP protocol DELIVER_SM message.
  • ESME e.g., the wireless Internet gateway 1266
  • DELIVER_SM message e.g., the MHG 100 utilizes the following fields of the DELIVER_SM command: service_type, source_addr, destination_addr, registered_delivery_flag, esm_class, and shortjnessage.
  • the MHG 100 utilizes the service_type parameter to indicate the SMS application service associated with the message.
  • the service_type field may be populated with the value 'page'.
  • the source_addr is the address of the SME (e.g., mobile device 120) that originated the short message. As disclosed, the source_addr is the Mobile Identification Number (MIN) of the mobile device 120 making the request.
  • the destination_addr is the address of the destination SME. As disclosed, the destination_addr may be assumed to be '4636' as indicated in Step 1 above. This address is used to route the request to the appropriate HTTP URL.
  • the registered_delivery_flag indicates if an SME Acknowledgement is necessary. As disclosed, the registered_delivery_flag is set to a default value of 0, which indicates that no delivery receipt is requested.
  • the esm_class indicates the message type and Enhanced network services.
  • the short_message field contains up to 254 octets of short message user data.
  • key fields of the DELIVER_SM command may be populated by the MHG 100 as follows: service_type: page source_addr: mobile's MIN destination_addr: 4636 registered_delivery_flag: 0 esm class 0 short nessage: $R[new ref id]$M[message]
  • the $R in the short message is optional, and is applicable for use with SMPP v3.3.
  • the $R may be used when correlating responses from the mobile device 120 to Reply-request messages from the application program on the relevant web IP server 152-156.
  • the $R is preferably always present in short messages from the mobile device 120.
  • the wireless Internet gateway 126 When the wireless Internet gateway 126 receives the SMPP message from the SMSC 124, it creates a DELIVER_SM object.
  • the DELIVER_SM object is forwarded by the wireless Internet gateway 126 to any relevant remote applications that are registered to receive messages on a specified ports/link ID, e.g., the MHG 100 if the MHG 100 is registered with the wireless Internet gateway 126 to receive SMPP messages.
  • the transmission is accomplished through an RMI callback mechanism.
  • the MO-HTTP Gateway (MHG) 100 receives the DELIVER_SM message object from the wireless Internet gateway 126, and formulates an HTTP protocol POST command message to a web server on the Internet 150 to convey the message content.
  • the MHG 100 can direct the HTTP protocol POST command messages to one or to multiple URLs.
  • the particular web server to reference is determined by the included destination address, assuming that the SMPP destination address field contains the targeted number, e.g.,, '4636'.
  • the HTTP protocol POST command message may be routed based on the SMPP port utilized.
  • exemplary name/values that may be utilized in the HTTP protocol POST command message sent to the web server are the mobile_num, resp_track_id, and body.
  • the mobile_num may be the mobile identification number (min) identifying the originating mobile number of the relevant mobile device 120.
  • the resp_track_id may be the reference ID (ref id) for user acknowledgements used to track questions and related answers.
  • the body may be the payload content from the mobile device 120 included in the message body field.
  • SMPP messages with esm_class values of '0' and '.16' are forwarded by the wireless Internet gateway 126 to the web IP server 152-156. That is, only new mobile originated requests and/or menu responses are forwarded.
  • the resp_track_id variable may contain the reference ID.
  • the reference ID is not passed to the relevant web IP server(s) 152-156.
  • Utilization of the SMPP message type and inclusion/non-inclusion of the reference ID reduces network traffic and resource requirements, and simplifies development on the web side.
  • the relevant web server in the Internet 150 receives the HTTP protocol POST command information, which may be handled by the actual CGI/Servlet routine specified by the URL in Step 4.
  • the handling servlet may create sessions for each mobile device such that the current state of the mobile device may be preserved, allowing meaningful content to be transmitted.
  • Example wireless web applications may include menu-based services, games, and information services.
  • the servlet of the web server in the Internet 150 After the servlet of the web server in the Internet 150 receives the HTTP protocol POST command, the servlet synchronously returns data through the HTTP stream back to the MHG 100.
  • the text returned by the servlet may be delivered to the mobile device 120 as a standard SMS message.
  • the returned data may be contained within an ⁇ SMS> and ⁇ /SMS> tag-set.
  • the ⁇ SMS> and ⁇ /SMS> tags are special tags used by the MHG 100 to denote SMSC Type data. As the number and/or variety of applications increase, additional tags may be implemented.
  • the mobilejium field includes a mobile identification number of the mobile device 120 that a relevant short message is destined for.
  • the resp rackjd field includes a unique identification number generated by the servlet.
  • the MHG 100 returns this id to the servlet for responses.
  • the body field includes the text to send to the desired mobile device 120. If the body field is blank, then nothing will be sent to the mobile device 120.
  • the " ⁇ RESP_TRACK_ID value- x'>" tag can be included prior to the ⁇ /SMS> tag. This tells the system that a menu is required and that the specified unique tracking number should be used.
  • this same tracking id may be returned in the respjrackjd cgi variable.
  • the MHG 100 After having posted its data to the web server in the Internet 150, the MHG 100 receives a response from the same connection, as described in Step 5.
  • a standard SUBMIT_SM MT message is generated from the text received within the ⁇ SMS> tag set.
  • the SUBMITjSM message is issued by the ESME (e.g., the wireless Internet gateway 126) to submit a short message to the SMSC 124 for transmission to a specified mobile device 120.
  • the conventional SMPP Protocol specification is followed, with the exception of the following mapping implemented between the SUBMITjSM message and data received in the ⁇ SMS> and ⁇ /SMS>.
  • a registered_delivery_flag in the SUBMITjSM message informs the SMS that the ESME (wireless Internet gateway) 126 requires a notification when the message has been delivered. If the RESP_TRACK_ID is provided (i.e., contains a value), then the registeredjdelivery_flag field is set to '8' for the MHG 100 indicating 'SME Manual/User Ack requested', and a special tag of R$[track id] is included in the message body. Preferably, this same tracking id will be returned in the response message from the mobile device 120.
  • a shortjnessage in the SUBMITjSM message is the payload containing up to 160 bytes of data that should be transmitted to the mobile device 120.
  • the SMSC 124 receives the SUBMITJSM message and delivers a short message, with manual ack request, to the mobile device 120.
  • Step 8 The mobile device 120 responds to the "Do you like cookies?" question, e.g., by pressing '9' for Yes.
  • the SMSC 124 receives the response from the mobile device 120 and formulates a DELIVERJ3M message.
  • the formulated DELIVERJ3M message is forwarded to the wireless Internet gateway 126.
  • the response code is shown directly after the $M value.
  • the wireless Internet gateway 126 receives the DELIVER _SM message from the SMSC 124, converts the DELIVER _SM message into an object, and forwards the DELIVERjSM message to any listeners (e.g., the MHG 100).
  • the MHG 100 may be listening to the wireless Internet gateway 126 on a specified port, and therefore receive the DELIVERjSM message from the specified port.
  • the MHG 100 receives the DELIVERjSM object, and determines if the esm_class is '16'. If so, the short message is translated by the MHG 100 and forwarded to its web listeners.
  • a URL is associated with either the SMPP link ports or the destination address through a configuration file of the MHG 100. The MHG 100 therefore formulates an HTTP protocol POST command message to the appropriate URL(s).
  • the servlet associated with the specified URL receives the HTTP protocol POST command message from the MHG 100.
  • the servlet may retrieve a session object for the particular value of the mobilejium, and determines that it had just asked the mobile device 120 about a cookie preference.
  • the servlet may confirm that the query's tracking ID correlates to the respjrackjd value. Thus, the servlet knows that the response at hand is in response to that question. Since the body contains the content '9' (or ⁇ ' or other suitable response), the servlet may rightfully conclude that the user of the mobile device 120 (who input the '9' response) likes cookies. A conversation or communication between the mobile device 120 and an application on one or more particular web IP servers 152-156 may continue on as described in steps 1 to 12 indefinitely.
  • Fig. 4 shows software elements of an exemplary MO-HTTP Gateway (MHG) 100, in accordance with the principles of the present invention.
  • the software elements of the MHG 100 include an SMPPRelayer 402, a MessageDirector 404, a PosterCollection 406, a Poster 408, and a Servlet 410.
  • one or more SMPPRelayers 402 will register as listeners to specified link IDs of the wireless Internet gateway 126.
  • SMPP messages are sent by the wireless Internet gateway 126 to the SMPPRelayer 402 of the MHG 100 as they are received.
  • the SMPPRelayer 402 forwards each message to a
  • the MessageDirector 404 retrieves a Poster 408 from the PosterCollection 406, and then in message 424 tells the Poster 408 to process the SMPP Message.
  • the Poster 408 converts the SMPP Message into an HTTP protocol POST command request 425 to a specific universal resource locator (URL), and receives return results back in message 426.
  • URL universal resource locator
  • the Poster 408 returns the results back to the SMPPRelayer 402, so that it will be sent to the mobile device 120, as depicted in message 428.
  • Fig. 5 shows various classes in an exemplary embodiment of a MHG 100, in accordance with the principles of the present invention.
  • the MHG 100 includes a MOHGateway class 502, an SMPPRelayer class 402, a MessageDirector class 404, a PosterCollection class 406, and a Poster class 408.
  • the MOHGateway class 502 defines "main()", and upon execution will create the SMPPRelayer class 402, the MessageDirector class 404, and the PosterCollection class 406, assigning references to one another as appropriate.
  • the PosterCollection class 406 accesses a standard application resource class to determine the number of Posters 408 required, as well as the desired configuration of each Poster 408.
  • the PosterCollection class 406 creates the Posters 408 . and provides references to the Posters 408 through a getPoster(SMPPMessage msg) method.
  • the SMPPRelayer class 402, the MessageDirector class 404, the PosterCollection class 406, and the Poster 408 each receive an I Logger object for recording information.
  • SMSC Short Message Peer to Peer Protocol
  • SMPP Short Message Peer to Peer Protocol
  • This protocol may be implemented over a variety of underlying interfaces/communications protocols, namely X 25, or TCP/IP.
  • an external Short Message Entity such as a Paging or VoiceMail system may bind/ unbind to the SMSC submit , cancel, replace and query short messages.
  • the SMSC forwards responses and short messages (e.g delivery receipts, pager messages) to the external Short Message Entity
  • SMSC Short Message Entities
  • SMSC Short Message Service Centre
  • FIG. 1 illustrates these categories which are defie in the following sections
  • Voice-Mail Alerts originating for a VPS mdica 'ig voice messages at a customer's mailbox
  • an ESME may "Query' the SMSC for the status of previously submitted messages, 'or cancel delivery of previously submitted messages usinc the Message ID returned by the SMSC when the particular message was originally submitted
  • the SMSC can deliver short messages to the ESME
  • a typical example would be the SMSC sending short messages to an MB for onward delivery as pager messages
  • SMSC may use the 'deliver short message mechanism to generate a Delivery Receipt (See SMPP Apolications guide [1] for details)
  • the interface between the SMSC and ESME may be based on X 25, or TCP/IP
  • X 25 or TCP/IP
  • SMSC SMSC
  • ESMEs ESMEs regardless of the underlying network type
  • client- server model in which, tne SMSC has the server role and the ESME the client role
  • client ' is referred to the system that initiates a connection
  • server is referred to the system that services a connection
  • FIG. 3-1 Model of SMSC-ESME Interface
  • a message submitted from an ESME to SMSC can gene r ate up to two responses These are an application level ' resp . and where the message was submitted to the SMSC with the registered delivery -lag set, a status report generated after the submitted short message reaches its final stale
  • Figure 4 1 depicts a possible sequence of these messages (e g for an X 25 or TCP/IP based implementation)
  • the ESME establishes communication vith the SMSC, by an implementation s ecific mechanism (see SMPP Applications guide [1])
  • each of the two processes on the ESME should send either a Bind-Transmitter request or a Bind-Receiver request If a Bind Transmitter request is sent, the process on the SMSC that receives it will receive messages originating in the ESME system If a Bind Receiver request is sent, the process on the SMSC that receives it will forward messages to the ESME Responses will invariably be returned on the same 'virtual connection' as the corresponding request messages
  • SMSC Application SMSC Application (bound as Transmittei) (bound as Recen ei)
  • the originator should maintain a retry count and when this limit has been reached on a single message attempt the connection should be closed
  • the ESME should attempt to re-connect
  • the re-connect method will be the same as the startup protocol
  • Sequence number in the message header should be generated by the ESME This number should be incremented monotonically with each new transaction This field w,ll be preserved by the receiving system and returned in the acknowledgement message This allows for transaction mapoing and the detection of duplicate messages
  • the following message types are supported by the SMPP
  • the ' command id " field of the protocol message is set to specify the particular message
  • the followinc messages are sent from the ESME to the SMSC om nv.uKl 1 1) Description bi nd T is command is issu the I , SM E to infoi m the SMSC that th,- CSM L is cs to act , ⁇ s a Scrs ci bind tjcnsmittei This commaiid is issued the ESME to lnlorm the SMSC that th ⁇ -> ESM E wishes to act as a Client in cind This command is issued by the ESME to inform the SMSC that (Ins ESME wishes to terminate its activities subm . ⁇ _sm This command is issued by the ESME to submit a short message to tl e SMSC oi tiansmission to a specified subscribe!
  • _sm Tins command is issued by the ESME to query the status of a pieviously submitted Short Message que ⁇ y_last_ ⁇ nsgs
  • This command is issued by the ESME to queiy the message ids of a number of messages in the system foi a subscribers ori g inating address que ⁇ y_iu->g_deta ⁇ ls Tins command is issued by the ESME to query all aspects of a pi eviously submitted Short Message cancel sm Tins command is issued by the ESME to cancel one or more outstanding short messages lor a subsc ⁇ ber
  • the command mav speci fy a particulai message or all messages foi a parti-tilar soui ce and destination repi This command is issued by the F.SM L to replace an outstandin g .! sho ⁇ message for a subscriber
  • the following messages are sent from the SMSC to the ESME
  • Integer a signed value with the defined number of bytes The bytes will always be transmitted MSB first
  • the octet string should represent a sequence of decimal digits
  • the octet string should represent a sequence of hexadecimal digits
  • Octet String Series of octets which may/may not be null terminated
  • the octets themselves can contain nulls
  • the lan c is 01 h to 071 FFFFFFh
  • Bind Command There are two variations of the Bind Command namely "bindjransmitter” and ' b ⁇ nd_rece ⁇ ver"
  • the Command ID setting specifies whether the Bind is the "b ⁇ nd_transm ⁇ tter” or "b ⁇ nd_rece ⁇ ver ' primitive
  • Bind operation The purpose of the Bind operation is to register an instance of an ESME with the SMSC system, and inform the SMSC that the sending SME wishes to use this virtual circuit for commands initiated by the SMSC To this end the Bind must provide key information within the "message" field of the protocol message
  • the password must match the SMSC administration password for the instance of the ESME
  • system_id and system_type provide a unique identification of the interface
  • a unique default "callback address” which is configured via SMSC administration
  • the " callback address ' is employed as the default source address, in cases where the actual ESME address is not supplied
  • the interface may act as either an ESME in it's own right or as an agent for the transport of messages to or from other ESME's (See figure 6-1 )
  • the Message layout is identical to the "bind eceiver" Message Layout except that the addr on, addr_npi and the range of SME addresses(address ange) are not relevant and should be set to NULL
  • the Message layout is identical to the bind eceiver esp ' Message Layout except that the 'command id field setting specifies "b ⁇ ndjransm ⁇ tter_resp'
  • Unbind operation The purpose of the Unbind operation is to deregister an instance of an ESME from the SMSC system
  • This command is issued by the ESME to submit a short message to the SMSC for transmission to a specified subscriber
  • the source address can be used as the destination address for a delivery receipt It can also be used in identif ying the message source in a CDR This source address must fall in the range of addresses associated with the bind command
  • the source address fields may be defaulted to NULL, and tre source address will be taken from the SMSC administration ' callback address for the particular ESME i n stance
  • the subm ⁇ t_sm operation can also be used to replace a short message w ch has previously been submitted This is achieved by setting the replace ⁇ f_presenl lag lo 0x01 in the Int-nace The first message found in the SMSC whose source and destination match those given in the su-. ⁇ t_sm will have it's text replaced by the text in the short_message field of the subm ⁇ t_sm
  • this field may identify tne message as a delivery receipt protocol ID Integer GSM Protocol ID (See GSM 03 40 [2] 9 2 3 9) p ⁇ o ⁇ ty lag Integer Designates the message as priority Setting priority on a message moves it to the top of the SMSC message queue for that subscriber
  • the SUBMITJvlULTI primitive is used to submit messages to an SME Address, a Distribution List and Multiple Recipients
  • the Command Id of this primitive is "subm ⁇ t_mult ⁇ "
  • the message field of this body is
  • Var C-Octet Tms field contains the message ID internal to the Max 9 String SMSC It may be used at a later stage to query the
  • SMSC may submit a short message to the ESME for delivery It is also used to return a delivery receipt for a message which had been submitted with the delivery receipt flag set
  • destination address will depend on whether the ESME is the final destination of the short message or merely routes the message to its final recipient (e g paging messages)
  • the esm_class field will identify the message as a delivery receipt, and the required data relating to the original short message will be given in the message text field (See SMPP Applications Guide [1] - Delivery Receipts)
  • An ESME can query the status of a message sent to a single SME Address the status of a message submitted to a single Distribution List and can query the status of a message sent to multiple recipients
  • This Command is issued by the ESME to query the status of a previously submitted short message
  • the originator address in the query_sm command must match
  • the original source address was defaulted to NULL (i e the o ⁇ gina'or of messages from the ESME is the ESME itself or the ESME does not ha ⁇ e a real source addi ess) then the originator address in the query_sm command should also be NULL and the source address will be taken from the SMSC administration callback address for the particular ESME instance
  • This operation allows an ESME to query the most recent messages that are in the system for that originating source address
  • the messages found in the system with the specific originating source address will be returned to the ESME along with some message details
  • the maximum number of messages that can be queried is 100
  • This command is issued by the ESME to cancel one or more outstanding short messages
  • the command may specify a particular message, or all messages for a particular source and destination
  • a t . pical use of the command is to cancel outstanding undelivered VoiceMail Alert messages for a subscriber whose mailbox has just been directly accessed by the subscriber
  • the response (cancel_sm _res ⁇ ) will indicate whether the message(s) had already been sent
  • This variable length field may have leading spaces dest addr ton Integer Type of number for destination (See GSM 03 40 [2] 9 1 2 5) dest. ador_np ⁇ Integer Numbering Plan Indicator for destination (See GSM 03 40 [2] 9 1 2 5) destination addr Var C-Octet Destination address of message(s) to be Max 21 String cancelled
  • This command is issued by the ESME to replace an outstanding short message for a subscriber
  • the message_ ⁇ d is set to the ID of a previously submitted message Where a message to be replaced was originally submitted with an individually identified SME source address, the originator address in the replace_sm command must match Where the original source address was defaulted to NULL (i e the originator of messages from the ESME is the ESME itself, or the ESME does not have a real source address) then the originator address in the replace_sm command should also be NULL, and the source address will be taken from the SMSC administration ' callback address" for the part'cular ESME instance
  • this should be a single NULL byte registered delivery Inte ⁇ e' Flag indicating if the message is a registered short message and thus if a Delivery Receipt is reognad upon the message attaining a final state (See SMPP Applications Guide [1 ] - Delivery Receipts)
  • Range is 0x01 to 0x64
  • This message is used to provide a confidence-check of the communication path between ESME and the SMSC
  • the SMSC will simply respond with an enquire_lmk_ resp, thus verifying that the application level connection between the SMSC and the ESME is functioning
  • the ESME can respond by sending any valid SMPP primitive.
  • This operation is used to retrieve the value for a configurable parameter
  • Time and Date fields are represented in a format similar to that specified in GSM 0340 [2] 9.2311 In this interface all time/date related fields will be in ASCII with the following format ' YYMMDDhhmmsstnnp" where

Abstract

This invention relates to the field of mobile communications networks that use the Internet. More particularly, this invention is a method and apparatus, where the apparatus is a mobile device-to-HTTP protocol gateway that serves as an interface between a mobile device and an application server on the Internet. The mobile device-to-HTTP protocol gateway enables developers to create mobile applications using standard web development tools. With reference to Fig. 1, a wireless Internet gateway (126) establishes communications with one or more relevant short message service centers (124), and the mobile device-to-HTTP protocol gateway (100) uses HTTP to post short messages transmitted from the mobile device (120) to a particular URL. The mobile device-to-HTTP protocol gateway (100) receives the return results and forwards them to the short message service center (124) for delivery to the mobile device (120).

Description

SHORT MESSAGING SERVICE CENTER MOBILE-ORIGINATED TQ HTTP INTERNET COMMUNICATIONS
BACKGROUND OF THE INVENTION 1. Field of the Invention
This invention relates generally to communications networks. More particularly, it relates to the communication between a mobile (i.e., wireless) device and an application server via a short message service center (SMSC) and the Internet.
2. Background of Related Art
Wireless communication services are in increasing demand in response to a society which is becoming increasingly mobile. Traditionally, wireless communication services include voice cellular phone and paging services in which a user can make a telephone call or send/receive a page including a numeric message indicating a telephone number over a wireless network. More recently, paging services have been expanded to offer alphanumeric paging, which allows a short text based message to be sent to and displayed at a handheld pager. However, voice cellular telephone and the paging services each require an intended subscriber to be on-line or active to receive a telephone call or transmitted paging message. In other words, these services do not typically offer the capability of storing the messages for a temporarily unavailable subscriber.
In the early 1990s, as a result of the growing popularity of digital wireless technology, a standard for digital wireless networks was introduced in Europe. That standard, now known as the global standard for mobiles (GSM), included a service called short messaging service (SMS). An SMS allows transmission of short messages, typically up to 160 characters, to and from communication devices, e.g., cellular telephone handsets, telephones or computers with appropriate modems. In North America, the SMS is currently implemented on digital wireless/mobile networks, such as a PCS network based on the GSM standard, code division multiple access (CDMA) and/or time division multiple access (TDMA) methods. Short message services are gaining in popularity, particularly in the United States. Short message services are advantageous over text based paging services because .of the capability of bi-directional communication. Such bidirectional communication allows, for example, notification to the originating device of the success or failure of the short message delivery. Each SMS network typically includes a short message service center (SMSC) which acts as a store-and-forward mechanism providing guaranteed delivery of short messages to a subscriber, even if the subscriber is inactive when the message was transmitted, by delivering the short messages once the subscriber becomes active. Delivery of all short messages is guaranteed regardless of whether or not the intended subscriber is "on-line" because the transmitted short message is stored within the SMS network and delivered to the intended subscriber from their assigned SMSC when the subscriber becomes available.
A variety of services have been introduced using SMS networks including, for example, integrated electronic mail and fax, integrated paging, interactive banking, and information services such as stock quotes and airline schedule delivery.
In operation, an SMSC receives a short message from any source intended to be delivered to a particular subscriber. When the intended subscriber is not available because, for example, it is turned off or is outside of the service area of the SMS network, the attempt to deliver the short message at that time will fail. In this case, the short message will be retained in the SMS network for a later delivery attempt. Thereafter, when the subscriber finally becomes available, e.g., is turned on or has moved into the service area of the SMS network, the relevant portions of the network (e.g., the mobile servicing center (MSC) and the home location register (HLR)) notify the SMSC to initiate delivery of the stored (i.e., previously failed) short messages.
Fig. 6 shows an exemplary structure of a SMS network 500. Although the following example is described using terms and protocols mainly as defined by the North American standard IS-41 , it will be apparent to one skilled in the art that the example is applicable to any networks that offer store-and-forward type short message service.
The SMS network 500 typically includes one short message service center (SMSC) 501. The SMSC 501 typically includes a storage subsystem to store short messages that had failed to be delivered. The SMSC 501 typically further includes various interfaces (not shown) to receive short messages originating from various sources and protocols, such as a Voice Mail System (VMS) 508, paging networks using, e.g., Telocator Numeric Paging Protocol (TNPP) 509, devices using the Short Message Peer-to-Peer (SMPP) protocol 510 via TCP/IP, e-mail systems using the Simple Mail Transport Protocol (SMTP) 511 , and/or devices using the Telocator Alphanumeric Protocol (TAP) 512. Some of the various sources of the short messages may be gateways to other networks.
The SMSC 501 may further include a gateway/interworking block (not shown) that enables the SMSC 501 to communicate with the rest of the SMS network 500, such as a Home Location Register (HLR) 503 or a Mobile Switching Center (MSC) 505, using the Signaling System No. 7 (SS7) 502. The methods and mechanism of communication in the SMS network 500 are defined by the mobile application part (MAP) layer, which uses the services of the SS7 transaction capabilities application part (TCAP) as the signaling infrastructure of the SMS network 500. The protocol for the signaling is referred to as the IS-41 protocol under the American standard as published by the Telecommunication Industry Association (TIA) or as the GSM MAP under the European standard published by European Telecommunication Standards Institute (ETSI).
The Home Location Register (HLR) 503 includes a database that permanently stores and manages subscriptions and service profiles of users having a subscription to the SMS network 500. Although only one HLR 503 is shown, the SMS network 500 may include two or more HLRs. The SMS network 500 also typically includes several visitor location registers (VLR) 504. A VLR 504 is a database temporarily holding information about visiting subscribers who move into its service area. Thus, a VLR 504 contains information regarding routing information for all subscribers within its service area, and informs the relevant HLR 503 of the availability and routing information regarding its subscribers. The mobile switching center (MSC) 505 obtains subscriber information from the VLR 504 to service visiting subscribers. The mobile switching center (MSC) 505 performs switching and call control functions, and receives short messages from the SMSC 501 for delivery to the appropriate mobile subscriber 507 (shown, e.g., as a cellular phone handset). It is to be understood that, although only one MSC 505 is shown, the wireless network 500 may include two or more MSCs. The base station subsystem (BSS) 506 handles the wireless communications, etg., RF transmission and reception of voice and data traffic, to and from the mobile subscriber 507. The BSS 506 is typically composed mainly of two parts: the base transceiver station (BTS, not shown) which houses the radio transceivers that define a cell and handles the radio-link protocols with the mobile subscriber 507, and the base station controller (BSC, also not shown) which manages the radio resources, and handles radio channel set up, frequency hopping, and handoffs (or handovers as is sometimes referred as). The BSC is the interface between the MSC 505 and the subscriber 507. The subscriber 507, also sometimes referred to as a mobile station (MS), typically consists of mobile equipment (e.g., a cellular phone handset) preferably uniquely identifiable by an identifying number, e.g., mobile identification number (MIN), International mobile subscriber identification (IMSI) and/or electronic serial number (ESN), for the subscriber 507. The mobile equipment may include a storage area, e.g., a flash memory, a ROM, a RAM or the like to hold the unique identifying number within the mobile equipment. In GSM networks, a smart card, typically referred to as a subscriber identity module (SIM) is utilized to store a unique identifying number.
Fig. 7 shows an exemplary flow of a short message through a conventional SMS network. Although Fig. 7 shows only an example of short message delivery to a mobile subscriber, it is to be understood that a mobile subscriber or any other sources may originate a short message. The flow of a mobile subscriber originated short message would involve similar processes as the following mobile subscriber terminated short message example, and would be apparent to one of ordinary skill in the art. The SMSC 601 receives a short message intended for a subscriber
604 from a source of short message 605 which may be any one or more of the aforementioned sources of short messages, e.g., 508-512 of Fig. 6. Upon receiving a short message, the SMSC 601 sends a request for routing information, i.e., an SMS request (SMSREQ), to the HLR 602. The HLR 602 maintains information regarding the availability of the intended subscriber 604 and the appropriate MSC 603 that services the intended subscriber, and sends the information as routing information 608 back to the SMSC 601. The SMSC 601 forwards the short message to the appropriate MSC 603 using the routing information 608 received from the HLR 602, for example, in accordance with the short message delivery point-to-point (SMDPP) mechanism of IS-41 standard. The MSC 603 queries the VLR (not shown) for subscriber information. The VLR may perform a paging and authentication process, and sends the subscriber information to the MSC 603. The MSC 603, using the information received from the VLR, delivers the short message to the intended subscriber 604, and sends a delivery report 612 to the SMSC 601. The SMSC 601 may send the result of the delivery, i.e., the status report 613, to the source of the short message 605 if requested.
When the attempted delivery of the short message has failed because, for instance, the intended user was out of the service area, or had his or her communication device turned off, the MSC 603 informs the HLR 602 of the failure. The HLR 602 then turns on an SMS notification indicator flag for the subscriber, and the SMSC 601 retains the failed message for a later delivery attempt.
Fig. 8 shows a pending short message delivery process in a conventional short message service network after the mobile subscriber becomes available for delivery of the retained messages. In particular, in Fig. 8, when the subscriber 704 turns his or her handset on or comes within the service area, the subscriber's handset sends a registration signal 709 to the MSC 703. The registration signal 709 may or may not include authentication process. Upon receiving the registration signal 709, the MSC 703 informs the
HLR 702 (or the VLR 711 ) of the availability of the subscriber 704 by sending a subscriber available signal 708. Because the SMS notification flag for the subscriber is on, the HLR 702 or the VLR 703 sends an SMS notification (SMSNOT) message 705 in case of networks implementing IS-41 standard, or an equivalent notification alerting the fact that the subscriber has become available in networks implemented in accordance with other standards, to the SMSC 701 assigned to service that particular intended subscriber 704.
The SMSC 701 then sends a delivery request 706 to the MSC 703 via, for example, the SMDPP protocol in the IS-41 standard. The MSC 703 finally delivers the short message 710 to the subscriber 704, and sends a message delivered message 707 back to the SMSC 701 to confirm and finalize the delivery of the short message. The SMSC 701 may further send a delivery report to the source of the short message if it was requested.
The Wireless Application Protocol (WAP) attempts to standardize a mechanism for two-way communications. However, WAP requires that a special browser be loaded on the handset, and requires the user to enter into a dedicated 'browser mode' in order to interact with 2-way services.
There is a need for a standardized solution allowing short message communications between wireless devices and application servers on the Internet without the need for a specialized browser, while making use of existing communication standards utilized by standard SMSCs, e.g., SMPP.
SUMMARY OF THE INVENTION
In accordance with the principles of the present invention, a gateway comprises a first communication path to accept a short message from a short message service center. A translation module inserts the short message into an
HTTP protocol message. A second communication path transmits the HTTP protocol message to at least one URL.
A method of communicating between a wireless device and an application program on an Internet Protocol server in accordance with another aspect of the present invention comprises sending a short message from the wireless device to the Internet Protocol server. The short message is routed using a wireless protocol message. The short message is conveyed to the Internet Protocol server using an HTTP protocol POST message. A mobile to HTTP gateway application in accordance with yet another aspect of the present invention comprises an SMPP relayer, a message director to process messages from the SMPP relayer, a poster collector to obtain at least one target poster, and a poster.
BRIEF DESCRIPTION OF THE DRAWINGS
Features and advantages of the present invention will become apparent to those skilled in the art from the following description with reference to the drawings, in which:
Fig. 1 illustrates an exemplary system adapted to push mobile originated (MO) messages to an IP (web) sever, in accordance with the principles of the present invention.
Fig. 2 depicts a mobile-to-HTTP gateway (MHG) as a 'black box' which is easily installed into existing systems to enable bi-directional communication between a mobile device and one or more IP servers within the parameters of standard protocol communications (e.g., SMPP and HTTP) between system elements, in accordance with the principles of the present invention.
Fig. 3 shows a message flow between the system elements shown in Fig. 1. Fig. 4 shows software elements of an exemplary MO-HTTP
Gateway (MHG) 100, in accordance with the principles of the present invention.
Fig. 5 shows various classes in an exemplary embodiment of a MHG 100, in accordance with the principles of the present invention.
Fig. 6 shows relevant portions of a conventional short message service network.
Fig. 7 shows a process of short message flow within a conventional short message service network.
Fig. 8 shows a pending message delivery process in a conventional short message service network.
DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS
The present invention provides a mobile-to-HTTP protocol gateway (MHG, or "MO Gateway") which translates between standard wireless protocol commands (e.g., SMPP from an SMSC), and an application server on the Internet (i.e., a "Web Server").
An MHG in accordance with the principles of the present invention allows any standard 2-way SMS capable handset to interact with specialized web applications. Using an MHG, it is no longer necessary for a user to launch a phone browser in order to access the services. Moreover, an MHG provides a simpler model than WAP for developing 2-way applications.
The disclosed embodiment of an MO-HTTP gateway uses the SMPP protocol. However, the principles of the present invention relate equally to other 2-way messaging protocols, e.g., ReFlex for 2-way pagers.
The MO-HTTP gateway provides a mechanism for developers to produce 2-way wireless applications using familiar Web-based tools and methodologies. The MO-HTTP gateway hides the details of communicating with the wireless network by interacting with applications using familiar HTTP posting. By adopting SMS and SMPP for its reference implementation, the MO-HTTP gateway avoids problems common to the WAP environment. Utilizing an MHG in accordance with the principles of the present invention, a developer may create mobile applications using standard Web development tools, e.g., Java Servlets.
Fig. 1 illustrates an exemplary system adapted to push mobile originated (MO) messages to an IP (web) sever using standardized equipment and message protocols together with an MHG 100, in accordance with the principles of the present invention.
In particular, as shown in Fig. 1 , a mobile (i.e., wireless) device 120 communicates with an appropriate wireless network 122 using any appropriate wireless standard protocol. In turn, the wireless network 122 communicates with a short message service center 124 using standard IS-41 communication protocol messages.
Appendix A attached hereto is a document entitled "SHORT MESSAGE PEER TO PEER (SMPP) INTERFACE SPECIFICATION" describing relevant features of mobile originated communications using Short Message Peer- to-Peer Protocol (referred to herein as SMPP).
The SMSC 124 communicates with a wireless internet gateway 126 via SMPP protocol commands in substantial conformance with the SMPP interface specification attached hereto in Appendix A. A suitable wireless Internet gateway 126 is described in co-owned
U.S. Appl. No. 60/ , , filed on , 2000, entitled "Wireless Internet
Gateway", by Richard Smith, the entirety of which is expressly incorporated herein by reference.
The wireless Internet Gateway 126 communicates with a MHG 100 using Java Remote Method Invocation (RMI) technology to provide server-to- server capability.
The mobile to HTTP Gateway (MHG) 100 translates standard format
RMI protocol commands from the wireless Internet gateway 126 into HTTP protocol commands, and directs the same to an appropriate Internet protocol (IP) server (i.e., web application server) 152, 154, and/or 156 in communication with the Internet 150.
Fig. 2 depicts the MHG 100 as a 'black box' which is easily installed into existing systems to enable bi-directional communication between a mobile device 120 and one or more IP servers 152-156 within the parameters of standard protocol communications (e.g., SMPP and HTTP) between system elements, in accordance -with the principles of the present invention.
In particular, as shown in Fig. 2, the mobile to HTTP gateway (MHG) 100 preferably is bi-directional in that it generates HTTP protocol POST commands to an application program on a relevant IP server 152-156 based on mobile-originated messages, and translates responses to the same from HTTP protocol back into standard format SMPP messages for forwarding back to the relevant mobile device 120.
In accordance with the principles of the present invention, an HTTP protocol POST command is used by the MHG 100 to forward a request from the mobile device 120 to the relevant web IP server(s) 152-156. The HTTP protocol POST command is well known and documented in, e.g., RFC2068 and later IETF RFC's on the subject. This document is publicly available, e.g., at http://ietf.org/rfc.html. In particular, as is known within the HTTP protocol, an HTTP protocol POST command is used to request that a particular destination web IP server 152-156 accept the entity enclosed in the request (i.e., the mobile device 120) as a new subordinate of the resource identified by the Request-URI in the Request-Line. The HTTP protocol POST command is designed to allow a uniform method for various tasks, e.g., to allow annotation of existing resources, to allow posting of a message to a bulletin board, newsgroup, mailing list, or similar group of articles, to provide a block of data, such as the result of submitting a form, to a data-handling process, and/or to extend a database through an append operation. The actual function performed by the HTTP protocol POST method is determined by the particular web IP server 152-156, and is usually dependent on the Request-URI. The posted entity (i.e., the wireless device 120) is subordinate to that URI in the same way that a file is subordinate to a directory containing it, a news article is subordinate to a newsgroup to which it is posted, or a record is subordinate to a database.
The action performed by the HTTP protocol POST command might not result in a resource that can be identified by a URI. In this case, either 200 (OK) or 204 (No Content) is the appropriate response status, depending on whether or not the response includes an entity that describes the result. If a resource has been created on the origin server, the response should be 201 (Created) and contain an entity which describes the status of the request and refers to the^new resource, and a location header.
Responses to the HTTP protocol POST are not cachable, unless the response includes appropriate Cache-Control or Expires header fields. However, the 303 (See Other) response can be used to direct the user agent to retrieve a cachable resource.
With respect to the MHG 100, the submitted HTTP protocol POST command includes mobile_num, resp_track_id and body fields. Also embedded within the HTTP protocol POST command is a CGI name/value pair providing information about the particular request from the mobile device 120.
A response back to the mobile device 120 originates from the relevant web IP server 152-154 synchronously in response to the received HTTP protocol POST command.
Particular features of the standard SMPP utilized by various aspects of the present invention include the following:
• Use of a registered_delivery flag.
• Use of an "$R" trigger in the body of every MO message indicating a source-unique tracking number for SMPP v3.3, version 3.4 provides an explicit field for a tracking number and therefore the trigger is not required. • Use of user responses contained within the stat component of a standard delivery receipt.
• Use of message types identified by the esm_class field.
Fig. 3 shows an exemplary message flow between the system elements shown in Fig. 1.
In particular, the following steps 1 to 12 are depicted between system elements in Fig. 3 as an example of message routing between a mobile device 120 and a relevant web IP server 152-154.
Step 1
The mobile device 120 sends a short message to a pre-defined address (e.g., 'info', or 4636). If the body of the short message is empty, or if the body contains a special string such as 'menu', then ultimately a menu would be sent by the HTTP Application on the relevant web IP server 152-156 to the mobile device 120. Other bodies may be used to, e.g., identify global commands, or provide context-sensitive information from the mobile device 120 to the HTTP application on the web IP server 152-156. Requirements for body content depend on the particular HTTP application as it exists on the particular web IP server 152- 156.
Step 2
The SMSC 124 routes the short message to an ESME (e.g., the wireless Internet gateway 126) for delivery using a standard SMPP protocol DELIVER_SM message. As disclosed, the MHG 100 utilizes the following fields of the DELIVER_SM command: service_type, source_addr, destination_addr, registered_delivery_flag, esm_class, and shortjnessage.
In particular, the MHG 100 utilizes the service_type parameter to indicate the SMS application service associated with the message. For instance, the service_type field may be populated with the value 'page'.
The source_addr is the address of the SME (e.g., mobile device 120) that originated the short message. As disclosed, the source_addr is the Mobile Identification Number (MIN) of the mobile device 120 making the request. The destination_addr is the address of the destination SME. As disclosed, the destination_addr may be assumed to be '4636' as indicated in Step 1 above. This address is used to route the request to the appropriate HTTP URL. The registered_delivery_flag indicates if an SME Acknowledgement is necessary. As disclosed, the registered_delivery_flag is set to a default value of 0, which indicates that no delivery receipt is requested. The esm_class indicates the message type and Enhanced network services.
The short_message field contains up to 254 octets of short message user data.
Thus, key fields of the DELIVER_SM command may be populated by the MHG 100 as follows: service_type: page source_addr: mobile's MIN destination_addr: 4636 registered_delivery_flag: 0 esm class 0 short nessage: $R[new ref id]$M[message]
The $R in the short message is optional, and is applicable for use with SMPP v3.3. The $R may be used when correlating responses from the mobile device 120 to Reply-request messages from the application program on the relevant web IP server 152-156. For consistency, the $R is preferably always present in short messages from the mobile device 120.
Step 3
When the wireless Internet gateway 126 receives the SMPP message from the SMSC 124, it creates a DELIVER_SM object. The DELIVER_SM object is forwarded by the wireless Internet gateway 126 to any relevant remote applications that are registered to receive messages on a specified ports/link ID, e.g., the MHG 100 if the MHG 100 is registered with the wireless Internet gateway 126 to receive SMPP messages. The transmission is accomplished through an RMI callback mechanism.
Step 4
The MO-HTTP Gateway (MHG) 100 receives the DELIVER_SM message object from the wireless Internet gateway 126, and formulates an HTTP protocol POST command message to a web server on the Internet 150 to convey the message content. The MHG 100 can direct the HTTP protocol POST command messages to one or to multiple URLs.
The particular web server to reference is determined by the included destination address, assuming that the SMPP destination address field contains the targeted number, e.g.,, '4636'. The HTTP protocol POST command message may be routed based on the SMPP port utilized.
As disclosed, exemplary name/values that may be utilized in the HTTP protocol POST command message sent to the web server are the mobile_num, resp_track_id, and body. The mobile_num may be the mobile identification number (min) identifying the originating mobile number of the relevant mobile device 120.
The resp_track_id may be the reference ID (ref id) for user acknowledgements used to track questions and related answers.
The body may be the payload content from the mobile device 120 included in the message body field. As embodied, by default, only SMPP messages with esm_class values of '0' and '.16' are forwarded by the wireless Internet gateway 126 to the web IP server 152-156. That is, only new mobile originated requests and/or menu responses are forwarded. If, for instance, the SMPP message type is '16', then the resp_track_id variable may contain the reference ID. On the other hand, if the message type is '0', then the reference ID is not passed to the relevant web IP server(s) 152-156.
Utilization of the SMPP message type and inclusion/non-inclusion of the reference ID reduces network traffic and resource requirements, and simplifies development on the web side.
Step 5
The relevant web server in the Internet 150 receives the HTTP protocol POST command information, which may be handled by the actual CGI/Servlet routine specified by the URL in Step 4.
The handling servlet may create sessions for each mobile device such that the current state of the mobile device may be preserved, allowing meaningful content to be transmitted. Example wireless web applications may include menu-based services, games, and information services.
After the servlet of the web server in the Internet 150 receives the HTTP protocol POST command, the servlet synchronously returns data through the HTTP stream back to the MHG 100. The text returned by the servlet may be delivered to the mobile device 120 as a standard SMS message. The returned data may be contained within an <SMS> and </SMS> tag-set. The <SMS> and </SMS> tags are special tags used by the MHG 100 to denote SMSC Type data. As the number and/or variety of applications increase, additional tags may be implemented.
As disclosed, there are several fields embedded within the <SMS> and </SMS> tags: mobilejium, resp_track_id, and body.
The mobilejium field includes a mobile identification number of the mobile device 120 that a relevant short message is destined for.
The resp rackjd field includes a unique identification number generated by the servlet. The MHG 100 returns this id to the servlet for responses. The body field includes the text to send to the desired mobile device 120. If the body field is blank, then nothing will be sent to the mobile device 120.
If the servlet requires a single-button user response (e.g., for a menu), then the "<RESP_TRACK_ID value- x'>" tag can be included prior to the </SMS> tag. This tells the system that a menu is required and that the specified unique tracking number should be used.
When the user of the mobile device 120 responds to this message, this same tracking id may be returned in the respjrackjd cgi variable.
For ease of description of some of the following steps, an example using the scenario described above is introduced wherein the servlet returns the following:
<SMS> Do you like cookies (Y/N)?
<RESP_TRACK_ID value="1234"> </SMS>
Step 6
After having posted its data to the web server in the Internet 150, the MHG 100 receives a response from the same connection, as described in Step 5. A standard SUBMIT_SM MT message is generated from the text received within the <SMS> tag set.
In particular, the SUBMITjSM message is issued by the ESME (e.g., the wireless Internet gateway 126) to submit a short message to the SMSC 124 for transmission to a specified mobile device 120. In creating a SUBMITjSM message destined for the SMSC 124, the conventional SMPP Protocol specification is followed, with the exception of the following mapping implemented between the SUBMITjSM message and data received in the <SMS> and </SMS>.
A registered_delivery_flag in the SUBMITjSM message informs the SMS that the ESME (wireless Internet gateway) 126 requires a notification when the message has been delivered. If the RESP_TRACK_ID is provided (i.e., contains a value), then the registeredjdelivery_flag field is set to '8' for the MHG 100 indicating 'SME Manual/User Ack requested', and a special tag of R$[track id] is included in the message body. Preferably, this same tracking id will be returned in the response message from the mobile device 120. A shortjnessage in the SUBMITjSM message is the payload containing up to 160 bytes of data that should be transmitted to the mobile device 120. An empty body indicates that no message is to be sent to the mobile. If the RESP_TRACK_ID value is set, then a special tag of "$R" concatenated with the value from the RESP_TRACK_ID and the tag "$M" must be prepended to the short message.
The other fields of the SUBMITjSM message are used as conventionally known and described in the SMPP Protocol.
Step 7
The SMSC 124 receives the SUBMITJSM message and delivers a short message, with manual ack request, to the mobile device 120.
Step 8 The mobile device 120 responds to the "Do you like cookies?" question, e.g., by pressing '9' for Yes.
Step 9
The SMSC 124 receives the response from the mobile device 120 and formulates a DELIVERJ3M message. The formulated DELIVERJ3M message is forwarded to the wireless Internet gateway 126.
Key parameters in the DELIVERJ3M message may be populated as follows:
• service_type: page • sourcejaddr: [mobile's MIN]
• destinationjaddr: 4636
• registered_delivery_flag: 0
• esm_class: 16
• shortjnessage: R1234$[Response Value]
The response code is shown directly after the $M value.
Step 10
The wireless Internet gateway 126 receives the DELIVER _SM message from the SMSC 124, converts the DELIVER _SM message into an object, and forwards the DELIVERjSM message to any listeners (e.g., the MHG 100). In the disclosed example, the MHG 100 may be listening to the wireless Internet gateway 126 on a specified port, and therefore receive the DELIVERjSM message from the specified port.
Step 11
The MHG 100 receives the DELIVERjSM object, and determines if the esm_class is '16'. If so, the short message is translated by the MHG 100 and forwarded to its web listeners. A URL is associated with either the SMPP link ports or the destination address through a configuration file of the MHG 100. The MHG 100 therefore formulates an HTTP protocol POST command message to the appropriate URL(s).
As disclosed, the HTTP protocol POST command message may contain the following name/value pairs: mobile_num=[mobile num] resp_track_id=123 body=9
To ease the burden of the web developer, the MHG 100 may include the response code only for messages where esm_class='16'. Thus, if the esm_class is not '16', the response code need not be included. Regardless of how the MSG 100 receives it, it need pass only the response code in the body field.
Step 12
The servlet associated with the specified URL receives the HTTP protocol POST command message from the MHG 100.
The servlet may retrieve a session object for the particular value of the mobilejium, and determines that it had just asked the mobile device 120 about a cookie preference.
The servlet may confirm that the query's tracking ID correlates to the respjrackjd value. Thus, the servlet knows that the response at hand is in response to that question. Since the body contains the content '9' (or Υ' or other suitable response), the servlet may rightfully conclude that the user of the mobile device 120 (who input the '9' response) likes cookies. A conversation or communication between the mobile device 120 and an application on one or more particular web IP servers 152-156 may continue on as described in steps 1 to 12 indefinitely.
Fig. 4 shows software elements of an exemplary MO-HTTP Gateway (MHG) 100, in accordance with the principles of the present invention.
In particular, as shown in Fig. 4, the software elements of the MHG 100 include an SMPPRelayer 402, a MessageDirector 404, a PosterCollection 406, a Poster 408, and a Servlet 410.
In accordance with the principles of the present invention, one or more SMPPRelayers 402 will register as listeners to specified link IDs of the wireless Internet gateway 126.
In message 421 shown in Fig. 4, SMPP messages are sent by the wireless Internet gateway 126 to the SMPPRelayer 402 of the MHG 100 as they are received. In message 422, the SMPPRelayer 402 forwards each message to a
MessageDirector 404.
In message 423, the MessageDirector 404 retrieves a Poster 408 from the PosterCollection 406, and then in message 424 tells the Poster 408 to process the SMPP Message. In message 425, the Poster 408 converts the SMPP Message into an HTTP protocol POST command request 425 to a specific universal resource locator (URL), and receives return results back in message 426.
In message 427, the Poster 408 returns the results back to the SMPPRelayer 402, so that it will be sent to the mobile device 120, as depicted in message 428.
Fig. 5 shows various classes in an exemplary embodiment of a MHG 100, in accordance with the principles of the present invention.
In particular, as shown in Fig. 5, the MHG 100 includes a MOHGateway class 502, an SMPPRelayer class 402, a MessageDirector class 404, a PosterCollection class 406, and a Poster class 408.
The MOHGateway class 502 defines "main()", and upon execution will create the SMPPRelayer class 402, the MessageDirector class 404, and the PosterCollection class 406, assigning references to one another as appropriate.
The PosterCollection class 406 accesses a standard application resource class to determine the number of Posters 408 required, as well as the desired configuration of each Poster 408. The PosterCollection class 406 creates the Posters 408 . and provides references to the Posters 408 through a getPoster(SMPPMessage msg) method.
The SMPPRelayer class 402, the MessageDirector class 404, the PosterCollection class 406, and the Poster 408 each receive an I Logger object for recording information.
While the invention has been described with reference to the exemplary embodiments thereof, those skilled in the art will be able to make various modifications to the described embodiments of the invention without departing from the true spirit and scope of the invention.
APPENDIX A
SHORT MESSAGE PEER TO PEER (SMPP) INTERFACE SPECIFICATION
1. Introduction
1.1 Purpose
This document specifies a generalized interface between an SMSC and non-PLMN SMEs. Typically it specifies the interface used between the SMSC and Paging or VoiceMail systems. The command format defines a Short Message Peer to Peer Protocol (hereafter referred to as SMPP). This protocol may be implemented over a variety of underlying interfaces/communications protocols, namely X 25, or TCP/IP.
Using this interface, an external Short Message Entity such as a Paging or VoiceMail system may bind/ unbind to the SMSC submit , cancel, replace and query short messages. The SMSC forwards responses and short messages (e.g delivery receipts, pager messages) to the external Short Message Entity
1.2 Scope
This document is intended for designers and implementers of the interface between an SMSC and SMEs (Short Message Entities).
1.3 References
[1] SMPP Applications Guide Version 1 3 Aldiscon Limited [2] Technical Realisation of the Short Version 4 6 0 European Telecommunications Message Service Point to Point, Standards Institute. (ETSI) GSM 03 40
[3] SMPP Provisioning Interface Version 1 1 Aldiscon Limited Guide [4] SMPP Provisioning Application Version 1 1 Aldiscon Limited Guide
.4 Glossary
ACK Acknowledgement
AI M Application Interface Module
API Application Programming Interface
CDR Call Detail Record
ESME External Short Message Entity Refer to note[ 1 ]
M5 Message Bureau - This is typically an operator message bure?
MSC Mobile Switching Centre
MS Mobile Station - K Negative Acknowledgement
SME Short Message Entity
SMSC Short Message Service Centre
SMPP Short Message Peer to Peer Protocol
VC Virtual Connection Refer to note [2]
VMA VoiceMail Alert or Message Waiting Indication (MWI)
VPS Voice Processing System
Note 1 External Short Message Entity I n the context of this document this refers to such external sources and sinks, of short messages as Voice Pi ocessmg oi Message Hanό rig -.impυters It specificnl k excl udes SMEs which ai c pan o! the iniei facc to the PLMN
Note 2 VirU'jl Connection This iefei - to a \ n tual circuit in the λ 25 inipl eme inii n
2. Functional overview
Inteiv.orking between the SMSC and ESMEs are ca'egoπsed as
(protocol) mess e from ESMEs to the SMSC, and (protocol) messages from SMSC to ESM Es
Figure 2 1 illustrates these categories which are defie in the following sections
Figure imgf000023_0001
Figure 2-1 : SMSC & ESME Interworking using X.25
2.1 ESMEs to SMSC
Subscribers to a GSM Network may receive sho". messages from ESMEs The means whereby these messages are originally generated within or are submitted to the ESME is beyond Ihe scope of this document, but the following are possible examples
Calls directly dialleo or diverted to a Message Bureau operator and forwarded to the SMSC
Messages originated from terminals at a corpt'ate customer s site
Voice-Mail Alerts originating for a VPS mdica: 'ig voice messages at a customer's mailbox
Messages that are submitted to the SMSC bv an ESME are immediately acknowledged This rjc no/v ledgmc nt inform', the ESME that the- mc-wj" submitted is a valid message (ι fields ^r set to valic values) In addition to "Message Submission", an ESME may "Query' the SMSC for the status of previously submitted messages, 'or cancel delivery of previously submitted messages usinc the Message ID returned by the SMSC when the particular message was originally submitted
2.2 SMSC to ESME
The SMSC can deliver short messages to the ESME A typical example would be the SMSC sending short messages to an MB for onward delivery as pager messages
In addition the SMSC may use the 'deliver short message mechanism to generate a Delivery Receipt (See SMPP Apolications guide [1] for details)
2.3 Backward Compatibility.
Where changes have occurred in the Interface Specification between versions, the ' ιnterface_versιon ' provided in the "Bind" primitive is used to discriminate between version numbers for backward compatibility
3. Interface Specification
The interface between the SMSC and ESME may be based on X 25, or TCP/IP For details of a particular implementation refer to tne SMPP Applications Guide [1]
The interface between the SMSC and the ESMEs regardless of the underlying network type will be a client- server model, in which, tne SMSC has the server role and the ESME the client role In the remainder of this document, "client ' is referred to the system that initiates a connection and "server" is referred to the system that services a connection
Note that this document specifies the interface at the network layer However, this interface may be implemented over the transport layer Figure 3 1 provides a pei spective on the scope of this document
Figure imgf000025_0001
Figure 3-1 : Model of SMSC-ESME Interface
4. Protocol Messages
All messages sent, either from ESME to SMSC, or SMSC to ESME, will generate immediate responses
As previously mentioned, a message submitted from an ESME to SMSC can generate up to two responses These are an application level ' resp . and where the message was submitted to the SMSC with the registered delivery -lag set, a status report generated after the submitted short message reaches its final stale
Figure 4 1 depicts a possible sequence of these messages (e g for an X 25 or TCP/IP based implementation)
ESME SMSC
Figure imgf000026_0001
Figure 4.1 Sample Message Sequence
For details of ESME/SMSC protocol message sequences refer to the SMPP Applications Guιde[1 ]
Use of Primitives
This section describes an overview of the mechanism for exchange of primitives between the ESME and SMSC For details for a particular network implementation, such as X 25 or TCP/IP, see the SMPP Applications guide [1 ]
5.1 Initiation of Communication with SMSC
The ESME establishes communication vith the SMSC, by an implementation s ecific mechanism (see SMPP Applications guide [1])
Two 'virtual connections' are required One will be used for messages originating in the ESME system, and the response messages for them (e g submιt_sm, query_sm, cancel_sm etc ), while the other will be used for messages originating in the SMSC and their responses (e g delιver_sm)
Once a 'virtual connection' has been established, each of the two processes on the ESME should send either a Bind-Transmitter request or a Bind-Receiver request If a Bind Transmitter request is sent, the process on the SMSC that receives it will receive messages originating in the ESME system If a Bind Receiver request is sent, the process on the SMSC that receives it will forward messages to the ESME Responses will invariably be returned on the same 'virtual connection' as the corresponding request messages
The following diagram illustrates this
virtual
Figure imgf000027_0001
Communications - < Provider «8.X25. TCRflP
SMSC Application SMSC Application (bound as Transmittei) (bound as Recen ei)
SMSC Kernel
Figure 5-1 ESME/SMSC Communication 5.2 Steady State Communication with the SMSC
Once a connection has been established and an authenticated bind' request has been acknowledged, further requests/responses can be exchanged A resoonse will be issued for each request
5.3 Terminating Communication with the SMSC
If at any time, either the ESME or the SMSC needs to terminate communications with the other it should issue an 'unbind request over the appropriate 'virtual connection This enables the receiving system to break communications in an orderly fashion For both virtual connections', the unbind request should be acknowledged by the receiving system before the virtual connection is closed
5.4 Error Handling and Retransmission
On receipt of a message the receiving system will ensure that the message type is valid and then check where appropriate, the validity of the fields of the message body If the message :ype or the values of the fields are incorrect an error code indicating this will be returned in the response message to the originator A table of error and status codes can be found in Section 7 1
Should an error be generated by the underlying communication network or the application being used on the host machine it is the responsibility of the sender of the message lo retransmit to the destination The originator should maintain a retry count and when this limit has been reached on a single message attempt the connection should be closed The ESME should attempt to re-connect The re-connect method will be the same as the startup protocol
The Sequence number in the message header should be generated by the ESME This number should be incremented monotonically with each new transaction This field w,ll be preserved by the receiving system and returned in the acknowledgement message This allows for transaction mapoing and the detection of duplicate messages
5.5 Protocol Message Types
The following message types are supported by the SMPP The ' command id" field of the protocol message is set to specify the particular message
The detaileo formats of these messages are defined m Section [6 ]
5.5.1 ESME to SMSC
The followinc messages are sent from the ESME to the SMSC om nv.uKl 1 1) Description bi nd T is command is issu the I , SM E to infoi m the SMSC that th,- CSM L
Figure imgf000029_0001
is cs to act ,ιs a Scrs ci bind tjcnsmittei This commaiid is issued
Figure imgf000029_0002
the ESME to lnlorm the SMSC that thι-> ESM E wishes to act as a Client in cind This command is issued by the ESME to inform the SMSC that (Ins ESME wishes to terminate its activities subm .ι_sm This command is issued by the ESME to submit a short message to tl e SMSC oi tiansmission to a specified subscribe! suhip . multi This command is issued by the ESME to submn a shoit message to the SMSC foi tiansmission to a specified subscribe! or DiSTibuuon List oi Mult iple Recipients del ιver_sm_ι esp This command is issued by the ESM E to ac knowledge the leceipt oi a
Figure imgf000029_0003
que ~. _sm Tins command is issued by the ESME to query the status of a pieviously submitted Short Message queιy_last_ιnsgs This command is issued by the ESME to queiy the message ids of a number of messages in the system foi a subscribers originating address queι y_iu->g_detaι ls Tins command is issued by the ESME to query all aspects of a pi eviously submitted Short Message cancel sm Tins command is issued by the ESME to cancel one or more outstanding short messages lor a subscπber The command mav speci fy a particulai message or all messages foi a parti-tilar soui ce and destination repi This command is issued by the F.SM L to replace an outstanding.! shoπ message for a subscriber
Table 5-1 Message Types from ESME to SMSC
Figure imgf000030_0001
Table 5-1: Message Types from ESME to SMSC
5.5.2 SMSC to ESME
The following messages are sent from the SMSC to the ESME
Figure imgf000031_0001
Figure imgf000031_0002
Table 5-2 Message Types from SMSC to ESME
Figure imgf000032_0001
Table 5-2. Message Types from SMSC to ESME
6. Message Layouts.
The general format of all protocol messages exchanged between the ESME and the SMSC will consist of a message header followed by a message body
6.1 Definitions
In the following descriptions the following definitions will be used
Integer a signed value with the defined number of bytes The bytes will always be transmitted MSB first
C-Octet String a series of ASCII characters terminated with the NUL character
C-Octet String a series of ASCII characters terminated with the NUL (Decimal) character
The octet string should represent a sequence of decimal digits
C-Octet String a series of ASCII characters terminated with the NUL (Hex) character
The octet string should represent a sequence of hexadecimal digits
Octet String Series of octets which may/may not be null terminated The octets themselves can contain nulls
Where reference is made belovv to NULL settings of Octet-String fields this implies that the field consists of a single NUL character, i e an Octet encoded with value zero
Whei e reference is made to NULL settings of Integer fields this implies that the field is unused and can be set to 0
.2 Message Header Format
Element Size T\ pe Ocsei iptioπ bvtc
Command Length Inie-iei This field defines the total length ofthe packet including the lcmith field
Command II") Inlcccr 'I he field indicates the
Figure imgf000034_0001
of request to be invoked by this protocol message, e g 'κιιhιιιιl_.κi)} . 'quen_sm' etc
Λ request command ukntilϊei will be allocated lo each request pnmime I he following lange is leseived foi these puiposcs Oh to ITIi
Λ lesponsc command identifier will be allocated to each response primitive I he following range is lescned foi these puiposcs O8O OOOOOI1 toϋSOOOOOOI
(In geneial a response command idenlifiei will be identical to the coπcsponding request command identifier but
Figure imgf000034_0002
for details ol the aciual IDs see Section 72
Command Siatus I metier This field will indicate the success or failure of a lequest This field is only relev nt in the response message, so in the lequest message 11 should contain NULL A list of ciroi codes is given in Section 7 I
Sequence \o Imc-tei A sequence number allowing lequcsts and responses to be associated Allocation ot this reference number is lhe responsibility of the oiig atoi. who should ensure that the number is monotomcally mcieasing for each submitted request The associated 1 espouse packet must pieseπe this field
The lan c is 01 h to 071 FFFFFFh
Optional mixed A list of parameters coi responding to the Command type Message Body These fields are detailed in section 63
Table 6-1: Message Header Format
6.2.1 "GENERIC_NAK" Command
This is a generic response to a command for which the message header is invalid
6.2.1.1 "GENERIC_NAK" Syntax
Apart from setting the header fields, no other parameters are required in the data body 6.3 Message Body Formats
6.3.1 "BIND" Operation
There are two variations of the Bind Command namely "bindjransmitter" and ' bιnd_receιver" The Command ID setting specifies whether the Bind is the "bιnd_transmιtter" or "bιnd_receιver ' primitive
The purpose of the Bind operation is to register an instance of an ESME with the SMSC system, and inform the SMSC that the sending SME wishes to use this virtual circuit for commands initiated by the SMSC To this end the Bind must provide key information within the "message" field of the protocol message
The password must match the SMSC administration password for the instance of the ESME
The system_id and system_type provide a unique identification of the interface
Associated with the interface is a unique default "callback address" which is configured via SMSC administration The "callback address' is employed as the default source address, in cases where the actual ESME address is not supplied
The interface may act as either an ESME in it's own right or as an agent for the transport of messages to or from other ESME's (See figure 6-1 )
In it's role as agent, the range of ESME addresses served by the interface is specified via a "regular expression' (See Note 2) This may be defined explicitly in the bind request or configured by SMSC administration
Note 1 For the bindjransmitter the addr on, addr_nρι and range of SME addresses (address_range) is not relevant and should be set to NULL
Note2 The "regular expression' in this context is a text pattern representing a range of addresses or a specific address For further detail refer to the SMPP Application Guιde[1 ]
Figure imgf000035_0001
Figure 6-1 ESME/SME address routing to/from SMSC 6.3.1.1 "BINDJ ECEIVER" Syntax
These parameters are included in the "message field of the protocol message when the 'command id field is "hind receiver'
Figure imgf000036_0001
Table 6-2: bind receiver
6.3.1.2 "BIND_RECEIVER_RESP" Syntax
Apart from setting the header fields the acknowledge message to a 'bιnd_receιvef requires only a single parameter
Figure imgf000036_0002
Table 6-3 bind receiver resp 6.3.1 .3 " BI N D ΓRANS ITTER" Syntax
These parameters are included in the "message" field of the protocol message when the "command id ' field is "bindjransmitter"
The Message layout is identical to the "bind eceiver" Message Layout except that the addr on, addr_npi and the range of SME addresses(address ange) are not relevant and should be set to NULL
6.3.1 .4 "BIND_TRANSMlTTER_RESP" Syntax
The Message layout is identical to the bind eceiver esp' Message Layout except that the 'command id field setting specifies "bιndjransmιtter_resp'
6.3.2 "UNBIND" Operation.
The purpose of the Unbind operation is to deregister an instance of an ESME from the SMSC system
6.3.2.1 "UNBIND" Syntax
Apart from setting the header fields, no other parameters are required in the data body
6.3.2.2 "UNBIND_RESP" Syntax
Apart from setting the header fields, no other parameters are required in the data body
6.3.3 "SUBMITjSM" Operation.
This command is issued by the ESME to submit a short message to the SMSC for transmission to a specified subscriber
When a real source address is provided in a registered submιt_sm request, the source address can be used as the destination address for a delivery receipt It can also be used in identif ying the message source in a CDR This source address must fall in the range of addresses associated with the bind command
Where the originator of messages from the ESME is the ESME itself, or where the ESME does not have a real source address, the source address fields may be defaulted to NULL, and tre source address will be taken from the SMSC administration ' callback address for the particular ESME instance
The submιt_sm operation can also be used to replace a short message w ch has previously been submitted This is achieved by setting the replace ιf_presenl lag lo 0x01 in the Int-nace The first message found in the SMSC whose source and destination match those given in the su-.τιt_sm will have it's text replaced by the text in the short_message field of the submιt_sm
6.3.3.1 "SUB!VHT_SM" Syntax
These parameters are included in the message field of the protocol message when the command id ' field is "submit sm
Figure imgf000038_0001
Table 6-4 submit sm Size
Field Name Type Description (bytes) destination addr Var C-Octet Destination address of this short message For Max 21 String mobile terminated messages this is the SME
(Decimal) address of the target subscriber
This variable length field may have leading spaces
Where not required this should be a single NULL byte esm class Integer Indication of message type
For the submιt_sm command this field is unused and should be set to NULL
For the delιver_sm commano however, this field may identify tne message as a delivery receipt protocol ID Integer GSM Protocol ID (See GSM 03 40 [2] 9 2 3 9) pπoπty lag Integer Designates the message as priority Setting priority on a message moves it to the top of the SMSC message queue for that subscriber
0 = non-priority (default)
1 = priority >1 =Reserved schedule_delιveryjιme 17 C-Octet The absolute date and time at which delivery of String this message must be attempted
The format is defined in section 7 5
Where not required this should be a single NULL byte valιdιty_peπod 17 C-Octet The expiration time of this message This is String specified as an absolute date and time of expiry
The format is defined in section 7 5
Where not required this should be a single NULL byte regιstered_delιveryjlag Integer Flag indicating if the message is a registered short message and thus if a Delivery Receipt is required upon the message attaining a final state 0=No receipt required (non-registered delivery) 1 =Receιpt required (registered delivery) >1 =Reserved replace_ιf_presentjlag 1 Integer Flag indicating if submitted message should replace an eyistmg message between the specified source and destination
0=Don't Replace (default)
1 =Replace
> 1 =Reserved data_codιng Integer GSM Data Coding-Scheme ( See GSM 03 40 [2] 9 2 3 10)
Table 6-4 submit sm
Figure imgf000040_0001
Table 6-4: submit sm
6.3.3.2 "SUBMIT_SM_RESP" Syntax
These parameters are included within the "message" field of the protocol message when the "message t tvynpee"" f fiieelldd i iss ""ssuubbmmiιtt_ ssmm_ rr&esspn""
Figure imgf000040_0002
Table 6-5" submit_sm_resp
6.3.4 SUBMIT JVILILTI" Operation
The SUBMITJvlULTI primitive is used to submit messages to an SME Address, a Distribution List and Multiple Recipients The Command Id of this primitive is "submιt_multι" The message field of this body is
Figure imgf000041_0001
Table 6-6 submit multi
Figure imgf000042_0001
Table 6-6: submit multi
Figure imgf000042_0002
Table 6-7: dest_address
Figure imgf000042_0003
Table 6-3 DL Name 6.3.4.1 'SUB(VUT_MULTI_RESP" Syntax
These parameters are included within the ' message field ol the protocol message when the message type" field is " submιt_mυltι_resp"
Size
Field Type Description (bytes)
Message ID Var C-Octet Tms field contains the message ID internal to the Max 9 String SMSC It may be used at a later stage to query the
• -.ex) sta.us of a message, to replace a message or match the original message to a corresponαmg delivery receipt (delιver_sm) message.
If absent this field must contain a single NULL byte
The SMSC will return a value for this field
■ No UnSuccess Integer The number of SME addresses that were unsuccessfully submitted to the system database
UnSuccess SMEs Var. Max C-Octet Tne SME addresses to which submission was 4600 String unsuccessful (Table 6-10 SME_Address)
Table 6-9: submit_multi_resp
Figure imgf000043_0001
Table 6-10: SME Address 6.3.5 "DELIVER_S " Operation
This is issued by the SI.'SC Using this command the SMSC may submit a short message to the ESME for delivery It is also used to return a delivery receipt for a message which had been submitted with the delivery receipt flag set
The values for destination address will depend on whether the ESME is the final destination of the short message or merely routes the message to its final recipient (e g paging messages)
One should note that delivery receipts are relumed to the originating SME using this command In this instance of a delιver_sm command, the esm_class field will identify the message as a delivery receipt, and the required data relating to the original short message will be given in the message text field (See SMPP Applications Guide [1] - Delivery Receipts)
6.3.5.1 "DELIVER_SM" Syntax
The parameters included within the "message" field of the protocol message when the "command id" field is "delιver_sm , are the same as for " submιt_sm"
6.3.5.2 "DELIVER_SM_RESP" Syntax
The parameters included within the "message ' field of the protocol message when the "command id" field is "delιver_ sm_resp" are the same as for "submit_sm_resp
6.3.6 QUERY
Three different types of Query of short messages are supported by the SMPP application An ESME can query the status of a message sent to a single SME Address the status of a message submitted to a single Distribution List and can query the status of a message sent to multiple recipients
6.3.6.1 "QUERY_SM" Operation
This Command is issued by the ESME to query the status of a previously submitted short message
Where a message to be replaced was originally submitted with an individually identified SME source address the originator address in the query_sm command must match Where the original source address was defaulted to NULL (i e the oπgina'or of messages from the ESME is the ESME itself or the ESME does not ha <e a real source addi ess) then the originator address in the query_sm command should also be NULL and the source address will be taken from the SMSC administration callback address for the particular ESME instance
6.3.6.2 "QUERY_SM" Syntax
These parameters are included within the "message field of the protocol message when the message type is query _sm
Figure imgf000045_0001
Field Type Description (bytes) orιgιnal_message_ιd Var C-Octet Message ID of the message whose state is to be Max 9 String queried
(Hex) This must be the Message ID allocated to the onginal short message when submitted to the SMSC by the submιt_sm command, and returned in the submιt_sm_resp message by the SMSC This variable length field may have leading spaces onginatingjon Integer Type of Number of originator
This is used for verification purposes, and must match that supplied in the corresponding
'submit_sm' request
(See GSM 03 40 [2] 9 1 2 5) orιgιnatιng_npι Integer Numbering Plan Identity of originator This is used for verification purposes, and must match that supplied in the corresponding submιt_sm request (See GSM 03 40 [2] 9 1 2 5) oπgιnatιng_addr Var C-Octet Address of originator Max 21 String This is used for verification purposes and must
(Decimal) match that supplied in the corresponding submιt_sm request
Table 6-1 1 query sm ■6 3 6.3 "QUERY._SM_RESP" Syntax
These parameters are included within the message field of the protocol message when the message type is query_ sm_ response
Figure imgf000046_0001
Fiel d Type Description (bytes) oπgιnal_message_ιo Var C-Octet Message ID of the message whose state is being Max 9 String cueπed
(Hex) This must be the Message ID allocated to the original short message when submitted to the SMSC by the submι!_sm command and returned n the submιl_sm _resp message by the SMSC This variable length field may have leading spaces final date Var C-Octet Date and time when the submitted message Max 17 String reached the final state
For messages which have not yet reached a final state this field will contain a single NULL byte The date format is detailed in Section 7 5 message_status Integer Specifies the status of the SM See section 7 4
Error code Integer Where appropriate this holds a GSM error code or an SMSC error code defining the reason for failure of message delivery (See GSM 03 40 [2] 3 3) /Refer also lo section 7 3)
Table 6-12 query_sm_resp
6.3.6.4 "QUERY_LAST_MSGS" Operation
This operation allows an ESME to query the most recent messages that are in the system for that originating source address The messages found in the system with the specific originating source address will be returned to the ESME along with some message details The maximum number of messages that can be queried is 100
NOTE:
If the number of messages specified is greater than 100 then the latest 100 messages will be returned for that source address
If the total number of messages specified is not found m the database for that source address then the total number of messages found will be returned
6.3.6.5 'QUERY_LAST_MSGS" Syntax
These parameters are included within the ' message field of the protocol message when the message type i iss ""a quueerryv_ llaasstt_ mmssgαss""
Figure imgf000047_0001
Table 6-13: queryjast_msgs
6.3.6.6 "QUERY_LAST_ SGS_RESP" Syntax
These parameters are included within the "message field of the protocol message when the message type is " query_last_msgs_resp"
Figure imgf000047_0002
Table 6-14 query last msgs resp
Figure imgf000048_0001
Table 6-15: message_.details
6.3.6.7 "QgERY_MSG_DETAILS" Operation
This operation is used to return all the details of a specific message stored in the database for a particular message id
6.3.6.8 "QUERY_MSG_DETAILS" Syntax
These parameters are included within the message field of the protocol message when the message type is "query_msg_detaιls
Figure imgf000049_0001
Table 6-16: query_msg_details
6.3.6.9 "QUERY_MSG_DETAILS_RESP" Syntax
These paiametei s are included within the "message field of the protocol message when the message type is " query_msg_details"
Figure imgf000049_0002
Table 6-17: query_msg_detaιls_resp
Figure imgf000050_0001
Figure imgf000050_0002
Table 6-17. query_msg_details_resp
Figure imgf000051_0001
Table 6-16: dest address
Figure imgf000051_0002
Table 6-19: SME Address
Figure imgf000051_0003
Table 6-20: DL Name
6.3.7 "CANCEL_SM" Operation
This command is issued by the ESME to cancel one or more outstanding short messages The command may specify a particular message, or all messages for a particular source and destination
If the message ID is sel to the ID of a previously submitted message, then provided the source and destination addresses supplied in the interface match, that message will be cancelled
If the message ID is null all outstanding undelivered messages with the source and destination adcesses given in the interface will be cancelled for the particular interface of the AIM If the source address is set to NULL in the interface the source address will be taken from the SMSC administration "ca'lback address for the particular ESME instance
A t . pical use of the command is to cancel outstanding undelivered VoiceMail Alert messages for a subscriber whose mailbox has just been directly accessed by the subscriber The response (cancel_sm _resρ) will indicate whether the message(s) had already been sent
6.3.7.1 "CANCEL_SM" Syntax
These parameters are included within the "message' field of the protocol message when the message type is ' cancel sm'
Figure imgf000052_0001
Table 6-21 cancel sm Field Name Type Description
Figure imgf000053_0001
source addr Var C-Octet Source address of message(s) to be cancelled Max 21 String This is used for verification purposes, and must
(Decimal) match that supplied in the co esponding submit _sm' request
This variable length field may have leading spaces dest addr ton Integer Type of number for destination (See GSM 03 40 [2] 9 1 2 5) dest. ador_npι Integer Numbering Plan Indicator for destination (See GSM 03 40 [2] 9 1 2 5) destination addr Var C-Octet Destination address of message(s) to be Max 21 String cancelled
(Decimal) This is used for verification purposes, and must match that supplied in the corresponding
'submιt_sm' request
This variable length field may have leading spaces
Where not required this should be a single NULL byte
Table 6-21 cancel_sm
6.3.7.2 "CANCEL_S _RESP" Syntax
Apart from setting the header fields, no other parameters are required in the data body
6.3.8 "REPLACE_SM" Operation
This command is issued by the ESME to replace an outstanding short message for a subscriber
The message_ιd is set to the ID of a previously submitted message Where a message to be replaced was originally submitted with an individually identified SME source address, the originator address in the replace_sm command must match Where the original source address was defaulted to NULL (i e the originator of messages from the ESME is the ESME itself, or the ESME does not have a real source address) then the originator address in the replace_sm command should also be NULL, and the source address will be taken from the SMSC administration ' callback address" for the part'cular ESME instance
6.3.8.1 "REPLACE_SM" Syntax
These parameleis are included within the message field of the protocol message '."hen the ' command id field is replace_sm~
Figure imgf000054_0001
Table 6-22 replace sm
Figure imgf000055_0001
Field Name Type Description (bytes) valιdιty_ period 17 C-Octet The expiration time of this message This is String specified as an absolute date and time of expiry
Where not specified the original expiration time, if specified, will apply
The format is defined in section 7 5
Where not required this should be a single NULL byte registered delivery Inteαe' Flag indicating if the message is a registered short message and thus if a Delivery Receipt is reouired upon the message attaining a final state (See SMPP Applications Guide [1 ] - Delivery Receipts)
0=No receipt required (non-registered delivery) 1 =Receιpt required (registered delivery) > 1 =Reserved sm_default_msg_ιd Inteαer Indicates the default short message to send, by providing an index into the table of predefined messages set up by the SMSC administrator This should be set to NULL if a text message is being sent
Range is 0x01 to 0x64
(See SMPP Applications Guide [1 ] - Default Short Message) smjength 1 Integer Length of the text of the message in bytes shor message Var Octet Up to 160 bytes of data This is the text that is Max 161 String transmitted to the mobile station
This text, if specified will be used to replace the existing text for the originally submitted SM
(See SMPP Applications Guide [1 ] - Default Short
Message)
Table 6-22: replace_sm
6.3.8.2 "REPLACE_SM_RESP" Syntax
Apart from setting the header fields no other parameters are required in the data body
6.3.9 "ENQUIREJJNK" Operation
This message is used to provide a confidence-check of the communication path between ESME and the SMSC On receipt of this request the SMSC will simply respond with an enquire_lmk_ resp, thus verifying that the application level connection between the SMSC and the ESME is functioning The ESME can respond by sending any valid SMPP primitive.
6.3.9.1 "ENQUIREJJNK" Syntax
Apart from setting the header fields, no other parameters are required in the data body
6.3.9.2 "ENQUIRE_LINK_RESP" Syntax
Apart from setting the header fields, no other parameters are required in the data body
6.3.10 "PARAM_RETRIEVE" Operation
This operation is used to retrieve the value for a configurable parameter
6.3.10.1 "PARAM_RETRIEVE" Syntax
These parameters are included within the "message" field of the protocol message when the message type is "param etrieve"
Table 6-23: param_retrieve
6.3.10.2 "PARA _RETRIEVE_RESP" Syntax
These parameters are included within the "message" field of the protocol message when the message type is "param_retrieve_resp".
Figure imgf000056_0002
Table 6-24: param retri eve resp 7. System Definitions
The following sections define the various system codes for Command-ID s and Error Codes
Note' For ease of maintenance a 'C include file is available which defines the actual values for these definitions
7.1 Error Codes
The following are a list of error codes that can be returned in the status field of a message
Figure imgf000057_0001
Table 7-1 Error Codes
Figure imgf000058_0001
Table 7-1 Error Codes 7.2 Command I.D. Values
The following is a list of the command ids and their associated values
Figure imgf000059_0001
Table 7-2: Command ID Values Command ID Code Command ID Description
ESME..PARAM_RETRIEVE param_ retrieve Retrieve value for configurable parameter
ESMEJ^ARAM.RETRIEVE.RES param_ retrieve_ resp Response to
P param_retrieve
ESME NACK nack Negative Acknowledgement
Table 7-2: Command ID Values
7.3 Error Codes
Where the message is submitted to the SMSC with the registered delivery flag set, a status report is generated after the submitted short message reaches it final state The following is a list of error codes and their associated descriptions that can be returned in (he delivery receipt, query_sm and query_msg_detaιls primitives
7.3.1 GSM Error Codes
The following is a list of the GSM error codes (See GSM 03 40 [2] 3 3) and their associated descriptions
Figure imgf000061_0001
Table 7-3: GSM Error Codes
7.3.2 SMSC Error Codes
The following is a list of possible SMSC error codes
Figure imgf000061_0002
Table 1 -4 7.4 Message States
The following is a list of the states that a short message may achieve
Figure imgf000062_0001
Table 1-5: Message States
7.5 Time Format
Time and Date fields are represented in a format similar to that specified in GSM 0340 [2] 9.2311 In this interface all time/date related fields will be in ASCII with the following format ' YYMMDDhhmmsstnnp" where
'YY' last two digits of llic yeai (00-99)
"MM" month (01-12)
DD' day (01-31)
',ι hour (00-23) mm' minute (00-59) s second (00-59; i tenths of second (0-9) iin Time ditfeience m quartei hours between local time (as expressed in the fust 13 bytes) and UTC (Universal Time Constant) time (00-48) r -'>' Local lime is nn quarter hours advanced in relation to UTC
Figure imgf000063_0001
Local time is nn quarter hours retarded in relation to UTC time
Note Where responses are reported by the SMSC the local time of the SMSC will be given, and the forma: will be ' YYMMDDhhmmss' , with the same definitions as above
Change Log
Version(Old->New): 3.0 -> 3.1 Author: S.H.
Source of Change Reason Date
Sonia Fitzpatπck New functionality added 30/1 1/95
Location Description Ripple Effect
Table 7-2 New Primitives Added SMPP Application section 7 2 ESME OUERY_ALLJv1SGS, Guide [1] section 7 3 ESME_QUERYJv1SG_DETAILS, section 6 3 9 ESME SUBMITJvlULTI, section 6 1 ESME_PARAM_RETRIEVE, Added C-Octet Fixed Length String Modified Enquire Link Primitive Added new Command Id Values Added new Error Codes Added new event log names
Change No. 1
Figure imgf000064_0001
Change No. 2
Figure imgf000065_0001
Change No. 3

Claims

CLAIMSWhat is claimed is:
1. A gateway, comprising: a first communication path to accept a short message from a short message service center; a translation module to insert said short message into an HTTP protocol message; and a second communication path to transmit said HTTP protocol message to at least one URL.
2. The gateway according to claim 1 , wherein: said HTTP protocol message is a POST message.
3. The gateway according to claim 1 , wherein: said short message originated from a wireless device;
4. The gateway according to claim 1 , wherein: said short message is received via an RMI callback mechanism.
5. The gateway according to claim 1 , wherein: said second communication path is adapted to transmit said HTTP protocol message to a plurality of URLs.
6. The gateway according to claim 1 , wherein: said second communication path accepts return results from said URL; said translation module inserts said return results into a short message; and said first communication path transmits said short message to said short message service center.
7. The gateway according to claim 6, wherein: said return results conform to HTTP protocols.
8. The gateway according to claim 6, wherein: said first communication path transmits a SUBMIT_SM message to said short message servicing center.
9. A method of communicating between a wireless device and an application program on an Internet Protocol server, comprising: sending a short message from said wireless device to said Internet Protocol server; routing said short message using a wireless protocol message; and conveying said short message to said Internet Protocol server using an HTTP protocol POST message.
10. The method of communicating between a wireless device and an application program on an Internet Protocol server according to claim 9, wherein: said wireless protocol is SMPP.
1 1. The method of communicating between a wireless device and an application program on an Internet Protocol server according to claim 9, wherein: said wireless protocol is ReFlex.
12. The method of communicating between a wireless device and an application program of an Internet Protocol server according to claim 9, wherein: said SMPP protocol message is a DELIVER_SM message.
13. The method of communicating between a wireless device and an application program of an Internet Protocol server according to claim 9, further comprising: forwarding said routed short message to a gateway using an RMI callback mechanism.
14. The method of communicating between a wireless device and an application program of an Internet Protocol server according to claim 9, wherein: said short message is sent to a predefined address.
15. The method of communicating between a wireless device and an application program of an Internet Protocol server according to claim 9, wherein: said short message is conveyed to a plurality of Internet Protocol servers using respective HTTP protocol POST messages.
16. The method of communicating between a wireless device and an application program of an Internet Protocol server according to claim 9, further comprising: returning data back through an HTTP stream established with said
HTTP protocol POST message.
17. The method of communicating between a wireless device and an application program of an Internet Protocol server according to claim 16, further comprising: routing said return data from said HTTP stream to a short message service center using an SMPP protocol message.
18. The method of communicating between a wireless device and an application program of an Internet Protocol server according to claim 17, wherein: said SMPP protocol message is a SUBMIT_SM message.
19. The method of communicating between a wireless device and an application program of an Internet Protocol server according to claim 18, further comprising: conveying said return data from said short message service center to a wireless device using an IS-41 protocol message.
20. Apparatus for communicating between a wireless device and an application program on an Internet Protocol server, comprising: means for sending a short message from said wireless device to said Internet Protocol server; means for routing said short message using an SMPP protocol message; and means for conveying said short message to said Internet Protocol server using an HTTP protocol POST message.
21. The apparatus for communicating between a wireless device and an application program of an Internet Protocol server according to claim 20, wherein: said SMPP protocol message is a DELIVER SM message.
22. The apparatus for communicating between a wireless device and an application program of an Internet Protocol server according to claim 20, further comprising: means for forwarding said routed short message to a gateway using an RMI callback mechanism.
23. The apparatus for communicating between a wireless device and an application program of an Internet Protocol server according to claim 20, wherein: said means for sending sends said short message to a predefined address.
24. The apparatus for communicating between a wireless device and an application program of an Internet Protocol server according to claim 20, wherein: said means for conveying conveys said short message to a plurality of Internet Protocol servers using respective HTTP protocol POST messages.
25. The apparatus for communicating between a wireless device and an application. program of an Internet Protocol server according to claim 20, further comprising: means for returning data back through an HTTP stream established with said HTTP protocol POST message.
26. The apparatus for communicating between a wireless device and an application program of an Internet Protocol server according to claim 25, further comprising: means for routing said return data from said HTTP stream to a short message service center using an SMPP protocol message.
27. The apparatus for communicating between a wireless device and an application program of an Internet Protocol server according to claim 26, wherein: said SMPP protocol message is a SUBMIT_SM message.
28. The apparatus for communicating between a wireless device and an application program of an Internet Protocol server according to claim 27, further comprising: means for conveying said return data from said short message service center to a wireless device using an IS-41 protocol message.
29. A mobile to HTTP gateway application, comprising: an SMPP relayer; a message director to process messages from said SMPP relayer; a poster collector to obtain at least one target poster; and a poster.
PCT/US2001/011547 2000-04-18 2001-04-10 Short messaging service center mobile-originated to http internet communications WO2001080534A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2001259045A AU2001259045A1 (en) 2000-04-18 2001-04-10 Short messaging service center mobile-originated to http internet communications

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US19810800P 2000-04-18 2000-04-18
US60/198,108 2000-04-18
US09/588,460 2000-06-06
US09/588,460 US6891811B1 (en) 2000-04-18 2000-06-06 Short messaging service center mobile-originated to HTTP internet communications

Publications (1)

Publication Number Publication Date
WO2001080534A1 true WO2001080534A1 (en) 2001-10-25

Family

ID=26893483

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/011547 WO2001080534A1 (en) 2000-04-18 2001-04-10 Short messaging service center mobile-originated to http internet communications

Country Status (3)

Country Link
US (5) US6891811B1 (en)
AU (1) AU2001259045A1 (en)
WO (1) WO2001080534A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002065793A1 (en) * 2001-02-15 2002-08-22 Vodafone Group Plc System for interconnecting a remote server with a short message server centre (smsc) via the internet
CN100337494C (en) * 2004-06-24 2007-09-12 华为技术有限公司 Management and system for short message of mobile terminal
AU2003273550B2 (en) * 2002-05-13 2008-07-31 Markport Limited Control of PLMN messaging services in IP domains
EP1988723A1 (en) * 2006-03-13 2008-11-05 Huawei Technologies Co., Ltd. Method, system and short message service center for obtaining user's information through short-message
US7908397B1 (en) 2005-02-28 2011-03-15 Adobe Systems Incorporated Application server gateway technology
CN102480704A (en) * 2010-11-26 2012-05-30 中国移动通信集团北京有限公司 Method for sending status report receiving response message, system for sending status report receiving response message and agent for sending status report receiving response message
US8401009B1 (en) 2007-07-23 2013-03-19 Twitter, Inc. Device independent message distribution platform
EP2652640A4 (en) * 2010-12-14 2018-01-03 Microsoft Technology Licensing, LLC Using text messages to interact with spreadsheets
US10191898B2 (en) 2011-01-24 2019-01-29 Microsoft Technology Licensing, Llc Representation of people in a spreadsheet

Families Citing this family (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6560461B1 (en) 1997-08-04 2003-05-06 Mundi Fomukong Authorized location reporting paging system
FI19992529A (en) * 1999-11-26 2001-05-27 Nokia Networks Oy Method and arrangement for conveying information between hybrid telecommunication systems subsystems
US8073477B2 (en) * 2000-04-11 2011-12-06 Telecommunication Systems, Inc. Short message distribution center
US7949773B2 (en) * 2000-04-12 2011-05-24 Telecommunication Systems, Inc. Wireless internet gateway
US6891811B1 (en) * 2000-04-18 2005-05-10 Telecommunication Systems Inc. Short messaging service center mobile-originated to HTTP internet communications
US7774231B2 (en) * 2000-09-29 2010-08-10 Nokia Corporation Electronic payment methods for a mobile device
AT411312B (en) * 2000-10-20 2003-11-25 Universal Comm Platform Ag METHOD FOR TRANSMITTING SHORT MESSAGES (SMS) BETWEEN COMPUTERS ON THE INTERNET
FI114000B (en) * 2000-11-08 2004-07-15 Mikko Kalervo Vaeaenaenen Electronic short message and marketing procedure and corresponding devices
MXPA03006025A (en) * 2001-01-02 2005-02-14 Delta Air Lines Inc Exchanging electronic messages between a host computer system and a distributed computer system.
US7873734B1 (en) * 2001-05-17 2011-01-18 Computer Associates Think, Inc. Management of multiple user sessions and user requests for multiple electronic devices
KR100414928B1 (en) * 2001-09-05 2004-01-13 삼성전자주식회사 Method for transmitting short message in internet phone and system therefor
US20030063580A1 (en) * 2001-09-28 2003-04-03 Russell Pond Packetized voice messaging
CA2387328C (en) * 2002-05-24 2012-01-03 Diversinet Corp. Mobile terminal system
KR100501157B1 (en) * 2002-08-26 2005-07-18 에스케이 텔레콤주식회사 Address Process Method For Short Message Service Center In WCDMA Network
US7801171B2 (en) 2002-12-02 2010-09-21 Redknee Inc. Method for implementing an Open Charging (OC) middleware platform and gateway system
US7457865B2 (en) * 2003-01-23 2008-11-25 Redknee Inc. Method for implementing an internet protocol (IP) charging and rating middleware platform and gateway system
US7440441B2 (en) 2003-06-16 2008-10-21 Redknee Inc. Method and system for Multimedia Messaging Service (MMS) rating and billing
US7873347B2 (en) * 2003-06-19 2011-01-18 Redknee Inc. Method for implementing a Wireless Local Area Network (WLAN) gateway system
US8577379B2 (en) * 2003-09-25 2013-11-05 Qualcomm Incorporated Method of handling automatic call origination and system determination on multi-network mobile devices
US7447219B2 (en) * 2003-09-29 2008-11-04 Redknee Inc. System and method for implementing a universal messaging gateway (UMG)
JP2005108012A (en) * 2003-09-30 2005-04-21 Sap Ag Portable information terminal, message distribution method, and message distribution program
GB0329499D0 (en) * 2003-12-19 2004-01-28 Nokia Corp Communication network
US7369533B1 (en) * 2004-02-02 2008-05-06 Utstarcom, Inc. System, method and mobile devices transmitting request codes during link establishment in data networks
US20050277430A1 (en) * 2004-05-11 2005-12-15 Armin Meisl Intelligent mobile messaging and communication traffic Hub (iHub)
KR100588623B1 (en) * 2004-11-12 2006-06-14 주식회사 케이티프리텔 Method and system for providing selected service by displaying numbers and strings corresponding to inputted buttons
US20060168275A1 (en) * 2004-11-22 2006-07-27 Lin Peter A Method to facilitate a service convergence fabric
EP1691536A1 (en) * 2005-02-14 2006-08-16 Axalto SA Smart phones with web based interfaces
DE602006016763D1 (en) * 2005-04-18 2010-10-21 Research In Motion Ltd METHOD AND SYSTEM FOR CENTRALIZED USER APPLICATION AND APPLICATION MANAGEMENT
US8397310B2 (en) * 2005-10-11 2013-03-12 Earl H. Parris Smart container system for charging, storing, and using electronic devices
US7426203B1 (en) * 2005-11-01 2008-09-16 At&T Mobility Ii Llc WAP push over cell broadcast
US8248965B2 (en) * 2005-11-03 2012-08-21 Motorola Solutions, Inc. Method and apparatus regarding use of a service convergence fabric
US7437146B2 (en) * 2006-03-31 2008-10-14 Sybase 365, Inc. System and method for providing feedback to wireless device users
US9008620B2 (en) * 2006-07-19 2015-04-14 Samsung Electronics Co., Ltd. Mobile device service authorization system and method
US9454783B2 (en) * 2006-07-21 2016-09-27 Samsung Electronics Co., Ltd. Method and apparatus for conducting e-commerce on a mobile handset
US8271004B2 (en) * 2006-08-08 2012-09-18 Mikael Vinding User generated dynamic mobile service
US8775621B2 (en) * 2006-08-31 2014-07-08 Redknee Inc. Policy services
US7974235B2 (en) 2006-11-13 2011-07-05 Telecommunication Systems, Inc. Secure location session manager
US20080159139A1 (en) * 2006-12-29 2008-07-03 Motorola, Inc. Method and system for a context manager for a converged services framework
AU2008251299B2 (en) * 2007-05-10 2012-08-09 Cardinalcommerce Corporation Application server and/or method for supporting mobile electronic commerce
US9250084B2 (en) * 2007-08-10 2016-02-02 Cisco Technology, Inc. System and method for navigating using multiple modalities
US8712450B2 (en) 2007-08-27 2014-04-29 International Business Machines Corporation System and method of creating and providing SMS http tagging
US8176129B2 (en) * 2007-08-27 2012-05-08 International Business Machines Corporation System and method of sending compressed html messages over telephony protocol
BRPI0815823A2 (en) * 2007-08-30 2015-02-18 Brainstorm Sms Services Llc INTERACTIVE SHORT MESSAGE SERVICE
US8915447B2 (en) * 2007-09-12 2014-12-23 Devicefidelity, Inc. Amplifying radio frequency signals
US8070057B2 (en) 2007-09-12 2011-12-06 Devicefidelity, Inc. Switching between internal and external antennas
US9311766B2 (en) 2007-09-12 2016-04-12 Devicefidelity, Inc. Wireless communicating radio frequency signals
US9304555B2 (en) * 2007-09-12 2016-04-05 Devicefidelity, Inc. Magnetically coupling radio frequency antennas
US20090070691A1 (en) 2007-09-12 2009-03-12 Devicefidelity, Inc. Presenting web pages through mobile host devices
EP2201508A4 (en) * 2007-09-13 2011-08-31 Redknee Inc Billing profile manager
US8898690B2 (en) 2007-10-30 2014-11-25 BBS Media Apparatus and method for managing media content
US9277184B2 (en) * 2007-10-30 2016-03-01 Cockster Music, Inc. Apparatus and method for managing media content
EP2232940B1 (en) * 2007-12-20 2012-12-05 Brainstorm SMS Technologies, LLC Interactive short messaging service
US9059871B2 (en) 2007-12-27 2015-06-16 Redknee Inc. Policy-based communication system and method
US8346662B2 (en) * 2008-05-16 2013-01-01 Visa U.S.A. Inc. Desktop alert with interactive bona fide dispute initiation through chat session facilitated by desktop application
AU2009296822B2 (en) * 2008-09-24 2015-03-26 Visa International Service Association Intelligent alert system and method
RU2011116158A (en) 2008-09-25 2012-10-27 Виза Интернэшнл Сервис Ассосиэйшн (Us) METHOD AND SYSTEM FOR SORTING WARNING MESSAGES AND OFFERS ON MOBILE DEVICE
WO2010068506A2 (en) * 2008-11-25 2010-06-17 Tekelec Methods, systems, and computer program products for providing first delivery attempt service for short message peer-to-peer (smpp) messages
US7941550B1 (en) * 2009-02-12 2011-05-10 Sprint Communications Company L.P. Multiple cookie handling
US9230259B1 (en) 2009-03-20 2016-01-05 Jpmorgan Chase Bank, N.A. Systems and methods for mobile ordering and payment
US8380569B2 (en) * 2009-04-16 2013-02-19 Visa International Service Association, Inc. Method and system for advanced warning alerts using advanced identification system for identifying fraud detection and reporting
US20100274653A1 (en) 2009-04-28 2010-10-28 Ayman Hammad Notification social networking
US9710802B2 (en) 2009-04-28 2017-07-18 Visa International Service Association Merchant competition alert
US9449327B2 (en) * 2009-04-28 2016-09-20 Visa International Service Association Merchant alert based system and method including customer presence notification
US10387885B2 (en) * 2009-04-28 2019-08-20 Visa International Service Association SKU level control and alerts
WO2010127323A1 (en) * 2009-05-01 2010-11-04 Ari Kahn Communication network signaling
US9301191B2 (en) 2013-09-20 2016-03-29 Telecommunication Systems, Inc. Quality of service to over the top applications used with VPN
US20110055058A1 (en) 2009-08-28 2011-03-03 Ayman Hammad Contact alert system and method
US9479344B2 (en) 2011-09-16 2016-10-25 Telecommunication Systems, Inc. Anonymous voice conversation
US9544271B2 (en) 2011-09-16 2017-01-10 Telecommunication Systems, Inc. Anonymous messaging conversation
WO2013052964A2 (en) * 2011-10-07 2013-04-11 Interop Technologies, Llc Non-ims rich communication suite
WO2013086076A1 (en) * 2011-12-06 2013-06-13 Telecommunication Systems, Inc. Unattended authentication in a secondary authentication service for wireless carriers
US9317672B2 (en) 2011-12-14 2016-04-19 Visa International Service Association Online account access control by mobile device
US8984591B2 (en) 2011-12-16 2015-03-17 Telecommunications Systems, Inc. Authentication via motion of wireless device movement
US9384339B2 (en) 2012-01-13 2016-07-05 Telecommunication Systems, Inc. Authenticating cloud computing enabling secure services
US10643191B2 (en) 2012-01-27 2020-05-05 Visa International Service Association Mobile services remote deposit capture
AP2014007920A0 (en) 2012-02-22 2014-09-30 Visa Int Service Ass Data security system using mobile communications device
US9338153B2 (en) 2012-04-11 2016-05-10 Telecommunication Systems, Inc. Secure distribution of non-privileged authentication credentials
CN103533001B (en) * 2012-07-05 2018-10-30 腾讯科技(深圳)有限公司 Communication means and system, intermediate proxy server based on HTTP multiple delegates
US9317873B2 (en) 2014-03-28 2016-04-19 Google Inc. Automatic verification of advertiser identifier in advertisements
US20150287099A1 (en) 2014-04-07 2015-10-08 Google Inc. Method to compute the prominence score to phone numbers on web pages and automatically annotate/attach it to ads
US11115529B2 (en) 2014-04-07 2021-09-07 Google Llc System and method for providing and managing third party content with call functionality
CN105323729B (en) * 2014-07-28 2018-11-02 中国移动通信集团山西有限公司 A kind of note transmission method and device
US10051075B1 (en) 2015-09-09 2018-08-14 Google Llc Systems and methods for maintaining an asynchronous communication via an intermediary
US10469424B2 (en) 2016-10-07 2019-11-05 Google Llc Network based data traffic latency reduction

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6119167A (en) * 1997-07-11 2000-09-12 Phone.Com, Inc. Pushing and pulling data in networks
US6138158A (en) * 1998-04-30 2000-10-24 Phone.Com, Inc. Method and system for pushing and pulling data using wideband and narrowband transport systems
US6154745A (en) * 1996-12-31 2000-11-28 Nokia Mobile Phones Ltd. Method for transmission of information to the user
US6173316B1 (en) * 1998-04-08 2001-01-09 Geoworks Corporation Wireless communication device with markup language based man-machine interface
US6185565B1 (en) * 1997-12-18 2001-02-06 Nortel Networks Corporation System and method for communication session disposition responsive to events in a telecommunications network and the internet

Family Cites Families (256)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US595543A (en) * 1897-12-14 George r
US1103073A (en) 1912-07-18 1914-07-14 American Telephone & Telegraph Emergency signaling system for telephone toll-collecting apparatus.
US4651156A (en) 1982-02-08 1987-03-17 Mcgraw-Edison Co. Integrated radio location and communication system
US4494119A (en) 1983-08-04 1985-01-15 122923 Canada Limited Distress radiolocation method and system
US4706275A (en) 1985-11-13 1987-11-10 Aerotel Ltd. Telephone system
US4891638A (en) 1987-10-30 1990-01-02 Motorola, Inc. Nationwide display pager with location readout
US4891650A (en) 1988-05-16 1990-01-02 Trackmobile Inc. Vehicle location system
US5055851A (en) 1988-05-16 1991-10-08 Trackmobile, Inc. Vehicle location system
US5177478A (en) 1988-06-24 1993-01-05 Kabushiki Kaisha Toshiba Paging system having an effective ID-code transferring function
US5014206A (en) 1988-08-22 1991-05-07 Facilitech International Incorporated Tracking system
US4952928A (en) 1988-08-29 1990-08-28 B. I. Incorporated Adaptable electronic monitoring and identification system
US5081667A (en) 1989-05-01 1992-01-14 Clifford Electronics, Inc. System for integrating a cellular telephone with a vehicle security system
US5068891A (en) 1989-05-31 1991-11-26 Marshall Marvin E Credit control system for long distance telephone services
US5454024A (en) 1989-08-31 1995-09-26 Lebowitz; Mayer M. Cellular digital packet data (CDPD) network transmission system incorporating cellular link integrity monitoring
US5214789A (en) 1989-11-17 1993-05-25 Uniden America Corporation Radio channel allocation based on location of mobile users
US5070329A (en) 1989-12-04 1991-12-03 Motorola, Inc. On-site communication system with rf shielding having pager identification capability
US5610815A (en) 1989-12-11 1997-03-11 Caterpillar Inc. Integrated vehicle positioning and navigation system, apparatus and method
US5193215A (en) 1990-01-25 1993-03-09 Olmer Anthony L Location signalling device for automatically placing a radio distress call
US5043739A (en) 1990-01-30 1991-08-27 The United States Of America As Represented By The United States Department Of Energy High frequency rectenna
US5680313A (en) 1990-02-05 1997-10-21 Caterpillar Inc. System and method for detecting obstacles in a road
US5119104A (en) 1990-05-04 1992-06-02 Heller Alan C Location system adapted for use in multipath environments
WO1991018467A1 (en) 1990-05-22 1991-11-28 Cellular Technical Services Company Cellular phone rental system
US5144283A (en) 1990-06-18 1992-09-01 Kenneth P. Arens Energy efficient alarm system and regulative central control unit
GB9016277D0 (en) 1990-07-25 1990-09-12 British Telecomm Location and handover in mobile radio systems
US5239570A (en) 1990-07-25 1993-08-24 Teltone Corporation 9-1-1 Switched access system
US5043736B1 (en) 1990-07-27 1994-09-06 Cae Link Corp Cellular position location system
US5574648A (en) 1990-10-09 1996-11-12 Pilley; Harold R. Airport control/management system using GNSS-based methods and equipment for the control of surface and airborne traffic
IL95990A (en) 1990-10-15 1994-07-31 B V R Technologies Ltd Anti-collision warning system
US5161180A (en) 1990-10-19 1992-11-03 Chavous Robert O Call interceptor for emergency systems
US5243645A (en) 1990-11-01 1993-09-07 At&T Bell Laboratories Automatic system for forwarding of calls
US5293642A (en) 1990-12-19 1994-03-08 Northern Telecom Limited Method of locating a mobile station
US5068656A (en) 1990-12-21 1991-11-26 Rockwell International Corporation System and method for monitoring and reporting out-of-route mileage for long haul trucks
US5155689A (en) 1991-01-17 1992-10-13 By-Word Technologies, Inc. Vehicle locating and communicating method and apparatus
US5208756A (en) 1991-01-28 1993-05-04 Song Han L Vehicle locating and navigating system
FI94581C (en) 1991-02-12 1995-09-25 Nokia Telecommunications Oy System for automatically communicating contact information in a mobile telephone network or the like
US5235630A (en) 1991-04-17 1993-08-10 Telident, Incorporated Emergency call station identification system and method
WO1993000647A2 (en) 1991-06-21 1993-01-07 Unitech Research, Inc. Real time three dimensional geo-referenced digital orthophotograph-based positioning, navigation, collision avoidance and decision support system
US5266944A (en) 1991-06-26 1993-11-30 Bodyguard Technologies, Inc. Electronic system and method for monitoring abusers for compliance with a protective order
US5289527A (en) 1991-09-20 1994-02-22 Qualcomm Incorporated Mobile communications device registration method
US5787357A (en) 1991-10-17 1998-07-28 Nokia Telecommunications Oy Short message processing in a mobile exchange
US5390339A (en) 1991-10-23 1995-02-14 Motorola Inc. Method and apparatus for selecting a serving transceiver
JPH05130019A (en) 1991-11-08 1993-05-25 Hitachi Ltd Position registration system
DE69321268T2 (en) 1992-01-20 1999-05-20 Nec Corp Personal localization system
US5334974A (en) 1992-02-06 1994-08-02 Simms James R Personal security system
JP2900680B2 (en) 1992-02-21 1999-06-02 日本電気株式会社 Wireless telephone equipment
FR2689668B1 (en) 1992-04-07 1994-05-20 Dassault Electronique FIELD ANTI-COLLISION PROCESS AND DEVICE FOR AIRCRAFT.
US5223844B1 (en) 1992-04-17 2000-01-25 Auto Trac Inc Vehicle tracking and security system
US5359529A (en) 1992-05-15 1994-10-25 Zexel Corporation Route guidance on/off-route state filter
US5218367A (en) 1992-06-01 1993-06-08 Trackmobile Vehicle tracking system
US5363425A (en) 1992-06-29 1994-11-08 Northern Telecom Limited Method and apparatus for providing a personal locator, access control and asset tracking service using an in-building telephone network
US5432841A (en) 1992-07-10 1995-07-11 Rimer; Neil A. System for locating and communicating with mobile vehicles
FI109064B (en) 1992-09-18 2002-05-15 Nokia Corp A method for initiating short message transmission in a cellular radio system, a cellular radio system, and a subscriber register of a cellular radio system
US5603081A (en) 1993-11-01 1997-02-11 Telefonaktiebolaget Lm Ericsson Method for communicating in a wireless communication system
JP3673285B2 (en) 1992-10-09 2005-07-20 櫻護謨株式会社 Outdoor work automation system
US5361212A (en) 1992-11-02 1994-11-01 Honeywell Inc. Differential GPS landing assistance system
US5418537A (en) 1992-11-18 1995-05-23 Trimble Navigation, Ltd. Location of missing vehicles
FI92364C (en) 1993-01-15 1994-10-25 Nokia Telecommunications Oy A method for initiating a short message transmission in a mobile telephone network and a home register of the mobile telephone system
US5343493A (en) 1993-03-16 1994-08-30 Hughes Aircraft Company Personal assistance system and method for use with a cellular communication system
DE4312362A1 (en) 1993-04-16 1994-10-20 Sel Alcatel Ag Mobile radio system with credit accounts
US5604486A (en) 1993-05-27 1997-02-18 Motorola, Inc. RF tagging system with multiple decoding modalities
US5387993A (en) 1993-06-25 1995-02-07 Precision Tracking Fm, Inc. Method for receiving and transmitting optical data and control information to and from remotely located receivers and transmitters in an optical locator system
US5425077A (en) 1993-07-08 1995-06-13 U.S. West Advanced Technologies, Inc. Mobile telephone user interface including fixed and dynamic function keys and method of using same
US5388147A (en) 1993-08-30 1995-02-07 At&T Corp. Cellular telecommunication switching system for providing public emergency call location information
US5479482A (en) 1993-08-30 1995-12-26 At&T Corp. Cellular terminal for providing public emergency call location information
US5497149A (en) 1993-09-02 1996-03-05 Fast; Ray Global security system
US5423076A (en) 1993-09-24 1995-06-06 Rockwell International Corporation Superheterodyne tranceiver with bilateral first mixer and dual phase locked loop frequency control
US5434789A (en) 1993-10-06 1995-07-18 Fraker; William F. GPS golf diagnostic system
US5590181A (en) 1993-10-15 1996-12-31 Link Usa Corporation Call-processing system and method
US5543776A (en) 1993-10-19 1996-08-06 Whistler Corporation Vehicle security system
US5519403A (en) 1993-11-29 1996-05-21 Motorola, Inc. Global positioning system communications multi-interface
CA2135856A1 (en) 1993-12-10 1995-06-11 Steven Peter Allen Low power, addressable data communication device and method
US5552772A (en) 1993-12-20 1996-09-03 Trimble Navigation Limited Location of emergency service workers
US5568119A (en) 1993-12-21 1996-10-22 Trimble Navigation Limited Arrestee monitoring with variable site boundaries
US5614890A (en) 1993-12-27 1997-03-25 Motorola, Inc. Personal identification system
TW289174B (en) 1994-01-07 1996-10-21 Minnesota Mining & Mfg
US5535434A (en) 1994-01-24 1996-07-09 Motorola, Inc. Carry case having paging circuitry section
US5555286A (en) 1994-01-31 1996-09-10 Tendler Technologies, Inc. Cellular phone based automatic emergency vessel/vehicle location system
US5588009A (en) 1994-02-03 1996-12-24 Will; Craig A. Personal paging, communications, and locating system
US5479408A (en) 1994-02-22 1995-12-26 Will; Craig A. Wireless personal paging, communications, and locating system
US5374936A (en) 1994-02-28 1994-12-20 Feng; Jun Security system
JP2786809B2 (en) 1994-03-08 1998-08-13 株式会社トキメック Ship navigation support device
US5470233A (en) 1994-03-17 1995-11-28 Arkenstone, Inc. System and method for tracking a pedestrian
US5485163A (en) 1994-03-30 1996-01-16 Motorola, Inc. Personal locator system
US5461390A (en) 1994-05-27 1995-10-24 At&T Ipm Corp. Locator device useful for house arrest and stalker detection
US5694546A (en) 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
US5719926A (en) 1994-06-10 1998-02-17 Communications Product Development, Inc. Prepaid long-distance telephone service system with flexible operating parameters
US5802492A (en) 1994-06-24 1998-09-01 Delorme Publishing Company, Inc. Computer aided routing and positioning system
FI98688C (en) 1994-07-20 1997-07-25 Nokia Telecommunications Oy Method for initiating a short message transmission in a cellular radio system, a cellular radio system and subscriber register in a cellular radio system
US6169891B1 (en) * 1994-10-18 2001-01-02 At&T Corp. Method and apparatus for billing of wireless telephone calls
US5754636A (en) * 1994-11-01 1998-05-19 Answersoft, Inc. Computer telephone system
US6244758B1 (en) * 1994-11-15 2001-06-12 Absolute Software Corp. Apparatus and method for monitoring electronic devices via a global network
US5485161A (en) 1994-11-21 1996-01-16 Trimble Navigation Limited Vehicle speed control based on GPS/MAP matching of posted speeds
US6370373B1 (en) * 1994-11-23 2002-04-09 Lucent Technologies Inc. System and method for detecting cloning fraud in cellular/PCS communications
US6226529B1 (en) * 1994-12-08 2001-05-01 Itt Manufacturing Enterprises, Inc. System for providing a simultaneous data and voice channel within a single channel of a portable cellular telephone to provide position-enhanced cellular services (PECS)
US5579372A (en) 1994-12-12 1996-11-26 Telefonaktiebolaget Lm Ericsson Flow control method for short message service - busy subscriber
US5761618A (en) 1994-12-22 1998-06-02 Bell Atlantic Mobile Systems, Inc. Updating technique for downloading new system identification (SID) list into a handset
US5797091A (en) 1995-03-07 1998-08-18 Xypoint Corporation Personal communication system and method of use
US5692037A (en) 1995-03-31 1997-11-25 Cellular Development Systems On demand real time telephone billing equipment
US5532690A (en) 1995-04-04 1996-07-02 Itt Corporation Apparatus and method for monitoring and bounding the path of a ground vehicle
US5621793A (en) 1995-05-05 1997-04-15 Rubin, Bednarek & Associates, Inc. TV set top box using GPS
AU5848896A (en) 1995-05-23 1996-12-11 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for supporting delivery of short messag e service messages to sleeping mobile stations in a cellular communications system
US5797096A (en) 1995-08-02 1998-08-18 Telefonaktiebolaget Lm Ericsson (Publ) System and method for maintaining control channel mode information in a cellular telecommunications network
SE9502995L (en) * 1995-08-30 1996-08-26 Sendit Ab Systems and host device for transmission of electronic mail over a mobile telephone network
US5943399A (en) 1995-09-29 1999-08-24 Northern Telecom Limited Methods and apparatus for providing communications to telecommunications terminals
US5806000A (en) 1995-10-12 1998-09-08 Telefonaktiebolaget Lm Ericsson (Publ) System and method for implementing short message service extension phones within a radio telecommunications network
US5946629A (en) 1995-11-28 1999-08-31 Telefonaktiebolaget L M Ericsson Cellular telephone network having short message service interaction with other networks
US5920821A (en) 1995-12-04 1999-07-06 Bell Atlantic Network Services, Inc. Use of cellular digital packet data (CDPD) communications to convey system identification list data to roaming cellular subscriber stations
US5794142A (en) 1996-01-29 1998-08-11 Nokia Mobile Phones Limited Mobile terminal having network services activation through the use of point-to-point short message service
US5999811A (en) 1996-02-16 1999-12-07 Ericsson, Inc. Mobile telephone for roaming using dual mode/band equipment including SIM cards
US5740534A (en) 1996-02-22 1998-04-14 Motorola, Inc. Method for determining available frequencies in selective call receivers
US7088990B1 (en) * 1996-02-26 2006-08-08 Nokia Mobile Phones, Ltd. Communication network terminal supporting a plurality of applications
US5768509A (en) 1996-04-08 1998-06-16 Adc Newnet, Inc. Short message server without local customer database
US5822700A (en) 1996-04-18 1998-10-13 Telefonaktiebolaget L M Ericsson Flow control of short message service messages in a cellular telephone network
US5905736A (en) * 1996-04-22 1999-05-18 At&T Corp Method for the billing of transactions over the internet
US6023470A (en) * 1996-05-17 2000-02-08 Lee; Warren S. Point of presence (POP) for digital facsimile network with virtual POPs used to communicate with other networks
US5963864A (en) * 1996-05-31 1999-10-05 Bellsouth Intellectual Property Management Corporation Method and system for automatically connecting telephone calls to multiple devices having different directory numbers
US5767795A (en) 1996-07-03 1998-06-16 Delta Information Systems, Inc. GPS-based information system for vehicles
US5946630A (en) 1996-07-10 1999-08-31 Telefonaktiebolaget L M Ericsson (Publ) Method for storing and forwarding short messages to mobile subscribers in a cellular communications system
US5774533A (en) 1996-08-14 1998-06-30 Bellsouth Corporation Method and system for providing a billing directed communication service
US6199045B1 (en) * 1996-08-15 2001-03-06 Spatial Adventures, Inc. Method and apparatus for providing position-related information to mobile recipients
US6101378A (en) 1996-08-15 2000-08-08 Japan Radio Co., Ltd. Pre-paid cellular telephone system
US5959543A (en) 1996-08-22 1999-09-28 Lucent Technologies Inc. Two-way wireless messaging system with flexible messaging
US5838768A (en) * 1996-10-03 1998-11-17 Telefonaktiebolaget L M Ericsson System and method for controlled media conversion in an intelligent network
FI103546B (en) * 1996-09-16 1999-07-15 Nokia Telecommunications Oy Data service in a mobile telephone network
US5960074A (en) * 1996-09-23 1999-09-28 Curtis Clark Mobile tele-computer network for motion picture, television and tv advertising production
US6181935B1 (en) 1996-09-27 2001-01-30 Software.Com, Inc. Mobility extended telephone application programming interface and method of use
US6122503A (en) 1996-10-08 2000-09-19 At&T Wireless Services Inc Method and apparatus for over-the-air programming of telecommunication services
US6487180B1 (en) * 1996-10-15 2002-11-26 Motorola, Inc. Personal information system using proximity-based short-range wireless links
US5930701A (en) 1996-10-17 1999-07-27 Telefonaktiebolaget L M Ericsson (Publ) Providing caller ID within a mobile telecommunications network
JP3455032B2 (en) * 1996-10-31 2003-10-06 株式会社日立製作所 Communications system
US6188752B1 (en) * 1996-11-12 2001-02-13 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for providing prepaid telecommunications services
US5828740A (en) 1996-11-14 1998-10-27 Sprint Communications Co., L.P. Prepaid calling card external/adjunct database processor
US6175922B1 (en) * 1996-12-04 2001-01-16 Esign, Inc. Electronic transaction systems and methods therefor
US6493430B2 (en) * 1996-12-24 2002-12-10 At&T Wireless Services, Inc. Method of wireless retrieval of information
US6249680B1 (en) * 1997-01-08 2001-06-19 U.S. Wireless Corporation Radio transmitter location finding in CDMA wireless communication systems
US6456852B2 (en) * 1997-01-08 2002-09-24 Trafficmaster Usa, Inc. Internet distributed real-time wireless location database
US5966663A (en) 1997-01-14 1999-10-12 Ericsson Messaging Systems Inc. Data communications protocol for facilitating communications between a message entry device and a messaging center
US6064875A (en) * 1997-01-31 2000-05-16 Usa Telecommunications Services, Inc. Wireless communications system and method of operation for reducing fraud
US6058300A (en) * 1997-02-04 2000-05-02 National Telemanagement Corporation Prepay telecommunications system
US5949326A (en) 1997-02-13 1999-09-07 Sony Corporation Internet monitoring and input pager
US5950130A (en) 1997-03-18 1999-09-07 Sbc Technology Resources, Inc. Mobile station with intelligent roaming and over-the-air programming features
US6421733B1 (en) * 1997-03-25 2002-07-16 Intel Corporation System for dynamically transcoding data transmitted between computers
FI104873B (en) * 1997-04-16 2000-04-14 Nokia Networks Oy Data service in a mobile network
US5974054A (en) 1997-04-23 1999-10-26 Motorola, Inc. Method and apparatus in a radio messaging system for forming a current frame of data while maintaining a correct transmission order for numbered messages
US6393014B1 (en) * 1997-06-03 2002-05-21 At&T Wireless Services, Inc. Method and system for providing data communication with a mobile station
US6178331B1 (en) * 1997-06-17 2001-01-23 Bulletin.Net, Inc. System and process for allowing wireless messaging
US5941945A (en) * 1997-06-18 1999-08-24 International Business Machines Corporation Interest-based collaborative framework
US6049710A (en) * 1997-06-19 2000-04-11 Kimberley Nanette Engen Wireless prepaid telephone system with dispensable instruments
US6223042B1 (en) * 1997-06-26 2001-04-24 At&T Wireless Services Inc Method of intelligent roaming using network information
US6826407B1 (en) * 1999-03-29 2004-11-30 Richard J. Helferich System and method for integrating audio and visual messaging
FI106282B (en) 1997-09-22 2000-12-29 Nokia Networks Oy A method and system for transmitting a short message over a telecommunications network
US6075982A (en) * 1997-09-23 2000-06-13 Mci Communications Corporation Wireless prepaid platform integration with standard signaling
US6311055B1 (en) 1997-10-02 2001-10-30 Ericsson Inc System and method for providing restrictions on mobile-originated calls
KR100232874B1 (en) * 1997-10-18 1999-12-01 윤종용 Method for re-transmitting transmission failed short message in mobile radio terminal
US6070067A (en) * 1997-10-31 2000-05-30 Telefonaktiebolaget Lm Ericsson Prepayment method utilizing credit information stored in mobile terminals for accessing wireless telecommunication networks
US6173181B1 (en) * 1997-11-07 2001-01-09 Motorola, Inc. Method and system for controlling neighbor scanning in a subscriber unit in a cellular communication system
US6505046B1 (en) * 1997-11-19 2003-01-07 Nortel Networks Limited Method and apparatus for distributing location-based messages in a wireless communication network
GB2332289A (en) * 1997-12-11 1999-06-16 Ibm Handling processor-intensive data processing operations
US5978685A (en) 1997-12-15 1999-11-02 Telefonaktiebolaget L/M Ericsson Digital cellular telecommunications with short message service over the packet channel
US6266614B1 (en) 1997-12-24 2001-07-24 Wendell Alumbaugh Travel guide
US6512930B2 (en) * 1997-12-30 2003-01-28 Telefonaktiebolaget Lm Ericsson (Publ) On-line notification in a mobile communications system
US6035025A (en) * 1998-01-07 2000-03-07 National Telemanagement Corporation System and method for a prepaid bundled telecommunications account
US6421707B1 (en) * 1998-02-13 2002-07-16 Lucent Technologies Inc. Wireless multi-media messaging communications method and apparatus
US6122520A (en) 1998-02-13 2000-09-19 Xerox Corporation System and method for obtaining and using location specific information
US6263212B1 (en) * 1998-02-17 2001-07-17 Alcatel Usa Sourcing, L.P. Short message service center
US6081508A (en) * 1998-02-25 2000-06-27 Indus River Networks, Inc. Remote computer communication
US6393461B1 (en) * 1998-02-27 2002-05-21 Fujitsu Limited Communication management system for a chat system
US6353614B1 (en) * 1998-03-05 2002-03-05 3Com Corporation Method and protocol for distributed network address translation
US6148197A (en) 1998-03-06 2000-11-14 Sbc Technology Resources, Inc. Intelligent roaming system with over the air programming
DE69839087T2 (en) * 1998-03-18 2009-03-19 Sony Deutschland Gmbh IRC name translation protocol
US6850916B1 (en) * 1998-04-27 2005-02-01 Esignx Corporation Portable electronic charge and authorization devices and methods therefor
US6654786B1 (en) * 1998-04-30 2003-11-25 Openwave Systems Inc. Method and apparatus for informing wireless clients about updated information
US6314108B1 (en) * 1998-04-30 2001-11-06 Openwave Systems Inc. Method and apparatus for providing network access over different wireless networks
US6507589B1 (en) * 1998-04-30 2003-01-14 Openwave Systems Inc. Method and apparatus for routing between network gateways and service centers
US6208854B1 (en) * 1998-05-14 2001-03-27 Ameritech Corporation System and method for routing a call to a called party's landline or wireless communication unit
JP4064060B2 (en) 1998-05-15 2008-03-19 ユニキャスト・コミュニケーションズ・コーポレイション Technology for implementing network-distributed interstitial web advertisements that are initiated by the browser and invisible to the user using ad tags embedded in reference web pages
US6185602B1 (en) * 1998-06-29 2001-02-06 Sony Corporation Multi-user interaction of multimedia communication
AU4858999A (en) * 1998-07-06 2000-01-24 Bellsouth Intellectual Property Corporation Dispatch application utilizing short message service
US6246879B1 (en) 1998-07-07 2001-06-12 Telefonaktiebolaget L M Ericsson (Publ) Methods of sharing capabilities information between the nodes of telecommunications network
US6272176B1 (en) * 1998-07-16 2001-08-07 Nielsen Media Research, Inc. Broadcast encoding system and method
US6397054B1 (en) * 1998-07-30 2002-05-28 Ericsson Inc. Features for emergency calling and short messaging system
US6148198A (en) 1998-08-05 2000-11-14 Ericsson Inc. Method and apparatus for selecting a service provider
US7010603B2 (en) 1998-08-17 2006-03-07 Openwave Systems Inc. Method and apparatus for controlling network connections based on destination locations
US6289373B1 (en) 1998-08-24 2001-09-11 Rockwell Electronic Commerce Corp. Method of processing E-mail in an automatic call distributor
US6198431B1 (en) * 1998-08-27 2001-03-06 Maptrek Llc Compact GPS tracker and customized mapping system
US6667688B1 (en) * 1998-08-28 2003-12-23 Royal Thoughts, L.L.C. Detection system using personal communication device with response
US6128656A (en) 1998-09-10 2000-10-03 Cisco Technology, Inc. System for updating selected part of configuration information stored in a memory of a network element depending on status of received state variable
US6289095B1 (en) * 1998-09-29 2001-09-11 Lucent Technologies Inc. NPA split management in intelligent network environment
US6189031B1 (en) * 1998-10-01 2001-02-13 Mci Communications Corporation Method and system for emulating a signaling point for testing a telecommunications network
US6208870B1 (en) * 1998-10-27 2001-03-27 Lucent Technologies Inc. Short message service notification forwarded between multiple short message service centers
US6195651B1 (en) * 1998-11-19 2001-02-27 Andersen Consulting Properties Bv System, method and article of manufacture for a tuned user application experience
US6470181B1 (en) * 1998-11-20 2002-10-22 Nortel Networks Limited Method and apparatus for simultaneous text and audio for sponsored calls
US6564251B2 (en) 1998-12-03 2003-05-13 Microsoft Corporation Scalable computing system for presenting customized aggregation of information
US6223046B1 (en) * 1998-12-15 2001-04-24 Telefonaktiebolaget Lm Ericsson (Publ) System and method for coordinating notification requests for terminal availability
DE19859081C2 (en) * 1998-12-21 2001-03-29 Plus Mobilfunk Gmbh E Method for routing messages in at least one telecommunications network according to the GSM standard
US6567979B1 (en) * 1998-12-23 2003-05-20 Oak Technology, Inc. Method and apparatus for enforcing DVD parental control across an enterprise
US6538561B2 (en) 1998-12-31 2003-03-25 Weblink Wireless, Inc. Data communication network for minimizing toll-charge dependent links and method of operation
US6502086B2 (en) 1999-01-04 2002-12-31 International Business Machines Corporation Mapping binary objects in extended relational database management systems with relational registry
US6301695B1 (en) * 1999-01-14 2001-10-09 Xilinx, Inc. Methods to securely configure an FPGA using macro markers
US6442589B1 (en) 1999-01-14 2002-08-27 Fujitsu Limited Method and system for sorting and forwarding electronic messages and other data
US6463145B1 (en) 1999-01-29 2002-10-08 Microsoft Corporation Computer-implemented call forwarding options and methods therefor in a unified messaging system
GB9905056D0 (en) * 1999-03-05 1999-04-28 Hewlett Packard Co Computing apparatus & methods of operating computer apparatus
US6424841B1 (en) * 1999-02-18 2002-07-23 Openwave Systems Inc. Short message service with improved utilization of available bandwidth
SE9900710L (en) 1999-02-25 2000-08-26 Ericsson Telefon Ab L M Method and device relating to communication networks for mobile phones
US6681257B1 (en) * 1999-02-26 2004-01-20 Bellsouth Intellectual Property Corporation Methods and system for determining message routing based on elements of a directory number
US6366961B1 (en) 1999-03-03 2002-04-02 Nokia Telecommunications, Oy Method and apparatus for providing mini packet switching in IP based cellular access networks
US6826597B1 (en) 1999-03-17 2004-11-30 Oracle International Corporation Providing clients with services that retrieve data from data sources that do not necessarily support the format required by the clients
US6886017B1 (en) * 1999-04-30 2005-04-26 Elata Limited System and method for managing distribution of content to a device
US6564261B1 (en) * 1999-05-10 2003-05-13 Telefonaktiebolaget Lm Ericsson (Publ) Distributed system to intelligently establish sessions between anonymous users over various networks
US6560456B1 (en) * 1999-05-24 2003-05-06 Openwave Systems, Inc. System and method for providing subscriber-initiated information over the short message service (SMS) or a microbrowser
US6591304B1 (en) 1999-06-21 2003-07-08 Cisco Technology, Inc. Dynamic, scaleable attribute filtering in a multi-protocol compatible network access environment
US6499053B1 (en) 1999-06-30 2002-12-24 International Business Machines Corporation Master/slave architecture for a distributed chat application in a bandwidth constrained network
US6131443A (en) * 1999-08-04 2000-10-17 Duncan; William P. Corrosion monitor
DE60035649T2 (en) * 1999-09-06 2007-11-22 Honda Giken Kogyo K.K. Motorcycle with navigation system
US6718178B1 (en) * 1999-10-01 2004-04-06 Sprint Spectrum, L.P. Automatic in-line messaging system
US6674767B1 (en) * 1999-10-04 2004-01-06 Microsoft Corporation Flexible system and method for communicating between a broad range of networks and devices
US7020685B1 (en) 1999-10-08 2006-03-28 Openwave Systems Inc. Method and apparatus for providing internet content to SMS-based wireless devices
US6396913B1 (en) * 1999-10-22 2002-05-28 Convergys Cmg Utah Inc. System and method for processing call detail records
US7809382B2 (en) * 2000-04-11 2010-10-05 Telecommunication Systems, Inc. Short message distribution center
GB2357395A (en) * 1999-12-14 2001-06-20 Nokia Mobile Phones Ltd Message exchange between wireless terminals.
US7051118B2 (en) 1999-12-22 2006-05-23 Tibo Software, Inc. Method and apparatus for anonymous subject-based addressing
US7739407B1 (en) * 1999-12-29 2010-06-15 Nokia Siemens Networks Oy Systems for customizing behaviors and interfaces in service invocations
US6977909B2 (en) * 2000-01-19 2005-12-20 Phonepages Of Sweden, Inc. Method and apparatus for exchange of information in a communication network
EP1254573A2 (en) * 2000-01-26 2002-11-06 Invertix Corporation Method and apparatus for sharing mobile user event information between wireless networks and fixed ip networks
US6877023B1 (en) * 2000-01-28 2005-04-05 Softwired, Inc. Messaging system for delivering data in the form of portable message formats between message clients
US6618763B1 (en) * 2000-02-04 2003-09-09 Inphonic Inc. Virtual private wireless network implementing message delivery preferences of the user
US6408177B1 (en) * 2000-02-09 2002-06-18 Ss8 Networks, Inc. System and method for call management with voice channel conservation
DE60113820T2 (en) * 2000-02-14 2006-07-13 Motorola, Inc., Schaumburg DEVICE FOR TRANSMITTING CHAT MESSAGES AND METHOD THEREFOR
US7058036B1 (en) * 2000-02-25 2006-06-06 Sprint Spectrum L.P. Method and system for wireless instant messaging
US6993325B1 (en) * 2000-02-29 2006-01-31 Ericsson Inc. Method for facilitating electronic communications
US6625461B1 (en) * 2000-03-31 2003-09-23 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for providing compatibility between telecommunication networks using different transmission signaling systems
US6871215B2 (en) * 2000-04-11 2005-03-22 Telecommunication Systems Inc. Universal mail wireless e-mail reader
US7522911B2 (en) * 2000-04-11 2009-04-21 Telecommunication Systems, Inc. Wireless chat automatic status tracking
US20020133568A1 (en) * 2001-02-20 2002-09-19 Smith Richard A. Individualized network information server
US7228333B1 (en) * 2000-04-25 2007-06-05 Telecommunication Systems, Inc. Wireless internet gateway
US6891811B1 (en) * 2000-04-18 2005-05-10 Telecommunication Systems Inc. Short messaging service center mobile-originated to HTTP internet communications
US6970869B1 (en) * 2000-05-09 2005-11-29 Sun Microsystems, Inc. Method and apparatus to discover services and negotiate capabilities
FI111899B (en) * 2000-06-16 2003-09-30 Nokia Corp Method for allocating billing in message delivery system, delivery system, server and terminal
US6961330B1 (en) 2000-06-23 2005-11-01 Comverse Ltd. Web development and deployment using SMS and USSD
US6856804B1 (en) * 2000-07-24 2005-02-15 Verizon Wireless Mobile station internet messaging
US6771971B2 (en) 2000-10-10 2004-08-03 Sws Development, L.L.C. Subscriber information service center (SISC)
US6711411B1 (en) 2000-11-07 2004-03-23 Telefonaktiebolaget Lm Ericsson (Publ) Management of synchronization network
US7519654B1 (en) * 2000-11-22 2009-04-14 Telecommunication Systems, Inc. Web gateway multi-carrier support
US7010303B2 (en) * 2000-12-22 2006-03-07 Research In Motion Limited Wireless router system and method
US6446969B1 (en) * 2001-02-05 2002-09-10 Thierry Denoual Board game apparatus
US7464178B2 (en) * 2001-05-23 2008-12-09 Markport Limited Open messaging gateway
GB2386800B (en) 2001-06-25 2004-03-10 Empower Interactive Group Ltd Message transmission system and method
US6658260B2 (en) * 2001-09-05 2003-12-02 Telecommunication Systems, Inc. Inter-carrier short messaging service providing phone number only experience
US20030092454A1 (en) * 2001-11-15 2003-05-15 Amin Halim One step SMS message board and time management tools
US7116972B1 (en) 2001-11-16 2006-10-03 Sprint Spectrum L.P. Method and system for control over call handling
TW200303690A (en) * 2002-02-18 2003-09-01 Empower Interactive Group Ltd Distributed message transmission system and method
US7761511B2 (en) * 2002-03-04 2010-07-20 Kyocera Corporation System and method for optimal short message service (SMS) encoding in a wireless communications device
CA2483222A1 (en) * 2002-04-22 2003-10-30 Inphonic, Inc. Method and system for short message service (sms) transactions for wireless devices
US7991411B2 (en) * 2004-05-06 2011-08-02 Telecommunication Systems, Inc. Method to qualify multimedia message content to enable use of a single internet address domain to send messages to both short message service centers and multimedia message service centers
EP1767010B1 (en) * 2004-06-15 2015-11-11 Tekelec Global, Inc. Method, system, and computer program products for content-based screening of MMS messages
US20100257241A1 (en) * 2009-04-02 2010-10-07 Demandforce, Inc. System and method for adaptive delivery of electronic comminucations

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6154745A (en) * 1996-12-31 2000-11-28 Nokia Mobile Phones Ltd. Method for transmission of information to the user
US6119167A (en) * 1997-07-11 2000-09-12 Phone.Com, Inc. Pushing and pulling data in networks
US6185565B1 (en) * 1997-12-18 2001-02-06 Nortel Networks Corporation System and method for communication session disposition responsive to events in a telecommunications network and the internet
US6173316B1 (en) * 1998-04-08 2001-01-09 Geoworks Corporation Wireless communication device with markup language based man-machine interface
US6138158A (en) * 1998-04-30 2000-10-24 Phone.Com, Inc. Method and system for pushing and pulling data using wideband and narrowband transport systems

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2390784A (en) * 2001-02-15 2004-01-14 Vodafone Plc System for interconnecting a remote server with a short message server centre (smsc) via the internet
GB2390784B (en) * 2001-02-15 2004-12-08 Vodafone Plc System for interconnecting a remote server with a short message server centre (smsc) via the internet
WO2002065793A1 (en) * 2001-02-15 2002-08-22 Vodafone Group Plc System for interconnecting a remote server with a short message server centre (smsc) via the internet
US8965419B2 (en) 2001-02-15 2015-02-24 Vodafone Group Plc System for interconnecting a remote server with a short message server centre (SMSC) via the internet
AU2003273550B2 (en) * 2002-05-13 2008-07-31 Markport Limited Control of PLMN messaging services in IP domains
CN100337494C (en) * 2004-06-24 2007-09-12 华为技术有限公司 Management and system for short message of mobile terminal
US7908397B1 (en) 2005-02-28 2011-03-15 Adobe Systems Incorporated Application server gateway technology
EP1988723A1 (en) * 2006-03-13 2008-11-05 Huawei Technologies Co., Ltd. Method, system and short message service center for obtaining user's information through short-message
EP1988723A4 (en) * 2006-03-13 2009-04-22 Huawei Tech Co Ltd Method, system and short message service center for obtaining user's information through short-message
US8401009B1 (en) 2007-07-23 2013-03-19 Twitter, Inc. Device independent message distribution platform
US9088532B1 (en) 2007-07-23 2015-07-21 Twitter, Inc. Device independent message distribution platform
US9577966B1 (en) 2007-07-23 2017-02-21 Twitter, Inc. Device independent message distribution platform
US10110550B1 (en) 2007-07-23 2018-10-23 Twitter, Inc. Device independent message distribution platform
US10686748B1 (en) 2007-07-23 2020-06-16 Twitter, Inc. Device independent message distribution platform
US11502985B1 (en) 2007-07-23 2022-11-15 Twitter, Inc. Device independent message distribution platform
CN102480704A (en) * 2010-11-26 2012-05-30 中国移动通信集团北京有限公司 Method for sending status report receiving response message, system for sending status report receiving response message and agent for sending status report receiving response message
CN102480704B (en) * 2010-11-26 2015-05-27 中国移动通信集团北京有限公司 Method for sending status report receiving response message, system for sending status report receiving response message and agent for sending status report receiving response message
EP2652640A4 (en) * 2010-12-14 2018-01-03 Microsoft Technology Licensing, LLC Using text messages to interact with spreadsheets
US11416676B2 (en) 2010-12-14 2022-08-16 Microsoft Technology Licensing, Llc Using text messages to interact with spreadsheets
US10191898B2 (en) 2011-01-24 2019-01-29 Microsoft Technology Licensing, Llc Representation of people in a spreadsheet

Also Published As

Publication number Publication date
US20120329491A1 (en) 2012-12-27
US7355990B2 (en) 2008-04-08
US20060242230A1 (en) 2006-10-26
US8750183B2 (en) 2014-06-10
AU2001259045A1 (en) 2001-10-30
US20140256368A1 (en) 2014-09-11
US8260329B2 (en) 2012-09-04
US20080159206A1 (en) 2008-07-03
US6891811B1 (en) 2005-05-10

Similar Documents

Publication Publication Date Title
WO2001080534A1 (en) Short messaging service center mobile-originated to http internet communications
US6393014B1 (en) Method and system for providing data communication with a mobile station
US8649314B2 (en) Peer-to-peer mobile data transfer method and device
US7127264B2 (en) Mobile originated interactive menus via short messaging services
US8682362B2 (en) Inter-carrier messaging service providing phone number only experience
EP1338155B1 (en) Network-assisted automatic confirmation of short message service delivery
EP1836863B1 (en) Method, system and apparatus for providing virtual mobile phone number service
US20040053629A1 (en) Method and message server for conveying messages in a telecommunications network
EP1747650A1 (en) A method for transmitting multimedia messages
JP2000078207A (en) Method and device for providing network access extending overdifferent radio networks
US20070298819A1 (en) Mobile originated interactive menus via short messaging services
CN101656933A (en) Method, device and system in group system for positioning by short message
JP4971156B2 (en) Method of transmitting registration data or deregistration data for specific use, system, server, and communication terminal therefor
US20100093306A1 (en) System and method for availing information relating to a circumstance
US7184757B2 (en) Messaging system and method therefor
EP1361712B1 (en) Method for communicating messages to an electronic communication equipment
JP3811356B2 (en) System and method for providing an indication of maximum telecommunications service payload size in wireless communications
KR20040098735A (en) Method and system for acknowledgement of receipt and reading of multimedia data using a data burst message
WO2003088688A1 (en) Method and system relating to control of mobile radio messaging communications
KR101741811B1 (en) Method for web-to-phone message transfer&#39;control and message gateway device
WO2003096636A1 (en) Method for communicating messages to an electronic communication equipment
KR20040009623A (en) Short Message Dealing System and Method by Internet
KR20060028028A (en) Method for providing short messages service

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP