The various aspects and embodiments described herein generally relate to telecommunications, and more particularly, but not exclusively to a notification system for a mobile device.
The Internet is a global system of interconnected computers and computer networks that use a standard Internet protocol suite (e.g., the Transmission Control Protocol (TCP) and Internet Protocol (IP)) to communicate with each other. The Internet of Things (IoT) is based on the idea that everyday objects, not just computers and computer networks, can be readable, recognizable, locatable, addressable, and controllable via an IoT communications network (e.g., an ad-hoc system or the Internet).
A number of market trends are driving development of IoT devices. For example, increasing energy costs are driving governments' strategic investments in smart grids and support for future consumption, such as for electric vehicles and public charging stations. Increasing health care costs and aging populations are driving development for remote/connected health care and fitness services. A technological revolution in the home is driving development for new “smart” services, including consolidation by service providers marketing ‘N’ play (e.g., data, voice, video, security, energy management, etc.) and expanding home networks. Buildings are getting smarter and more convenient as a means to reduce operational costs for enterprise facilities.
There are a number of key applications for the IoT. For example, in the area of smart grids and energy management, utility companies can optimize delivery of energy to homes and businesses while customers can better manage energy usage. In the area of home and building automation, smart homes and buildings can have centralized control over virtually any device or system in the home or office, from appliances to plug-in electric vehicle (PEV) security systems. In the field of asset tracking, enterprises, hospitals, factories, and other large organizations can accurately track the locations of high-value equipment, patients, vehicles, and so on. In the area of health and wellness, doctors can remotely monitor patients' health while people can track the progress of fitness routines.
As such, in the near future, increasing development in IoT technologies will lead to numerous IoT devices surrounding a user at home, in vehicles, at work, and many other locations. Due at least in part to the potentially large number of heterogeneous IoT devices and other physical objects that may be in use within a controlled IoT network, which may interact with one another and/or be used in many different ways, well-defined and reliable communication interfaces are generally needed to connect the various heterogeneous IoT devices such that the various heterogeneous IoT devices can be appropriately configured, managed, and communicate with one another to exchange information.
Furthermore, users are increasingly relying upon various IoT devices to store, track, receive, and update various types of information and handle various types of tasks. For example, many users rely upon computing devices to provide them with notifications of incoming communications, news, and other such information. Accordingly, many IoT devices, such as a smartphone include a notification system. The notification system is a combination of software and hardware that provides a means of alerting a user of the smartphone. The notification system commonly shows activity related to an account or activity related to a specific application installed on the smartphone. These reminders and notifications typically come in the form of an alert, such as an audible beep, tone, or jingle, and a visual indicator, such as a flashing light or a banner with text displayed on a display screen.
With the voluminous number of applications that are often installed on a smartphone, push messages, promotions, offers, updates and so on for each of these applications installed on a smartphone makes it difficult for the user to segregate and follow the important notifications from the not-so-important ones. For example, a notification may be generated alerting the user to an interesting news item or an editor's article, but the user might not be able to read the entire page at that time because he/she is caught up in a meeting when the headline notification popped up.
Even still, with an increasing number of diverse and multi-functional messaging applications and with the increasing number of users on each of these, it is often difficult to keep track of and to reply to all the messages received over various applications. Even still, working professionals quite generally have multiple mailboxes, but with busy work schedules, personal emails, even though important, may be ignored. For example, written replies—messages or mails—are highly prone to be neglected because, unlike phone calls—where ringing impels a user to pick calls—people are usually not organized or prompt with text replies.
The following presents a simplified summary relating to one or more aspects and/or embodiments disclosed herein. As such, the following summary should not be considered an extensive overview relating to all contemplated aspects and/or embodiments, nor should the following summary be regarded to identify key or critical elements relating to all contemplated aspects and/or embodiments or to delineate the scope associated with any particular aspect and/or embodiment. Accordingly, the following summary has the sole purpose to present certain concepts relating to one or more aspects and/or embodiments relating to the mechanisms disclosed herein in a simplified form to precede the detailed description presented below.
According to one aspect, a method includes maintaining a notification system of a mobile device. The notification system is configured to receive a plurality of notifications generated by a plurality of applications of the mobile device. The notifications are displayed via a notification system user interface that is configured to provide a remind option for each notification. A first user input is received indicating that a user has selected the remind option for a notification, where in response thereto a device selection option is provided that displays information identifying one or more other devices on which to provide a reminder for the notification. A second user input is then received indicating that the user has selected at least one of the one or more other devices, where the mobile device then communicates with the at least one other device to configure the at least one other device to provide the reminder for the notification.
According to another aspect, a mobile device includes a processor and a memory. The processor and memory are configured to direct the mobile device to: (i) maintain a notification system of the mobile device, where the notification system is configured to receive a plurality of notifications generated by a plurality of applications of the mobile device; (ii) display, by the mobile device, the plurality of notifications via a notification system user interface, where the notification system user interface is configured to provide a remind option for each of the plurality of notifications; (iii) receive, via the notification system user interface, a first user input indicating that a user has selected the remind option for one notification of the plurality of notifications; (iv) provide, by the mobile device, a device selection option via the notification system user interface in response to receiving the first user input, where providing the device selection option includes displaying information identifying one or more other devices on which to provide a reminder for the one notification; (v) receive, via the notification system user interface, a second user input indicating that the user has selected at least one of the one or more other devices; and (vi) communicate, by the mobile device, with the at least one of the one or more other devices to configure the at least one of the one or more other devices to provide the reminder for the one notification.
According to yet another aspect, a mobile device includes means for maintaining a notification system of the mobile device, where the notification system is configured to receive a plurality of notifications generated by a plurality of applications of the mobile device. The mobile device also includes a means for displaying the plurality of notifications via a notification system user interface, where the notification system user interface is configured to provide a remind option for each of the plurality of notifications. Further included in the mobile device is a means for receiving, via the notification system user interface, a first user input indicating that a user has selected the remind option for one notification of the plurality of notifications. A means for providing a device selection option is also included in the mobile device, where the device selection option is provided via the notification system user interface in response to receiving the first user input. The means for providing the device selection option includes means for displaying information identifying one or more other devices on which to provide a reminder for the one notification. The mobile device also includes a means for receiving, via the notification system user interface, a second user input indicating that the user has selected at least one of the one or more other devices, and a means for communicating with the at least one of the one or more other devices to configure the at least one of the one or more other devices to provide the reminder for the one notification.
According to a further aspect, a non-transitory computer-readable storage medium includes program code stored thereon. The program code includes instructions to direct a mobile device to: (i) maintain a notification system of the mobile device, where the notification system is configured to receive a plurality of notifications generated by a plurality of applications of the mobile device; (ii) display, by the mobile device, the plurality of notifications via a notification system user interface, where the notification system user interface is configured to provide a remind option for each of the plurality of notifications; (iii) receive, via the notification system user interface, a first user input indicating that a user has selected the remind option for one notification of the plurality of notifications; (iv) provide, by the mobile device, a device selection option via the notification system user interface in response to receiving the first user input, where providing the device selection option includes displaying information identifying one or more other devices on which to provide a reminder for the one notification; (v) receive, via the notification system user interface, a second user input indicating that the user has selected at least one of the one or more other devices; and (vi) communicate, by the mobile device, with the at least one of the one or more other devices to configure the at least one of the one or more other devices to provide the reminder for the one notification.
Other objects and advantages associated with the aspects and embodiments disclosed herein will be apparent to those skilled in the art based on the accompanying drawings and detailed description.
A more complete appreciation of the various aspects and embodiments described herein and many attendant advantages thereof will be readily obtained as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings which are presented solely for illustration and not limitation, and in which:
Various aspects and embodiments are disclosed in the following description and related drawings to show specific examples relating to exemplary aspects and embodiments. Alternate aspects and embodiments will be apparent to those skilled in the pertinent art upon reading this disclosure, and may be constructed and practiced without departing from the scope or spirit of the disclosure. Additionally, well-known elements will not be described in detail or may be omitted so as to not obscure the relevant details of the aspects and embodiments disclosed herein.
The word “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any embodiment described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments. Likewise, the term “embodiments” does not require that all embodiments include the discussed feature, advantage or mode of operation.
The terminology used herein describes particular embodiments only and should not be construed to limit any embodiments disclosed herein. As used herein, the singular forms “a,” “an,” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. Those skilled in the art will further understand that the terms “comprises,” “comprising,” “includes,” and/or “including,” when used herein, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
Further, many aspects are described in terms of sequences of actions to be performed by, for example, elements of a computing device. Those skilled in the art will recognize that various actions described herein can be performed by specific circuits (e.g., an application specific integrated circuit (ASIC)), by program instructions being executed by one or more processors, or by a combination of both. Additionally, these sequence of actions described herein can be considered to be embodied entirely within any form of computer readable storage medium having stored therein a corresponding set of computer instructions that upon execution would cause an associated processor to perform the functionality described herein. Thus, the various aspects described herein may be embodied in a number of different forms, all of which have been contemplated to be within the scope of the claimed subject matter. In addition, for each of the aspects described herein, the corresponding form of any such aspects may be described herein as, for example, “logic configured to” perform the described action.
As used herein, the term “Internet of Things device” (or “IoT device”) may refer to any object (e.g., an appliance, a sensor, etc.) that has an addressable interface (e.g., an Internet protocol (IP) address, a Bluetooth identifier (ID), a near-field communication (NFC) ID, etc.) and can transmit information to one or more other devices over a wired or wireless connection. An IoT device may have a passive communication interface, such as a quick response (QR) code, a radio-frequency identification (RFID) tag, an NFC tag, or the like, or an active communication interface, such as a modem, a transceiver, a transmitter-receiver, or the like. An IoT device can have a particular set of attributes (e.g., a device state or status, such as whether the IoT device is on or off, open or closed, idle or active, available for task execution or busy, and so on, a cooling or heating function, an environmental monitoring or recording function, a light-emitting function, a sound-emitting function, etc.) that can be embedded in and/or controlled/monitored by a central processing unit (CPU), microprocessor, ASIC, or the like, and configured for connection to an IoT network such as a local ad-hoc network or the Internet. For example, IoT devices may include, but are not limited to refrigerators, toasters, ovens, microwaves, freezers, dishwashers, dishes, hand tools, clothes washers, clothes dryers, furnaces, air conditioners, thermostats, televisions, light fixtures, vacuum cleaners, sprinklers, electricity meters, gas meters, etc., so long as the devices are equipped with an addressable communications interface for communicating with the IoT network. IoT devices may also include mobile devices, cell phones, desktop computers, laptop computers, tablet computers, personal digital assistants (PDAs), vehicles, etc. Accordingly, the IoT network may be comprised of a combination of “legacy” Internet-accessible devices (e.g., laptop or desktop computers, cell phones, etc.) in addition to devices that do not typically have Internet-connectivity (e.g., dishwashers, etc.).
Referring to
The Internet 175 includes a number of routing agents and processing agents (not shown in
In
The access point 125 may be connected to the Internet 175 via, for example, an optical communication system, such as FiOS, a cable modem, a digital subscriber line (DSL) modem, or the like. The access point 125 may communicate with IoT devices 110-120 and the Internet 175 using the standard Internet protocols (e.g., TCP/IP).
Referring to
In a peer-to-peer network, service discovery schemes can multicast the presence of nodes, their capabilities, and group membership. The peer-to-peer devices can establish associations and subsequent interactions based on this information.
In accordance with various aspects,
Referring to
In various embodiments, the supervisor device 130 may generally observe, monitor, control, or otherwise manage the various other components in the wireless communications system 100B. For example, the supervisor device 130 can communicate with an access network (e.g., access point 125) over air interface 108 and/or a direct wired connection 109 to monitor or manage attributes, activities, or other states associated with the various IoT devices 110-120 in the wireless communications system 100B. The supervisor device 130 may have a wired or wireless connection to the Internet 175 and optionally to the IoT server 170 (shown as a dotted line). The supervisor device 130 may obtain information from the Internet 175 and/or the IoT server 170 that can be used to further monitor or manage attributes, activities, or other states associated with the various IoT devices 110-120. The supervisor device 130 may be a standalone device or one of IoT devices 110-120, such as computer 120. The supervisor device 130 may be a physical device or a software application running on a physical device. The supervisor device 130 may include a user interface that can output information relating to the monitored attributes, activities, or other states associated with the IoT devices 110-120 and receive input information to control or otherwise manage the attributes, activities, or other states associated therewith. Accordingly, the supervisor device 130 may generally include various components and support various wired and wireless communication interfaces to observe, monitor, control, or otherwise manage the various components in the wireless communications system 100B.
The wireless communications system 100B shown in
For example, the one or more passive IoT devices 105 may include a coffee cup passive IoT device 105 and an orange juice container passive IoT device 105 that each have an RFID tag or barcode. A cabinet IoT device (not shown) and the refrigerator IoT device 116 may each have an appropriate scanner or reader that can read the RFID tag or barcode to detect when the coffee cup passive IoT device 105 and/or the orange juice container passive IoT device 105 have been added or removed. In response to the cabinet IoT device detecting the removal of the coffee cup passive IoT device 105 and the refrigerator IoT device 116 detecting the removal of the orange juice container passive IoT device 105, the supervisor device 130 may receive one or more signals that relate to the activities detected at the cabinet IoT device and the refrigerator IoT device 116. The supervisor device 130 may then infer that a user is drinking orange juice from the coffee cup passive IoT device 105 and/or likes to drink orange juice from the coffee cup passive IoT device 105.
Although the foregoing describes the passive IoT devices 105 as having some form of RFID tag or barcode communication interface, the passive IoT devices 105 may include one or more devices or other physical objects that do not have such communication capabilities. For example, certain IoT devices may have appropriate scanner or reader mechanisms that can detect shapes, sizes, colors, and/or other observable features associated with the passive IoT devices 105 to identify the passive IoT devices 105. In this manner, any suitable physical object may communicate an identity and one or more attributes associated therewith, become part of the wireless communications system 100B, and be observed, monitored, controlled, or otherwise managed with the supervisor device 130. Further, passive IoT devices 105 may be coupled to or otherwise made part of the wireless communications system 100A in
In accordance with various aspects,
The wireless communications system 100C shown in
The IoT devices 110-118 make up an IoT device group 160. The IoT device group 160 may comprise a group of locally connected IoT devices, such as the IoT devices connected to a user's home network. Although not shown, multiple IoT device groups may be connected to and/or communicate with each other via an IoT SuperAgent 140 connected to the Internet 175. At a high level, the supervisor device 130 manages intra-group communications, while the IoT SuperAgent 140 can manage inter-group communications. Although shown as separate devices, the supervisor device 130 and the IoT SuperAgent 140 may be, or reside on, the same device (e.g., a standalone device or an IoT device, such as computer 120 in
Each IoT device 110-118 can treat the supervisor device 130 as a peer and transmit attribute/schema updates to the supervisor device 130. When an IoT device needs to communicate with another IoT device, the IoT device can request the pointer to that IoT device from the supervisor device 130 and then communicate with the target IoT device as a peer. The IoT devices 110-118 communicate with each other over a peer-to-peer communication network using a common messaging protocol (CMP). As long as two IoT devices are CMP-enabled and connected over a common communication transport, they can communicate with each other. In the protocol stack, the CMP layer 154 is below the application layer 152 and above the transport layer 156 and the physical layer 158.
In accordance with various aspects,
The Internet 175 is a “resource” that can be regulated using the concept of the IoT. However, the Internet 175 is just one example of a resource that is regulated, and any resource could be regulated using the concept of the IoT. Other resources that can be regulated include, but are not limited to, electricity, gas, storage, security, and the like. An IoT device may be connected to the resource and thereby regulate the resource, or the resource could be regulated over the Internet 175.
IoT devices can communicate with each other to regulate their use of a resource 180. For example, IoT devices such as a toaster, a computer, and a hairdryer may communicate with each other over a Bluetooth communication interface to regulate their use of electricity (the resource 180). As another example, IoT devices such as a desktop computer, a telephone, and a tablet computer may communicate over a Wi-Fi communication interface to regulate their access to the Internet 175 (the resource 180). As yet another example, IoT devices such as a stove, a clothes dryer, and a water heater may communicate over a Wi-Fi communication interface to regulate their use of gas. Alternatively, or additionally, each IoT device may be connected to an IoT server, such as IoT server 170, which has logic to regulate their use of the resource 180 based on information received from the IoT devices.
In accordance with various aspects,
The wireless communications system 100E includes two IoT device groups 160A and 160B. Multiple IoT device groups may be connected to and/or communicate with each other via an IoT SuperAgent connected to the Internet 175. At a high level, an IoT SuperAgent may manage inter-group communications among IoT device groups. For example, in
Certain aspects herein may be implemented on any of a variety of commercially available server devices, including a server 200 as illustrated in
As shown in
While internal components of IoT devices, such as mobile device 300, can be embodied with different hardware configurations, a basic high-level configuration for internal hardware components is shown as platform 302 in
As will be discussed in more detail below, the platform 302 of mobile device 300 may further include a notification system 316. In general, the notification system 316 is a combination of software and hardware that provides a means of alerting a user of the mobile device 300. The notification system 316 may be configured to receive a plurality of notifications generated by a plurality of applications of mobile device 300, where the notification system 316 provides a user interface that allows the user to select a remind option for each of the pending notifications. The remind option may allow the user to select from among a plurality of other IoT devices on which to receive a reminder for the selected notification.
Accordingly, various aspects can include an IoT device (e.g., mobile device 300) including the ability to perform the functions described herein. As will be appreciated by those skilled in the art, the various logic elements can be embodied in discrete elements, software modules executed on a processor (e.g., processor 308) or any combination of software and hardware to achieve the functionality disclosed herein. For example, transceiver 306, processor 308, memory 312, I/O interface 314, and notification system 316 may all be used cooperatively to load, store and execute the various functions disclosed herein and thus the logic to perform these functions may be distributed over various elements. Alternatively, the functionality could be incorporated into one discrete component. Therefore, the features of the mobile device 300 in
In operation, notification system 400 may receive these notifications 416 and present them to a user of the mobile device in a centralized notification system user interface 402. For example,
As mentioned above, and as illustrated in
Accordingly, aspects of the present disclosure provide for a notification system that provides a remind option for every notification so that a user can follow up with each of the notifications as per his/her convenience and also allow the user to choose to follow up on any connected device.
By way of example,
Although, additional options 524 and 526 may be dynamically generated based on the application that generated the respective notification, the remind option 522 may be provided, according to aspects of the present disclosure, for each of the pending notifications 504-512 of the notification system user interface 502. That is, each of the notifications 504-512, when selected, may provide the remind option 522 regardless of the type of application and regardless of which particular application generated the notification.
In one aspect, the remind option 522 and the additional options 524 and 526 may be displayed on the notification system user interface 502 as virtual user interface elements, such as virtual buttons. However, in other implementations, remind option 522 and/or additional options 524 and 526 may be displayed on the notification system user interface 502 as other user interface elements such as virtual toggle buttons, steppers, pull-down menus, pickers, text fields, etc.
As discussed above, notification system user interface 502 is configured to display the remind option 522 in response to the user selecting the notification 506. The notification system user interface may then receive user input indicating that the user has selected the remind option 522 (e.g., by way of the user pressing a virtual button represented by remind option 522). In response to receiving such user input, the notification system user interface may then provide a device selection option that includes displaying information identifying one or more other devices on which to provide a reminder for the notification 506. For example,
In one aspect, the device selection option 528 may be displayed on the notification system user interface 502 as virtual user interface elements, such as virtual checkboxes 530. However, in other implementations, device selection option 528 may be displayed on the notification system user interface 502 as other user interface elements such as virtual toggle buttons, pull-down menus, pickers, text fields, etc.
In some examples, the list of devices included in the device selection option 528 includes devices that are current connected (e.g., paired) with the mobile device 500. However, the list of devices may also include one or more devices that are currently disconnected (e.g., not paired) with the mobile device 500. That is, the list of devices may include other devices that are currently in communication with the mobile device 500 as well as other devices that are not currently in communication with the mobile device 500. Thus, in one aspect, the list of devices may include other devices, with which the mobile device 500 has previously been paired with and/or that will be paired with the mobile device 500 in the future.
Furthermore, the notification system user interface 502 may be configured to filter which devices are included on the list of devices based on a known capability of the devices. That is, in some aspects not all IoT devices may be appropriate for all types of notifications (e.g., a television may not be an appropriate device for setting an email reminder). Thus, in operation, the mobile device 500 may be configured to identify a first plurality of devices that includes all connected and/or all disconnected IoT devices. The mobile device 500 may then determine a type of the selected notification (e.g., email, text messaging, video link, etc.). The mobile device 500 may then determine which of the first plurality of devices are capable of handling the type of the selected notification and filtering the first plurality of devices to generate the list of devices to include only those devices that are capable of handling the type of the notification. By way of example, referring to
In one example, device selection option 528 is configured to allow the user to select no more than one device included in the list of devices (e.g., via selection of checkbox 530). However, in other examples, device selection option 528 may be configured to allow the user to select multiple devices (i.e., more than one) from the list of devices. In this example, the device selection option 528 may include a “continue” button (not shown), such that the user may select the continue button once all the desired devices have been selected.
In some aspects, once a user has selected the device or multiple devices, on which to provide a reminder for the notification, the notification system user interface 502 may be further configured to provide a reminder type option to allow the user to select the type of reminder that is to be provided. Thus, as shown in
In one aspect, the reminder type options 532 and 534 may be displayed on the notification system user interface 502 as virtual user interface elements, such as virtual buttons. However, in other implementations, reminder type options 532 and 534 may be displayed on the notification system user interface 502 as other user interface elements such as virtual toggle buttons, pull-down menus, pickers, text fields, etc.
In response to the user selecting the reminder type option 532 (i.e., calendar event option), the notification system user interface 502 may then display information to allow the user to enter one or more calendar event details, such as a date for the reminder, a time for the reminder, and/or a priority for the reminder, etc. Similarly, in response to the user selecting the reminder type option 534 (i.e., alarm event option), the notification system user interface 502 may display information to allow the user to enter one or more alarm event details (e.g., date, time, priority, etc.).
By way of example,
A similar process to
In operation, the mobile device 500 may be configured to monitor the calendar and reminders to determine if a calendar event and/or alarm event becomes due when the mobile device 500, itself, is selected by the user to provide a reminder for a respective notification. However, as mentioned above, the user may select one or more other devices (i.e., devices other than mobile device 500) on which to receive a reminder for a notification. Thus, in one aspect, mobile device 500 may attempt to communicate with the selected devices (i.e., those devices selected via notification system user interface 502 of
For example, assume that mobile device 500 receives a notification for a live event that begins at 5:00 PM, where in response to viewing the notification, the user determines that they would prefer to receive a reminder for this notification on their television. If so, the user may select a television (i.e, an IoT device) via device selection option 528 of
The above example illustrates one possible implementation of providing a reminder on another IoT device for a notification associated with a live event, where an alert is set to generate the reminder on the IoT device prior to the live event beginning. However, in other examples, the notification may be related to always available data, such as a news story, or a new download that is available (e.g., a new audio file or new video that is available for streaming and/or downloading). In this case, the IoT device may provide the reminder at the actual event time rather than at some time prior to the event time as discussed above for a live event.
In some instances, the desired IoT device may not be connected to the mobile device 500 by the time the reminder becomes due. Thus, if the mobile device 500 is unable to communicate with the desired IoT device before the reminder becomes due, the mobile device 500 may be configured to determine that communication with the IoT device was unsuccessful and, if so, the mobile device 500 may then provide an option to the user to reset the reminder. In one example, providing the option to reset the reminder may include re-generating the notification via the notification system user interface 502.
In another example, the mobile device 500 may successfully communicate the notification to the IoT device prior to the reminder becoming due, but the user may still miss the reminder given by the IoT device. In this example, the mobile device 500 may be configured to determine whether the user was located near the IoT device when the IoT device provided the reminder. In one aspect, the mobile device 500 may determine that the user was near the IoT device if the mobile device 500 is in communication (e.g., paired) with the IoT device. If the mobile device 500 determines that the user was near the IoT device when the reminder was due the mobile device 500 may determine that either the reminder was seen by the user or the user intentionally ignored the reminder, in which case the user may manually reset the notification, if so desired. If however, the mobile device 500 determines that the user was not near the IoT device when the reminder becomes due (e.g., mobile device 500 is not in communication with the IoT device when the reminder becomes due) then the mobile device 500 may determine that the reminder was missed. If so, in one example, the mobile device 500 may be configured to then provide an option to the user to reset the reminder from mobile device 500. In one example, providing the option to reset the reminder may include re-generating the notification via the notification system user interface 502.
In response to receiving the first user input, process block 808, includes providing a device selection option (e.g., see device selection option 528 of
The functionality of the modules of
In addition, the components and functions represented by
Those skilled in the art will appreciate that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
Further, those skilled in the art will appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the aspects disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted to depart from the scope of the various aspects and embodiments described herein.
The various illustrative logical blocks, modules, and circuits described in connection with the aspects disclosed herein may be implemented or performed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices (e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration).
The methods, sequences and/or algorithms described in connection with the aspects disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM, flash memory, ROM, EPROM, EEPROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in an IoT device. In the alternative, the processor and the storage medium may reside as discrete components in a user terminal.
In one or more exemplary aspects, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of a medium. The term disk and disc, which may be used interchangeably herein, includes CD, laser disc, optical disc, DVD, floppy disk, and Blu-ray discs, which usually reproduce data magnetically and/or optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
While the foregoing disclosure shows illustrative aspects and embodiments, those skilled in the art will appreciate that various changes and modifications could be made herein without departing from the scope of the disclosure as defined by the appended claims. The functions, steps and/or actions of the method claims in accordance with the aspects and embodiments described herein need not be performed in any particular order. Furthermore, although elements may be described above or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated.