Patentable/Patents/US-RE050834-B2
US-RE050834-B2

Generic unified presence detection system

PublishedMarch 17, 2026
Assigneenot available in USPTO data we have
InventorsUnknown
Technical Abstract

A method for receiving a first signal from a first client device, the first signal indicative of a first user activity is provided. The method includes receiving a second signal from a client device, and storing the first signal and the second signal in an activity history log associated with the first user. The method includes determining, by a server, a presence status of the first user, configuring a presence indicator for the first user based on the presence status, and receiving, from a second user, a request for the presence indicator for the first user. The method includes validating the request from the second user and providing the presence indicator for the first user to the second user. A system and a non-transitory, computer readable medium storing instructions to perform the above method are also provided.

Patent Claims

Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.

Claims not yet imported for this patent.

Claims are being imported from USPTO data. Check back soon!

See the raw claims text section below.

Raw Claims Text

Original claims text from the patent document.

Claim 1: . A computer-implemented method, comprising:

Claim 2: . The computer-implemented method of, wherein the first communication platform or the second communication platform comprise at least one of a calendar server, a desktop computer, a mobile phone or a desk phone.

Claim 3: . The computer-implemented method of, further comprising incorporating a type, a location and a transaction status of the first client device or the second client device in the presence indicator for the first user.

Claim 4: . The computer-implemented method of, wherein at least one of the first signal and the second signal comprises a communication transaction selected from one of a start communication, an end communication, or a transfer communication, and configuring a presence indicator further comprises determining a presence status based on the communication transaction.

Claim 5: . The computer-implemented method of, wherein the first signal comprises a presence information, and the second signal comprises a communication transaction, and configuring a presence indicator further comprises identifying the communication transaction.

Claim 6: . The computer-implemented method of, wherein the activity history log comprises a user communication history information from multiple communication platforms associated with the first user, and the computer-implemented method further comprises updating an entry for a communication platform in the activity history log with the first signal from the first client device.

Claim 7: . The computer-implemented method of, wherein configuring a presence indicator for the first user comprises determining a time lapse since the first user last updated a presence status.

Claim 8: . The computer-implemented method of, wherein determining the presence status of the first user comprises receiving a desired presence status from the first user.

Claim 9: . The computer-implemented method of, further comprising requesting the first signal from the first client device when the second user requests the presence indicator.

Claim 10: . The computer-implemented method of, further comprising updating a first user presence status in the activity history log based on the presence indicator.

Claim 11: . A system comprising:

Claim 12: . The system of, wherein to receive the first signal from a first client device the memory includes instructions to host an application installed in the first client device.

Claim 13: . The system of, wherein the memory further includes instructions to incorporate a type, a location, and a transaction status of the first client device or the second client device in the presence indicator for the first user.

Claim 14: . The system of, wherein the activity history log comprises information from multiple communication platforms associated with the first user, and the one or more processors further execute instructions to update an entry for one communication platform in the activity history log with the first signal from the first client device.

Claim 15: . The system of, wherein to configure a presence indicator for the first user the one or more processors execute instructions to determine a time lapse since the first user last updated a presence status.

Claim 16: . The system of, wherein to determine the presence status of the first user the memory includes instructions to receive a desired presence status from the first user.

Claim 17: . A computer-implemented method comprising:

Claim 18: . The computer-implemented method of, wherein incorporating the second user in the list of contacts for display comprises selecting the second user from a list in a collaboration application.

Claim 19: . The computer-implemented method of, wherein communicating with the second user based on the presence indicator comprises communicating with a client device associated with the second user, wherein the client device is not included in the presence indicator.

Claim 20: . The computer-implemented method of, wherein updating the list of contacts for display comprises requesting the second user to admit the first user in a collaboration list that includes the second user.

Detailed Description

Complete technical specification and implementation details from the patent document.

The present disclosure generally relates to network applications and management of multiple users and the communication channels therebetween. More specifically, the present disclosure relates to presence detection and status sharing for users in a networked system such that a first user may efficiently determine the availability of a second user for a network collaboration.

Commonly and historically, user presence information in unified communication platforms is stored as a unique value per user, or else the platform itself is unaware of a user's current state on the different modalities or devices of the platform. Therefore, presence information relies on each modality or device broadcasting state changes individually, on demand (e.g., by a user request). As a result, the presence state is typically overwritten by the device or platform modality changing the user's presence. This not only limits the level of detail that can be stored in the presence field, but also limits the ability to produce a single, accurate representation of the user state based on the activities performed in the different modalities or devices of the platform, at any time.

In one embodiment of the present disclosure, a computer-implemented method is described for receiving a first signal from a first client device, the first signal indicative of a first activity of a first user associated with the first client device. The computer-implemented method includes receiving a second signal from a second client device, the second signal indicative of a second activity of the first user associated with the second client device, storing the first signal and the second signal in an activity history log associated with the first user, and determining, by a server, a presence status of the first user based on an analysis of the activity history log. The computer-implemented method also includes configuring a presence indicator for the first user based on the presence status and receiving, from a second user, a request for the presence indicator for the first user. The computer-implemented method also includes validating the request from the second user and providing the presence indicator for the first user to the second user when the request is validated.

According to one embodiment, a system is described that includes one or more processors and a memory coupled to the one or more processors, the memory including instructions that, when executed by the one or more processors, cause the one or more processors to receive a first signal from a first client device, the first signal indicative of a first activity of a first user associated with the first client device. The one or more processors execute instructions to receive a second signal from a second client device, the second signal indicative of a second activity of the first user associated with the second client device, to store the first signal and the second signal in an activity history log associated with the first user, and to determine, by a server, a presence status of the first user based on an analysis of the activity history log. The one or more processors also execute instructions to configure a presence indicator for the first user based on the presence status, and to receive, from a second user, a request for the presence indicator for the first user. The one or more processors also execute instructions to validate the request from the second user and to provide the presence indicator for the first user to the second user when the request is validated.

In one embodiment of the present disclosure, a computer-implemented method is described for incorporating, by a first user through a first communication platform, a second user in a list of contacts for display. The computer-implemented method includes requesting, to a server, a presence indicator for the second user, communicating, through a second communication platform, with the second user based on the presence indicator, and updating the list of contacts for display when the request for the presence indicator is rejected by the server, wherein the second communication platform is independent from the first communication platform.

According to one embodiment, a non-transitory, machine readable medium is described that includes instructions, which when executed by one or more processors, cause a computer to perform a method for receiving a first signal from a first client device, the first signal indicative of a first activity of a first user associated with the first client device. The method includes receiving a second signal from a second client device, the second signal indicative of a second activity of the first user associated with the second client device, storing the first signal and the second signal in an activity history log associated with the first user, and determining, by a server, a presence status of the first user based on an analysis of the activity history log. The method also includes configuring a presence indicator for the first user based on the presence status, receiving, from a second user, a request for the presence indicator for the first user, validating the request from the second user, and providing the presence indicator for the first user to the second user when the request is validated.

In yet another embodiment, a system is described that includes a means for storing commands and a means for executing the commands causing the system to perform a method including incorporating, by a first user through a first communication platform, a second user in a list of contacts for display. The method also includes requesting, to a server, a presence indicator for the second user, communicating, through a second communication platform, with the second user based on the presence indicator, and updating the list of contacts for display when the request for the presence indicator is rejected by the server, wherein the second communication platform is independent from the first communication platform.

It is understood that other configurations of the subject technology will become readily apparent to those skilled in the art from the following detailed description, wherein various configurations of the subject technology are shown and described by way of illustration. As will be realized, the subject technology is capable of other and different configurations and its several details are capable of modification in various other respects, all without departing from the scope of the subject technology. Accordingly, the drawings and detailed description are to be regarded as illustrative in nature and not as restrictive.

In the figures, elements and steps denoted by the same or similar reference numerals are associated with the same or similar elements and steps, unless indicated otherwise.

