The present disclosure relates to computer network communications, and to a messenger client and a method for updating messages in a messenger client.
This section provides background information related to the present disclosure which is not necessarily prior art.
The internet has been popular with web users along with developments in network techniques. Among various Internet applications, messenger clients have already been widely used for distributing and sharing information in work and entertainment by most web users. When a messenger client performs communications, there are usually mass amounts of data (e.g. messages) to be updated. A conventional updating manner is implemented by a messenger client pulling updated data from a messenger server.
A twitter-like system, i.e. a micro blog system, is a typical system adopting the above updating manner for message update. A micro blog system is a platform providing information sharing, distributing and accessing based on a pan-relation chain model. Current popular micro blog systems include webpage-based micro-blog systems and client-based micro blog systems.
This section provides a general summary of the disclosure, and is not a comprehensive disclosure of its full scope or all of its features.
Various embodiments provide a messenger client and a method for updating messages in a messenger client to reduce the pressure on a messenger server for updating messages.
A method for updating messages in a messenger client according to an embodiment may include judging, by a messenger client, whether it is necessary to pull a new message or a new message notification from a messenger server according to a state of the messenger client; performing an action of pulling a new message notification from the messenger server in response to a determination that it is necessary to pull a new message notification; and performing an action of pulling new messages from the messenger server in response to a determination that it is necessary to pull a new message.
The messenger client according to an embodiment may include a state judging module, configured to judge whether it is necessary to pull a new message or a new message notification from a messenger server according to a state of a messenger client; a pulling module, configured to perform an action of pulling new messages from the messenger server when the state judging module determines it is necessary to pull a new message from the messenger server, and to perform an action of pulling a new message notification from the messenger server when the state judging module determines it is necessary to pull a new message notification.
According to the above technical scheme, a messenger client judges whether it is necessary to pull a new message or a new message notification according to a state of the messenger client. When it is only necessary to pull a new message notification, the messenger client pulls a new message notification only. In this way, the user can be informed of new messages, and at the same time the pressure on the messenger server for updating messages is also reduced.
Further areas of applicability will become apparent from the description provided herein. The description and specific examples in this summary are intended for purposes of illustration only and are not intended to limit the scope of the present disclosure.
The drawings described herein are for illustrative purposes only of selected embodiments and not all possible implementations, and are not intended to limit the scope of the present disclosure.
Corresponding reference numerals indicate corresponding parts throughout the several views of the drawings.
Example embodiments will now be described more fully with reference to the accompanying drawings.
Reference throughout this specification to “one embodiment,” “an embodiment,” “specific embodiment,” or the like in the singular or plural means that one or more particular features, structures, or characteristics described in connection with an embodiment is included in at least one embodiment of the present disclosure. Thus, the appearances of the phrases “in one embodiment” or “in an embodiment,” “in a specific embodiment,” or the like in the singular or plural in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
In a webpage-based micro blog system, a micro blog server will not send notifications of new messages to users. Message update is realized by a user manually refreshing a webpage providing micro blog service to send a request to a micro blog server for obtaining new messages. The detailed process is as shown in
In contrast to the webpage-based micro blog system, in a client-based micro blog system, a micro blog server may inform a micro blog client of a new message upon receiving the new message.
It can be seen that the conventional message updating method adopted by messenger clients puts great pressure on the messenger server for updating mass amounts of messages.
A messenger client may judge whether it is necessary to pull a new message or a new message notification according to a state of the messenger client. The messenger client may pull the new message notification only in response to a determination that it is necessary only to pull a new message notification. In this way, the user can be informed of the new message, and at the same time the pressure on the messenger server for updating messages is also reduced.
In block 301, a messenger client judges whether it is necessary to pull a new message or a new message notification from a messenger server according to a state of the messenger client. The messenger client performs the procedure in block 302 in response to a determination that it is necessary to pull a new message, and performs the procedure in block 303 in response to a determination that it is necessary to pull a new message notification.
In block 302, the messenger client performs an action of pulling new messages from the messenger server, and ends the process.
In block 303, the messenger client performs an action of pulling a new message notification from the messenger server.
The state of the messenger client at a time spot reflects the current need of the user. In block 301, the messenger client may judge whether it is necessary to pull a new message or a new message notification from the messenger server based on the state of the messenger client.
The above messenger client may be a micro blog client. The method for updating messages will be described in more detail as follows by using a micro blog client as an example. Table 1 illustrates a relation between a state of a micro blog client and the need of a micro blog user.
It can be seen from the relation shown in Table 1, when the state of a micro blog client indicates that the micro blog client is invisible, it means the micro blog user at that moment is not interested in new message notifications or new messages from the micro blog, and therefore the micro blog client does not need to perform the action of pulling new messages or new message notifications. When the state of the micro blog client indicates that the micro blog client is visible but the micro blog interface is invisible, it means the micro blog user is interested in whether there is a new message from the micro blog but has no interest in contents of the message, and therefore, the micro blog client only needs to perform the action of pulling a new message notification from the micro blog server. When the state of the micro blog client indicates that both the micro blog client and the micro blog interface are visible, it means the micro blog user is not only interested in whether there is a new message from the micro blog but also interested in the contents of the message, and therefore, the micro blog client needs to perform the action of pulling new messages from the micro blog server.
The above description uses the relation between the state of a micro blog client and the needs of a user as an example. It should be noted that the messenger client is not limited to the micro blog client.
In the various embodiments, the size of a message notification is relatively small, and the size of a message is relatively large. Thus, when the user is not interested in message contents, message notifications are used to not only reduce resource consumption but also reduce the pressure on the messenger server. New messages are pulled only when the user is interested in contents of new messages, i.e. when the user is browsing or operating on a messenger interface. In this way, the user can be informed of the new message, and at the same time the pressure on the messenger server for updating messages is also reduced.
In addition, according to various embodiments, the messenger server may set a pulling frequency to control the action of pulling new messages or new message notification of the messenger client so as to further control the message update pressure on the messenger server. The following description still uses a micro blog client as an example.
In block 401, when a micro blog user logs on a micro blog client, the micro blog client pulls a first automatic pulling frequency limit and a second automatic pulling frequency limit from a micro blog server. The first automatic pulling frequency limit and the second automatic pulling frequency limit are set by the micro blog server for limiting the frequency of pulling new messages and new message notifications by the micro blog client from the micro blog server respectively.
In block 402, the micro blog client judges whether it is necessary to pull a new message or a new message notification from the micro blog server according to a state of the micro blog client. The micro blog client performs the procedure in block 403 in response to a determination that it is necessary to pull a new message, and performs the procedure in block 406 in response to a determination that it is necessary to pull a new message notification.
In block 403, the micro blog client judges whether a current pulling frequency is within the first automatic pulling frequency limit, performs the procedure in block 404 in response to a determination that the current pulling frequency is within the first automatic pulling frequency limit, and ends the current process in response to a determination that the current pulling frequency is beyond the first automatic pulling frequency limit.
In block 404, the micro blog client performs an action of pulling new messages from the micro blog server.
In block 405, the micro blog client displays the new message on a micro blog interface in response to a determination that the number of new messages pulled is larger than 0, and terminates the process.
In block 406, the micro blog client judges whether a current pulling frequency is within the second automatic pulling frequency limit, performs the procedure in block 407 in response to a determination that the current pulling frequency is within the second automatic pulling frequency limit, and terminates the current process in response to a determination that the current pulling frequency is beyond the second automatic pulling frequency limit.
In block 407, the micro blog client performs an action of pulling a new message notification from the micro blog server.
In block 408, the micro blog client prompts the user that there is a new message in response to a determination that the number of new message notifications pulled from the micro blog server is larger than 0. The micro blog client may lighten a tag on the micro blog interface to inform the user that there is a new message. The new message notification may include a total number of new messages. The total number of new messages may be displayed on a tag on the micro blog interface.
In various embodiments the micro blog server may configure a manual pulling frequency limit besides the first and the second automatic pulling frequency limits. According to the embodiment, the micro blog client may pull the manual pulling frequency limit from the micro blog server when pulling the first and the second automatic pulling frequency limits in block 401.
The micro blog client may further perform the procedure in block 409 in response to a determination made in block 403 that the current pulling frequency is beyond the first automatic pulling frequency limit.
In block 409, the micro blog client judges whether a manual refreshing operation is initiated by the user, and performs the procedure in block 407, i.e. pulling the new message from the micro blog server, in response to a determination that a manual refreshing operation is triggered by the user and the frequency of manual refreshing is within the manual pulling frequency limit; otherwise terminates the process.
According to various embodiments, the frequency of pulling operations performed by the micro blog client can be controlled by the micro blog server by setting automatic pulling frequency limits and a manual pulling frequency limit. Therefore, pressure on the messenger server resulting from large amounts of message updates can be avoided.
In addition, the messenger client may pull a first update frequency when pulling the first automatic pulling frequency limit from the messenger server, pull a new first automatic pulling frequency limit from the messenger server at a frequency defined by the first update frequency, and update the current first automatic pulling frequency limit with the new first automatic pulling frequency limit.
Similarly, the messenger client may pull a second update frequency when pulling the second automatic pulling frequency limit from the messenger server, pull a new second automatic pulling frequency limit from the messenger server at a frequency defined by the second update frequency, and update the current second automatic pulling frequency limit with the new second automatic pulling frequency limit.
Further, according to various embodiments, the messenger client may judge whether there are a large amount of new messages to be pulled before the procedure in block 302 or 404, i.e. before performing the action of pulling the new message from the messenger server, and pull the most recent one or more messages from the messenger server leaving the rest of the new messages to be pulled later when the user needs those new messages in response to a determination that there are a large amount of new messages to be pulled. In this way, the pressure on the messenger server can be further reduced. The following description still uses a micro blog client as an example.
In block 501, a micro blog client judges whether the number of new messages to be pulled exceeds a pre-defined threshold, performs the procedure in block 502 in response to a determination that the number of new messages to be pulled exceeds a pre-defined threshold, and performs the procedure in block 506 in response to a determination that the number of new messages to be pulled does not exceed the pre-defined threshold.
In block 502, the micro blog client pulls a pre-defined number of most recent messages from a micro blog server, where the pre-defined number is smaller than the pre-defined threshold. Thereby, when there are a large number of new messages, only the most recent ones are to be pulled.
In block 503, the micro blog client displays the pre-defined number of most recent messages on a micro blog interface, and displays a placeholder on the micro blog interface representing the new messages not pulled. For example, the placeholder may be a character string indicating “display more information”.
In block 504, the micro blog client judges whether the user has clicked on the placeholder, performs the procedure in block 505 in response to a determination that the user has clicked on the placeholder, or terminates the process in response to a determination that the user has not clicked on the placeholder.
In block 505, the micro blog client pulls the new messages which have not been pulled from the micro blog server, displays the new messages currently pulled on the micro blog interface, and terminates the process.
In block 506, the micro blog client pulls all of the new messages from the micro blog server.
In block 507, the micro blog client displays all of the new messages on the micro blog interface.
The above description described the method for updating messages in a messenger client in detail. The messenger client of an embodiment will be described further in below.
a state judging module 601, configured to judge whether it is necessary to pull a new message or a new message notification from a messenger server according to a state of the messenger client;
a pulling module 602, configured to perform an action of pulling new messages from the messenger server when the state judging module 601 determines it is necessary to pull a new message from the messenger server, and to perform an action of pulling a new message notification from the messenger server when the state judging module 601 determines it is necessary to pull a new message notification.
The messenger client will be described in more detail as follows using a micro blog client as an example.
The state judging module 701 is configured to judge whether it is necessary to pull a new message or a new message notification from a messenger server according to a state of the micro blog client.
The state judging module 701 determines it is not necessary to pull a new message or a new message notification in response to a determination that the state of the micro blog client indicates that the micro blog client is invisible.
The state judging module 701 determines to perform an action of pulling a new message notification from the micro blog server in response to a determination that the state of the micro blog client indicates the micro blog client is visible but the micro blog interface is invisible.
The state judging module 701 determines to perform an action of pulling new messages from the micro blog server in response to a determination that the state of the micro blog client indicates both the micro blog client and the micro blog interface are visible.
The first automatic pulling frequency judging module 702 is configured to judge whether the current pulling frequency is within a first automatic pulling frequency limit set by the micro blog server when the state judging module 701 determines it is necessary to pull a new message.
The second automatic pulling frequency judging module 703 is configured to judge whether the current pulling frequency is within a second automatic pulling frequency limit set by the micro blog server when the state judging module 701 determines it is necessary to pull a new message notification.
The pulling module 704 is configured to perform an action of pulling new messages from the micro blog server when the first automatic pulling frequency judging module determines the current pulling frequency is within the first automatic pulling frequency limit set by the micro blog server, and perform an action of pulling a new message notification from the micro blog server when the second automatic pulling frequency judging module 703 determines the current pulling frequency is within the second automatic pulling frequency limit set by the micro blog server.
The new message notification displaying module 705 is configured to lighten a tag on the micro blog interface to prompt the user that there is a new message if the number of new message notification pulled is larger than 0 after the pulling module 704 has pulled the new message notification from the micro blog server.
The new message displaying module 706 is configured to display new messages pulled on the micro blog interface if the number of the new messages pulled is larger than 0 after the pulling module 704 has pulled the new messages from the micro blog server.
The new message notification may be a total number of new messages. The new message notification module may further display the total number of new messages on a tag on the micro blog interface to inform the user of the new messages.
The first automatic pulling frequency judging module 702 may further be configured to pull a first automatic pulling frequency limit from the micro blog server when the user logs on the micro blog client.
The second automatic pulling frequency judging module 703 may further be configured to pull a second automatic pulling frequency limit from the micro blog server when the user logs on the micro blog client.
The first automatic pulling frequency judging module 702 may further be configured to pull a first update frequency when puling the first automatic pulling frequency limit, pull a new first automatic pulling frequency limit from the micro blog server at a frequency specified by the first update frequency, and update the current first automatic pulling frequency limit by using the new first automatic pulling frequency limit.
The second automatic pulling frequency judging module 703 may further be configured to pull a second update frequency when pulling the second automatic pulling frequency limit, pull a new second automatic pulling frequency limit from the micro blog server at a frequency specified by the second update frequency, and update the current second automatic pulling frequency limit by using the new second automatic pulling frequency limit.
The micro blog client of an embodiment may further include a manual pulling frequency judging module 707 which is configured to judge whether a manual refreshing process is triggered by the user when the first automatic pulling frequency judging module 702 determines the current pulling frequency is beyond the first automatic pulling frequency limit, and instruct the pulling module 704 to perform the action of pulling new messages from the micro blog server in response to a determination that a manual refreshing process is triggered by the user and the frequency of the manual refreshing process is within the manual pulling frequency limit.
In various embodiments, the pulling module 704 may judge whether the number of new messages to be pulled exceeds a pre-defined threshold before performing the action of pulling new messages from the micro blog server, pull a pre-defined number of most recent messages from the micro blog server in response to a determination that the number of new messages to be pulled exceeds a pre-defined threshold, and pull all of the new messages from the micro blog server in response to a determination that the number of new messages to be pulled does not exceed a pre-defined threshold. The pre-defined number is smaller than the pre-defined threshold.
The new message displaying module 706 may further be configured to display the pre-defined number of most recent messages on the micro blog interface when the pulling module 704 pulls only the pre-defined number of most recent messages from the micro blog server, and display a placeholder on the micro blog interface representing the new messages not pulled.
After a click by the user on the placeholder on the micro blog interface, the pulling module 704 pulls the new messages which have not been pulled from the micro blog server. The new message displaying module 706 is configured to display the new messages currently pulled on the micro blog interface.
It can be seen that when the messenger client provided by various embodiments is adopted, resources consumed and the pressure on the messenger server can both be reduced by using message notification when the user is not interested in contents of new messages. New messages are pulled only when the user is interested in contents of the new messages, i.e., when the user is browsing or operating on a messenger interface. In this way, the user can be informed of new messages, and at the same time the pressure on the messenger server for updating messages is also reduced. In addition, the frequency of pulling operations performed by the micro blog client can be controlled by the micro blog server by setting automatic pulling frequency limits and a manual pulling frequency limit. Therefore, pressure on the messenger server resulted from large amounts of message updates can be further reduced. When there are numerous new messages to be pulled, the messenger client may pull only some of the most recent messages from the messenger server, and the remaining messages may be pulled when the user has the need, and thereby the pressure on the messenger server for message updates can be further reduced.
The foregoing description of the various embodiments has been provided for purposes of illustration and description. It is not intended to be exhaustive or to limit the disclosure. Individual elements or features of a particular embodiment are generally not limited to that particular embodiment, but, where applicable, are interchangeable and can be used in a selected embodiment, even if not specifically shown or described. The same may also be varied in many ways. Such variations are not to be regarded as a departure from the disclosure, and all such modifications are intended to be included within the scope of the disclosure.
Number | Date | Country | Kind |
---|---|---|---|
2010 1 0266914 | Aug 2010 | CN | national |
This application is a continuation of International Application No. PCT/CN2011/078746, filed on Aug. 23, 2011. This application claims the benefit and priority of Chinese Patent Application No. 201010266914.4, filed Aug. 24, 2010. The entire disclosures of each of the above applications are incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
596663 | Neuber | Jan 1898 | A |
5185604 | Nepple et al. | Feb 1993 | A |
5333266 | Boaz et al. | Jul 1994 | A |
5675507 | Bobo, II | Oct 1997 | A |
5708422 | Blonder et al. | Jan 1998 | A |
5802466 | Gallant et al. | Sep 1998 | A |
6064877 | Yanagida | May 2000 | A |
6136158 | Wang et al. | Oct 2000 | A |
6192396 | Kohler | Feb 2001 | B1 |
6417819 | Matsumoto et al. | Jul 2002 | B1 |
7127507 | Clark et al. | Oct 2006 | B1 |
7269655 | Kim | Sep 2007 | B2 |
7325042 | Soscia et al. | Jan 2008 | B1 |
7627658 | Levett et al. | Dec 2009 | B2 |
7640267 | Spivack et al. | Dec 2009 | B2 |
8060065 | Lai et al. | Nov 2011 | B1 |
8069166 | Alvarado et al. | Nov 2011 | B2 |
8407292 | Grosu | Mar 2013 | B2 |
8429224 | Patel et al. | Apr 2013 | B2 |
8543665 | Ansari et al. | Sep 2013 | B2 |
20020026513 | Hoglund et al. | Feb 2002 | A1 |
20020087631 | Sharma | Jul 2002 | A1 |
20020087643 | Parsons et al. | Jul 2002 | A1 |
20020126708 | Skog et al. | Sep 2002 | A1 |
20040249958 | Ozdemir et al. | Dec 2004 | A1 |
20040255254 | Weingart et al. | Dec 2004 | A1 |
20050038863 | Onyon et al. | Feb 2005 | A1 |
20050050349 | Bobo, II | Mar 2005 | A1 |
20050054334 | Brown et al. | Mar 2005 | A1 |
20050091329 | Friskel | Apr 2005 | A1 |
20050210114 | Washburn | Sep 2005 | A1 |
20050223061 | Auerbach et al. | Oct 2005 | A1 |
20050289612 | Morton et al. | Dec 2005 | A1 |
20060059238 | Slater et al. | Mar 2006 | A1 |
20060095525 | Mousseau et al. | May 2006 | A1 |
20070038711 | MacBeth et al. | Feb 2007 | A1 |
20070115936 | Newton | May 2007 | A1 |
20070174393 | Bosschaert et al. | Jul 2007 | A1 |
20070253340 | Varney et al. | Nov 2007 | A1 |
20070282959 | Stern | Dec 2007 | A1 |
20080098014 | Eichstaedt et al. | Apr 2008 | A1 |
20080098075 | O'Bryan et al. | Apr 2008 | A1 |
20080120183 | Park | May 2008 | A1 |
20080140665 | Ariel et al. | Jun 2008 | A1 |
20080172458 | Middleton et al. | Jul 2008 | A1 |
20090070419 | Gilfix et al. | Mar 2009 | A1 |
20090198728 | Davia et al. | Aug 2009 | A1 |
20090249247 | Tseng et al. | Oct 2009 | A1 |
20090265643 | Jachner et al. | Oct 2009 | A1 |
20090305732 | Marcellino et al. | Dec 2009 | A1 |
20100041380 | Hewes et al. | Feb 2010 | A1 |
20100100845 | Khan et al. | Apr 2010 | A1 |
20100144380 | Washburn | Jun 2010 | A1 |
20100208662 | Fuste Vilella et al. | Aug 2010 | A1 |
20100240417 | Wickman et al. | Sep 2010 | A1 |
20100250477 | Yadav | Sep 2010 | A1 |
20100261492 | Salafia et al. | Oct 2010 | A1 |
20100306536 | Brouk et al. | Dec 2010 | A1 |
20110047483 | Low et al. | Feb 2011 | A1 |
20110107379 | Lajoie et al. | May 2011 | A1 |
20110113084 | Ramnani | May 2011 | A1 |
20110119258 | Forutanpour et al. | May 2011 | A1 |
20110145345 | Wysham | Jun 2011 | A1 |
20110196933 | Jackson et al. | Aug 2011 | A1 |
20110258280 | Sloan et al. | Oct 2011 | A1 |
20110276636 | Cheng et al. | Nov 2011 | A1 |
20120021781 | Aaltonen et al. | Jan 2012 | A1 |
20120023304 | Chan et al. | Jan 2012 | A1 |
20130132854 | Raleigh et al. | May 2013 | A1 |
20130143533 | Carlson et al. | Jun 2013 | A1 |
20130179517 | Grosu | Jul 2013 | A1 |
20130204934 | Srivastava et al. | Aug 2013 | A1 |
20130346700 | Tomlinson et al. | Dec 2013 | A1 |
Number | Date | Country |
---|---|---|
101425093 | May 2009 | CN |
101782913 | Jul 2010 | CN |
Entry |
---|
International Preliminary Report on Patentability (Chapter I of the Patent Cooperation Treaty) for PCT/CN/078746 (in Chinese with English Translation) issued Feb. 26, 2013; ISA/CN. |
International Search Report for International Patent Application No. PCT/CN2011/078746, dated Nov. 3, 2011, and English translation thereof. |
Number | Date | Country | |
---|---|---|---|
20130124660 A1 | May 2013 | US |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2011/078746 | Aug 2011 | US |
Child | 13737320 | US |