The recent developments in telecommunications network have provided a typical user with a choice of a plethora of communication applications for exchanging information with other users over a telecommunication network. The typical user can select a specific way to interchange information over the telecommunication network, which specific way may depend on one or both of the typical user's personal preferences or the type of information she is desirous of exchanging.
For example, the user can choose and send an e-mail using an e-mail client or a webmail application. The e-mail client or the webmail application allow the user to send an email message that includes various types of data (for example, both text and attachments—such as, images, financial worksheets, multi-media presentations, audio files, video files and the like). The e-mail message provides the user with flexibility to choose virtually any length of the e-mail message and a virtually any number of attachments (subject only to the e-mail size limitations potentially imposed by the e-mail service provider that the user chooses to use).
As another example, the user can send a short electronic message. For example, devices provided by Apple Corporation of 1 Infinite Loop, Cupertino, Calif., United States of America (such as the iPhone™ and the iPad™ device) allow the user to send iMessages to other users of devices provided by Apple Corporation that have the iMessages function enabled thereupon. Other devices, allow the user to send the short electronic message over the wireless network, which short electronic message is also called sometimes a text message.
As another example, the user can engage in a so-called “electronic chat”. There are various applications available to the user to conduct such the electronic chat. For example, Skype™ Messenger application provided by Skype Technologies S.A. (a Microsoft Corporation) allows the user to engage in the electronic chat with one or more other users. As an example, the Skype Messenger allows the user to send text messages, share files, share desktop views and the like. The Skype Messenger also allows the user to engage in a two way voice conversation or in a two-way video conversation. With some subscription packages, the Skype Messenger also allows for three-way and multi-group voice or video conferencing.
A typical user these days has access to more than one electronic device. For example, the user may have access to a work laptop, a home computer, a wireless smart phone and a tablet computer. The user may use all these different electronic devices for different purposes. For example, the user may use the work laptop for work related tasks, while using the home computer for personal tasks. However, the user may use one or more of the electronic devices for shared purposes. As such, the user may have the same application installed on multiple of the devices and can engage into the same conversations using the same log in credentials on the multiple electronic devices.
For example, the user may have installed the Skype messenger on all of its available electronic devices and the user may choose to log in using the same credentials onto the Skype Messenger application on all of these electronic devices. As such, the user may be able to engage into the Skype Messenger conversation with one or more of her registered co-users using any one of the electronic devices.
Some of the electronic messaging systems make use of presence information that reports a user's willingness (e.g., do not disturb, busy and inactive, busy, etc.) and availability (e.g., away, inactive, available, etc.) to communicate. Ordinarily, a user's presence is associated with an endpoint such as a personal computer or a mobile device (e.g., a smartphone), which supports a client application based on an electronic messaging protocol supported by an electronic messaging service.
When a user opens and signs onto such a client application, a server application for the electronic messaging service records the user's status as willing and available to communicate and broadcast this status to any other open interested client applications (e.g., those associated with a user's contact list, friend list, buddy list, etc.). Then later, if there is a lack of user-related activity at the device associated with the client application, the client application typically reports this lack of activity to the corresponding server application and the server application will record and broadcast the user's status as inactive.
Many electronic messaging systems support multiple points of presence (MPOP). In some MPOP systems, a user can simultaneously open and sign onto multiple client applications at multiple endpoints. When an instant message is received by a server application in such a system, there are various design alternatives for transmitting the instant message to the user at the multiple open endpoints. The typical prior art approach is to simply transmit the instant message to all of them.
US patent application 20110271202 published on Nov. 3, 2011 to Wong et al teaches a server application for an instant messaging service that opens a first connection with a first client application executing on a device, after receiving a login from the first client application. Next the server application opens a second connection with a second client application, after receiving the same login from the second client application. Then the server application receives an instant message associated with the login and determines whether the first client application is in a network idle state following a period of idle time. If the first client application is in the network idle state, the server application causes a notification as to the receipt of the instant message to be displayed on a user interface for the second client application. The displayed notification might also be accompanied by an aural notification or a haptic alert. It is noted that Wong et al teaches that, after a period of time without activity detected by the peripheral devices connected to the personal computer, the client application running on the personal computer reports a network-idle status to the server application for the instant-messaging service, which is then used as the indication of the idle status.
WO patent application 2012/018431 published on Feb. 9, 2012 teaches systems and methods for prediction of activity session for mobile network use optimization and user experience enhancement. In one aspect, embodiments of the present disclosure include a method, which may be implemented on a system for enhancing user experience with a mobile application on a mobile device including, using user activity characteristics at a mobile device and server activity characteristics of a host server to anticipate a future activity session at the mobile device and transferring impending content from the host server the mobile device to pre-cache content on the mobile device to support predicted data activity for the future activity session that has been predicted.
US patent application 2009/0013007 published on Jan. 8, 2009 to Caner discloses a method of handling log files in a network with multiple servers, including, installing an agent application on each server in the network, collecting log files on each server by the agent application, defining a uniform format for providing the log files to a central server, transforming the log files to the defined uniform format, transmitting the transformed log files to a central server, storing the log files in an archive by the central server, analyzing the log files received by the central server, producing reports responsive to the analysis of the log files.
US patent application 2007/0038599 published on Feb. 15, 2007 to Pearson discloses a portal that uses portlets to provide a session to a user. Based on portlet events that occur in the session, portlet log entries are sent from the portlets to a log server. The log server stores log entries comprising the portlet log entries and the portal log entries. A customer service representative in communication with the user is provided a display of an activity of the user in the session based on the log entries from the log server.
U.S. Pat. No. 6,763,384 issued on Jul. 13, 2004 to Gupta et al is directed to internet services that rely on the transfer of real-time information. Given the amount of information generated on the Internet, a user may request to be notified whenever particular information becomes available, such as the current highest bid in an on-line auction. The user enrols to receive one or more messages and sends a list of desired messages through a client process running on the user's computer system. When the user is ready to receive messages, the client process connects to a notification server and provides its receiving address identifier. It then disconnects from the notification server and waits for messages. A message monitor detects the occurrence of events that trigger notifications, and informs the notification server of the event. The notification server determines the appropriate recipient for the notification, and sends it using a server-initiated end-to-end message transfer mechanism to the clients' receiving address identifiers. The notification can also be used as a control signal to control one or more applications, or to control an appliance remotely over a network. The notification server may make use of load-sharing devices or proxy servers to distribute the notification to the client processes.
U.S. Pat. No. 7,543,319 issued on Jun. 2, 2009 to Ludvig et al discloses Notification data is received and stored at a client device. A notice represented by the notification data is then displayed to the television viewer when a channel change event is detected. The notification data may also include data that indicates how the notice is to be displayed.
US patent application 2011/0271202 published on Nov. 3, 2011 to Wong et al discloses a server application for an instant messaging service opens a first connection with a first client application executing on a device, after receiving a login from the first client application. Next the server application opens a second connection with a second client application, after receiving the same login from the second client application. Then the server application receives an instant message associated with the login and determines whether the first client application is in a network idle state following a period of idle time. If the first client application is in the network idle state, the server application causes a notification as to the receipt of the instant message to be displayed on a user interface for the second client application. The displayed notification might also be accompanied by an aural notification or a haptic alert.