In the following detailed description, numerous specific details are set forth to provide a full understanding of the present disclosure. It will be apparent, however, to one ordinarily skilled in the art that the embodiments of the present disclosure may be practiced without some of these specific details. In other instances, well-known structures and techniques have not been shown in detail so as not to obscure the disclosure.

General Overview

Presence management is a key service for unified communication platforms. Existing presence solutions were conceived and designed in environments where users mostly used one device at a time (e.g. a computer, or a desk phone). By extension, such solutions grew to handle multi-device concurrency using simplistic static chronological determinations such that the last seen or active device would override any existing inactive or active state for a given user. Accordingly, embodiments as disclosed herein address the modern concurrency constraints imposed on unified communication platforms by keeping track of a users' ongoing simultaneous activity on multiple devices (e.g. desktop, mobile, desk phone) and in multiple modalities of a platform (e.g. phone call, meeting, chat, or remote logging).

The disclosed system addresses the problem specifically arising in the realm of computer technology by providing a solution also rooted in computer technology, namely, by considering a presence detection engine that receives and aggregates presence signals from multiple devices associated with multiple users in a unified communication platform.

The disclosure includes a generic unified user presence platform that aggregates persistent signals from other systems, devices or platforms. In some embodiments, a presence detection engine stores, processes and combines these signals to determine and present a single, aggregated computed presence state of a given user to a second user, per request, or to multiple other users, by default.

Embodiments as disclosed herein also provide methods and systems to store and process presence information of multiple users over an extended period of time. Different communication modalities may report one or more activities to the presence detection engine, which stores, aggregates and combines the detected activities and produces a single, unified and consistent computed presence state. In some embodiments, the displayed presence state can be overridden by the user, upon direct intervention, but not automatically by a single device or modality in the platform.

Accordingly, embodiments as disclosed herein provide consistent, idempotent (e.g., applicable to multiple users), and predictable presence states. Further, embodiments as disclosed herein may be extended to new modalities or devices in a communication platform because the relation between the different modalities is defined in the presence detection engine, independently from the modalities or devices used.

Example System Architecture

illustrates an example architecturesuitable to provide a platform for a presence detection, according to some embodiments. Architectureincludes serversand client devicesconnected over a network. One of the many serversis configured to host a memory including instructions which, when executed by a processor, cause serverto perform at least some of the steps in methods as disclosed herein. In some embodiments, the processor in serveris configured to host a presence detection that a participant may access through client device. Further, in some embodiments, the processor in serveris configured to provide support for collaborative network event applications, and other networking applications such as text messaging services and the like, to a participant in a presence detection through client device. Information related to, and instructions to handle the presence detection may be stored in a presence detection engine accessible by a participant through a client device(e.g., accessible through a web page or an application running on client device). Serverscan return images, documents, rich-text documents and the like intended for a shared use and modification by multiple participants in a presence detection system as disclosed herein. For purposes of load balancing, multiple serverscan host memories including instructions to one or more processors and multiple serversfor hosting one or more presence detections as disclosed herein.

Serversmay include any device having an appropriate processor, memory, and communications capability for hosting the documents and applications associated with the presence detection engine. The presence detection engine may be accessible by multiple participants through various client devicesover the network. Client devicescan be, for example, desktop computers, mobile computers, tablet computers (e.g., including e-book readers), mobile devices (e.g., a smartphone or PDA), or any other devices having appropriate processor, memory, and communications capabilities for accessing the presence detection engine on one of servers. Networkcan include, for example, any one or more of a local area network (LAN), a wide area network (WAN), the Internet, and the like. Further, networkcan include, but is not limited to, any one or more of the following network topologies, including a bus network, a star network, a ring network, a mesh network, a star-bus network, tree or hierarchical network, and the like.

is a block diagramillustrating an example serverand client devicein the architectureofaccording to certain aspects of the disclosure. Client deviceand serverare communicatively coupled over networkvia respective communications modulesand. Communications modulesandare configured to interface with networkto send and receive information, such as data, requests, responses, and commands to other devices on the network. Communications modulesandcan be, for example, modems or Ethernet cards.

