METHOD OF SENDING AN ALERT MESSAGE, DEVICE FOR PROVIDING AN ALERT MESSAGE TO A USER, AND COMPUTER-READABLE MEMORY
The method and device address the issue of missed notifications by determining user location and preferences, ensuring timely delivery of alerts to appropriate devices in smart home systems.
Patent Information
- Authority / Receiving Office
- BR · BR
- Patent Type
- Patents
- Current Assignee / Owner
- QUALCOMM INC
- Filing Date
- 2017-12-13
- Publication Date
- 2026-07-14
AI Technical Summary
Existing communication systems struggle to effectively deliver notifications to users when devices are shared or moved by multiple users, leading to missed alerts due to mismatched device and user locations.
A method and device that determine a user's location using sensors and presence detectors, generate alert messages based on user preferences, and send notifications to appropriate devices within a network, ensuring timely delivery of alerts regardless of device mobility.
Ensures that notifications are delivered to the correct devices based on user location and preferences, preventing missed alerts and enhancing communication effectiveness in smart home environments.
Smart Images

Figure 00000072_0000 
Figure 00000073_0000 
Figure 00000074_0000
Abstract
Description
1 / 67 “METHOD OF SENDING AN ALERT MESSAGE, DEVICE FOR PROVIDING AN ALERT MESSAGE TO A USER, AND COMPUTER-READABLE MEMORY BACKGROUND
[0001] Devices, both mobile and stationary, are increasingly equipped to communicate wirelessly with other devices and / or to take measurements from which their locations can be determined and / or the locations can be determined of other devices from which one or more signals are received. An electronic notification process can be used to send notifications from one device to another device based on the locations of the devices. The locations of the devices can be determined by the devices themselves, or by another device that is equipped with the measurements, or by another device that makes the measurements. For example, a device can determine its own location based on signals from satellite positioning system (SPS), cellular network signals, and / or Wi-Fi signals, etc., that the devices receive.A user's location can often be associated with the location of a mobile or static device, such as a mobile phone or a static workstation. Notifications / alerts can be sent to a user based on an association with a mobile device. Associating a single user with a device can be problematic when devices may be moved or shared by multiple users. For example, users may use mobile profiles throughout the household with or without a mobile device, and therefore their location may not match the location of one. Petition 870250005696, dated 01 / 24 / 2025, page 6 / 152 2 / 67 mobile device. For example, a child might take their parents' mobile device to another room (e.g., without their parents) to play a game or view online content. In this example, the parents would not be aware of any notifications sent to the mobile device while the child is in possession of it.
[0002] To improve the effectiveness of communications with a user, the user's location should be considered in an electronic notification process. Furthermore, the electronic notification process should also consider the mobility of some devices and the locations of mobile devices in relation to the user's location. SUMMARY
[0003] An example of a method for sending an alert message according to the disclosure includes receiving, on a communication device, a notification message for a user, determining, through the communication device, a location of the user, determining, through the communication device, one or more notification devices based on the user's location, generating, through the communication device, the alert message based on one or more notification preferences associated with the user and one or more notification devices, and sending, through the communication device, the alert message to at least one of the one or more notification devices based on the notification preferences.
[0004] Deployments of such a method may include one or more of the following features. The alert message may include an indication of preferences for Petition 870250005696, dated 01 / 24 / 2025, p. 7 / 152 3 / 67 Notification. The communication device may be a central controller. Generating the alert message may involve occupying one or more data frames associated with a wireless messaging protocol. Determining the user's location may involve providing a user ID associated with the user to the central controller and receiving an indication of the user's location from the central controller. At least one of the one or more notification devices may be configured to receive the alert message from a second notification device. The alert message may be a pending notification message that includes information configured to enable at least one of the one or more notification devices to display an icon associated with the user. Determining the user's location may include performing a user search function.Determining the user's location may involve obtaining an image with a camera on at least one or more notification devices.
[0005] An example of a device for providing an alert message to a user according to the disclosure includes at least one processor configured to receive a notification for the user, determine a user location, determine one or more notification devices based on the user's location, determine one or more notification preferences associated with the user and the one or more notification devices, generate the alert message for at least one of the one or more notification devices based on the notification preferences, and a transceiver, communicatively coupled to the processor, configured to transmit the alert message in a manner Petition 870250005696, dated 01 / 24 / 2025, page 8 / 152 4 / 67 wireless from the device.
[0006] Deployments of such a device may include one or more of the following features. Notification preferences may include a privacy preference that indicates conditions under which a receiving notification device that receives the alert message may display the alert message. Notification preferences may include a display area preference that indicates an area on a display where a receiving notification device that receives the alert message will be present in the alert message. Notification preferences may include a volume level preference that indicates a volume at which a receiving notification device that receives the alert message will be present in the alert message. The alert message may be a pending notification message that includes information configured to enable at least one of one or more notification devices to display an icon associated with the user.The processor can be configured to receive information from at least one presence sensor and determine the user's location based at least in part on the information received from at least one presence sensor. The processor can also be configured to receive an indication of the user's location from one or more notification devices.
[0007] An example of a device for sending an alert message according to the disclosure includes means for receiving a notification message for a user, means for determining a user's location, means for determining one or more notification devices based Petition 870250005696, dated 01 / 24 / 2025, page 9 / 152 5 / 67 at the user's location, means to generate the alert message based on one or more notification preferences associated with the user and one or more notification devices, and means to send the alert message to at least one of the one or more notification devices based on the notification preferences.
[0008] An example of a non-transient processor-readable storage medium comprising processor-readable instructions is configured to cause one or more processors to send an alert message according to the disclosure includes code to receive a notification message for a user, code to determine a user's location, code to determine one or more notification devices based on the user's location, code to generate the alert message based on one or more notification preferences associated with the user and one or more notification devices, and code to send the alert message to at least one of the one or more notification devices based on the notification preferences.
[0009] Items and / or techniques described in this document may provide one or more of the following capabilities, as well as other capabilities not mentioned. Electronic notifications / alerts may be provided based on a user's location. The user's location may be established based on sensor and device information. User and device locations may be stored with chronological information. Notifications may be provided to one or more devices that are near the user's current location. Petition 870250005696, dated 01 / 24 / 2025, page 10 / 152 6 / 67 Notifications can be provided based on user preferences and / or device attributes. User preferences and device attributes can be stored in a control system. A single device can be configured to provide multiple notifications based on the preferences of multiple users. Emergency notifications can be provided to multiple devices regardless of user location. A user's location can be based on historical data. Other capabilities may be provided, and not every deployment according to the disclosure must provide any, much less all, of the capabilities discussed. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] Figure 1 is a simplified view of a communication system.
[0011] Figure 2 is a simplified top view of an internal portion of an exemplary communication system.
[0012] Figure 3 is a component block diagram of the communication device shown in Figure 2.
[0013] Figure 4 is an example of a mobile user's use of a home communication system.
[0014] Figure 5 is an illustrative use case of a mobile device with multiple users in a home communication system.
[0015] Figure 6 is an illustrative use case of a static device with multiple users in a home communication system.
[0016] Figures 7A and 7B are examples of a Petition 870250005696, dated 01 / 24 / 2025, page 11 / 152 7 / 67 device with a multi-user notification display.
[0017] Figure 8 is a component block diagram of a central controller shown in Figures 2-6.
[0018] Figure 9 is an example message flow for user location tracking.
[0019] Figures 10A-10C are example data tables of device and user data history maintained by the central controller shown in Figure 8.
[0020] Figure 11 is a block flow diagram of a method for sending an alert message.
[0021] Figure 12 is a block flow diagram of a method for sending an alert message to a notification device.
[0022] Figure 13A is a block flow diagram of a method for sending an alert message with a notification preference.
[0023] Figure 13B is a block flow diagram of a method for receiving an alert message with a notification preference. DETAILED DESCRIPTION
[0024] The techniques discussed in this document for providing notification messages to a user. A growing number of smart home devices are becoming available to the consumer market. These smart devices have the ability to communicate with a home network to store and exchange data. Historically, an individual in an area of Petition 870250005696, dated 01 / 24 / 2025, page 12 / 152 8 / 67 A person in a household may not be aware of what is happening in other areas of the house. For example, if an individual is operating an appliance in one area of the house (e.g., a washing machine), they may be unaware of the situation of an appliance operating in another area of the house that requires their immediate attention (e.g., the oven). In another example, if an individual leaves a smart device (e.g., smartphone, tablet computer) in one area, they may not hear a notification tone from the smart device (e.g., incoming message, email, alerts). Determining the individual's location in the house allows the individual to act appropriately to ensure that calls / notifications / alerts are not missed. For example, a device that needs immediate attention may be able to communicate with the individual even when they are not in the vicinity of that device.
[0025] A smart home can include a network of devices capable of exchanging information with other devices on the network. Smart devices can also be used to determine a user's location within the home. For example, a voice identification system can be used to identify individual users and associate each user with a device or physical location. Other presence sensors such as cameras and motion detectors can be used to determine the user's location. Other smart devices on the network may need a user ID, and this can then be used to infer the user's location. A network controller may maintain a data table with this information. Petition 870250005696, dated 01 / 24 / 2025, page 13 / 152 9 / 67 User location. User location information can be correlated to a nearby network device, and notifications for a specific user can be targeted to a nearby device. For example, if the user is watching TV and doesn't have their smartphone with them, they could receive alerts about a security alarm at the front door via the TV. In another example, if the system detects that the user is some distance from their smartphone, the smartphone could automatically increase the notification volume.
[0026] With reference to Figure 1, a communication system 10 includes devices 12, 14, 16, 18, 20, 22, an access point 24, a base station 26, a network 28, a server 30, a presence sensor 32, and an audio transducer 34. Devices 12, 14, 16, 18, the access point 24, the presence sensor 32 and the audio transducer 34 are arranged within a structure 36 (for example, a building). System 10 is a communication system in which the components of system 10 can communicate with each other directly or indirectly, for example, through the network 28 and / or the access point 24 and / or the base station 26 (or other access points and / or other base stations not shown). System 10 is a communication system in which at least some of the components of System 10 can communicate with each other wirelessly. For example, base station 26 and device 20 can communicate wirelessly using signals according to one or more protocols, such as LTE, GSM, CDMA, or OFDM. The single access point 24 and the single base station 26 are just examples, and other quantities of Petition 870250005696, dated 01 / 24 / 2025, page 14 / 152 10 / 67 access points and / or base stations can be used. In addition, device types 12, 14, 16, 18, 20, 22 (e.g., a household appliance, a smartphone, a tablet computer, a laptop computer, and a car) are examples, and other device types may be used, whether currently existing or developed in the future. The term base station does not limit base station 26 to any specific form, protocol, etc. For example, any of the base stations 26 (and / or other base stations not shown) may be referred to as a transceiver base station (BTS), an access node (AN), a B-node, an evolved B-node (eNB), etc. Furthermore, device 22 is a car, and although the primary function of a car is not as a communication device, the car will comprise a communication device as part of the car, and for the sake of simplicity of disclosure, the car is considered as a type of communication device in the present document.
[0027] System 10 comprises an Internet of Things (IoT) network in this example, with devices 12, 14, 16, 18, 20, 22 configured to communicate with each other, particularly through one or more short-range wireless communication techniques. System 10 being an IoT network is, however, an example and is not required. Examples of short-range wireless communication techniques include BLUETOOTH communications, BLUETOOTH Low Energy communications, and Wi-Fi communications. Devices 12, 14, 16, 18, 20, 22 can broadcast information, and / or can relay information from one of the devices 12, 14, 16, 18, 20, 22 to another device such as access point 24 and / or base station. Petition 870250005696, dated 01 / 24 / 2025, page 15 / 152 11 / 67 26. One or more of devices 12, 14, 16, 18, 20, 22 may include multiple types of radios, for example, a BLUETOOTH radio, a Wi-Fi radio, a cellular radio (e.g., LTE, CDMA, 3G, 4G, etc.), etc., so that information can be received using one radio and transmitted using a different radio. Furthermore, one or more of devices 12, 14, 16, 18, 20, 22 may be configured to determine the range to another of devices 12, 14, 16, 18, 20, 22 (for example, using round-trip time (RTT), or observed time difference of arrival (OTDOA), or received signal strength indications (RSSI), or one or more other techniques, or a combination of one or more of any of these techniques) and / or determine the angle of arrival (AOA) of a signal from another of devices 12, 14, 16, 18, 20, 22 and / or from one or more other devices such as access point 24 and / or base station 26.
[0028] With reference to Figure 2, an internal portion of system 10 within structure 36 includes wireless communication devices 40, 41, 42, 43, 44, 45, 47, presence sensors 50, 52, audio transducers 54, 56, a central controller 60, and the access point 24 (in this document, a Wi-Fi router). In this example, devices 40 to 47 include a dishwasher 40, an oven 41, a toaster 42, and a refrigerator 43 located in a kitchen 64, a tablet computer 44, a smartphone 45, and a television located in a living room 66, and a car 46 and a garage door opener 47 located in a garage 68. These devices 40 to 47 are configured to communicate with each other if within range. Petition 870250005696, dated 01 / 24 / 2025, page 16 / 152 12 / 67 communication with each other, and to communicate with presence sensors 50, 52 and the central controller 60. Using their communication capabilities, information related to devices 40 to 47 can be sent to each other, relayed to other devices, or even relayed to the central controller 60. Furthermore, communications from the central controller 60 can be received, or forwarded, by devices 40 to 47. Additionally, the central controller 60 can be a standalone device as shown in Figure 2 or it can be incorporated into any of the devices 40 to 47. System 10, in this example, provides an IoT network that can generate, send, receive, relay, or forward various information (e.g., attributes, attribute tables, attribute-related information, signal measurements, location indications, etc.) to facilitate the functionality described in this document.Devices 40 to 47 are examples only, and other types of devices, as well as other quantities of devices, may be used.
[0029] Presence sensors 50, 52 facilitate the detection of the presence of devices and / or users. Presence sensors 50, 52 can detect the presence of devices and / or people in any of a variety of ways. For example, either or both presence sensors 50, 52 may comprise a motion sensor, for example, which sends signals, measures their reflections, and compares present reflections with previous reflections. The signals may be visible or invisible light signals (e.g., infrared) and audible or inaudible sound signals. Petition 870250005696, dated 01 / 24 / 2025, page 17 / 152 13 / 67 audible (e.g., ultrasound). Either or both presence sensors 50, 52 may comprise a heat sensor, for example, including an infrared sensor. Either or both presence sensors 50, 52 may be communicatively coupled (e.g., wired or wirelessly connected) to one or more of devices 40 to 47 and / or the central controller 60. The presence sensors 50, 52 are configured to report the presence detection (possibly only if new or in progress) of a relevant object such as a person.
[0030] Audio transducers 54, 56 facilitate the reception and provision of user commands to the central controller 60 or other suitable device. The audio transducers are preferably communicatively coupled (e.g., wired or wirelessly connected) to the central controller 60 and are configured to receive verbal commands, convert these commands into electrical signals, and send the signals to the central controller 60 or other suitable device. Audio transducers 54, 56 can send the signals to the central controller 60 or other suitable device directly or indirectly (e.g., through one or more intermediate devices that relay the signals) as one or more of devices 40 to 47.
[0031] With reference to Figure 3, with further reference to Figure 1, an exemplary communication device 70 comprises a computer system that includes a processor 80, a memory 82 including software (SW) 84, an optional user interface 86, and a transceiver 88. The processor 80 is, of Petition 870250005696, dated 01 / 24 / 2025, page 18 / 152 14 / 67 Preferably, an intelligent hardware device, for example, a central processing unit (CPU) such as one made or designed by QUALCOMM®, ARM®, Intel® Corporation, or AMD®, a microcontroller, an application-specific integrated circuit (ASIC), etc. The processor 80 may comprise multiple physical entities that may be distributed throughout the device 70. The processor 80 may be at least one processor or multiple processors (including multi-core processors). The memory 82 may include random access memory (RAM) and / or read-only memory (ROM). The memory 82 is a non-transient processor-readable storage medium that stores the software 84 which is processor-readable, executable software code containing instructions that are configured to, when executed, cause the processor 80 to perform the various functions described in this document.The description may refer only to processor 80 or to device 70 that performs the functions, but this includes other deployments such as where processor 80 executes software and / or firmware. Software 84 may not be directly executable by processor 80 and instead may be configured to, for example, when compiled and executed, cause processor 80 to perform the functions. Regardless of whether compilation is required or not, software 84 contains the instructions to cause processor 80 to perform the functions. Processor 80 is communicatively coupled to memory 82. Processor 80 in combination with memory 82, user interface 86 (as appropriate), and / or transceiver 88 provides a means to perform functions as described herein. Petition 870250005696, dated 01 / 24 / 2025, page 19 / 152 15 / 67 document, for example, means for generating communications with device attributes and causing transceiver 88 to wirelessly transmit these communications from device 70, means for receiving communications from other devices, means for transmitting communications to other devices including retransmitting at least portions of received communications (e.g., forwarding / sending portions of received communications), and means for determining various information such as the position of device 70, the relative distance of device 70 to another device, the angle of arrival of a signal at device 70, a change in the position of another device with a static mobility situation, etc. Software 84 can be loaded into memory 82 by being downloaded via a network connection, uploaded from a magnetic disk, etc.Device 70 can be any of the devices 40 to 47 shown in Figure 2 or another device. The user interface 86 (e.g., a display and / or a microphone and speaker) is optional, for example, with the tablet-type computer 44 and the smartphone 45 including a display, a microphone and a speaker, while the garage door opener 47 does not (typically) include a display, a microphone or a speaker, although the garage door opener 47 may include a user interface of some kind, for example, user-operable switches.
[0032] Transceiver 88 is configured to wirelessly transmit communications from device 70 and receive wireless communications on device 70, for example, from devices 40 to 47, access point 24 or the Petition 870250005696, dated 01 / 24 / 2025, page 20 / 152 16 / 67 central controller 60. So, transceiver 88 includes one or more wireless communication radios. In the example shown in Figure 3, transceiver 88 optionally includes a BLUETOOTH radio 90, a Wi-Fi radio 92, and a long-term evolution (LTE) radio 94. As shown, each of the radios 90, 92, and 94 are optional, although transceiver 88 includes at least one wireless communication radio. Furthermore, one or more other types of radios may be included in device 70 in addition to or instead of radio(s) 90, 92, 94. If transceiver 88 includes more than one wireless communication radio, then transceiver 88 may receive a wireless communication using one of the wireless communication radios, and transmit (e.g., relay or forward) the communication (or a portion thereof) using a different wireless communication radio. The communication may be transmitted to another of devices 40 to 47 or to another device such as access point 24.Thus, for example, device 70 can receive a wireless communication using the BLUETOOTH radio 90, and forward the communication using the Wi-Fi radio 92 to another device that does not include a BLUETOOTH radio.
[0033] Processor 80 is configured to relay communications between devices, for example, from central controller 60 to devices 40 to 47 or from devices 40 to 47 to the central controller. For example, processor 80 can receive, via transceiver 88, a request from central controller 60 (directly or indirectly, for example, from another of the devices 40 to 47) for the location of one of the devices 40 to 47. Processor 80 can relay the Petition 870250005696, dated 01 / 24 / 2025, page 21 / 152 17 / 67 request for one or more of devices 40 to 47 within the communication range of device 70. Processor 80 is additionally configured to relay a response from any of devices 40 to 47 to the central controller 60, or to another device to respond further until the response reaches the central controller 60. The response, for example, could be a location of a target device, and the location could be a distance relative to another device, for example, from the device from which the response is received.
[0034] With reference to Figure 4, and further reference to Figure 2, an exemplary use case of a mobile user 130 in a home communication system is shown. The home communication system is shown in the context of a residence 100. The residence 100 and the devices and users within it are merely examples and are not a limitation. The residence 100 includes a kitchen 102, a living room 104, a bedroom 106 and an office 108. The home communication system includes an access point 24 and a central controller 60 which may be the same device (for example, the central controller 60 may include the access point 24). Exemplary devices within the residence 100 include a laptop-type device 12, a mobile device 16 (for example, belonging to user 130), a car 22, an oven 41, a charging station 111, a networked speaker device 112, a television 114, a smart circuit breaker 116, a game console 118 with a monitor 120. Each of the devices 12, 16, 22, 41, 111, 112, 114, 116, 118, 120 could be a device 70 and are Petition 870250005696, dated 01 / 24 / 2025, p. 22 / 152 18 / 67 configured to communicate with the central controller 60 (e.g., via access point 24). The residence 100 also includes other individuals including a spouse 132, an older child 134 and younger children 136a, 136b.
[0035] The following operational use cases are provided as examples to facilitate the explanation of location-aware intelligent event handling. The use cases are not limiting as location-aware intelligent event handling can be used in a variety of other scenarios. In one example, user 130 may arrive at the residence via car 22. At a first location 131a, user 130 exits car 22 and the car provides a message to central controller 60 to indicate that user 130 has exited car 22 (e.g., a change in status message). Central controller 60 can save the status change information with the current time.The automobile 22 can also provide information related to the time when user 130 entered the vehicle, as well as other information such as odometer data, maintenance requirements, current fuel level, and similar information associated with the ownership and maintenance of an automobile. As the user enters the kitchen 102 to greet his wife 132 at a second location 131b, the oven 41 can be configured to detect the presence of user 130 based on presence detectors inside the oven 41, or other presence detectors in the kitchen 102 communicating with the oven 41. The central controller 60 can receive an indication from the oven 41, or another presence sensor, that this is the case. Petition 870250005696, dated 01 / 24 / 2025, page 23 / 152 19 / 67 User 130 is currently in kitchen 102 and therefore stores the user's location information along with the current time. If user 130 receives a notification (e.g., an email message) while in kitchen 102, the central controller 60 can send a notification message to oven 41 or networked speaker device 112 to alert the user of the new message's arrival. The alert could be, for example, a sound, a visual display, or an audio representation of the email content (e.g., via networked speaker device 112). Wife 132 might be preparing a meal for the family and may have set a timer on the oven. 41. Oven 41 can also be configured to send a notification to one or more individuals in household 100 when the timer reaches zero (for example, a dinner bell).
[0036] User 130 may remain in the kitchen 102 and can place their mobile device 16 on a charging station 111 (e.g., to recharge the mobile device via wired or wireless / inductive technologies). The central controller 60 is configured to receive an indication from the mobile device 16 or the charging station 111 indicating that the mobile device 16 is currently located on the charging station 111 in the kitchen 102 and is currently in a charging state. User 130 can then enter the living room 104 at position 131d to spend time with the older child 134 and watch television 114. The presence detectors in the living room 104 and / or the television 114 can provide an indication to the central controller 60 that user 130 is in living room 104, and the Petition 870250005696, dated 01 / 24 / 2025, p. 24 / 152 20 / 67 Central controller 60 is configured to store the new location of user 130 with the current time. For example, television 114 may include a camera and a microphone and may be configured to perform image and voice recognition (i.e., location recognition). In one example, television 114 may be a means of obtaining image or sound data, and providing visual or acoustic information to central controller 60 for recognition processing (e.g., remote image processing). Central controller 60 previously recorded that the oldest child 134 was in living room 104 and is providing notifications regarding the oldest child 134 to television 114. User 130 may create and store notification preferences in central controller 60 to indicate that notifications regarding user 130 should not be forwarded to television 114.In one example, notification preferences set by user 130 might indicate that notifications should be sent to television 114 only when user 130 is the sole individual in living room 104. User 130 might finish their time in living room 104 and visit younger children 136a-b in bedroom 106. Presence sensors in living room 104 and / or television 114 could detect user 130's departure, and central controller 60 could be configured to record the departure time. In another example, user 130 leaving living room 104 might cause central controller 60 to activate other presence sensors to determine user 130's current location.
[0037] User 130 can continue towards room 106 to position 131 and speak to the children. Petition 870250005696, dated 01 / 24 / 2025, page 25 / 152 21 / 67 newest 136a-b. Room 106 includes the game console 118 and the monitor 120 which are configured to communicate with the central controller 60. The game console 118, the monitor 120, or other presence sensors in room 106, can detect the arrival of user 130, and the central controller 60 is configured to record the time and new location of user 130. For example, a microphone and / or camera on the game console 118 can detect user 130. Although the user If user 130 is in room 106, car 22 can send an alert to central controller 60 to indicate that one of car 22's tires is deflating (e.g., a low tire pressure alarm). User 130 can set notification preferences so that all notifications from car 22 should be forwarded to any capable device. Consequently, central controller 60 determines that user 130 is currently in room 106 and that game console 118 has the capability to display the notification. The low tire pressure alarm notification can be displayed on monitor 120, and the user can provide acknowledgment (e.g., verbal, gesture, or via an input device) upon receiving the notification. Central controller 60 can be configured to broadcast some notifications to multiple devices regardless of a user's location.For example, emergency messages such as fire detection, smoke, drain pump failure, or other personal emergencies can be simultaneously routed to multiple devices in the residence 100.
[0038] The low tire pressure notification message can instruct the user 130 to leave the room 106. Petition 870250005696, dated 01 / 24 / 2025, p. 26 / 152 22 / 67 and enter office 108 to search for local tire repair shops on laptop computer 12. The presence sensors in the office, or laptop computer 12, can provide an indication to central controller 60 that user 130 is currently located in office 108. Central controller 60 can register when user 130 leaves room 106 and when user 130 enters office 108. While user 130 is using laptop computer 12, the dinner alarm on oven 41 can reach zero and oven 41 can send a notification to central controller 60. Central controller 60 can forward the dinner alarm notification to television 114 (e.g., to alert older child 134), to game console 118 (e.g., to alert younger children 136a-b), and to laptop computer 12 (e.g., to alert user 130).In one example, oven 41 can be configured to query central controller 60 for the current locations of the oldest child 134, the younger children 136a-b and user 130, and send notifications directly to the television 114, the game console 118 and the laptop computer 12.
[0039] With reference to Figure 5, and further reference to Figure 4, an exemplary use case of a mobile device with multiple users in the home communication system is shown. In the exemplary use case depicted in Figure 5, the oldest child 134 is in residence 100 with the younger children 136a-b. In this example, the adults (e.g., user 130 and spouse 132 not shown in Figure 5) have left. Petition 870250005696, dated 01 / 24 / 2025, page 27 / 152 23 / 67 in the car 22 and are in regular communication with the older child 134 by means of notifications via a mobile device 140. The mobile device 140 was originally in the living room 104 with the older child 134, and then the central controller 60 would forward the notifications to the mobile device 140. A younger child 136b subsequently obtained the mobile device 140 and moved with it to a playroom 110 to watch a movie on the mobile device 140. The central controller 60 is configured to detect the movement of the mobile device and determine a current user of the mobile device 140. For example, the movement of the mobile device can be determined based on changes in the signal strength received between the mobile device 140 and the access point 24, the television 114 and / or the game console 118.The location of mobile device 140 can be determined based on variations for other devices in the residence 100 (e.g., RTT, RSSI, OTDOA). In one embodiment, a Visual Light Communication (VLC) system can be used to determine the current location of a device. For example, mobile device 140 can be configured to determine a change in location based on signals received from a first VLC light source 142a in the living room 104 and a second VLC light source 142b in the playroom 110. The current user of mobile device 140 can be determined based on the locations of mobile device 140 and potential users (e.g., the youngest child 136b). For example, presence sensors in the playroom 110 can detect the presence of the youngest child. Petition 870250005696, dated 01 / 24 / 2025, page 28 / 152 24 / 67 nova 136b and the position of the mobile device 140 can also be determined as in the playroom 110. In one example, a user registration credential can be used to determine a current user. The current state of the mobile device 140 such as the currently running application (e.g., a game, a social media application, a streaming media application) can be used to infer a current user. A sensor on the mobile device 140 such as a camera (e.g., image recognition) and a microphone (e.g., voice recognition) can be used to determine the current user.
[0040] The central controller 60 can be configured to determine the locations of both devices and people in the residence 100. The central controller 60 keeps a chronological record of the respective locations and can determine when a device and a user are no longer colocated. In this example, the central controller 60 determines that the mobile device 140 has moved to the playroom 110 and that the older child 134 has not left the living room 104. As a result, the central controller 60 is configured to provide future notifications regarding the older child 134 to the television 114. When adults (e.g., the user 130 and spouse 132) come into contact with the older child 134, a notification 144 can be displayed, audible, or otherwise presented on the television 114 instead of the mobile device 140.Correspondingly, if adults wish to contact younger children 136a-b, the central controller 60 can send notifications to the game console 118 and to the device. Petition 870250005696, dated 01 / 24 / 2025, p. 29 / 152 25 / 67 mobile 140, respectively.
[0041] With reference to Figure 6, and further reference to Figures 4 and 5, an exemplary use case of a static device with multiple users in a home communication system is shown. In the use case represented in Figure 6, user 130, spouse 132, eldest child 134, and younger children 136a-b are located in the living room 104 with the television 114. Sensors on the television 114 (e.g., camera, microphone) and other presence sensors in the residence 100 can be used to establish the locations of each individual. The central controller 60 is configured to maintain a chronological record of the locations of each individual. In one example, user 130 might receive a notification (e.g., based on an email / message from an external server (not shown in Figure 6)), a vehicle alarm 22, a reminder from a laptop computer 12, etc.The central controller 60 can direct the notification to one or more devices based on the preferences set by user 130. For example, user 130 can set a priority for each device to indicate a relative order in which notifications should be forwarded. The central controller 60 can initially forward the notification to mobile device 16 currently at charging station 111. The notification message from the central controller 60 can include parameters associated with how the notification should be presented (e.g., display, audio). As previously described, the central controller 60 can use the current location for user 130 and the... Petition 870250005696, dated 01 / 24 / 2025, page 30 / 152 26 / 67 mobile device 16 to determine that there is some space between user 130 and mobile device 16 (e.g., they are in neighboring rooms). The notification may include attributes to control the volume of a speaker on mobile device 16, and mobile device 16 may produce an initial notification message 146 at a higher volume (e.g., so that user 130 in living room 104 can hear it). If user 130 does not acknowledge notification message 146 within a certain time (e.g., 20 s, 40 s, 1 minute), central controller 60 may send the notification to networked speaker device 112. The networked speaker device 112 can produce an audio signal 148 at a volume level that corresponds to the distance to the user 130 based on attribute information included in the received notification message (e.g., the greater the distance, the louder the audio signal). In one example, a volume level preference might be included in the notification message. The networked speaker device 112 can be configured to receive an acknowledgment from the user 130 (e.g., via a voice command). If the user 130 does not acknowledge the audio signal 148 within a pre-set time limit, the central controller 60 can be configured to send a notification message to the television 114. Continuing the example from Figure 4, the preferences stored in the central controller 60 regarding the user 130 might indicate that notifications regarding the user 130 might not be displayed on the television 114 if other individuals are in the living room 104.In this example, central controller 60 might try to send notifications from the top of the order. Petition 870250005696, dated 01 / 24 / 2025, p. 31 / 152 Priority 27 / 67 (e.g., making additional attempts for each device), or it may send a pending notification signal to a device to indicate that an unacknowledged notification is stored in the central controller 60. The pending notification message is a specific subset of a notification message in that the pending notification message does not include the text associated with the notification. Instead, the pending notification message contains an information element (e.g., a bit, a character) to enable the user-specific icon to be displayed on one or more notification devices associated with the user's location. In one example, the pending notification signal may be sent to television 114, or other devices, and a small icon associated with user 130 may be displayed on television 114, or other devices, to instruct user 130 to retrieve the pending notification.
[0042] With reference to Figures 7A and 7B, with further reference to Figure 6, an exemplary device 150 with a multi-user notification display is shown. Devices 150 can be a display device that is generally viewed by multiple users simultaneously. For example, device 150 can be a television 114, a game console 118 with a monitor 120, or a mobile device 140. Device 150 can receive notification messages with attribute information from the central controller 60 to provide personalized notifications based on user preferences. In one example, with reference to Figure 7A, device 150 includes a display area 152 with one or more notification areas. Petition 870250005696, dated 01 / 24 / 2025, page 32 / 152 28 / 67 as an emergency notification area 154, a residence notification area 156, an icon display area 157, a first user notification area 158, a second user notification area 160, a third user notification area 162, and a fourth user notification area 164. The number and arrangement of notification areas are merely examples and without limitation as more or fewer areas may be configured in display area 152. The attributes in the notification messages received from the central controller 60, or other devices on the network, may include information associated with the intended notification recipient and / or the notification origin (e.g., sending user, sending device). Emergency notification area 154 may be a strip area through display area 152 and may be used to display notifications with an emergency attribute.For example, in a healthcare use case, a home-based medical device (e.g., meters / monitors, respiratory equipment, telehealth equipment) can be configured to communicate with the central controller 60 to provide notifications to one or more users. Emergency notifications from such devices can be received by device 150, and a corresponding notification can be displayed in the emergency notification area 154. Other emergency notifications such as weather alerts, personal disturbance alarms (e.g., medical alert devices, fault detection), and fire / security notifications can include an emergency attribute and be displayed in the emergency notification area 154. Petition 870250005696, dated 01 / 24 / 2025, p. 33 / 152 29 / 67
[0043] The residence notification area 156 is used to display notifications with a residence notification attribute. For example, residence-related devices such as ovens, refrigerators, climate control systems, drain pumps, solar cell chargers, and the like can be configured to communicate with the central controller 60. Status messages received from these devices can be forwarded to device 150 and displayed in the residence notification area 156. As illustrated in Figure 7A, the residence notification area 156 can be a strip at the bottom of the display area 152. This relative location provides an immediate visual indicator to the user that the notification refers to a home system.
[0044] Icon display area 157 may be an area on the periphery of display area 152 to present one or more small icons associated with device users 150 to instruct one or more of the users to retrieve pending notifications. In one example, each user may have an icon preference (e.g., a specific icon design, a personal avatar) that may be displayed in icon display area 157 whenever the corresponding user is co-located with device 150. In another example, a user icon may be displayed independently of the user's and device's locations. With reference to Figure 4, the central controller 60 may provide a pending notification message to multiple devices in the residence 100 based on the current location of user 130. For example, if user 130 has one or more pending notifications, the high-level device Petition 870250005696, dated 01 / 24 / 2025, page 34 / 152 Network speaker 112 can emit a user-specific ringtone or voice notification when user 130 is located in the kitchen 102 to indicate that user 130 has a pending notification. Central controller 60 can provide one or more notification messages based on user 130's current location. The notification message can instruct a device to display an icon associated with user 130 in the icon display area 157 when the user is detected at a location (e.g., on the television 114 when the user is in the living room 104, on the monitor 120 when the user enters the bedroom 106, or on the laptop computer 12 when the user enters the office 108). In one example, central controller 60 can send notifications to multiple devices in the residence 100 to activate a user-specific icon display regardless of user 130's location.
[0045] Display area 152 may include one or more notification areas to display notifications associated with individual users or user groups. For example, notifications for user 130 may be displayed in the first user notification area 158, notifications regarding spouse 132 may be displayed in the second user notification area 160, notifications regarding the eldest child 134 may be displayed in the third user notification area 162, and notifications regarding younger children 136a-b may be displayed in the fourth user notification area 164. The number, locations, and dimensions of the user notification areas may vary based on the size and capabilities of the device 150. The central controller 60 may provide Petition 870250005696, dated 01 / 24 / 2025, page 35 / 152 31 / 67 attribute information and preference information in a notification message to enable the device150 display a notification in a suitable area of the display area 152. In one example, with reference to Figure 7B, device 150 can be configured to use one or more different balloon features to display system-specific or user-specific notifications. In general, balloon features can be any geometric patterns or visual combinations that allow visual distinctions between different balloon features. Examples of different geometric patterns might include a star shape 166, an oval shape 168, a triangular shape 172, and a rectangular shape 170. Other patterns, colors, textures, fonts, icons, and audible sounds (e.g., for non-display devices) can be used. A balloon feature can be associated with a specific user, or group of users, and serves as an immediate visual or audible indicator that a notification is intended for a specific user.For example, notifications regarding the spouse 132 can be presented in a star-shaped balloon 166, notifications regarding the oldest child 134 can be presented in an oval shape 168, emergency notifications can be presented in a triangular shape. 172 and home notifications can be presented in a rectangular format 170. The formats and relative locations of the balloon features in the display area 152 are illustrative only, as other user-specific formats may be used. In one example, a combination of balloon features and notification areas can be used to provide user-specific notifications in a Petition 870250005696, dated 01 / 24 / 2025, page 36 / 152 32 / 67 multi-user device.
[0046] With reference to Figure 8, with further reference to Figures 1 to 6, an example of the central controller 60 comprises a computer system that includes a processor 180, a memory 182 that includes software (SW) 184, an optional user interface 186, and a transceiver 188 that optionally includes a BLUETOOTH (BT) radio 190, a Wi-Fi radio 192 and / or an LTE radio 194. Other types of radios may also be or are alternatively used, for example, a BLUETOOTH-Low Energy (BT-LE) radio. The processor 180 is preferably an intelligent hardware device, for example, a central processing unit (CPU) such as one made or designed by QUALCOMM®, ARM®, Intel® Corporation or AMD®, a microcontroller, an application-specific integrated circuit (ASIC), etc. Processor 180 can comprise multiple physical entities that can be distributed across the central controller 60.Memory 182 may include random access memory (RAM) and / or read-only memory (ROM). Memory 182 is a non-transient, processor-readable storage medium that stores software 184, which is processor-readable, executable software code containing instructions that are configured to, when executed, cause the processor 180 to perform the various functions described in this document. The description may refer only to the processor 180 or to the central controller 60 that performs the functions, but this includes other deployments where the processor 180 executes software and / or firmware. Software 184 may not be directly executable by the processor. Petition 870250005696, dated 01 / 24 / 2025, page 37 / 152 33 / 67 processor 180 and, instead, can be configured to, for example, when compiled and executed, cause processor 180 to perform the functions. Regardless of whether compilation is required or not, software 184 contains the instructions to cause processor 180 to perform the functions. Processor 180 is communicatively coupled to memory 182. Processor 180 in combination with memory 182, user interface 86 (as appropriate), and / or transceiver 188 provides means to perform functions as described herein, for example, means to receive a notification message regarding a user, means to determine a user's location, means to determine a notification device, means to determine one or more notification preferences associated with the user and one or more notification devices, and means to send an alert message based on the notification preferences.Software 184 can be loaded into memory 182 by being downloaded via a network connection, uploaded from a magnetic disk, etc. The central controller 60 is shown in Figures 2, 4 to 6 as a separate, independent device from devices 40 to 47, 112, 114, etc. 118, 120, 140, but the central controller 60 could be deployed by one or more of the devices 40 to 47, 112, 114, 118, 120, 140 and / or one or more other wireless communication devices such as the Wi-Fi router 24. The central controller 60 is preferably, though not necessarily, a (primarily) static device.
[0047] The central controller 60 can act as a repository, and tracker, for related information. Petition 870250005696, dated 01 / 24 / 2025, page 38 / 152 34 / 67 to devices 40 to 47, 112, 114, 118, 120, 140 and to users 130, 132, 134, 136a-b. For example, central controller 60 can store configuration files and / or attributes of one or more of devices 40 to 47, 112, 114, 118, 120, 140 as well as preference information regarding users 130, 132, 134, 136a-b. Central controller 60 can use this information to produce alert messages / notifications. As another example, central controller 60 can track the locations of one or more of devices 40 to 47, 112, 114, 118, 120, 140 and / or the locations of one or more of users 130, 132, 134, 136ab.
[0048] Processor 180 is configured to generate, store (via memory 182), modify, and transmit (via transceiver 188) attribute and preference values corresponding to devices 40 to 47, 112, 114, 118, 120 and users 130, 132, 134, 136a-b. Processor 180 can determine and update attributes, for example, each time processor 180 detects a possible change in an attribute (e.g., new user location, new device location, a new device within communication range, etc.). Device and user attributes and preferences may be stored by other devices, and their respective values will typically vary depending on that device.In one example, the capabilities of central controller 60 can be realized by one or more of devices 40 to 47, 112, 114, 118, 120, 140 (for example, device 70 in Figure 3), and processor 180 can store attribute values of other devices 40 to 47. Petition 870250005696, dated 01 / 24 / 2025, p. 39 / 152 35 / 67 47, 112, 114, 118, 120, 140. For example, with reference also to Figures 10A and 10B, processor 180 can generate and maintain attribute tables 220, 240 including attribute indications 222, 242 and their respective values 224, 244. Attribute table 220 includes an index 226, a start time. 228, a start time 230, a user ID 232, a user location 234, and a device ID 236. Index 226 can uniquely identify a record in table 220. Start time 228 and end time 230 contain timestamps that correspond to the time a user is at a location. User ID 232 identifies a specific user or group of users. In one embodiment, user ID 232 points to a user table (e.g., based on an index value). User location 234 identifies the current location of the user in a suitable coordinate system (e.g., ENU, LLA, common name). Device ID 236 can include information associated with a device that is reporting the user location. In one example, device ID 236 is a link (e.g., index value) to a device table.Other attribute fields associated with a user location can be included in table 220.
[0049] Table 240 includes attributes associated with the location of a mobile device. For example, Table 240 includes an index 246, a device ID 248, a departure time 250 and end time 252, a device location 254, a current user ID 258, and a state 260. Index 246 can uniquely identify a record in Table 240. The identification of Petition 870250005696, dated 01 / 24 / 2025, page 40 / 152 36 / 67 Device 248 may include information to identify a specific device. For example, the device ID may be an index value that corresponds to a device table. Start time 250 and end time 252 correspond to the time a device is in a location. Device location 254 is an indication of the device's location in a suitable coordinate system (e.g., ENU, LLA, common name). Current user 258 indicates a user or group of users who are currently using the device. Current user 258 may contain an index associated with a user table. State 260 is an indication of the current state of the device. The state may include information on current applications running on the device, an indication of whether the device is in a hibernation state, current power level, or other operational parameters to identify the current state of the device.Attributes 222, 242 and values 224, 244 are examples only; other attributes and values may be included.
[0050] Processor 180 can maintain attribute tables for devices and users currently and / or previously associated with residence 100. In one example, a user can provide preferences for one or more attributes associated with a device. With reference to Figure IOC, a table 270 includes indications of user preferences 272 and values 274. Table 270 includes an index 276, a user ID 278, a device ID 280, a priority preference value 282, a privacy preference 284, a display area preference 286, a preference of Petition 870250005696, dated 01 / 24 / 2025, page 41 / 152 37 / 67 alert style 288 and a wake-up preference 290. Index 276 uniquely identifies a record in table 270. User ID 278 and device ID 280 identify a relationship between a user (or group of users) and a device. Priority preference value 282 may contain an integer value to indicate a relative order of preference in which the device will deliver notifications to the related user. A priority preference value 282 of zero may indicate that notifications should not be forwarded to a device. Privacy preference 284 may include a Boolean value (e.g., true / false) to indicate that private notifications may be sent to the device.In one example, privacy preference 284 might include a link (e.g., index value) to a privacy rules table containing rules / restrictions for determining whether and how notifications are presented on a given device for a specific user. Display area preference 286 might indicate an area on a device display where user notifications should appear. The display area preference value 286 might be a text string or a link to a display-related options table to indicate the user's preferred notification area. Alert style preference 288 includes data pertaining to how an alert might be presented. In one example, alert style preference 288 might indicate visual aspects (e.g., balloon features), audio aspects (e.g., tones, volume, text-to-speech), or other aspects to allow each user to configure how notifications are displayed. Petition 870250005696, dated 01 / 24 / 2025, p. 42 / 152 38 / 67 are presented on a specific device. Wake-up preference 290 includes data (e.g., a Boolean value) to indicate whether a device should change its state from hibernate to wake-up upon receiving a notification. In general, user preferences in table 270 allow a device to selectively perform attributes based on a specific user. A device 70 that includes processor 80 can also be configured to generate and store attribute and preference values associated with other devices and users. In one example, a device 70 can be configured to only relay attribute and preference values to other devices on a network. User preferences 272 and corresponding values 274 are examples only of how other user preferences and values may be included based on the capabilities of the devices on a network as well as other system considerations.
[0051] Processor 180 is configured to determine and provide the positions of devices and users relative to one or more reference locations or objects, and can provide the positions in one or more formats. For example, Processor 180 can generate a position relative to a fixed location in space. A user location 234 and a device location 254 can include a value in ENU (East, North, Up) coordinates based on the common reference point (e.g., origin). In one example, locations can be provided in a Latitude, Longitude, and Altitude (LLA) format. Processor 180 can be configured to monitor the positions of devices and users in the 1000 household. The Petition 870250005696, dated 01 / 24 / 2025, page 43 / 152 Processor 180 can be configured to determine a change in a device's position based on a list of neighboring devices, ranges to neighbors, and / or an estimated position. Processor 180 can be configured to determine a user's location based on sensor input (e.g., image recognition, sound recognition, presence sensors) or user activity (e.g., activating a device, entering registration credentials). In one example, Processor 180 can infer a user based on a device's state 260. For example, state 260 might indicate one or more requests running on a device. Historical data can be used to correlate state 260 with a current user 258. Processor 180 can be configured to provide peer monitoring to detect changes in the location of one or more neighboring devices.For example, processor 180 can detect and report a change in the position of a specific neighboring device if the positions of a majority of neighboring devices remain constant while the relative position of the specific neighboring device changes. Processor 180 can report a change in the position of a specific device if the existence of the specific neighboring device in the neighbor list changes, for example, from being on the list to not being on the list, or from not being on the list to being on the list, while the ranges to other devices in the neighbor list remain the same.
[0052] The central controller 60 can store and maintain a device and user attributes and preferences in chronological order (for example, based on the times of Petition 870250005696, dated 01 / 24 / 2025, p. 44 / 152 40 / 67 departure 228, 250). The chronological information stored in tables 220, 240 can be used, as discussed in previous use cases, to facilitate the location of a user and / or a device and to provide specific notifications to the user. The central controller 60 is configured to produce and maintain (e.g., update) device and user attribute and preference information including tables 220, 240, 270. In other examples, the central controller 60 can be configured to produce and maintain device and user data with a different set of fields (e.g., more fields, fewer fields, different fields, or a combination thereof). The central controller 60, and in particular the transceiver 188 and the processor 180, are configured to receive information to occupy tables 220, 240, 270 from devices 40 to 67. 47, 112, 114, 118, 120, 140. The information for the tables. 220, 240, 270 can be received directly from the device to which the information belongs, and / or from one or more devices that relay the information. Consequently, the central controller 60 can receive information regarding one or more of the devices 40 to 47, 112, 114, 118, 120, 140 through one or more of the radios. 190, 192, 194 although the device from which the information was originally sent does not include the type of radio in transceiver 188 through which controller 60 receives the information. Devices 40 to 47, 112, 114, 118, 120, 140 can send information to tables 220, 240, 270 periodically, or in response to a change in the information for one or more of the fields in tables 220, 240, 270. In addition, the central controller 60 (or device 70) Petition 870250005696, dated 01 / 24 / 2025, p. 45 / 152 41 / 67 can create an attribute entry for another device. For example, a finding device (e.g., controller 60 or device 70) can see another device that is not part of an attribute table and can generate an attribute table entry (or entries) for that device, and can transmit that attribute table entry (or entries) to one or more other devices, and / or can transmit information to one or more other devices that can generate an attribute table entry (or entries) using that information. Thus, device 70 can find a new device, generate one or more attribute table entries for the new device, and send the attribute table entry (or entries), directly or indirectly, to controller 60 for storage.Alternatively, device 70 may detect a new device, send (directly or indirectly) information related to the new device to controller 60 for generation and storage of an attribute table entry (or entries).
[0053] With reference to Figure 9, an exemplary message flow 200 for user location tracking is shown. Message flow 200 is an example of communication between networked devices and includes a controller 208 and three exemplary devices labeled as device A 202, device B 204, and device C 206. Message flow 200 is divided into three events including a device registration event 210, a user awareness and tracking event 212, and a display event. Petition 870250005696, dated 01 / 24 / 2025, page 46 / 152 42 / 67 notification and alert triggering 214. Controller 208 can be central controller 60 or a device 70. The three example devices 202, 204, 206 can include devices 40 to 47, 112, 114, 118, 120, 140. During device registration event 210, device A 202 attempts to connect to controller 208 and complete a registration process. For example, controller 208 might be part of an 802.11 network and might request authentication information from device A 202. Authentication might include a security exchange such as Wired Equivalent Privacy (WEP) and Wi-Fi Protected Access (WPA), or other security protocols. Device A 202 can complete the authentication and registration process by providing device data and user attributes to controller 208.For example, device A 202 can provide memory-stored data, including fields such as attribute and preference tables 220, 240, and 270, to controller 208. Device A 202 can be configured to provide updates to the registration information periodically, or when triggering events occur (e.g., if device A leaves the network, relocates to a new location on the network, or receives new / updated user data). Controller 208 is configured to maintain the registration information, including device and user attribute data, for each of the devices on the network.
[0054] In the user awareness and tracking event 212, devices 202, 204, and 206 are configured to provide information related to user locations to the controller 208. For example, Petition 870250005696, dated 01 / 24 / 2025, page 47 / 152 43 / 67 The C 206 device may include sensor information such as facial or voice recognition to determine a user's location. Other presence sensors may be operationally coupled to the C 208 device to provide an indication of a user's location. In one example, a user input (e.g., registration process) may be used to determine a user's location. The C 206 device may be configured to record user identification information 232, user location information 234, and a departure time 228 in an attribute table 220. The attribute table, or the corresponding data fields, may be provided to the controller 208 via a wireless data exchange. The controller 208 is configured to store the attribute information in one or more tables and provide the information to other devices on the network.
[0055] In the notification display and alert triggering event 214, a device on the network can send a notification to another device directly or through controller 208. For example, device B 204 might have a notification for a user and could send a query to controller 208 to request the user's location. The query sent by device B 204 might include a user ID, and controller 208 is configured to determine a location, a nearby device, and any nearby device and user attributes included in device and attribute tables 220, 240, 270. Controller 208 generates an alert message that includes attributes and preferences associated with the user's location. In a Petition 870250005696, dated 01 / 24 / 2025, page 48 / 152 44 / 67 For example, the alert message may include one or more 802.11 MAC (Matrix Access Control) frames to carry attribute and preference information. In one example, the alert message may include the user's location based on ENU or LLA coordinates. Location information may also be based on a common name in an area (e.g., kitchen, living room, bedroom, office, etc.). Controller 208 sends the alert message to device B 204, which may then send a notification to one or more devices based on the attribute information in the alert message. For example, device B 204 may send a notification to a user directly to device C 206. In one example, device B may send the notification to controller 208, and controller 208 may forward the notification to device C in an alert message (i.e., based on attribute and preference information).In one embodiment, the notification sent to device C 206 may require user acknowledgment (e.g., a receipt confirmation) via an input device on device C 206. For example, device C 206 may have a touch-sensitive display or microphone or other sensor configured to receive user input. Device C 206 may send an acknowledgment message to device B 204 or controller 208.
[0056] With reference to Figure 11, with further reference to Figures 1 to 10C, a 300 method for sending an alert message includes the stages shown. The 300 method is, however, an example only and not a limiting one. The 300 method can be modified, for example, by Petition 870250005696, dated 01 / 24 / 2025, page 49 / 152 45 / 67 having stages added, removed, rearranged, combined, performed concurrently, and / or having stages divided into multiple stages.
[0057] In stage 302, the central controller A device 60, or another communication device such as a device 70, can receive a notification message for a user. The notification message can originate from an external server 30 via the network 28 (e.g., a message server, email server, voice or video communications server) or from another device on a network (e.g., devices 40 to 47, 112, 114, 118, 120, 140). The notification includes an indication of a user or group of users such as email address, phone number, user identification number, username, or other data field, and the central controller 60 (or other communication device) is configured to query one or more data structures to determine attributes and preferences associated with the user. In one example, the notification message might include information to be forwarded to a user.The notification message may be a query from a device to obtain attributes and preferences associated with the user without including the information to be forwarded to the user.
[0058] At stage 304, the central controller 60 or other communication device determines the user's location. The user's location can be based on at least one presence sensor. In one example, the central controller 60 can query a data structure such as attribute table 220 based on user ID 232 to determine a user location 234 based on Petition 870250005696, dated 01 / 24 / 2025, page 50 / 152 46 / 67 in the previous sensor information. Attribute table 220 may include user location information in chronological order (e.g., based on departure time 228 or end time 230), and central controller 60 may select the most recent entry as the user's current location. In one example, the location information may become stable (e.g., the difference between the current time and the most recent departure time 228 exceeds a threshold value), and central controller 60 may attempt to perform a user search function on the network. A user search function may include communications from central controller 60 to one or more devices 40 to 47, 112, 114, 118, 120, 140 with instructions to activate a presence sensor associated with the device. For example, the game console 118 or television 114 may include a camera, and the user search function may instruct the device to obtain an image with the camera. A device may perform local image processing, or send the image to the central controller 60 for image recognition processing to determine if the user is in the image. In one example, the user search function may include using the central controller 60 to contact a remote server to obtain user location information (e.g., Google Geolocation, Life360, etc.). In another example, the user location may be inferred based on historical data in the central controller 60 (e.g., attribute tables 220, 240).
[0059] At stage 306, the central controller 60 or other communication device determines one or more notification devices based on the location of Petition 870250005696, dated 01 / 24 / 2025, p. 51 / 152 47 / 67 user. A user location attribute determined in stage 304 can be used to select one or more devices based on the current device location. For example, central controller 60 can query attribute table 240 based on user location 234 compared to device location 254. Query parameters can include a range of functions so that devices within a range limit (e.g., 1 m, 3 m, 10 m) of the user location can be selected. In one example, user and device locations can correspond to space ID values (e.g., living room 104, bedroom 106, etc.), and the query can select devices based on the space ID value.In another example, one or more devices can be determined independently of the user location value 234 (for example, one or more devices can be determined based on other user preference values).
[0060] At stage 308, the central controller 60 or other communication device generates an alert message based on one or more notification preferences associated with the user and one or more notification devices. The central controller 60 can consult a preference table 270 based on the user ID 278 and one or more device ID values 280 to determine one or more preference values (e.g., priority preference value 282, privacy preference 284, display area preference 286, display style preference 288, wake-up preference 290, and others). The controller Petition 870250005696, dated 01 / 24 / 2025, page 52 / 152 48 / 67 central 60 can generate one or more alert messages based on preference values. In one example, the central controller uses data frames in existing wireless messaging protocols (e.g., 802.11, BT-LE) to generate alert messages based on one or more preference values. The data frames can be populated with the appropriate preference values. The alert message can also contain one or more attributes from attribute tables 220, 240. With reference to the use cases described in Figures 4 to 6, a device can provide a notification based on a received alert message. For example, television 114 can display a user notification in a user notification area based on the display area preference value 286 in the alert message.Networked speaker device 112 can present an audio notification based on a user preference value, such that the volume of the audio notification is based on a distance between the user and the device (e.g., user location 234 and device location 254). If multiple device IDs 280 are selected, central controller 60 can generate multiple alert messages based on priority preference values 282, or other rules and restrictions available to central controller 60.
[0061] At stage 310, the central controller 60 or other communication device sends an alert message to at least one of the one or more notification devices based on notification preferences. The central controller 60 may use network transport protocols associated with the devices in system 10. Petition 870250005696, dated 01 / 24 / 2025, page 53 / 152 49 / 67 to provide an alert message containing the attribute and preference values for the appropriate devices. The central controller 60 can send the alert message based on the user's location (e.g., to the nearest device), in an order based on a preference value (e.g., priority), based on device capabilities (e.g., display / audio), or combinations thereof. The central controller 60 can choose not to send an alert message based on preference values (e.g., privacy preference value 284). The alert message can be a pending notification message configured to activate a specific user icon on a device.In one example, central controller 60 can send the alert message to a requesting device (for example, device B 204 in Figure 9), and the requesting device can generate and send a notification message to another device based on the attributes and preferences included in the alert message received from central controller 60. In one example, the attribute and preference tables 220, 240,... 270 can exist in one or more other communication devices on a network, and then the number of operations performed by the central controller 60 can be reduced or eliminated.
[0062] With reference to Figure 12, with further reference to Figures 1 to 10C, a 320 method that sends an alert message to a notification device includes the stages shown. The 320 method is, however, an example only and not a limiting one. The 320 method can be modified, for example, by having stages added, Petition 870250005696, dated 01 / 24 / 2025, page 54 / 152 50 / 67 removed, rearranged, combined, performed concurrently, and / or having stages divided into multiple stages.
[0063] At stage 322, the central controller 60 receives a notification for a user. The notification message may originate from an external server 30 via the network 28 (e.g., a message server, email server, voice or video communications server, a medical alert system) or from another device on a network (e.g., devices 40 to 47, 112, 114, 118, 120, 140). The notification includes an indication of a user or group of users such as an email address, phone number, user identification number, username, or other data field. The notification message may include one or more fields indicating that the notification is of an emergency situation. For example, the notification may originate from a medical alert system associated with elderly people related to a user, and an emergency situation may be inferred based on the originator's address (e.g., the medical alert system).In another example, a control system in the residence (e.g., drain pump, fire detector, CO2 monitor) can be configured to send a notification to a user with an emergency field. In stage 324, the central controller 60 is configured to determine if the notification message is an emergency. The decision can be based on the origin of the notification message, an emergency field implicit in the notification message, or other criteria associated with the information in the notification message.
[0064] At stage 326, the central controller 60 Petition 870250005696, dated 01 / 24 / 2025, page 55 / 152 51 / 67 determines one or more emergency devices associated with the user. In one example, central controller 60 can consult preference table 270 with user ID 278 and priority preference value 282 to determine one or more devices. In a deployment, priority preference value 282 can include one or more characters (e.g., the letter Έ, ' or other character) or other information to signify the user's desire for the device to be used for emergency notifications. In another example, central controller 60 can determine that all devices associated with user ID 278 will receive an emergency alert message.
[0065] At stage 328, central controller 60 sends an alert message to one or more emergency devices. Central controller 60 can use network transport protocols associated with devices in system 10 to provide an alert message to the emergency devices. Central controller 60 can send the alert message to multiple devices, and multiple times (e.g., repeatedly) until acknowledgment is received from the user. Central controller 60 can also send pending notification messages to one or more devices that are associated with the user but are not necessarily identified as an emergency device.
[0066] At stage 329, central controller 60 determines the user's location. In one example, central controller 60 might query a data structure such as attribute table 220 based on user ID 232 to determine a location attribute of Petition 870250005696, dated 01 / 24 / 2025, page 56 / 152 52 / 67 user 234. Attribute table 220 may include user location attributes in chronological order (e.g., based on departure time 228 or end time 230), and central controller 60 may select the most recent entry as the user's current location. In one embodiment, the user location may be inferred based on historical data in central controller 60 (e.g., attribute tables 220, 240). For example, central controller 60 may query attribute table 220 based on the current time (e.g., compared to departure time 228) and user ID 232, and the query results may return one or more device ID values 236, which may be linked to device locations 254 in attribute table 240. In this example, the most popular device locations 254 (e.g., high count return) may be used as the user's current location.Other devices and sensors in the residence 100 can be used to determine a user's location. For example, the smart circuit breaker 116 can provide electrical current information (e.g., amperes per circuit) to the central controller 60, and the location of one or more users can be inferred based on areas in the residence 100 as a function of relative changes in energy consumption (i.e., higher energy consumption may imply that more devices are in use by users in an area).
[0067] At stage 330, central controller 60 determines one or more notification devices based on the user's location, where each notification device is associated with one or more attributes of Petition 870250005696, dated 01 / 24 / 2025, page 57 / 152 53 / 67 device. The user location attribute determined in stage 329 can be used to select one or more potential notification devices based on the user's current location compared to the devices' location attributes. For example, central controller 60 can query attribute table 240 based on user location 234 compared to device location 254. Query parameters can include a range of functions so that devices within a range limit (e.g., 15 m) of the user's location can be selected. In one example, other rules or restrictions on central controller 60 or other network devices can be used to determine one or more notification devices.For example, a rules engine can be programmed to return a list of devices based on a space identification value attribute (e.g., "living room," "kitchen," "office," etc.). In this example, the rules engine can select devices in the same space or adjacent spaces that are close to the user.
[0068] At stage 332, central controller 60 determines one or more notification preferences associated with the user. Central controller 60 can consult a preference table 270 based on user ID 278 and one or more device ID values 280 to determine one or more notification preference values (e.g., priority preference value 282, privacy preference 284, display area preference 286, display style preference 288, wake-up preference 290, and Petition 870250005696, dated 01 / 24 / 2025, page 58 / 152 54 / 67 others). Central controller 60 can generate one or more alert messages based on notification preference values. For example, central controller 60 can generate an alert message for display on game console 118. In another example, central controller 60 can generate an alert message to be forwarded to another device by game console 118. In this example, younger children 136a-b can instruct game console 118 to send a message to older child 134 who can be notified via television 114. Game console 118 can query central controller 60 for information related to the location of older child 134, and central controller 60 can generate an alert message containing attributes and preferences associated with older child 134 (e.g., user ID 278) and television 114 (e.g., device ID 280).In another example, attribute and preference tables 220, 240, 270 may persist on game console 118 (and / or other devices), and the alert message generated on the central controller 60 includes only a location attribute for the oldest child 134.
[0069] At stage 334, central controller 60 sends an alert message to one or more notification devices based on notification preferences and device attributes. Central controller 60 can use MAC data frames, or other data fields, in a wireless messaging protocol to generate and then send alert messages containing one or more attribute and preference values (e.g., values from attribute and preference tables 220, 240, 270). The message of Petition 870250005696, dated 01 / 24 / 2025, p. 59 / 152 55 / 67 alert can, for example, provide instructions to enable the game console 118 and / or television 114 to display a user notification in a user notification area based on the display area preference value 286 in the alert message. The automobile 22 can be configured to present an audio notification based on a user preference value (e.g., text-to-speech / style voice preferences). If multiple device IDs 280 are selected, the central controller 60 can generate multiple alert messages based on priority preference values 282, or other rules and restrictions available to the central controller 60.
[0070] With reference to Figure 13A, with further reference to Figures 1 to 10C, a 340 method of sending an alert message with a notification preference includes the stages shown. The 340 method is, however, an example only and not a limiting one. The 340 method can be modified, for example, by having stages added, removed, rearranged, combined, performed concurrently, and / or having stages divided into multiple stages.
[0071] At stage 342, the central controller 60 receives a notification from an alert device. The alert device can be a device 70 such as a household appliance (e.g., dishwasher 40, oven 41, toaster 42, refrigerator 43), or another device in the residence 100 (e.g., charging station 111, automobile 22, game console 118, mobile device 140). The alert device can be a remote server 30 which is Petition 870250005696, dated 01 / 24 / 2025, page 60 / 152 56 / 67 operationally connected to the central controller 60 via a network 28. A remote server 30 may include an email / messaging server, medical alert system, security system, financial services, or other applications configured to provide notifications to one or more users. The central controller 60 may be configured to receive and process the notification in a first-in, first-out order of operation. The central controller 60 may store the received notification in a file system for subsequent processing based on pre-established rules (e.g., concurrent notifications may be prioritized based on alert device types).
[0072] In stage 344, central controller 60 determines a notification receiver associated with the alert device. The notification receiver can be a single user or a group of users and can be identified by information in the notification (e.g., email address(es), username(s), phone number(s)). Central controller 60 is configured to parse the user information from the received notification. In one example, central controller 60 might include a lookup table that includes potential alert device types and corresponding user information. For example, devices associated with house operation 100 (e.g., appliances, air handling, drainage pumps, etc.) might be associated with wife 132 so that wife 132 is the notification receiver for all notifications received from that alert device. Petition 870250005696, dated 01 / 24 / 2025, page 61 / 152 57 / 67
[0073] At stage 346, central controller 60 determines a location and one or more notification preferences associated with the notification receiver. Central controller 60 can query attribute and preference tables 220, 270 based on user ID values 234, 278 and departure time value 228. The query results may include one or more potential user locations 234. At stage 348, the central controller determines a notification device based on the location and one or more notification preferences. The query results at stage 346 may include a subset of potential notification devices (e.g., the union of records including device ID values 236, 280 and user IDs 232, 278), and the corresponding preferences from preference table 270.The subset of potential notification devices can be further narrowed based on preference values (e.g., priority preference value 282, privacy preference 284, and other restrictions). In one example, priority preference value 282 might include a value indicating that a matching device should receive all notifications (e.g., regardless of the user's location). Conversely, priority preference value 282 might indicate that a device should not receive an alert message even if the device is colocated with (e.g., near) the user. Other restrictions can be placed on query results based on the content of the received notification and the capabilities of the notification devices. Petition 870250005696, dated 01 / 24 / 2025, page 62 / 152 58 / 67 potentials. The central controller 60 can generate one or more alert messages based on the notification device, or devices, determined in stage 348. The alert messages can use a suitable network protocol (e.g., Wi-Fi, Bluetooth) based on the respective capabilities of the notification devices.
[0074] At stage 350, central controller 60 sends an alert message to the notification device, where the alert message includes an indication of at least one notification preference and the alert device. Central controller 60 may use network transport protocols associated with the devices in the system to provide an alert message containing information associated with the attribute and preference values determined at stage 346. If more than one notification device is determined at stage 348, central controller 60 may send alert messages based on the user's location (e.g., to the nearest device), in an order based on a preference value (e.g., priority), based on the device's capabilities (e.g., display / audio), or combinations thereof. The alert message includes an indication of the alert device.For example, with reference to Figure 7B, if the alert device is a drain pump, the alert message will include information to enable the television 114 (or other devices) to display a balloon feature such as the triangular shape 172, with notification text to indicate a “Drain pump malfunction”. The balloon feature can be based on a display style preference value 288 and the text “drain pump”. Petition 870250005696, dated 01 / 24 / 2025, page 63 / 152 59 / 67 drainage” can be based on the notification received in stage 342. The central controller 60 can also configure the alert message to be a pending notification message configured to activate a user-specific icon on a device so that the icon format is based on the alert device (e.g., household appliances have triangular icons, received messages have envelope icons, medical alerts have red cross icons, etc.).
[0075] With reference to Figure 13B, with further reference to Figures 1 to 10C, a 360 method of receiving an alert message with a notification preference includes the stages shown. The 360 method is, however, an example only and not a limiting one. The 360 method can be modified, for example, by having stages added, removed, rearranged, combined, performed concurrently, and / or having stages divided into multiple stages.
[0076] At stage 362, a device 70 receives an alert message including a user indication and an indication of at least one notification preference. Device 70 may receive the alert message from the central controller 60 or another device on a network. The alert message may be included in network transport protocols associated with other devices on the network (e.g., Wi-Fi, Bluetooth) and may contain user-associated information from attribute and preference tables 220, 270. For example, with reference to Figures 4 and 7A, television 114 may receive an alert message for user 130 that should be displayed in the first area of Petition 870250005696, dated 01 / 24 / 2025, page 64 / 152 60 / 67 User notification 158. The alert message may include an indication of user ID 278 (e.g., corresponding to user 130) and an indication of display area preference 286. Other attribute and preference values may be included in the alert message. In another example, network speaker device 112 may receive an alert message indicating a notification for spouse 132 (i.e., the user's indication) that should be presented as a speech message via a text-to-speech process (i.e., a notification preference). Other notification preferences for other devices may also be used.
[0077] In stage 364, device 70 displays the alert message based on the user's indication and the indication of at least one notification preference. Continuing the examples above, television 114 may display a notification based on the alert message in the designated user notification area (e.g., the first user notification area 158). Television 114 may include additional rules and restrictions based on the received attributes and preferences. For example, television 114 may use the user's indication to execute a routine to determine if there are any other individuals in living room 104 and then not display the notification if other individuals are present. That is, user 130 may have enabled a preference on television 114 to hide all messages if others are present in living room 104. In this example, the television may display a pending notification icon associated with Petition 870250005696, dated 01 / 24 / 2025, page 65 / 152 61 / 67 User indication in the icon display area 157 instead of being present in the notification in the first user notification area 158. A network speaker device 112 such as Amazon ECHO can be configured to use user indication to announce the user's name when the alert message is received. The notification preference in the alert message can configure the network speaker device 112 to request verbal consent from the user before presenting a text-to-speech version of the alert message. Other device settings and capabilities can be enabled based on the content of the received alert message.
[0078] Other examples and other deployments are within the scope and spirit of the disclosure and the appended claims. For example, due to the nature of software and computers, the functions described above may be deployed using software running on a processor, hardware, firmware, physical connections, or a combination of any of these. Resources that deploy functions may also be physically located in multiple locations, including being distributed so that portions of the functions are deployed in different physical locations.
[0079] As used in this document, an indication that a device is configured to perform a defined function means that the device contains suitable equipment (e.g., circuitry, mechanical device(s), hardware, software (e.g., processor-readable instructions), firmware, etc.) to perform the defined function. That is, the device contains the equipment that is capable of performing the Petition 870250005696, dated 01 / 24 / 2025, page 66 / 152 62 / 67 defined function, for example, with the device itself that was designed and made to perform the function, or that was manufactured in such a way that the device includes the equipment that was designed and made to perform the function. An indication that processor-readable instructions are configured to cause a processor to perform the functions means that the processor-readable instructions contain instructions that when executed by a processor (after compilation as appropriate) will result in the functions that are performed.
[0080] Also, as used in this document, or as used in a list of items prefaced by at least one of” or prefaced by one or more of” indicates a disjunctive list such that, for example, a list of at least one of A, B, or C, or a list of one or more of A, B, or C means A or B or C or AB or AC or BC or ABC (that is, A and B and C), or combinations with more than one feature (e.g., AA, AAB, ABBC, etc.).
[0081] As used in this document, unless defined otherwise, a statement that a function or operation is based on an item or condition means that the function or operation based on the defined item or condition may be based on one or more items and / or conditions in addition to the defined item or condition.
[0082] Furthermore, an indication that information is sent or transmitted, or a definition of sending or transmitting information, to an entity does not require the completion of the communication. Such indications or definitions include situations where the information is Petition 870250005696, dated 01 / 24 / 2025, page 67 / 152 63 / 67 conducted from a sending entity, but not reaching the intended recipient of the information. The intended recipient, even if not currently receiving the information, can still be referred to as a receiving entity, for example, a receiving execution environment. Furthermore, an entity that is configured to send or transmit information to an intended recipient is not required to be configured to complete the distribution of the information to the intended recipient. For example, the entity may provide the information, with an indication of the intended recipient, to another entity that is capable of forwarding the information along with an indication of the intended recipient.
[0083] A wireless communication system is one in which communications are conducted wirelessly, that is, by means of electromagnetic and / or acoustic waves that propagate through atmospheric space rather than through a wired connection or other physical connection. A wireless communication network may not have all communications transmitted wirelessly, but it is configured to have at least some communications transmitted wirelessly. Furthermore, a wireless communication device can communicate through one or more wired connections as well as through one or more wireless connections.
[0084] Substantial variations can be made according to specific requirements. For example, custom hardware can also be used and / or specific elements can be deployed in hardware, software (including portable software, such as applets, Petition 870250005696, dated 01 / 24 / 2025, page 68 / 152 64 / 67 etc.), or both. Furthermore, connection to other computing devices as network input / output devices can be employed.
[0085] The terms “machine-readable media” and “computer-readable media,” as used herein, refer to any medium that participates in providing data that causes a machine to operate in a specific manner. With the use of a computer system, various computer-readable media may be involved in providing instructions / code to the processor (or processors) for execution and / or may be used to store and / or transport such instructions / code (e.g., as signals). In many deployments, a computer-readable medium is a physical and / or tangible storage medium. Such media may take any form, including, but not limited to, non-volatile and volatile media. Non-volatile media include, for example, optical and / or magnetic disks. Volatile media include, without limitation, dynamic memory.
[0086] Common forms of physical and / or tangible computer-readable media include, for example, a floppy disk, a floppy disk, a hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, punched cards, paper tape, any other physical medium with hole patterns, a RAM, a PROM, an EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read instructions and / or code.
[0087] Various forms of media readable by Petition 870250005696, dated 01 / 24 / 2025, page 69 / 152 65 / 67 computers may be involved in transporting one or more sequences of one or more instructions to one or more processors for execution. Merely by way of example, instructions may initially be transported on a magnetic disk and / or optical disk of a remote computer. A remote computer may load the instructions into its dynamic memory and send the instructions as signals through a transmission medium to be received and / or executed by a computer system.
[0088] The methods, systems, and devices discussed above are examples. The various configurations may omit, replace, or add various procedures or components as appropriate. For example, in alternative configurations, methods may be performed in a different order than described, and various steps may be added, omitted, or combined. Also, the features described in relation to the particular configurations may be combined in various other configurations. The different aspects and elements of the configurations may be combined in a similar manner. Also, the technology involved, and therefore many of the elements are illustrative and do not limit the scope of the disclosure or claims.
[0089] Specific details are given in the description to provide a complete understanding of the exemplary configurations (including deployments). However, the configurations can be practiced without these specific details. For example, well-known circuits, processes, algorithms, structures, and techniques have been shown without unnecessary details in order to avoid obscuring the configurations. This description provides Petition 870250005696, dated 01 / 24 / 2025, page 70 / 152 66 / 67 configurations are illustrative only and do not limit the scope, applicability, or configurations of the claims. Instead, the preceding description of the configurations provides a description for deploying the techniques described. Various changes can be made to the function and arrangement of the elements without departing from the spirit or scope of the disclosure.
[0090] Also, configurations can be described as a process that is depicted as a flowchart or block diagram. Although each may describe the operations as sequential processing, many of the operations may be performed in parallel or simultaneously. Furthermore, the order of operations can be rearranged. A process may have additional stages or functions not included in the Figure. Moreover, examples of methods can be implemented via hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware, or microcode, the program code or code segments to perform the tasks can be stored on a non-transient, computer-readable medium such as storage. Processors can perform the described tasks.
[0091] Components, functional or otherwise, shown in the Figures and / or discussed in this document as being connected or communicating with each other are communicatively coupled. That is, they can be directly or indirectly connected to enable communication between them. Petition 870250005696, dated 01 / 24 / 2025, page 71 / 152 67 / 67
[0092] The fact that various configurations, modifications, alternative constructions, and equivalents have been described as examples may be used without departing from the disclosure. For example, the above elements may be components of a larger system, in which other rules may take precedence over, or may otherwise modify, the application of the invention. Also, numerous operations may be performed before, during, or after the above elements are considered. Consequently, the above description is not limited to the scope of the claims.
[0093] Moreover, more than one invention may be revealed. Petition 870250005696, dated 01 / 24 / 2025, page 72 / 152
Claims
1 / 4 CLAIMS 1. A method for sending an alert message, characterized in that it comprises: receiving (302), on a communication device, a notification message for a user; determining (304), through the communication device, a user's location, wherein the determination of the user's location includes performing a user search function, wherein the user search function includes communications with one or more devices with instructions to obtain an image and determine if the user is in the image; determining (306), through the communication device, one or more notification devices based on the user's location; generating (308), through the communication device, the alert message based on one or more notification preferences associated with the user and the one or more notification devices;and send (310), through the communication device, the alert message to at least one of the one or more notification devices based on the one or more notification preferences.; 2. A method according to claim 1, characterized in that the alert message includes an indication of one or more notification preferences.
3. Method according to claim 1, characterized in that the communication device is a central controller.
4. Method, according to claim 3, characterized in that the determination of the user's location includes providing a user identification associated with the user to the central controller and receiving an indication of the user's location from the central controller.
5. A method according to claim 1, characterized in that at least one of one or more notification devices is configured to receive the alert message from a second notification device.
6. A method according to claim 1, characterized in that the alert message is a pending notification message that includes information configured to enable at least one of one or more notification devices to display an icon associated with the user.
7. A method according to claim 1, characterized in that one or more notification preferences include a privacy preference that indicates conditions under which a receiving notification device that receives the alert message may display the alert message.
8. A method according to claim 1, characterized in that one or more notification preferences include a display area preference that indicates an area on a display where a receiving notification device that receives the alert message will display the alert message.
9. A method according to claim 1, characterized in that one or more notification preferences include a volume level preference that indicates a volume at which a receiving notification device that receives the alert message will display the alert message.
10. Method, according to claim 1, characterized in that the alert message is a pending notification message that includes information configured to enable at least one of the one or more notification devices to display an icon associated with the user.
11. Device (40-47, 60, 112, 114, 118, 120, 140) for providing an alert message to a user, characterized in that it comprises: at least one processor configured to: receive a notification for the user; determine a user's location, wherein, to determine the user's location, at least one processor is configured to perform a user search function and wherein the user search function includes communications with one or more devices with instructions to obtain an image and determine whether the user is in the image; determine one or more notification devices based on the user's location; determine one or more notification preferences associated with the user and the one or more notification devices; generate the alert message for at least one of the one or more notification devices based on the one or more notification preferences;and a transceiver, communicatively coupled to at least one processor, configured to wirelessly transmit the alert message from the device.
12. Device according to claim 11, characterized in that one or more notification preferences include a privacy preference indicating conditions under which a receiving notification device that receives the alert message may display the alert message. Petition 870250005696, dated 24 / 01 / 2025, pp. 142 / 152 4 / 4 13. Device according to claim 11, characterized in that one or more notification preferences include a display area preference that indicates an area on a display where a receiving notification device that receives the alert message will display the alert message.
14. Device according to claim 11, characterized in that one or more notification preferences include a volume level preference indicating a volume at which a receiving notification device that receives the alert message will display the alert message.
15. Device according to claim 11, characterized in that the alert message is a pending notification message that includes information configured to enable at least one of one or more notification devices to display an icon associated with the user.
16. Device according to claim 11, characterized in that at least one processor is configured to receive information from at least one presence sensor and determine the user's location based at least in part on the information received from at least one presence sensor.
17. Device according to claim 11, characterized in that at least one processor is configured to receive an indication of the user's location from one or more notification devices.
18. Computer-readable memory characterized in that it comprises instructions stored therein, the instructions being executable by a computer to perform the method as defined in any one of claims 1 to 10. Petition 870250005696, dated 01 / 24 / 2025, pp. 143 / 152