Abstract:
The disclosed embodiments provide a system that delivers content to an electronic device, The system includes a content provider that obtains a public address of the electronic device from a first request for the content from the electronic device, Next, the content provider uses the public address to identify a local caching server on a local area network (LAN) of the electronic device. Finally, the content provider provides a local address of the local caching server to the electronic device, wherein the local address is used by the electronic device to obtain the content from the local caching server and the LAN without accessing a content delivery network (CDN) outside the LAN.
Abstract:
Systems, methods, devices and non-transitory, computer-readable mediums are disclosed for device-to-device caching. In some implementations, a method includes: registering, by an electronic device, a cache service on a local area network (LAN), the LAN including other registered electronic devices; generating, by the electronic device, a content map for cached content, the content map generated from descriptors of the cached content and including data indicating that the cached content described by the content descriptors is possibly cached or is definitely not cached by the electronic device; advertising, by the electronic device, the registered cache service and the content map; receiving, by the electronic device, a request for content from a requesting electronic device registered on the LAN; determining, by the electronic device, that the requested content is cached; and sending, by the electronic device, the requested content to the requesting electronic device.
Abstract:
A method performed by a notification handler process running on a device includes receiving a first push notification for a first application while the recipient device is inactive; determining that delivery of the first push notification would cause the device to become active without prompting a user of the device to interact with the first application; in response to determining what delivery of the first push modification would cause, locally storing the first push notification; receiving a second push notification for a second application while the recipient device is still inactive; determining that delivery of the second push notification would cause the device to become active prompting the user to interact with the second application; and in response to determining what delivery of the second push modification would cause, delivering the received second push notification to the second application and the stored first push notification to the first application.
Abstract:
In the described embodiments, local caching servers (LCSs) are configured to cache content so that the content can be acquired by client electronic devices that are located on local area networks (LANs) with the LCSs. In some embodiments, to enable the acquisition of the cached content, a client electronic device sends, to a registration server, a request for identifiers for LCSs that are located on a LAN with the client electronic device. The request includes one or more “listen ranges,” each of which includes an indication of client electronic devices for which a corresponding LCS is to provide content. The registration server uses the listen ranges to select one or more LCSs, and returns identifiers for the one or more LCSs to the client electronic device. Using the one or more identifiers, the client electronic device acquires the content from an LCS via the LAN.
Abstract:
A method performed by a notification handler process running on a device includes receiving a first push notification for a first application while the recipient device is inactive; determining that delivery of the first push notification would cause the device to become active without prompting a user of the device to interact with the first application; in response to determining what delivery of the first push modification would cause, locally storing the first push notification; receiving a second push notification for a second application while the recipient device is still inactive; determining that delivery of the second push notification would cause the device to become active prompting the user to interact with the second application; and in response to determining what delivery of the second push modification would cause, delivering the received second push notification to the second application and the stored first push notification to the first application.
Abstract:
In the described embodiments, local caching servers (LCSs) are configured to cache content so that the content can be acquired by client electronic devices that are located on local area networks (LANs) with the LCSs. In some embodiments, to enable the acquisition of the cached content, a client electronic device sends, to a registration server, a request for identifiers for LCSs that are located on a LAN with the client electronic device. The request includes one or more “listen ranges,” each of which includes an indication of client electronic devices for which a corresponding LCS is to provide content. The registration server uses the listen ranges to select one or more LCSs, and returns identifiers for the one or more LCSs to the client electronic device. Using the one or more identifiers, the client electronic device acquires the content from an LCS via the LAN.
Abstract:
The described embodiments electronically deliver content (e.g., digitally-encoded files) to an electronic device using groups of accounts. In the described embodiments, a content provider obtains a public address of the electronic device and at least one account identifier for the electronic device from a request for the content received from the electronic device. Next, the content provider uses the public address to identify a local caching server (LCS) on a local area network (LAN) to which the electronic device is connected and uses the account identifier to determine that an account associated with the LCS is associated with a group of accounts with which an account for the electronic device is also associated. The content provider then provides a local address of the LCS to the electronic device, which uses the local address to obtain the content from the LCS via the LAN without accessing a content delivery network outside the LAN.