Client devicemay be any one of a desktop computer, a laptop, or a mobile computing device. Client devicemay include a processorand a memory. An input deviceand an output deviceenable the user to interact with client device. Examples of input deviceand output devicemay include a mouse, a keyboard, a display, a touch-interactive display, and the like.

Processoris configured to execute instructions, such as instructions physically coded into processor, instructions received from software in memory, or a combination of both. A user of client devicemay use input deviceto submit a document or a media file to presence detection enginevia a user interface of application. The document submitted by the user may be include an application-based document (e.g., a text-rich document such as a Word, document, a PDF document, or any other document accessible through a text editing application, including a computer code sequence, and the like), a spreadsheet document (e.g., Excel and the like), a presentation document (e.g., Power Point and the like), an XML file, an HTML file or a multi-media file such as a video, audio, image file, or any combination of the above.

Serverincludes a memory, a processor, and communications module. The user interface is displayed for the user in an output deviceof client device. Memoryincludes a presence detection engineand a database. Presence detection engineincludes instructions which, when executed by processor, cause serverto perform at least partially steps as disclosed herein. In some embodiments, presence detection engineincludes instructions to communicate with an application-to detect the presence of the user of client device. In some embodiments, to detect the presence of the user of client devicemay include to determine that the user of client deviceis communicatively coupled and active with server. Presence detection enginemay also include instructions to store the presence information in a presence history log, and to store data related to a presence detection of multiple users into database. Furthermore, in some embodiments, presence detection enginemay include instructions to retrieve and provide to one or more users of the presence detection system at least some of the data in databaseassociated with a different user. For example, a first user may execute a second application-in client device, wherein application-may request presence detection enginefor a presence status of a second user. Presence detection engineprovides the presence status of the second user to the first user for display in output deviceon a display associated with the execution of application-. Applications-and-may be the same application, or different, unrelated applications, and will be collectively referred to, hereinafter, as “applications.”

In some embodiments application-is configured to run in the background, while application-is on display at output device. For example, application-may be a networking, collaborative event application that a first user of client deviceis running to participate in a network event. The first user may desire to find out the presence status of a second user, to communicate with the second user through application-, or through other channels (e.g., a separate phone call, e-mail, or messaging). Application-, running in the client device of the second user then provides the presence information to server, and presence detection engineprovides the presence status of the second user to the first user in application-of client device. Likewise, application-, running in client devicefor the first user, provides a presence signal to serverwhich, through presence detection engine, configures a presence indicator for the first user and provides the presence indicator to other users, upon request.

The user may access presence detection enginethrough applicationinstalled in memoryof client device. The user may also access presence detection enginevia a web browser installed in client device. Execution of applicationmay be controlled by a processorin client device. In some embodiments, applicationis downloaded and installed by the user into client device, from server.

illustrates the integration of a presence detection system, according to some embodiments. Accordingly, a presence detection engineis configured to receive a signal from either one of client devices-,-,-, or-(hereinafter, collectively referred to as “client devices”). For illustrative purposes only, client device-may include a calendar server (e.g., server) that provides a calendar state to presence detection engine. Client device-may include a desktop computer that provides a desktop state to presence detection engine. Client device-may include a mobile device that provides a mobile state to presence detection engine. Client device-may include a desk phone that provides a desk phone state to presence detection engine.

Client devicesmay be registered in presence detection systemthrough presence detection engine. In some embodiments, the user of client devicesregisters each device with presence detection engineas a choice. In some embodiments, client devicesare automatically registered with presence detection engineat the time the devices are placed in service. In that regard, a first user may be associated with multiple client devices. More generally, client devicesare associated with one or multiple users.

In some embodiments, at least one of client devicesmay use a second communication platform that is different from a first communication platform used by other client devices. For example, the second communication platform may be independent of the first communication platform, wherein the first communication platform hosts presence detection engine. Accordingly, the second communication platform may be hosted by a different server than the server hosting presence detection engine. In some embodiments, the user of client devicesmay not be registered with the server hosting the second communication platform. Rather, in some embodiments the user of client devicesmay be contacted (through one or more of client devices), by a user that is registered with the server hosting the second communication platform. In such embodiments, presence detection engineis still able to add the user interaction to the presence history log (e.g., presence history log). In that regard, presence detection enginereceives a direct flow of data from phone call servers and raw data sources, and also from communication services themselves, to which a user may be subscribed.

