The invention concerns presence of users. For example, but not limited to, the example concerns sharing presence information between users of an electronic network where the presence information can be online or offline. Aspects of the invention include a system, mobile device, software, presence signals and methods for sharing and determining presence of users on the same broadcast domain.
Presence advertising concerns the sharing of presence information of users connected by their devices to a particular electronic network. That is, where software of various devices, such as laptops and mobile phones, which are connected to the same communications network are used advertise to other, devices in substantially real-time their online status, and also report on other users' online status.
By sending their presence advertisement the user is indicating that they are online and available for interactive communication. The online status of the user is typically one of several values, such as ‘online’, ‘offline’, ‘online but do not disturb’, or any other variation.
Presence advertisements are used in many Instant Messaging (IM) software applications such as Skype, and AOL Instant Messenger (AIM).
An IM application instance typically populates a ‘friends list’, which is a list of other users that utilise the same IM application and are known to the user of the application. This friends list is created by entering each user's identifier in the IM application either manually or as a result of a search. To be located in such a search, each users provides personal information that the search can be performed on so that others can identify them. Using presence advertising this friends list is updated in substantially real time to reflect the online status of the users in the friends list.
Typically, each user application instance reports their online status to a central point, such as a central server. All users check the central server to determine the current presence of the users in their friends list. This centralized nature introduces a single point of failure. When the central server is down, the online status information of all users cannot be reported or accessed. The network bandwidth required at the server to maintain each users information and access requests is also high per-user. Communication with the server can also incur additional cost to the end-users, such as 3G connectivity costs.
In a first aspect the invention is a computer implemented method of determining the presence of users of the same broadcast domain comprising the steps of:
It is an advantage of this aspect of the invention that the privacy of the users that are not in the subset is maintained as a device performing the method is unable to interpret their received presence information without matching it to a corresponding stored token. By not being able to interpret the presence information, the included personal/private information that uniquely identifies the other users/devices to indicate their presence, is not disclosed.
It is an advantage of at least one embodiment of the invention that a single device can determine the presence of other users without referring to a central server.
The method may further comprise the step of sending one-way encrypted presence information to the multiple users in the broadcast domain.
The presence information may indicate that the user sending the one-way encrypted presence information is currently connected to the broadcast domain (i.e. online).
The one-way encrypted presence information may identify the corresponding user that sent the hashed presence information. For example the one-way encrypted presence information may be based on any one or more of:
The method may be repeated at intervals and may further comprise generating an indication of updates to the presence information.
Each stored token is related to the identity of the corresponding user, such as information that identifies the corresponding user. The stored tokens may be automatically determined from a list of user identities stored locally on the device performing the method, the list including identification information for each user on the list from which the respective tokens can be determined. The stored tokens may be based on contact information listing people known to the user. The stored tokens may be determined by one-way encrypting user identification information stored in a list of users.
The one-way encrypted presence information may be matched by comparing a token to received presence information.
The indication information may be visual, audio and/or tactile. The step of generating an indication may include displaying a information that identifies each user in the subset.
In a broadcast domain all devices can transmit information to any other device using a medium that is a shared transmission system. The method may be performed by a mobile device having broadcasting abilities on the broadcast domain, that is sending and receiving broadcasts. The broadcast network may span a particular area, and the presence information may also indicate that the user is within the particular area. This proximity information may also be indicated.
The method may further comprise using the matched presence information of the subset of multiple users in a peer-to-peer file transfer, an instant messaging software application or other social networking software application. One example is populating a friends list on such an application with the subset of users.
In yet a further aspect the invention is software, installed in the device, to cause if to operate in accordance with the method described above.
In another aspect the invention provides a device for determining the presence of other users of the same broadcast domain, the device having:
In a further aspect the invention provides a presence signal sent in a broadcast domain to devices connected the broadcast domain, the presence signal indicating a user's presence on the broadcast domain and comprising a one-way encryption of identification information of the user.
In yet a further aspect, the invention provides a system for selectively sharing presence information between multiple devices, the system comprising:
It is an advantage of at least one embodiment of the present invention that the mobile devices do not have to share a secret key for each user that would otherwise impair the users' experience. The only information they need to exchange is their unique identifier that is based primarily for use in another application, such as telephone number or email addresses. It is a further advantage of at least one embodiment that since no central server is required, the system does not require any new infrastructure.
Examples of the invention will now be described with reference to the accompanying drawings, in which:
An example of a system for selectively sharing presence information between multiple devices is shown in
Each mobile phone 20, 22 and 24 has the following:
The use of these mobile phones 20, 22 and 24 to determine their presence on the same broadcast network 26 will be described with reference to the flowchart of
The mobile phones 20, 22, and 24 are positioned in the same vicinity, such as a shopping centre, and are all connected to the same WiFi local area network 26.
Each mobile phone 20, 22 and 24 periodically broadcasts 40 presence information (i.e. presence message M) on this WiFi local area network 26. This is done using a presence advertiser component shown in
Each mobile phone receives 42 the hashed presence messages sent by the other two mobile phones on the broadcast domain. Interpretation of these received presence messages 80 is performed by the user interface component shown in
Each mobile phone stores a set of hash values S (i.e. set of tokens) 82. This set is built by taking each unique mobile phone number recorded in that mobile device's contact list 84, and hashing 86 each mobile phone number 84 and storing it in the set S 82. So in this example, mobile phone 22 has a hash value mobile number of mobile phone 20 but not a token for the mobile number of mobile phone 24. Since mobile phone 24 does not have the mobile number of mobile phone 20, stored in its contact, list, no hash value corresponding to mobile phone 20 is stored on the mobile phone 24.
In this example, when the mobile phone 22 receives a presence message M which was sent by mobile 20, it checks 88 if the hash value contained in M belongs to the set S 44. This checking step can be performed by:
In this case mobile phone 22 finds a match, so the presence information is confirmed, and an indication of this is generated. In this example, the details of the user associated with the mobile phone number 20 of the presence message, such as their name as recorded in the contacts list, is displayed 46 on the display of the mobile device 22 together with an indication that the user of mobile phone 20 is online 90. Of course, if the mobile phone 22 has received and successfully matched presence information of other mobile phone users to tokens, they are also simultaneously displayed on the display of the mobile phone 22.
When the mobile phone 22 receives a presence message M which was sent by mobile 24, it checks 88 if the hash value contained in M belongs to the set S 44. In this case it doesn't so the mobile phone 22 is unable to determine the presence of user of mobile 24. In this way the mobile phone 22 is able to determine the presence of a subset (i.e. 20) of the multiple users (i.e. 20 and 26) that sent presence messages.
This online presence status can then be used by the mobile device 22 using a proximity-based mobile social networking application or a peer-to-peer file transfer application over the local area network 26.
In the case of mobile phone 24, no match 88 is found and the mobile phone 24 does not take any action 92. The mobile phone 24 is therefore unable to determine the mobile phone number of the mobile phone 20 that was included in the received presence message.
The broadcast domain of this example spans over a small to medium geographical area. In this example, the presence advertisement also implies that the user of that mobile device is in physical proximity to the receiving mobile phone. In this case, the online presence of that user that is displayed on the display means also displays (either explicitly or implicitly) that the other mobile phone is in physical proximity to the displaying mobile device.
It is an advantage of this example that no special hardware requirements such as a central server is needed to implement the invention. By having no central server there are also less privacy concerns. Also, the users' experience in using the invention requires very small set up. For example the devices of each user needs to have installed a simple software application. The users do not need to exchange special keys to determine their presence privately. In future, they can simply rely on their existing stored contact list.
It will be appreciated by persons skilled in the art that numerous variations and/or, modifications may be made to the invention as shown in, the specific embodiments without departing from the scope of the invention as broadly described.
For example, the presence signal can be used to automatically populate a ‘friends list’ in a social networking application, such as an instant messenger application. This avoids the need to manually enter contacts into a ‘friends list’.
Alternatively, the presence information can be used in a mobile peer-to-peer file transfer application and to map a user identifier with an IP address, i.e. a network service point of contact. The knowledge of the IP address is necessary to initiate a file transfer or an Instant Message, or any other form of point-to-point IP communication.
In addition, this invention can be used to filter out unknown user's advertisement from the buddy list, to only display users present in the phone address book, and (presumably) known to the user. This solves the problem encountered by Bluetooth users when wanting to send a file to a nearby device, but swamped by the large number of ‘discoverable’ Bluetooth devices in the communication range.
The terminal's contact list can be the terminal address book content, or calendaring or any other list of contacts.
Can be used together with an authentication scheme such as a 2-factor authentication methods (e.g. SIM CARD authentication in mobile phones AND a password-authenticated form of diffie-helman key exchange).
The present embodiments are, therefore, to be considered in all respects as illustrative and not restrictive.
Number | Date | Country | Kind |
---|---|---|---|
2008904718 | Sep 2008 | AU | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/AU09/01188 | 9/10/2009 | WO | 00 | 11/7/2011 |