Unified messaging protocol

Abstract: A wireless station user is provided with a unified messaging protocol that enhances the currently available messaging capabilities of SMS. The user is provided with the capability to compose at least one distribution list for SMS messages. The user is also provided with the capability to send messages to at least one distribution list on a user determined, periodic basis. The user is further provided with the capability to send messages containing content obtained from external sources, and to send those messages periodically to at least one distribution list, where the content of the messages is automatically updated prior to sending the periodic message.

Description: This invention relates to a method of sending messages, and to a wireless station. The Short Message Service (SMS) is a point to point, or point to multi-point service that enables users to exchange messages over a communications network. Receipt notification is part of the service, where the receiving station returns an acknowledgement, indicating that the message has been delivered. Text messages can originate from various sources, in various ways, including by dialing a toll free number to reach an operator who keys in the message and sends it, by using a software package to send a message directly from a user terminal. An SMS communication is not "real time", that is, messages are exchanged independently of each other, and as such, SMS communication does not require the establishment of a simultaneously contiguous end-to-end traffic path. A typical SMS system includes user terminals as the initiators or final destinations for messages, a Short Message Service Center (SMSC), which serves as a relay for messages among terminals through the network, and the network itself serving as the communications medium for the messages. Final destinations for messages are not limited to user terminals, and could include e-mail addresses and fax machines. The Short Message Transfer Protocol (SMTP), including various lower layer protocols, manages the transfer of messages among terminals. A terminal configured for SMS provides the user with methods to compose, edit, send, receive, read, and delete messages. The connection of an optional keyboard or optional display to the terminal may facilitate the generation and editing of messages by the user. The message will typically contain the message contents, an identification of the final destination, and an identification of the desired SMSC. The message is sent through the communications network and is received and stored by the SMSC. The SMSC determines if the intended destination of the message is available to the network, and if so, the message is then sent to that destination. Whenever an SMS capable terminal is registered to a network, it is capable of exchanging SMS messages, even when the terminal is engaged in a voice or data call. If the intended destination is not available, or does not acknowledge delivery, the SMSC may then initiate any number of message handling routines including re-transmitting the message at periodic intervals or even discarding the message. Reference may be had, by example, to TIA Interim Standard IS-136.1, Rev. A, Feb. 2, 1996, Section 7, for a description of one embodiment of various SMS message formats and protocols. Another type of SMS is known as broadcast SMS (or also as S-BCCH), which is a point to multipoint message transmission (i.e. from a network operator to a plurality of wireless stations). Examples of broadcast SMS messages include road traffic reports, winning lottery numbers, and stock market quotations. Reference can be had, by example, to a publication entitled "S-BCCH for IS-136", TR45.3.6/95.06.13/8, Digital Cellular Systems, Jun.12-15, 1995 (Ericsson), for a description of one type of S-BCCH. A problem arises when a user desires to send a broadcast message to a specific set of recipients. For operator assisted messages, the operator must be notified of each recipient, while for locally generated messages, each recipient must be keyed in individually, as no provisions have been made for providing predefined distribution lists for messages. Another problem arises when a user desires to send a message periodically. A user must recompose the message, or retrieve a saved copy of the message, and then resend it at the desired time, as no provisions have been made for a user determined periodic broadcast of a message to a distribution list defined by that user. A further problem arises when a user desires to send a periodic message with updated content. Using stock market quotations as an example, a user may wish to send an updated quotation to a recipient on a periodic basis, for example, every hour. Under current practice, the user must obtain the information, compose the message, and then send the message, and this procedure must be repeated every hour. The forgoing and other problems are overcome by methods and apparatus in accordance with embodiments disclosed herein. WO-A-98/10608 discloses a mobile station which stores groups of directory numbers in a memory. WO-A-98/34422 discloses a web-based calendar application, in which reminders are sent to a user using SMS. GB-A-2327571 discloses the storing of a group on a network, with a user being able to send an SMS to all members of a group through the sending of onemessage. According to a first aspect of the invention there is provided a method as claimed in claim 1. According to a second aspect of the invention there is provided a wireless station as claimed in claim 9. According to preferred aspects of the invention, a user is provided with a unified messaging protocol that enhances the currently available messaging capabilities of SMS. The user is provided with the capability to compose SMS messages and with the capability to compose at least one distribution list for those messages. The user is also provided with the capability to send messages to recipients on at least one distribution list on a user determined, periodic basis. The user is further provided with the capability to send messages containing content obtained from external sources which may reside on various diverse networks including TCP/IP, X.25, FDDI, ATM, etc. The user is further provided with the capability to send those messages periodically to recipients on at least one distribution list, where the content of the messages is automatically updated prior to sending the periodic message. The recipients on the distribution lists may also be on diverse networks including those mentioned above. The above set forth and other features of the invention are made more apparent in the ensuing description of embodiments thereof, given by way of example, when read in conjunction with the attached Drawings, wherein: Figure 1 is an elevational view of a wireless station and further illustrates a wireless communication system and a service provider to which the wireless station is bi-directionally coupled through wireless RF links; Figure 2 is a block diagram of a wireless station that is suitable for practicing this invention; Figure 3 is a block diagram of a wireless communications system utilizing the functions and embodiments disclosed herein; Figures 4A and 4B show flowcharts of the operation of the message server upon receipt of information requests about content providers and distribution lists, respectively; and Figure 5 is a block diagram of a portion of the wireless communication system, specifically a message server 40, that utilizes the functions and embodiments disclosed herein. Reference is made to Figs. 1 and 2 for illustrating a user terminal 10, in this embodiment shown as a user terminal 10, that is suitable for practicing this invention. The user terminal 10 may be, but is not limited to, a radio telephone, a cellular telephone or a personal communicator. It should be understood that the user terminal 10 can be a vehicle mounted, handheld, or stationary device. The user terminal 10 includes an antenna 12 for transmitting signals to and for receiving signals from a base site or base station 30. The base station 30 can be a part of a cellular network comprising a Base Station/Mobile Switching Center/Interworking function (BMI) 32 that includes a mobile switching center (MSC) 34 and a Short Message Service Center (SMSC) 36. The MSC 34 provides a connection to landline trunks when the user terminal 10 is involved in a call. The user terminal 10 includes a modulator (MOD) 14A, a transmitter 14, a receiver 16, a demodulator (DEMOD) 16A, and a controller 18 that provides signals to and receives signals from the transmitter 14 and receiver 16, respectively. These signals include signaling information in accordance with the air interface standard of the applicable cellular system, and also user speech and/or user generated data. The particular type of air interface standard is not important to the operation of this invention, as the teachings of this invention apply generally to communications systems, including time division/multiple access (TDMA) systems and code division/multiple access (CDMA) systems. By example, the user terminal may be capable of operating with any number of other standards such as GSM. Some AMPS, narrow band AMPS (NAMPS), as well as TACS wireless stations may also benefit from the teaching of this invention, as should dual or higher mode stations (e.g. digital/analog or TDMA/CDMA/analog stations). It is understood that the controller 18 also includes the circuitry required for implementing the audio (speech path) and logic functions of the wireless station. By example, the controller 18 may be comprised of a digital signal processor device, a microprocessor device, and various analog to digital converters, digital to analog converters, and other support circuits. The control and signal processing functions of the wireless station are allocated between these devices according to their respective capabilities. A user interface includes a conventional earphone or speaker 17, a conventional microphone 19, a display 20, and a user input device, typically a keypad 22, all of which are coupled to the controller 18. The keypad 22 includes the conventional numeric (0-9) and related keys (#,*) 22a, and other keys 22b used for operating the user terminal 10. These other keys 22b may include, by example, a SEND key, various menu scrolling and soft keys, and a PWR key. The user terminal 10 also includes various memories, shown collectively as the memory 24, wherein are stored a plurality of constants and variables that are used by the controller 18 during the operation of the wireless station. For example, the memory 24 stores the values of wireless system parameters and the number assignment module (NAM). An operating program for controlling the operation of controller 18 is also stored in the memory 24 (typically in a ROM device). The operating program in the memory 24 includes routines to present messages and message-related functions to the user on the display 20, typically as various menu items. The memory 24 may also store data including point-to-point and Broadcast SMS messages 24A that are received from the SMSC 36 prior to the display of the messages to the user, as well as SMS messages composed by the user prior to transmission to the SMSC 36. Figure 3 shows a preferred embodiment in accordance with the teachings disclosed herein. A user composes SMS messages and utilizes a user terminal 10 to convey those messages to the SMSC 36 via base station 30. The SMSC 36 communicates with a message server 40 through a communications link 50. The message server 40 preferably provides several functions. First, it receives user originated SMS messages specifying the composition of distribution lists for that particular user. Second, it gathers and stores information from various content providers, 60A, 60B, ... 60 n . over link 51. Third, the server receives SMS messages from the user terminal 10 that cause it to assemble messages composed of information received from the content providers and to transmit messages to the addressees 70A... 70 n , on the distribution lists, again over the link 51. Link 51 may be any communications link capable of supporting communication between the message server 40 and the content providers 60, and between the message server 40 and the addressees 70. Link 51 may include the PSTN, the internet, a wireless network, a wired network, and may further include other types of networks including X.25, TCP/IP, ATM, etc. The various aspects of this are now described in further detail. In the user terminal 10, the memory 24 further includes a memory 24B (Fig. 2) containing a short message program (SM program) which includes routines for implementing the method and apparatus disclosed herein, preferably by providing menus to the user. The menus allow a user to compose distribution lists for SMS messages, to cause messages to be sent to the distribution lists on a user determined, periodic basis, and to cause messages to be sent periodically where the contents of the messages are automatically updated each time the messages are sent. In order to create a distribution list, a user selects the SM program in memory 24B (Fig. 2) by pressing the appropriate key(s) on the keypad 22. The SM program presents a menu of SM program options. These preferably include composing distribution lists for SMS messages, and sending messages to a specified distribution list or lists. The user then selects the menu option for composing distribution lists and is then further presented with a prompt to input data to define a name or identifier for the list. The user is then prompted to enter the addresses of the recipients that constitute the list. Upon completion, the SM program formats the message and sends it to the message server 40. The message is sent directly to addresses on the list which are SMS type addresses. The distribution list is composed of a number of different address types, including telephone numbers, fax numbers, e-mail addresses, etc. It should be understood that the type of address is not limited to the examples given, but may be any type of address accessible by the message server 40 including addresses on the various networks described above. In a further embodiment, the user terminal 10 may include a subscriber identification module (SIM) 27 which may include a SIM controller 28 and a SIM memory 29. In this case, the SM program, the SMS messages received, the user defined distribution lists and their contents, and information about the content providers may be stored in the SIM memory 29. In order to send messages to a previously created distribution list, a user again enters the SM program and selects an option for sending messages. The user is prompted for the type of message to be sent. The message type may include user composed text messages or messages containing information from at least one of the content providers 60A, ... 60 n , accessed by the message server 40. By example, the message type USER TEXT may include a message composed by the user for distribution to a particular distribution list. The user is then prompted for the text string to be sent. As a further example, the message type STOCK may include the current price of a particular stock, obtained from a content provider 60 n . The user may then be prompted for further parameters to be included in the message, for example, NOK, to indicate that the current price of Nokia be included in the message. In both cases, after the message contents are specified, the user is then prompted for an identification of a distribution list. Upon completion, the SM program formats the message and sends it to the message server 40. Other options related to sending messages preferably include having a message sent upon a triggering condition. Triggering conditions may include a certain time of day, a certain elapsed time, or a certain price being achieved for a particular commodity in the financial markets. Other triggering events may include a content provider receiving a news item about a particular weather condition, or a news item from a particular location. For example, a user may request that a text message be sent every morning at 7:00 am. As a further example, a user may request that information from a content provider 60A, ... 60 n be updated every hour, between 9:00 am and 4:00 pm, and sent to a distribution list. It is important to note that a triggering condition is not limited to the aforementioned examples, and that a triggering condition may include any event that the user terminal or the message server may be capable of recognizing. In further embodiment messages may be sent to the user for approval, before being sent to the distribution list. For example, a user may request that information from a content provider 60A, ... 60 n be updated every 2 hours and sent to a distribution list. The user may request a further option where the message is first sent to the user for approval. Upon viewing the content, the user may decide to forgo sending the message for that particular period because, for example, the information may not have changed. At the next period, the message content is updated again and sent to the user for approval. This may continue until a specified time period has elapsed or the user changes the option. Information about the content providers 60A, ... 60 n is preferably available to users from the message server 40. A user may request that the message server 40 send to the user a list of the content providers 60A, ... 60 n , a list of the information available from the various content providers 60A, ... 60 n , or that it send a description of any parameters that may be required for certain types of content as mentioned above for the users reference. In a further embodiment, this information is stored in memory 24A and then utilized by the SM program for incorporation into the prompts displayed by the SM program. For example, when prompted to specify which information to send to a distribution list, the user may pick the information and any parameters for that information from a displayed list, rather than by typing it in through the keypad 22. Another available option is an ability for the user to request previously created distribution lists. Preferably, a user is able to request that the message server 40 send to the user a list composed of the identifiers of previously created distribution lists, or the contents of a previously created list. In a further embodiment, the list of identifiers, or the contents of a previously created list is stored in memory 24A and then utilized by the SM program for incorporation into the prompts displayed by the SM program, where for example, when prompted for a distribution list, a user selects one from the display, rather than entering one through the keypad 22. The information may also be used to edit the contents of distribution lists under control of the SM program. In a further embodiment, the memory 24 in addition to the SM program and SMS messages may include storage for the user defined distribution lists and their contents, and information about the content providers and that information may be stored in the memory 24 instead of sending it to be stored in the message server 40. Further, when operating the SM program, the user preferably has the ability to type in a text string without proceeding through all the prompts. For example, after invoking the SM program, at the appropriate prompt, the user may type FRIENDS: tom@tom.com; 123-123-4567. which the message server 40 recognizes as directing the creation of a distribution list called FRIENDS, containing an e-mail address tom@tom.com; and a telephone number, 123-123-4567. After sending the message that creates the distribution lists FRIENDS, the user may again invoke the SM program, and at the appropriate prompt, the user may type STOCK: NOK: FRIENDS, which the message server 40 recognizes as directing that the current stock price of Nokia be sent to the distribution list FRIENDS. The user terminal 10 is capable of composing and storing the distribution lists locally, composing SMS messages and sending those messages directly to identifiers on a distribution list that have an SMS address. The user terminal 10 further has the capability to distinguish between SMS and non-SMS addresses and then routes messages to non-SMS addresses to the message server 40 for distribution. In a further embodiment, the user terminal 10 may be capable of obtaining content from the content providers 60 n directly and incorporating the content into messages composed in the user terminal 10. The user terminal 10 may also be capable of recognizing a triggering condition, obtaining updated content from the content providers 60 n upon the occurrence of the triggering condition, and sending messages with the updated content to predetermined recipients. The user terminal 10 may further be capable of sending messages with the updated content to identifiers on a distribution list. In a further embodiment, the menus and prompts contained in the SM program, or the SM program itself, can be stored on the message server 40. At an appropriate time, the menus and prompts or the program can be downloaded to the user terminal 10, allowing new users access to the services and functions provided by the message server 40, and also allowing for upgrades to be downloaded automatically. In general, the teaching of this invention applies to any user terminal that is capable of receiving messages from a system, that includes or is coupled to a device for conveying messages and a menu of functions to a user, and that furthermore includes or is coupled to a user input device, such as a keypad or a keyboard, with which a user can generate messages and also interact with the menu to select various functions. A computer, such as a PC, can be coupled to the user terminal 10 for composing and/or viewing SMS messages, as well as interacting with the SMS program. The SMSC 36 may be conventional in construction and operation, and communicates with the message server 40 through a communications link 50. In a preferred embodiment, the SMSC 36 and the message server 40 communicate using a Transmission Control Protocol/Internet Protocol (TCP/IP). In this case, the communications link 50 supports TCP/IP, and the SMSC 36 utilizes TCP/IP communication hardware and software. A single message server 40 may service a single SMSC 36, or may service a number of SMSCs 36 b ... 36 n , depending on the capacity of the message server 40. In an alternate embodiment, the message server 40 may be incorporated into the SMSC 36. As shown in Figure 4, the message server 40 is also responsive to incoming messages requesting information about the content providers 60A, ... 60 n (Block A). An incoming message may request that the message server 40 send to the user a list of the content providers 60A, ... 60 n (Block B), a list of the information available from the various content providers 60A, ... 60 n (Block C), or send a description of any parameters that may be required for certain types of content (Block D) as mentioned above, for the users reference. The message server 40 is also responsive to incoming messages requesting information about distribution lists, also shown in Figure 6 (Block E). An incoming message may request that the message server 40 send to the user a list of all user created distribution lists (Block F), or the contents of a distribution list (Block G), for the users reference. Content providers 60A, ... 60 n may comprise a variety of conventional information sources, and the message server 40 may access them using an assortment of communications mediums. For example, the message server 40 may periodically poll a set of commercial content providers on the internet and download specific information. The message server 40 may dial up a news service every hour and download any new news content using the PSTN. It may also receive periodic radio transmissions indicating the correct time. The message server 40 may access content providers 60A, ... 60 n .periodically, or may only access a content provider in response to a request from a user. For example, a user may wish to send a message about the progress of a particular airline flight. If this information is not already being downloaded as part of the message server's normal activity, the message server 40 may initiate a specific communications session with a flight information provider and download the information as a result of the single request by the user. Figure 5 shows a block diagram of the message server 40. The message server 40 comprises a processor 100, a time keeping facility 110, a processor program memory 120, and a message memory 130. The processor communicates with the SMSC 36 (Fig. 3) through link 50, and may also be in communication with the content providers 60 (Fig. 3) and the addressees 70 (Fig. 3) through link 51. The processor program memory 120 contains a control program for the processor 100 and includes software routines and algorithms for controlling the overall operation of the message server 40. The message memory 130 contains the SM program menus, and the stored content from the content providers 60. The time keeping facility 110 enables the processor 100 to send messages at the periodic interval specified by the originating user, as well as periodically update message content (e.g. stock prices). It should be noted that the messages directed to the message server 40 are not limited to those stated above, and may encompass other messages related to composing and sending SMS messages to user defined distribution lists. It should also be noted that the messages directed to the message server 40 are not limited to the SMS message protocol. In a further embodiment, the user terminal 10, the SM program and the message server 40 support message protocols other than SMS. The user terminal 10 and the SM program may support all of the SM program functions mentioned above but may enable composition of messages in other formats to be sent to users on distribution lists that are capable of receiving those other formats. Thus, while the invention has been particularly shown and described with respect to preferred embodiments thereof, it will be understood by those skilled in the art that changes in form and details may be made therein without departing from the scope of the claims.

Claims: A method of sending messages through a telecommunications system comprising a wireless network (32) and at least one wireless station (10), said method comprising the steps of: composing at least one user defined distribution list for messages, the list including at least one identifier having a short message service address type; storing said at least one user defined distribution list in a memory (24) of said wireless station; composing a short message service message; and sending said message directly to identifiers on.the distribution list that have a short message service address type; characterised in that the list includes at least one identifier having another address type and in that the method comprises: distinguishing between identifiers on the list having short message service address types and identifiers on the list having other address types; and conveying said message to identifiers on the distribution list that have other address types to a wireless network message server (40) for distribution. The method of claim 1, wherein said step of sending further comprises sending said message to said identifiers upon the occurrence of a triggering condition. The method of claim 1 or 2, wherein said step of composing a message further comprises obtaining message content from an external source; composing said message from said external message content; and updating said content from said external source upon an occurrence of a trigger condition. The method of claim 1 or claim 2, wherein said step of composing a message further comprises: obtaining message content from an external source; composing said message from said external message content; updating said content from said external source upon an occurrence of a trigger condition; and said sending and conveying steps comprise, upon direction from said user, sending said message to said identifiers defined in said at least one user defined distribution list or discarding said message. A method as claimed in claim 1 or claim 2, wherein said step of composing a message further comprises: defining a content for a message and a supplier of said content; and updating said content from said content supplier upon an occurrence of a triggering condition. The method of claim 5, wherein said sending step further comprises: upon an occurrence of a triggering condition, sending said message to a user; and, upon direction from said user, sending said message to said at least one predetermined identifier or discarding said message. The method of any preceding claim further comprising, before the step of composing at least one user defined distribution list, the step of downloading a program that enables creation of user defined distribution lists to a user terminal from a network memory. A user terminal for sending messages through a telecommunications system comprising a memory that stores a program operable to perform a method according to any preceding claim. A wireless station (10) for use in a wireless telecommunications system that includes a service provider site, said wireless station comprising: a memory (24; 29) for storing a short message program for creating at least one user defined distribution list for storage in the or another memory (24; 29) of the wireless station the list including at least one identifier having a short message service address type; a wireless transceiver (14, 16) for coupling said wireless station to a message server through said service provider site; and means for sending short message service messages directly to identifiers on the distribution list which have a short message service address type; the wireless station being characterised in; that the list includes at least one identifier having another address types; comprising means for distinguishing between identifiers on the list having short message service address types and identifiers on the list having other address types; and comprising means for conveying messages to identifiers on the distribution list that have other address types to the message server for distribution. A wireless station as claimed in claim 9, in which the user defined distribution list is stored on a SIM memory (29).

Inventors: PATIL MANOJ, PATIL, MANOJ
Applicants: NOKIA CORP, NOKIA CORPORATION
Application year: 2000
Main classification: H04Q7
IPC codes: H04W4