Presence detection engineconfigures a presence indicatorbased on the aggregated information received from the multiple client devices. Client devicesmay include any number of devices and applications associated with a user, such as a computer application, a mobile phone application, a desk phone and a calendar application. More generally, the number of client devicesis not limiting of embodiments consistent with the present disclosure. For example, rather than four, many more devices and applications may be included, or only one, according to system configurations, user status, and the like. In some embodiments, presence indicatorincludes presence information regarding a first user with a first client deviceA. In some embodiments, client deviceA may include any one of client devices. Presence indicatormay be provided to a second user with a second client deviceB. The information in presence indicatormay include presence status for the first user on one or more of client devices. For example, the first user may be busy in a meeting (calendar state from calendar server-), and also attending a call or sending a message through mobile device-(mobile state). In that regard, presence detection enginemay issue multiple presence indicators, one for each, or at least some, of multiple users registered with presence detection system. Further, presence indicatorsmay be issued to any one of the users registered with presence detection system, upon request or automatically. Moreover, presence detection enginemay incorporate presence indicatorin a presence history log, and store the presence history log in a database (e.g., presence history logand database). In some embodiments, presence detection engineconfigures presence indicatoreven when the client deviceis active through the second communication platform independent from the host of presence detection engine(e.g., the first communication platform). For example, when a user registered with the second communication platform calls, chats, or sends an e-mail to the user of client devicethrough the second communication platform, presence detection engineis able to log in the call, the chat request, or the e-mail in the presence history log.

In some embodiments, presence detection enginereceives from one or more of the users registered with presence detection system(e.g., from the first user with client deviceA), a user preference. In some embodiments, user preferencemay include a presence status item that a first user desires to be displayed for the other users by presence detection enginewhen configuring presence indicatorfor the first user. User preferencemay include a desired format and features to be included in presence indicatorfor the first user that will be provided to a second user. For example, in some embodiments a first user may desire to be shown as “busy” or “free and available” in the presence indicator, regardless of the state of any one of devices, and include these features in user preference.

illustrates a display layoutof a presence detection system in a client device, according to some embodiments. The presence detection system may include an applicationhosted in the client device (e.g., applicationsin client device). Applicationmay include a group event application (e.g., application-) wherein multiple users-,-, through-n, including user-k (hereinafter, collectively referred to as users) in a contact listmay participate (e.g. in a network collaboration).

A remote server may provide information regarding presence status of usersto applicationin a presence indicator, through a presence detection engine, as disclosed herein (e.g., presence detection enginesand). Presence indicatormay include a presence descriptor, a user name (e.g., “user-k”), and a quick icon identifier. Quick icon identifiermay be simply a dot colored in a manner that quickly identifies the status of user-k to all other participants in the collaborative event held by application(e.g., red, for “busy,” green, for “free and available,” yellow for “present but unresponsive,” and the like). In some embodiments, presence descriptormay be modified by user-k accordingly. In some embodiments, presence descriptoris automatically set based on information collected by the presence detection engine. In some embodiments, applicationmay feature user-k in a separate field, when the user of the client device taps, or selects, user-k from contact list.

In some embodiments presence descriptormay provide some context as to the current activity of user-k. For example, in some embodiments the presence detection system may couple with a business productivity tool to include text such as “working on Project No. XYZ” in presence descriptor. In some embodiments the presence detection system may couple with device location features in a mobile device (e.g., a smartphone and the like) to indicate a device/hardware based presence status to include text such as “Do Not Disturb (DND)” (e.g., when a smartphone is placed facing down), or “Driving, available for calls only” (e.g., when user-k is driving in a car with a smartphone), in presence descriptor. In some embodiments, the presence detection system may couple with an automated location system in the workplace (e.g., conference room presence detection system) to include text such as “Currently in headquarters (HQ),” “Currently in Louvre (conference) Room,” in presence descriptor.

