Patent Document

BACKGROUND OF THE INVENTION  
         [0001]    1. Field of the Invention  
           [0002]    The present invention relates to a multimedia messaging system and method, and more particularly to a system and method for controlling message procedures and selecting appropriate modes of transmission.  
           [0003]    2. Description of Related Art  
           [0004]    These days many means of communication are available for people to contact each other, such as SMS (Short Message Service), PDA (Personal Digital Assistant) and E-mail. Communication technology has greatly changed the way of life of many people. In May 2001, the GSM (Global System for Mobile communications) Association reported that over 500 billion short messages were sent by way of the GSM system in the first quarter of 2001. More and more message service providers are to providing message facilities such as financial information, stock information, news and entertainment information. With the development of communications technology and widespread business applications thereof, message services need to be reliable and timely. For instance, when a client receives a message, he/she should send return information to a message provider confirming receipt. The client may not timely receive messages because of the network congestion, shutdown of equipment, or failure of part of the network. One solution for this problem is to send the messages by way of alternative means. For example, U.S. Pat. No. 5,995,594, issued on Nov. 30, 1999 discloses a system and method for message alerting in a multimedia messaging system. When a message provider sends an alert E-mail to a mail box of a client, the message provider also sends by way of alternative means. The alert informs the client via SMS that the E-mail has been sent out.. The alert is continually sent until the client sends confirmation of receipt of the E-mail to the message provider.  
           [0005]    However, the above-described system and method cannot ensure that the client timely receives the messages. This is particularly a problem when a short message receiver of the client is in power-off mode.  
         SUMMARY OF THE INVENTION  
         [0006]    Accordingly, an object of the present invention is to provide a multimedia messaging system and method for effectively controlling message procedures.  
           [0007]    In order to accomplish the above-mentioned objects, the present invention provides a multimedia messaging system and method for controlling message procedures. A preferred embodiment of the system comprises a database for storing data on message procedures, wherein the data on message procedures are used for defining procedures for messages of various classifications and modes of transmission for each of the procedures; a feedback receiving sub-module for receiving sending results and feedback messages sent by message receivers; a time control sub-module for setting a scheduled processing time for each of the current messages; a message status determination sub-module for determining statuses of processing of the second messages; a message procedure control sub-module for selecting next procedures and setting the next procedures as respective current procedures; a message sending processing sub-module for obtaining data on controlling procedures and first messages, and for generating the second messages, wherein the second messages comprise message classifications, processing steps, first message contents, clients, transmission mode codes and client addresses; a message sending module for selecting modes of transmission according to information on transmission modes in the second messages, and for sending the second messages to corresponding message receivers.  
           [0008]    A preferred embodiment of the multimedia messaging method comprises the following steps of:  
           [0009]    (a) receiving an original message sent by a message provider by accessing an original message cache, and generating one or more corresponding first messages according to basic setting data obtained by accessing a database;  
           [0010]    (b) obtaining an initial procedure for the first messages by querying data on message procedures stored in a database, and setting the initial procedures as a current procedure;  
           [0011]    (c) initializing the current procedure, and setting a predetermined scheduled time for the current procedure;  
           [0012]    (d) generating second messages according to the current procedure and data on the first messages, each of the second messages comprising a message classification, a processing step, a first message content, a transmission mode code and a sending address;  
           [0013]    (e) sending the second messages, and generating sending results for the second messages;  
           [0014]    (f) receiving the sending results and feedback messages sent by the message receivers;  
           [0015]    (g) determining whether further processing of the one or more of the second messages is required, based on the determination of a status of processing of the second messages, wherein the four statuses of processing of any procedure are defined: sending failure, processing overtime, no feedback and feedback received;  
           [0016]    (h) obtaining a next procedure, setting the next procedure as a current procedure I further processing of one or more of the second messages is required, and returning to the step (c) and proceeding accordingly until no further processing is required.  
           [0017]    According to the system and method as described above, the processing procedure and transmission media are controlled based on various sending processing statuses. Therefore the clients can timely receive urgent messages.  
           [0018]    Other objects, advantages and novel features of the present invention will be drawn from the following detailed description of the present invention with the attached drawing, in which: 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0019]    [0019]FIG. 1 is a schematic diagram of an application environment of a multimedia messaging system in accordance with a preferred embodiment of the present invention, the application environment including message providers and message receivers;  
         [0020]    [0020]FIG. 2 is a block diagram of infrastructure of the multimedia messaging system of FIG. 1, also showing connection between the multimedia messaging system and the message providers and message receivers;  
         [0021]    [0021]FIG. 3 is a schematic diagram of infrastructure of a basic data setting module of the multimedia messaging system of FIG. 1;  
         [0022]    [0022]FIG. 4A illustrates an exemplary group data list in accordance with the present invention;  
         [0023]    [0023]FIG. 4B illustrates an exemplary client data list in accordance with the present invention;  
         [0024]    [0024]FIG. 4C illustrates an exemplary message classification data list in accordance with the present invention;  
         [0025]    [0025]FIG. 4D illustrates an exemplary message procedure data list in accordance with the present invention;  
         [0026]    [0026]FIG. 5 is a schematic diagram of infrastructure of a message processing module of the multimedia messaging system of FIG. 1;  
         [0027]    [0027]FIG. 6 is a flow chart of data transfer among parts of the multimedia messaging system of FIG. 1; and  
         [0028]    [0028]FIG. 7 is a flow chart of operation of the multimedia messaging system of FIG. 1. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0029]    [0029]FIG. 1 is a schematic diagram of an application environment of a multimedia messaging system  6  in accordance with a preferred embodiment of the present invention. The multimedia messaging system  6  is linked to a plurality of message providers  2  for receiving various original messages. The multimedia messaging system  6  processes received original messages, and generates corresponding first messages. The first messages comprise respective received original messages. The first messages then are changed into second messages in the multimedia messaging system  6 . The second messages comprise respective first messages. By means of a communication network  8 , the multimedia messaging system  6  sends various generated second messages to corresponding message receivers  4 . The message providers  2  may be any one or more of a short message service provider, an E-mail service provider, a fax service provider, a voice service provider, a PDA (Personal Digital Assistant) service provider, and an enterprise information system (EIS). Once registered in the multimedia messaging system  6 , each message provider  2  can provide various original messages for the multimedia messaging system  6 . The message receivers  4  may be any one or more of a personal computer, a mobile phone, a personal digital assistant, and a laptop computer. Each message receiver  4  corresponds to a so-called client of the multimedia messaging system  6 . The communication network  8  may for example be the Internet or a wireless network.  
         [0030]    [0030]FIG. 2 is a block diagram of infrastructure of the multimedia messaging system  6 , also showing connection between the multimedia messaging system  6  and the message providers  2  and message receivers  4 . The multimedia messaging system  6  comprises a basic data setting module  60 , a database  61 , a message receiving module  62 , an original message cache  64 , a message processing module  66 , a second message cache  67 , and a message sending module  68 . The basic data setting module  60  is used for setting relevant basic data, which includes message classification data, group data, transmission mode data and message procedure data. The basic data are stored in various lists in the database  61 . The lists include a group data list  611 , a client data list  612 , a message classification data list  613 , a transmission mode data list  614 , a message procedure data list  615 , and a message processing record list  616 .  
         [0031]    The message receiving module  62  receives original messages from the message providers  2 , and stores the received original messages in the original message cache  64 . The message processing module  66  accesses the original message cache  64  to obtain original messages, and reconstitutes the original messages into a plurality of second messages according to correlative information stored in the database  61 . The second messages each comprise a transmission mode code, a client code, a receiving address, and an original message content. The second messages are stored in the second message cache  67 . The message sending module  68  retrieves the second messages from the second message cache  67 , and sends the retrieved second messages to corresponding message receivers  4 .  
         [0032]    [0032]FIG. 3 is a schematic diagram of infrastructure of the basic data setting module  60  of the multimedia messaging system  6 . The basic data setting module  60  comprises a group data maintenance sub-module  601 , a client data maintenance sub-module  602 , a message classification maintenance sub-module  603 , a transmission mode data maintenance sub-module  604 , and a message procedure maintenance sub-module  605 . The group data maintenance sub-module  601  is used for adding, modifying, deleting and querying group data. The client data maintenance sub-module  602  is used for adding, modifying, deleting and querying client data. The message classification maintenance sub-module  603  is used for adding, modifying, deleting and querying data on message classifications. The transmission mode maintenance sub-module  604  is used for adding, modifying, deleting and querying data on transmission media. The message procedure data maintenance sub-module  605  is used for adding, modifying, deleting, and querying data on message procedures.  
         [0033]    [0033]FIG. 4A illustrates an exemplary group data list  611  in accordance with the present invention. The group data list  611  comprises columns for group name and group code. For example, a group name may be “editorial,” and a corresponding group code may be “Group_A”. Another group name may be “retailer,” and a corresponding group code may be “Group_B”.  
         [0034]    [0034]FIG. 4B illustrates an exemplary client data list  612  in accordance with the present invention. The client data list  612  comprises columns for client name, group codes, and contact modes. Group codes indicate one or more groups that each client belongs to. Contact modes include mobile phone, E-mail, and fax.  
         [0035]    [0035]FIG. 4C illustrates an exemplary message classification data list  613  in accordance with the present invention. The message classification data list  613  comprises columns for message provider, message classification name, message classification code, and group codes. If more than one group code is indicated for a particular message classification name of a particular message provider, then any original message of that classification by that message provider is sent to all the client groups indicate by the group codes.  
         [0036]    [0036]FIG. 4D illustrates an exemplary message procedure data list  615  in accordance with the present invention. The message procedure data list  615  is used for recording a mode of transmission of each second message, a status of processing of a procedure corresponding to the second message, and a next procedure required for the second message. The message procedure data list  615  comprises columns for: classification code, procedure code, process time, transmission mode, sending overtime, sending failure, no feedback, feedback received, and current procedure. Process time is an actual time needed by the multimedia messaging system  6  to process each procedure, and is used for determining whether processing of the procedure is overtime. Transmission mode shows a transmission medium through which the multimedia messaging system  6  sends messages to clients for each procedure. For example, the transmission mode for the procedure “news — 01” is SMS. Four statuses of processing of any procedure are defined: sending overtime, sending failure, no feedback, and feedback received. These processing statuses are used to determine a next procedure the system should process. Sending overtime means that the actual processing time of a message procedure exceeds a predetermined scheduled time. Sending failure means the message sending module  68  cannot send any second messages. No feedback means that the message sending module  68  has sent second messages, but has not received feedback messages from the message receivers  4  within a predetermined scheduled time. Feedback received means that the message sending module  68  has sent second messages, and has received feedback messages from the message receivers  4  within the predetermined scheduled time.  
         [0037]    [0037]FIG. 5 is a schematic diagram of infrastructure of the message processing module  66  of the multimedia messaging system  6 . The message processing module  66  comprises a message converting sub-module  661 , a time control sub-module  662 , a message procedure control sub-module  663 , a message status determination sub-module  664 , a message sending processing sub-module  665 , a message procedure record sub-module  666 , and a feedback receiving sub-module  667 . Functions of the above-mentioned sub-modules  661 - 667  are detailed in the following description.  
         [0038]    [0038]FIG. 6 is a flow chart of data transfer among the parts of the multimedia messaging system  6 . A system administrator sets basic data for sending second messages via the basic data setting module  60 . The basic data are stored in the database  61 . The message converting sub-module  661  receives an original message by accessing the original message cache  64 , obtains basic data relating to the original messages, and generates one or more corresponding first messages. Each first message comprises a message classification, an original message content, and a client. The message procedure control sub-module  663  obtains an initial procedure for each of the first messages by querying data on message procedures stored in the database  61  and sets the initial procedure as a current procedure. Said data comprise a message classification, a processing step, a client, and a transmission mode code. The time control sub-module  662  initializes the current procedure, and sets a scheduled processing time for the current procedure. The message sending processing sub-module  665  obtains the first messages and the data on message procedures, and generates corresponding second messages. The second messages each comprise a message classification, a processing step, a first message content, a client, a transmission mode code, and a sending address. The second messages are stored in the second message cache  67 . The message procedure record sub-module  666  generates a message processing record according to results of processing generated by the message sending processing sub-module  665 , and stores the message processing record in the message processing record list  616  of the database  61 . The message sending module  68  obtains the second messages from the second message cache  67 , selects modes of transmission according to the information on transmission modes in the second messages, and sends the second messages to corresponding messages receivers  4 . The message sending module  68  generates a sending result for each second message. The sending result may be either success or failure. The message receivers  4  send feedback messages after receiving second messages that need feedback confirmations. The feedback receiving sub-module  667  receives sending results and feedback messages. The message status determination sub-module  664  determines a status of processing of each second message according to the actual processing time of the second message, the sending result and the feedback message. The message status determination sub-module  664  then generates a status message, and sends the status message to the message procedure control sub-module  663 . The message procedure control sub-module  663  changes a processing procedure or ends processing of the second messages, based on the status message.  
         [0039]    [0039]FIG. 7 is a flow chart of operation of the multimedia messaging system  6 . At step S 1 , the message converting sub-module  661  obtains an original messages by accessing the original message cache  64  and generates corresponding first messages according to basic setting data obtained by accessing the database  61 . At step S 2 , the message procedure control sub-module  663  obtains the first messages, and sets a procedure relating thereto as a current procedure. At step S 3 , the time control sub-module  662  initializes the current procedure, and sets a predetermined scheduled time for processing the current procedure. At step S 4 , the message sending processing sub-module  665  generates second messages corresponding to the first messages according to the current procedure and data on the first messages. The second messages each comprise a message classification, a processing step, a first message content, a client, a transmission mode code, and a sending address. At step S 5 , the message sending module  68  sends the second messages, and generates a sending result for each second message. At step S 6 , the feedback receiving sub-module  667  receives the sending results and feedback messages sent by the message receivers  4 . At step S 7 , the message status determination sub-module  664  determines a status of processing of the second messages. At step S 8 , the message status determination sub-module  664  determines whether further processing is required, based on the determination of a status of processing of the second messages. That is, if the status of sending failure, sending overtime and no feedback is “FailEnd” and the status of feedback received is “OkEnd,” then no further processing is required. Otherwise, further processing is required. If no further processing is required, at step S 11 , a result of the processing is recorded, and the processing of the second messages is ended. If further processing is required, at step S 9 , a next procedure is selected. At step S 10 , the just-performed current procedure is logged out, and the next procedure selected is set as the current procedure. Processing of the second messages then returns to step S 3 , with due alteration of details.  
         [0040]    Although only preferred embodiments of the present invention have been described in detail above, those skilled in the art will readily appreciate that many modifications to the preferred embodiments are possible without materially departing from the novel teachings and advantages of the present invention. Accordingly, all such modifications are deemed to be covered by the following claims and allowable equivalents of the claims.

Technology Category: 5