1. Field of the Invention
Embodiments of the present disclosure relate to information management systems and methods, and more particularly to a system and method for sending messages.
2. Description of Related Art
Messages can be used for communication between clients and a message sending server. The message sending server may send messages through electronic mail, or through the use of short messages, for example. However, in an enterprise, due to large numbers of messages need to be distributed, the message sending server may send some messages repeatedly or unsuccessfully. The clients may receive the emails or the short messages again and again, or may not receive the emails at all. As a result, work efficiency is decreased.
Therefore, what is needed is a system and method for sending messages, which can avoid sending the messages repeatedly and unsuccessfully.
All of the processes described below may be embodied in, and fully automated via, function code modules executed by one or more general purpose computers or processors. The code modules may be stored in any type of computer-readable medium or other computer storage device. Some or all of the methods may alternatively be embodied in specialized computer hardware.
The receiving module 210 is configured for receiving one or more messages to be sent and predetermined parameters for sending the one or more messages. The predetermined parameters comprise addressee information of the one or more messages. In one embodiment, the messages and the predetermined parameters are set through the client computer 10. The addressee information comprises a name, an e-mail address and a telephone number of the addressee. Each of the one or more messages comprises a title, content, and a name of an addresser. In addition, the predetermined parameters may further comprise predetermine a sending time of the one or more messages.
The determining module 211 is configured for determining if the predetermined parameters comprise a sending time. In one embodiment, a user may predetermine a sending time for sending the one or more messages.
The saving module 212 is configured for saving the one or more messages into a postponing table of a database 40, or saving the one or more message into a delivering table of the database 40. In one embodiment, the postponing table stores the messages that have predetermined the sending times. The delivering table stores the messages to be sent promptly.
The determining module 211 is further configured for determining if a current time reaches the sending time of any messages to be sent. In one embodiment, for example, if a certain message is set to be sent at 9:00 A.M., the determining module 210 detects if the current time reaches at 9:00 A.M.
The transferring module 213 is configured for transferring the one or more messages from the postponing table to the delivering table if the current time reaches the sending time of the one or more messages.
The reading module 214 is configured for reading the one or more messages from the delivering table one by one.
The sending module 215 is configured for sending the read message in the delivering table to an addressee according to the addressee information and generating a result tag. The determining module 211 determines if the message has been sent to the addressee successfully according to the result tag. The sending module 215 resends the message to the addressee if the message has not been sent to the addressee successfully.
The backing up module 216 is configured for backing up the message into a backup table and deleting the message that has been sent successfully from the delivering table.
The determining module 211 is further configured for determining if the delivering table contains any other messages to be sent.
In block S10, the receiving module 210 receives one or more messages to be sent and predetermined parameters for sending the one or more messages from the client computer 10. The predetermined parameters comprise addressee information of the one or more messages. As mentioned above, the addressee information comprises a name, an e-mail address and a telephone number of the addressee. Each of the one or more messages comprises a title, content, and a name of an addresser. In addition, the predetermined parameters may further comprise predetermine a sending time of the one or more messages.
In block S11, the determining module 211 determines if the predetermined parameters comprise a sending time. As mentioned above, a user may predetermine the sending time of an message is 9:00 A.M.
In block S11, if the determining module 212 determines the predetermined parameters do not comprise a sending time, the procedure turns to block S13. Otherwise, if the determining module 212 determines the predetermined parameters comprise a sending time, the procedure turns to block S12.
In block S12, the saving module 212 saves the one or more messages that have a predetermined sending time into a postponing table of a database 40. For example, the saving module 212 saves the message scheduled to be send at 9:00 A.M. into the postponing table.
In block S13, the saving module 212 saves the one or more messages that have no predetermined sending time directly into a delivering table of a database 40, then the procedure turns to block S 16.
In block S14, the determining module 211 periodically determines if a current time reaches the predetermined sending time of any messages. As mentioned above, for example, the determining module 210 periodically determines if the current time reaches at 9:00 A.M.
In block S15, the transferring module 213 transfers the one or more message from the postponing table to the delivering table in response to the determination that the current time reaches the predetermined sending time. For example, if the current time reaches 9:00 A.M., the transferring module 213 transfers the message scheduled to be sent at 9:00 A.M. to the delivering table.
In block S16, the reading module 214 reads a message from the delivering table. For example, the reading module 214 reads a certain message scheduled to be sent at 9:00 A.M. from the delivering table.
In block S17, the sending module 215 sends the read message in the delivering table to an addressee according to the addressee information and generates a result tag. In one embodiment, the message may be sent through an e-mail or a short message. For example, the sending module 215 sends an e-mail contained the message to the addressee according to the e-mail address of the addressee, the e-mail comprises a title, content, and a name of an addresser. As mentioned above, the result tag is used for determining if the message has been sent to the addressee successfully.
In block S18, the determining module 211 determines if the message has been sent successfully according to the result tag. If the determining module 211 determines the message has not been sent successfully according to the result tag, the procedure returns to block S17. Otherwise, if the determining module 211 determines the message has been sent successfully according to the result tag, the procedure returns to block S19.
In block S19, the backing up module 216 backs up the message into a backup table of the database 40 and deletes the message in the delivering table. In one embodiment, the backup table stores all of the sent messages that have sent successfully, the backup table can help query information of the sent messages if needed.
In block S20, if the determining module 211 determines if the delivering table contains any other messages. If the determining module 211 determines the delivering table contains any other messages, the procedure returns to the block S16. Otherwise, if the determining module 211 determines the delivering table does not contain any other messages, the procedure ends.
Although certain inventive embodiments of the present disclosure have been specifically described, the present disclosure is not to be construed as being limited thereto. Various changes or modifications may be made to the present disclosure without departing from the scope and spirit of the present disclosure.
Number | Date | Country | Kind |
---|---|---|---|
200710203323.0 | Dec 2007 | CN | national |