is a walkthrough illustration of an interactionbetween first user-and second user-(hereinafter, collectively referred to as “users”) including a presence detection server, according to some embodiments. Usersmay be remotely located and yet still able to communicate with detection serverand with each other through a network (e.g., network). Moreover, usersmay in fact be remote server systems wherein each of usersmay be registered independently. Accordingly, a server handling each of usersmay provide the presence information to presence detection server. In some embodiments, usersmay be located in different time zones, and presence detection serveris time zone-aware. Accordingly, presence detection servermay provide personalized notification behaviors or transparency between usersaccording to the time zone detected for each of users(e.g., during business hours, and the like).

Based on the presence status of second user-, first user-may decide to send a communicationto second user-(e.g., via an e-mail, and the like). In some embodiments, first user-also determines the type of communicationto use for contacting second user-, based on the presence information. For example, first user-may learn from presence detection serverthat second user-is on a desk phone, and therefore first server-may decide to send communicationto second user-in the form of an e-mail message that may cause little to no disruption to the activities of second user-. In some embodiments, presence detection serverdetermines that second user-is busy on desk phoneeven when desk phone uses a communication platform different than the communication platform used by presence detection serverand users.

In some embodiments, usersmay be closely located to one another (within physical reach, e.g., co-workers in an office, a cubicle, a plant, and the like). In such case, presence indicator may be a light bulbthat turns on with a coded color, to indicate the presence status of second user-(e.g., red, green and yellow, as mentioned above).

is a flowchart illustrating steps in a methodfor hosting a presence detection in a server, according to some embodiments. Methodmay be performed at least partially by any one of the network servers hosting a presence detection engine (e.g., presence detection engine), while communicating with any one of a plurality of client devices (e.g., serversand client devices). At least some of the steps in methodmay be performed by a computer having a processor executing commands stored in a memory of the computer (e.g., processorsand, memoriesand). For example, at least some of the commands may be included in an application installed in a client device accessible by a user (e.g., application). Further, steps as disclosed in methodmay include retrieving, editing, and/or storing files in a database that is part of, or is communicably coupled to, the computer (e.g., presence history log, database). Methods consistent with the present disclosure may include at least some, but not all, of the steps illustrated in method, performed in a different sequence. Furthermore, methods consistent with the present disclosure may include at least two or more steps as in methodperformed overlapping in time, or almost simultaneously.

Stepincludes receiving a first signal from a first client device, the first signal indicative of a first activity of a first user associated with the first client device. In some embodiments, stepincludes requesting the signal from multiple client devices associated with the first user, including the first client device. In some embodiments, stepincludes detecting the presence of the first user, based on the signal from the first client device. In some embodiments, the first client device is part of a first communication platform, and stepincludes using a second communication platform independent from the first communication platform. In some embodiments, the first client device is registered with a first communication platform and the second client device is not registered with the first communication platform, and stepincludes identifying the second signal in the activity history log. For example, in some embodiments the first user receives a phone call from a second user through a second communication platform that the first user is not registered in. The second communication platform may still be able to access the first user telephone number, in which case the telephone conversation may be logged by the first communication platform.

Stepincludes receiving a second signal from a second client device, the second signal indicative of a second activity of the first user associated with the second client device. For example, stepmay include receiving a chat signal from a smart phone associated with the first user, the smart phone running a chat application that enables the first user to chat with a second user. In some embodiments, stepis repeated for a third, fourth, and any number of client devices. Accordingly, there is no limit on the number of client devices associated with the first user. Moreover, in some embodiments stepmay be omitted and a presence status of the first user may be calculated with the information of the first client device.

Stepincludes storing the first signal and the second signal in an activity history log associated with the first user. In some embodiments, the activity history log includes a user communication history information from multiple communication platforms associated with the first user, and stepfurther includes updating an entry for a communication platform in the activity history log with the first signal from the first client device. For example, in some embodiments stepmay include updating the activity history log with a chat request received in a second communication device for the first user, from a second user through a second communication platform independent from the first communication platform. Stepincludes determining, by the server, a presence status of the first user based on an analysis of the activity history log.

