System, method, and computer program for optimizing network experience using a home network router
By combining smart home network routers with electronic calendars and machine learning models, the problem of uneven network resource allocation when multiple devices are connected simultaneously is solved, the network experience is optimized, and the network resource requirements of high-priority activities are ensured.
Patent Information
- Application Number
- CN202180062301.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-08-12
- Filing Date
- 2021-08-09
- Publication Date
- 2025-09-23
- Estimated Expiration
- 2041-08-09
AI Technical Summary
Existing technologies are unable to effectively prioritize and allocate network access resources when multiple users and/or devices are connected to the network simultaneously, resulting in uneven bandwidth usage.
By using smart home network routers, combined with electronic calendars and machine learning models, network resources are prioritized and allocated to ensure that high-priority events receive sufficient network resources.
This achieves optimal allocation of network resources among multiple events, improves network experience, and ensures that the network resource requirements of high-priority activities are met.
Smart Images

Figure CN116490887B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to network access management. Background Art
[0002] Currently, technologies exist to manage network access / connectivity, such as for approved devices or users, and for approved applications or websites. These network access management technologies are often enabled by communications service providers (CSPs) to provide network security. Furthermore, technologies exist to predict bandwidth usage, such as for certain applications or times of day. These bandwidth usage prediction technologies can be used by CSPs, for example, to offer customers service plans that align with their bandwidth usage activity.
[0003] However, the above techniques do not allow for prioritization of network access, including bandwidth usage, when multiple users and / or devices are simultaneously connected to the network. Accordingly, there is a need to address these and / or other issues associated with the prior art. Summary of the Invention
[0004] As described herein, systems, methods, and computer programs are provided for optimizing a network experience using a residential network router. During use, an electronic calendar is accessed by the residential network router. Furthermore, the residential network router determines multiple events saved to the electronic calendar, wherein the multiple events at least partially require simultaneous network resource usage. Furthermore, the residential network router prioritizes the multiple events. Furthermore, based on the priorities, the residential network router allocates available network resources among the multiple events. BRIEF DESCRIPTION OF THE DRAWINGS
[0005] Figure 1 A method for providing network experience optimization using a residential network router according to one embodiment is shown.
[0006] Figure 2 A block diagram illustrates a method for a residential network router to allocate available network bandwidth among multiple events that, at least in part, require simultaneous network bandwidth usage using an electronic calendar, according to one embodiment.
[0007] Figure 3 A block diagram illustrating a method for providing network experience optimization using an electronic calendar used by a residential network router according to one embodiment is shown.
[0008] Figure 4 A network architecture according to one possible embodiment is shown.
[0009] Figure 5 An exemplary system according to one embodiment is shown. DETAILED DESCRIPTION
[0010] Figure 1A method 100 for providing network experience optimization using a residential network router according to one embodiment is shown. As disclosed, the method 100 is performed by a residential network router comprising software and / or hardware configured to perform the method 100. As such, the residential network router can be considered an intelligent router, or intelligent home gateway, which is a device that includes functionality beyond that provided by a traditional router.
[0011] A residential network router is located within or near a residential space, such as a house, apartment unit, work office, retail or other store, restaurant, or other residential unit or structure. Furthermore, a residential network router is any network router that enables communication between a network (e.g., the Internet) and user devices within and possibly around the residential space. User devices may communicate with the residential network router via a second network, such as a local area network (LAN). Figure 4 and / or 5 describe examples of user equipment.
[0012] In operation 102, an electronic calendar is accessed. The electronic calendar is any application stored in memory that provides calendar-related functionality. In one embodiment, the electronic calendar may be stored and executed by a residential network router. In another embodiment, the electronic calendar may be stored and executed by a computing device separate from the residential network router, in which case the electronic calendar may be accessed over the network (if desired).
[0013] The electronic calendar can be accessed by users to create and save events therein, as well as for other calendar-related purposes. In one embodiment, the electronic calendar can be shared by residents of the residential space. In another embodiment, the electronic calendar can combine the personal electronic calendars of residents of the residential space (or different households). For example, events created and saved in personal electronic calendars can be stored in the combined electronic calendar. As a further option, one or more residents can also make the electronic calendar accessible to one or more guests of the residential space.
[0014] Additionally, in operation 104, a plurality of events to be saved to the electronic calendar are determined. In the context of this embodiment, these events may at least partially require simultaneous network resource usage. In particular, these events may be scheduled during at least partially overlapping time periods. Furthermore, the events may be scheduled to occur at a future point in time.
[0015] In one embodiment, multiple events can be associated with residents of a residential space. For example, these events can be created by the residents and saved to an electronic calendar. Each event can indicate one or more residents who will participate in the event, or at least which resident created the event.
[0016] As described above, each event requires the use of network resources. In various embodiments, these resources may include bandwidth and / or latency. For example, each event may include the use of (i.e., may occur through) an application that requires network resources. By way of example only, each event may require sending and receiving communications, data, etc., over a network accessible via a residential network router.
[0017] Further, in operation 106, a plurality of events are prioritized. In one embodiment, the prioritization can be based on a priority assigned to each event, which can be determined from a calendar or can be determined by a residential network router. The priority can be assigned manually (e.g., by the creator of the event) and can optionally be assigned through a user interface of an electronic calendar (or personal electronic calendar). Alternatively, the priority can be automatically assigned based on rules and / or machine learning models (e.g., applied by a residential network router). For example, the priority of an event can be assigned based on a priority predefined for the personal electronic calendar on which the event was created, a priority predefined for a resident of a residential space (e.g., within a residential network router), a priority predefined for a device of a resident of a residential space to be used for an event (e.g., within a residential network router), a priority predefined for certain events (e.g., within a residential network router), a historical priority assigned to an event by an electronic calendar, etc., or any combination thereof.
[0018] Furthermore, in operation 108, available network resources are allocated among the plurality of events based on the prioritization. In various embodiments, the available network resources may be bandwidth and / or latency. The available network resources may be determined based on the amount of network resources (provided by the CSP) subscribed to by residents of the residential space. Alternatively, the available network resources may be predicted based on historical network resource usage information indicating available network resources during a specific time period (e.g., day / time) corresponding to the time period in which the events are scheduled.
[0019] As indicated in operation 104, each event requires network resource usage. Therefore, the amount of network resources required for each event can be determined. In one embodiment, the amount of network resources required for each event can be determined based on historical resource usage for the same or similar events (optionally, at a time similar to the time at which the event is scheduled).
[0020] In one embodiment, available network resources can be allocated among multiple events by allocating the available network resources among the events in order of priority. Thus, available network resources can be allocated in order of priority to meet the network resource requirements of each event until the network resource requirements of all events are met or the available network bandwidth is exhausted (whichever comes first). Each event is then allocated a portion of the available network resources given to that event during the allocation period.
[0021] In this way, the event with the highest priority can be allocated sufficient network resources, while the event with a lower priority can be allocated insufficient network resources, and the remaining events with the lowest priority can be allocated no network resources. Of course, this depends on the amount of available network resources and the network resource requirements of the event.
[0022] Alternatively, method 100 may be performed when one of the plurality of events is saved to an electronic calendar. This may allow method 100 to be performed in real time with respect to the creation of a new event on the electronic calendar. Furthermore, when one of the events is allocated an insufficient amount of network resources (or no network resources), the residential network router may cause a notification to be presented to the creator of the event or any other participant indicated for the event (e.g., via an electronic calendar) indicating that the amount of network resources for the event is insufficient. The notification may also include a recommendation to schedule the event at an alternate time when there is sufficient network resources for the event (e.g., based on the network resource requirements of other events saved to the electronic calendar). In another embodiment, the notification may include a recommendation to use network resources provided by a device other than the residential network router, such as via a hotspot.
[0023] In any case, for each event, allocated network resources can be provided to devices for use in connection with that event. For example, any device attempting to participate in an event using a residential network router can be provided with the network resources allocated to that event. In this way, the residential network router can be used to optimize the network experience by securing network resources based on priority.
[0024] More illustrative information will now be provided regarding various optional architectures and uses, wherein the aforementioned methods may or may not be implemented, depending on the user's desires. It should be noted that the following information is provided for illustrative purposes and should not be construed as limiting in any way. Any of the following features may be optionally combined with or without excluding the other features described.
[0025] For example, although various embodiments described below may specifically refer to network bandwidth, it should be noted that these embodiments may be equally applicable to other types of network resources, such as latency.
[0026] Sometimes, when people are at home, bandwidth and latency may not be sufficient for everyone's purposes. For example, one person's gaming session may require more bandwidth than is available at the time. When multiple devices are connected to their residential network router for different purposes (such as video calls, gaming, content streaming, etc.), the bandwidth may not be sufficient to serve all of these uses simultaneously.
[0027] Smart home gateways can be used to manage devices, pausing and unpausing them, and so on. Furthermore, different devices can be given different priorities when it comes to bandwidth usage. For example, an Internet Protocol (IP) phone might have a higher priority than a television. However, there is still a need to ensure that sufficient bandwidth is available and ultimately delivered for scheduled events (i.e., events) that require network bandwidth. There is also a need for assistance in managing event schedules, especially when available network bandwidth is insufficient.
[0028] The embodiments described below provide network experience optimization as it relates to events requiring network bandwidth using a residential network router (smart home gateway). The residential network router can have visibility (based on artificial intelligence) into who is using what devices within the residential space, meaning that the residential network router can know the residents, what they are doing on the internet (to some extent), and even where they are located. For example, a user device (such as a smartphone) can be defined in the router as belonging to a specific resident, and the location of the user device within the residential space can be determined (e.g., based on which room it is using which repeater), so that the resident's location can be determined with a high probability.
[0029] In order for the home network router to know about residents and their devices, someone may have to define this information in the router. The home network router may provide a wizard to help define this information, and it may also ask for age and gender, as well as any other information. In some embodiments described below, this information may be used by the home network router.
[0030] Figure 2 A block diagram is shown of a method 200 for allocating available network bandwidth among multiple events that, at least in part, require simultaneous network bandwidth usage using an electronic calendar for a residential network router, according to one embodiment. Alternatively, the method 200 may be performed within the context of the details of the previous figure and / or any subsequent figures. Of course, however, the method 200 may be performed within the context of any desired environment. Furthermore, the above definitions may apply equally to the following description.
[0031] As shown, the residential network router 202 collects static priorities set for user devices 204 (e.g., via a user interface of the residential network router 202, as described above), bandwidth requests received from user devices 206 (e.g., for particular uses), and dynamic device priority information 208 determined from calendar event priorities 210. The residential network router 202 processes this information to provide bandwidth allocations 212 to the user devices for use in association with the particular calendar event and, optionally, for other uses.
[0032] A user interface may be provided to submit bandwidth requests for specific activities received from user devices 206. This capability may include marking an activity as requiring the residential network router 202 to provide the correct bandwidth, even at the expense of other activities.
[0033] To this end, dynamic, calendar-based, bandwidth prioritization can be provided by the residential network router 202. In one embodiment, the residential network router 202 can learn to associate certain devices with certain activities. For example, over time, the residential network router 202 can see which activities are completed on which devices (e.g., by seeing correlations between network activities and calendar entries). In another embodiment, devices can be prioritized based on calendar priority. If an activity has a priority in the calendar, the residential network router 202 can ensure that the device performing the activity has the correct bandwidth / priority for that activity.
[0034] Figure 3 A block diagram illustrates a method 300 for optimizing a network experience using an electronic calendar used by a residential network router, according to one embodiment. Alternatively, the method 300 can be performed within the context of the details of the previous figure and / or any subsequent figures. Of course, however, the method 300 can be performed within the context of any desired environment. Furthermore, the above definitions apply equally to the following description.
[0035] As shown, an electronic calendar 310 (i.e., a bandwidth-aware calendar 310) communicates with a bandwidth management application 302 (e.g., installed on a residential network router). The bandwidth-aware calendar 310 can be installed on the residential network router and accessed through a web interface, for example, or can be installed on a computer system separate from the residential network router.
[0036] The bandwidth-aware calendar 310, through a user interface of the bandwidth-aware calendar 310, defines an event to be saved to the electronic calendar, wherein the event requires, at least in part, the use of network bandwidth (or other resources). The electronic calendar 310 then saves the event. The bandwidth-aware calendar 310 further determines a priority for the event. A priority can be manually assigned to an event (e.g., using the user interface of the bandwidth-aware calendar 310). For example, a priority can be included in the definition of the event and thereby manually assigned by the creator of the event. In another embodiment, a priority can be automatically assigned based on rules and / or a machine learning model. The priority of the event is then provided by the bandwidth-aware calendar 310 to the bandwidth management application 302 for use in allocating available network bandwidth (or other resources) to the event.
[0037] Bandwidth management application 302 (e.g., installed on a residential network router) collects information including expected bandwidth information 304, bandwidth for calendar events 306, and expected bandwidth usage information 308. Bandwidth management application 302 processes this information and causes bandwidth-aware calendar 310 to present one or more bandwidth allocation notifications 312.
[0038] In particular, bandwidth management application 302 can provide bandwidth-aware calendar 310 with an indication of the amount of available network resources allocated to the event. Bandwidth-aware calendar 310 can then present a notification associated with the indication of the amount of available network resources allocated to the event, such as an indication of whether the amount of available network resources allocated to the event is sufficient to meet the required network resource usage for the event. When the amount of available network resources allocated to the event is insufficient to meet the required network resource usage for the event, the notification can also include a recommendation to schedule the event at an alternate time when there is a sufficient amount of network resources for the event and / or a recommendation to use network resources provided by a device other than a residential network router.
[0039] Of course, it should be noted that bandwidth allocation notifications 312 may include warnings and advisories presented on the bandwidth-aware calendar 310 and / or on individual resident calendars via the bandwidth-aware calendar 310. For example, when a resident schedules an event of a bandwidth-requiring type via the bandwidth-aware calendar 310, the calendar may be marked with times when there is sufficient bandwidth for the event and times when there is insufficient bandwidth.
[0040] As another example, when a resident schedules an event for a particular time period via the bandwidth-aware calendar 310, the resident may be notified if sufficient bandwidth is available during that time period. As another example, the bandwidth-aware calendar 310 may be tagged with the quality of the expected bandwidth during the scheduled time period (e.g., due to availability and other household usage) so that the resident can decide when to schedule the event.
[0041] In another embodiment, a warning can be given when a change is made. For example, if another resident sets a higher priority event that results in insufficient bandwidth for a previously scheduled activity, a warning can be issued regarding insufficient available bandwidth. As another example, if an external event changes the prediction of available network bandwidth for the residential space, which will result in insufficient bandwidth for previously scheduled activities, a warning can be issued. As another example, for activities that can use the bandwidth of a non-residential network router (e.g., using a smartphone as a hotspot), a warning can be issued that the resident should use the hotspot at a specific time to obtain a better connection.
[0042] To this end, the bandwidth management application 302 will be connected to the calendar 310 and will communicate to the resident the level of bandwidth and the expected experience they will have during certain time periods, and will recommend activities or offers that will make their experience better. For example, for a high-priority video conference scheduled on the calendar 310, the bandwidth management application 302 can provide a reminder that the experience may be negatively impacted by insufficient available network bandwidth and can provide an offer to purchase more bandwidth (e.g., through a CSP). The bandwidth management application 302 will manage bandwidth based on priority and will attempt to ensure that higher-priority events will receive sufficient bandwidth.
[0043] For guests of the residential space, a guest's access time can be created in calendar 310. This allows bandwidth to be allocated to the guest's devices based on the priority determined for guest access (manually or automatically). In another embodiment, guest devices (which are unknown to the router) can be assigned a default priority (e.g., manually defined in the router by the resident). In another embodiment, the guest can add his calendar to the router, which can then be approved by the resident. In this case, the guest can then be treated as a resident by the router.
[0044] Alternatively, calendar 310 can offer a guaranteed bandwidth option. In this case, bandwidth management application 302 can provide additional bandwidth for a fee (e.g., through a CSP). For example, there could be a plan where you can request more bandwidth for 10 hours per month, or you can purchase it on the fly. In this case, bandwidth management application 302 would also manage when the additional bandwidth is available.
[0045] Figure 4A network architecture 400 according to one possible embodiment is shown. As shown, at least one network 402 is provided. In the context of this network architecture 400, the network 402 can take any form, including but not limited to a telecommunications network, a local area network (LAN), a wireless network, a wide area network (WAN) such as the Internet, a peer-to-peer network, a cable network, etc. Although only one network is shown, it should be understood that two or more similar or different networks 402 can be provided.
[0046] Coupled to network 402 are a number of devices. For example, a server computer 404 and an end-user computer 406 may be coupled to network 402 for communication purposes. Such end-user computers 406 may include desktop computers, laptop computers, and / or any other type of computer. Additionally, various other devices may be coupled to network 402, including personal digital assistant (PDA) devices 408, mobile phone devices 410, televisions 412, and the like.
[0047] Figure 5 An exemplary system 500 according to one embodiment is shown. Alternatively, the system 500 may be implemented in Figure 4 The system 500 may be implemented in the context of any device of the network architecture 400. Of course, the system 500 may be implemented in any desired environment.
[0048] As shown, the system 500 includes at least one central processor 501 connected to a communication bus 502 . The system 500 also includes a main memory 504 [eg, random access memory (RAM) etc.] The system 500 also includes a graphics processor 506 and a display 508 .
[0049] The system 500 may also include secondary storage 510. The secondary storage 510 includes, for example, a solid state drive (SSD), flash memory, a removable storage drive, etc. The removable storage drive reads from and / or writes to a removable storage unit in a well-known manner.
[0050] Computer programs or computer control logic algorithms may be stored in main memory 504, secondary storage 510, and / or any other storage, for that matter. Such computer programs, when executed, enable system 500 to perform various functions (e.g., as described above). Memory 504, storage 510, and / or any other storage are possible examples of non-transitory computer-readable media.
[0051] The system 500 may also include one or more communication modules 512. The communication modules 512 may be operable to facilitate communication between the system 500 and one or more networks, and / or communication with one or more devices via various possible standard or proprietary communication protocols (e.g., via Bluetooth, near field communication (NFC), cellular communication, etc.).
[0052] As used herein, "computer-readable medium" includes one or more of any suitable media for storing executable instructions of a computer program, such that an instruction execution machine, system, apparatus or device can read (or retrieve) the instructions from the computer-readable medium and execute the instructions to perform the method. Suitable storage formats include one or more of electronic, magnetic, optical and electromagnetic formats. A non-exhaustive list of conventional exemplary computer-readable media includes: portable computer floppy disks; RAM; ROM; erasable programmable read-only memory (EPROM or flash memory); optical storage devices including portable compact discs (CDs), portable digital video discs (DVDs), high-definition DVDs (HD-DVDs); TM ), BLU-RAY discs; etc.
[0053] It should be understood that the arrangement of components shown in the figures is exemplary and that other arrangements are possible. It should also be understood that the various system components (and devices) defined by the claims, described below, and shown in the various block diagrams represent logical components in some systems configured according to the subject matter disclosed herein.
[0054] For example, one or more of these system components (and devices) may be implemented in whole or in part by at least some of the components shown in the arrangements shown in the figures. Furthermore, while at least one of these components is implemented at least in part as an electronic hardware component and thus constitutes a machine, other components may be implemented in software and, when included in an execution environment, constitute a machine, hardware, or a combination of software and hardware.
[0055] More particularly, at least one component defined by a claim is implemented at least in part as an electronic hardware component, such as an instruction execution machine (e.g., a machine based on or containing a processor) and / or as a specialized circuit or loop (e.g., discrete logic gates interconnected to perform a specialized function). Other components may be implemented in software, hardware, or a combination of software and hardware. Furthermore, some or all of these other components may be combined, some may be omitted entirely, and additional components may be added while still achieving the functionality described herein. Accordingly, the subject matter described herein may be embodied in many different variations, and all such variations are considered to be within the scope of the claimed invention.
[0056] In the foregoing description, unless otherwise indicated, the subject matter is described with reference to actions and symbolic representations of operations performed by one or more devices. Therefore, it will be understood that such actions and operations, sometimes referred to as computer-executed, involve the manipulation of data in a structured form by a processor. Such manipulation transforms the data or maintains it at a location within the computer's memory system, thereby reconfiguring or otherwise changing the operation of the device in a manner understood by those skilled in the art. Data is maintained at a physical location in memory as a data structure, which has specific properties defined by the data format. However, while the subject matter is described in the foregoing context, it is not intended to be limiting, as those skilled in the art will understand that several of the actions and operations described below may also be implemented in hardware.
[0057] To facilitate understanding of the subject matter described herein, many aspects are described in terms of action sequences. At least one of the aspects defined by the claims is performed by an electronic hardware component. For example, it will be appreciated that various actions may be performed by specialized circuits or loops, by program instructions executed by one or more processors, or by a combination of the two. The description of any action sequence herein is not intended to imply that the specific order described for executing the sequence must be followed. All methods described herein may be performed in any suitable order unless otherwise indicated herein or clearly contradicted by the context.
[0058] In the context of describing the subject matter (especially in the context of the following claims), the use of the terms "a," "an," "the," and similar referents are to be construed to cover both the singular and the plural, unless otherwise indicated herein or clearly contradicted by the context. Recitation of numerical ranges herein is merely intended to serve as a shorthand method of referring individually to each separate value falling within the range, and each separate value is incorporated into the specification as if it were individually recited herein, unless otherwise indicated herein. Furthermore, the foregoing description is intended to be illustrative only and not limiting, as the scope of protection sought is defined by the claims set forth below and any equivalents thereto. The use of any and all examples, or exemplary language (e.g., "such as") provided herein, is intended solely to better illustrate the subject matter and does not constitute a limitation on the scope of the subject matter unless otherwise required. The use of the term "based on" and other similar phrases in the claims and written description to indicate a condition producing a certain result is not intended to exclude any other condition producing that result. No language in the specification should be construed as indicating that any non-claimed element is essential to practicing the claimed invention.
[0059] The embodiments described herein include one or more modes known to the inventors for practicing the claimed subject matter. Of course, variations on those embodiments will become apparent to those of ordinary skill in the art upon reading the foregoing description. The inventors expect skilled artisans to employ such variations as appropriate, and the inventors intend for the claimed subject matter to be practiced otherwise than as specifically described herein. Accordingly, the claimed subject matter includes all modifications and equivalents of the subject matter recited in the appended claims as permitted by applicable law. Furthermore, any combination of the above-described elements in all possible variations thereof is encompassed unless otherwise indicated herein or clearly contradicted by context.
[0060] Although various embodiments have been described above, it should be understood that they have been presented by way of example only and not limitation. Therefore, the breadth and scope of the preferred embodiment should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.
Claims
1. A non-transitory computer-readable medium storing computer code executable by a processor to perform a method, the method comprising: Access to electronic calendars from residential network routers; determining, by the residential network router, a plurality of events to save to the electronic calendar, wherein the plurality of events at least in part require simultaneous network resource usage; prioritizing the plurality of events using the residential network router; as well as Based on the prioritization, available network resources are allocated among the plurality of events using the residential network router. 2 . The non-transitory computer-readable medium of claim 1 , wherein the plurality of events are associated with residents of a residential space having the residential network router.
3. The non-transitory computer-readable medium of claim 2, wherein the electronic calendar is shared by the residents of the residential space.
4. The non-transitory computer-readable medium of claim 2, wherein the electronic calendar combines personal electronic calendars of the residents of the residential space.
5. The non-transitory computer-readable medium of claim 3, wherein one or more of the residents of the residential space makes the electronic calendar accessible to one or more guests of the residential space.
6. The non-transitory computer-readable medium of claim 2, wherein the plurality of events are saved to the electronic calendar by the resident of the residential space. 7 . The non-transitory computer-readable medium of claim 1 , wherein an event in the plurality of events comprises use of an application requiring network resources.
8. The non-transitory computer-readable medium of claim 1, wherein the prioritization is based on a priority assigned to each event of the plurality of events.
9. The non-transitory computer-readable medium of claim 8, wherein the priority is determined according to the calendar.
10. The non-transitory computer-readable medium of claim 8, wherein the priority is automatically assigned based on at least one of a rule and a machine learning model.
11. The non-transitory computer-readable medium of claim 1, wherein the network resource usage and the available network resources correspond to at least one of bandwidth or latency.
12. The non-transitory computer-readable medium of claim 1 , wherein allocating available network resources among the plurality of events comprises: allocating the available network resources among the plurality of events in order of priority of the plurality of events, and Each event of the plurality of events is allocated the portion of the available network resources given to the event during the dispatching period.
13. The non-transitory computer-readable medium of claim 1 , further comprising: For each event of the plurality of events, the allocated network resources are provided to a device for use in association with the event.
14. The non-transitory computer-readable medium of claim 1, wherein the method is performed when an event of the plurality of events is saved to the electronic calendar.
15. The non-transitory computer-readable medium of claim 14, further comprising: determining that an event in the plurality of events is allocated an insufficient amount of network resources, and A notification is caused to be presented indicating an insufficient amount of network resources for the one of the plurality of events.
16. The non-transitory computer-readable medium of claim 15, wherein the notification further comprises a recommendation to schedule an alternate time for the one of the plurality of events when there is a sufficient amount of network resources for the one of the plurality of events.
17. The non-transitory computer-readable medium of claim 16, wherein the notification further comprises a recommendation to use network resources provided by a device other than the residential network router.
18. A method comprising: Access to electronic calendars from residential network routers; determining, by the residential network router, a plurality of events to save to the electronic calendar, wherein the plurality of events at least in part require simultaneous network resource usage; prioritizing the plurality of events using the residential network router; as well as Based on the prioritization, available network resources are allocated among the plurality of events using the residential network router.
19. A residential network router system comprising: a non-transitory memory for storing instructions; as well as one or more processors in communication with the non-transitory memory, the processors executing the instructions to perform a method comprising: Access to electronic calendars; determining a plurality of events saved to the electronic calendar, wherein the plurality of events at least in part require simultaneous network resource usage; prioritizing the plurality of events; and Based on the prioritization, available network resources are allocated among the plurality of events.
20. The residential network router system of claim 19, wherein the residential network router is included in a residential space having a plurality of residents, and wherein the plurality of events are associated with the residents of the residential space.
21. A non-transitory computer readable medium storing computer code executable by a processor to perform a method, the method comprising: receiving, via a user interface of an electronic calendar, a definition of an event to be saved to the electronic calendar, wherein the event at least in part requires usage of network resources; Saving the event in the electronic calendar; determining the priority of the event by the electronic calendar; The priority of the event is provided by the electronic calendar to a residential network router for use in allocating available network resources to the event.
22. The transitory computer-readable medium of claim 21, wherein the priority is manually assigned to the event using the user interface of the electronic calendar.
23. The transitory computer-readable medium of claim 22, wherein the priority is manually assigned by a creator of the event.
24. The non-transitory computer-readable medium of claim 21, wherein the priority is automatically assigned based on at least one of a rule and a machine learning model.
25. The transitory computer-readable medium of claim 21 , further comprising: receiving, by the electronic calendar from the residential network router, an indication of an amount of available network resources to allocate to the event, and A notification associated with the indication of the amount of available network resources allocated to the event is presented by the electronic calendar.
26. The transitory computer-readable medium of claim 25, wherein the notification indicates whether the amount of available network resources allocated to the event is sufficient to satisfy the network resource usage required by the event.
27. The transitory computer-readable medium of claim 26, wherein when the residential network router indicates that the amount of available network resources allocated to the event is insufficient to satisfy the network resource usage required by the event, the notification further comprises at least one of: a recommendation for an alternate time to schedule the event when there is a sufficient amount of network resources for the event, or A recommendation to use network resources provided by a device other than the residential network router.
Citation Information
Patent Citations
Telephony web event system and method
CN102227904A
Method and system for providing calender services in a universal plug and play home network environment
CN103563299A