Stepincludes configuring a presence indicator for the first user based on the presence of the first user and on the presence history log. In some embodiments, the presence history log comprises information from multiple client devices associated with the first user. Accordingly, stepmay further include updating an entry for the first user in the presence history log with the signal from the first client device. In some embodiments, stepincludes determining a time lapse since the first user last updated a presence status. In some embodiments, stepincludes incorporating a type of the first client device in the presence indicator. In some embodiments, stepincludes incorporating a presence status for multiple client devices associates with the first user. In some embodiments, at least one of the first signal and the second signal includes a communication transaction selected from one of a start communication, an end communication, or a transfer communication, and stepfurther includes determining a presence status based on the communication transaction. In some embodiments the first signal includes a presence information and the second signal includes a communication transaction, and stepincludes configuring the presence indicator after identifying the communication transaction. In some embodiments, stepincludes determining a time lapse since the first user last updated a presence status.

Stepincludes receiving, from a second user, a request for the presence indicator for the first user.

Stepincludes validating the request from the second user. In some embodiments, stepincludes verifying that the second user is associated with the first user in a collaboration list stored in a database, and verifying that the second user is authorized to request the presence indicator for the first user. In some embodiments, stepincludes requesting by the second user, through a subscription mechanism, to be notified to any or specific type of changes in the first user presence/availability status.

Stepincludes providing the presence indicator for the first user to the second user when the request is validated. In some embodiments, stepincludes receiving a second signal from a second client device, the second signal indicative of the presence of the first user associated with the second client device. In some embodiments, stepincludes requesting the signal from the first client device when the second user requests the presence indicator. In some embodiments, stepincludes updating a first user presence status in the presence history log. In some embodiments, stepfurther includes requesting the first signal from the first client device when the second user requests the presence indicator. In some embodiments, stepfurther includes updating a first user presence status in the activity history log based on the presence indicator.

is a flowchart illustrating steps in a method for participating in a presence detection in a server, according to some embodiments. Methodmay be performed at least partially by any one of the network servers hosting a presence detection engine (e.g., presence detection engine), while communicating with any one of a plurality of client devices (e.g., serversand client devices). At least some of the steps in methodmay be performed by a computer having a processor executing commands stored in a memory of the computer (e.g., processorsand, memoriesand). For example, at least some of the commands may be included in an application installed in a client device accessible by a user (e.g., application). Further, steps as disclosed in methodmay include retrieving, editing, and/or storing files in a database that is part of, or is communicably coupled to, the computer (e.g., presence history log, database). Methods consistent with the present disclosure may include at least some, but not all, of the steps illustrated in method, performed in a different sequence. Furthermore, methods consistent with the present disclosure may include at least two or more steps as in methodperformed overlapping in time, or almost simultaneously.

Stepincludes incorporating, by a first user, a second user in a list of contacts for display in the client device. In some embodiments, stepincludes selecting the second user from a list in a collaboration application.

Stepincludes requesting, to a server, a presence indicator for the second user.

Stepincludes communicating with the second user based on the presence indicator. In some embodiments, stepincludes communicating with a client device associated with the second user and that is not included in the presence indicator.

Stepincludes updating the list of contacts for display when the request for the presence indicator is rejected by the server. In some embodiments, stepincludes requesting the second user to admit the first user in a collaboration list that includes the second user.

Stepincludes requesting the second user to admit the first user in a collaboration list that includes the second user.

Patent Metadata

Filing Date

Unknown

Publication Date

March 17, 2026

Inventors

Unknown

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, FAQs, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Generic unified presence detection system” (US-RE050834-B2). https://patentable.app/patents/US-RE050834-B2

© 2026 Nomic Interactive Technology LLC. Machine-readable context available at /api/llm-context/US-RE050834-B2. See llms.txt for full attribution policy.