Patent classifications
H04L67/1095
Streaming synchronized media content to separate devices
Described are system, apparatus, article of manufacture, method, or computer program product embodiments for controlling streaming of media content. An embodiment operates by halting a presentation of future content from a buffer upon determining that the buffer is exhausted of content to present. The embodiment includes receiving one or more packets over a network connection, the one or more packets including media information corresponding to a first portion of streaming media content, in which the first portion corresponds to a second portion of the streaming media content. The one or more packets in a buffer are stored as buffered content. Responsive to determining that the network connection is not experiencing a burst condition, the buffer is trimmed. Then, presentation of buffered content is resumed and the first portion is caused to be presented in sync with the second portion.
Streaming synchronized media content to separate devices
Described are system, apparatus, article of manufacture, method, or computer program product embodiments for controlling streaming of media content. An embodiment operates by halting a presentation of future content from a buffer upon determining that the buffer is exhausted of content to present. The embodiment includes receiving one or more packets over a network connection, the one or more packets including media information corresponding to a first portion of streaming media content, in which the first portion corresponds to a second portion of the streaming media content. The one or more packets in a buffer are stored as buffered content. Responsive to determining that the network connection is not experiencing a burst condition, the buffer is trimmed. Then, presentation of buffered content is resumed and the first portion is caused to be presented in sync with the second portion.
System and method for offline-first application development
A system to synchronize application data bidirectionally between N clients and one server, by: (a) pushing mutations made in the client to the server, wherein each mutation is comprised of a mutation name identifying the type of mutation, and arguments provided by the application modifying the behavior of the mutation, and the pusher also pushes a client ID and mutation ID for each mutation to the server; (b) pulling server differentials to the client; (c) storing key/value pairs in a versioned cache, wherein the keys are text strings and the values are data provided by an application in the client; and (d) resolving conflicts between the client and the server with a rebaser that: forks the cache to create a synch branch when the client receives the latest server differential, applies the latest received server differential to the synch branch, applies only those mutations to the synch branch that have not already been acknowledged by the server, and then makes the synch branch the main branch of the cache.
System and method for offline-first application development
A system to synchronize application data bidirectionally between N clients and one server, by: (a) pushing mutations made in the client to the server, wherein each mutation is comprised of a mutation name identifying the type of mutation, and arguments provided by the application modifying the behavior of the mutation, and the pusher also pushes a client ID and mutation ID for each mutation to the server; (b) pulling server differentials to the client; (c) storing key/value pairs in a versioned cache, wherein the keys are text strings and the values are data provided by an application in the client; and (d) resolving conflicts between the client and the server with a rebaser that: forks the cache to create a synch branch when the client receives the latest server differential, applies the latest received server differential to the synch branch, applies only those mutations to the synch branch that have not already been acknowledged by the server, and then makes the synch branch the main branch of the cache.
Scalable proxy clusters
The invention enables high-availability, high-scale, high security and disaster recovery for API computing, including in terms of capture of data traffic passing through proxies, routing communications between clients and servers, and load balancing and/or forwarding functions. The invention inter alia provides (i) a scalable cluster of proxies configured to route communications between clients and servers, without any single point of failure, (ii) proxy nodes configured for implementing the scalable cluster (iii) efficient methods of configuring the proxy cluster, (iv) natural resiliency of clusters and/or proxy nodes within a cluster, (v) methods for scaling of clusters, (vi) configurability of clusters to span multiple servers, multiple racks and multiple datacenters, thereby ensuring high availability and disaster recovery (vii) switching between proxies or between servers without loss of session.
Scalable proxy clusters
The invention enables high-availability, high-scale, high security and disaster recovery for API computing, including in terms of capture of data traffic passing through proxies, routing communications between clients and servers, and load balancing and/or forwarding functions. The invention inter alia provides (i) a scalable cluster of proxies configured to route communications between clients and servers, without any single point of failure, (ii) proxy nodes configured for implementing the scalable cluster (iii) efficient methods of configuring the proxy cluster, (iv) natural resiliency of clusters and/or proxy nodes within a cluster, (v) methods for scaling of clusters, (vi) configurability of clusters to span multiple servers, multiple racks and multiple datacenters, thereby ensuring high availability and disaster recovery (vii) switching between proxies or between servers without loss of session.
Reservation management for polling requests in a communication system
Techniques for committing back end computing resources to an online stream of requests for data from client devices are described herein. A polling schedule server (e.g., a reservation management system), may receive polling reservation requests from a plurality of client devices, may evaluate each client device's need for “fresh” data based on a number of input signals, and may assign the client device a polling slot (e.g., a reservation for a future polling time). The polling scheduler server may subsequently receive a polling request from a client device and, upon validating a token received from the client device as well as a difference between an assigned polling time and the polling request timestamp, may grant the polling request by transmitting a request to one or more communication system servers, receiving data from the communication system servers, and providing the data to the client device.
Reservation management for polling requests in a communication system
Techniques for committing back end computing resources to an online stream of requests for data from client devices are described herein. A polling schedule server (e.g., a reservation management system), may receive polling reservation requests from a plurality of client devices, may evaluate each client device's need for “fresh” data based on a number of input signals, and may assign the client device a polling slot (e.g., a reservation for a future polling time). The polling scheduler server may subsequently receive a polling request from a client device and, upon validating a token received from the client device as well as a difference between an assigned polling time and the polling request timestamp, may grant the polling request by transmitting a request to one or more communication system servers, receiving data from the communication system servers, and providing the data to the client device.
Power contact health assessor apparatus and method
A system includes a dry contact with a first pair of switchable electrodes, a wet contact with a second pair of switchable electrodes, an arc suppressor, and a controller circuit operatively coupled to the arc suppressor and the first and second pairs of switchable electrodes. The controller circuit is configured to detect a failure of the wet contact and determine a stick duration associated with the first pair of switchable electrodes. The stick duration is based on a duration between an instance when a coil of the dry contact is deactivated and an instance of separation of the first pair of switchable electrodes during deactivation of the coil. The controller circuit generates, in-situ and in real-time, health assessment for the first pair of switchable electrodes based on a comparison of the determined stick duration with an average stick duration associated with a window of observation.
Power contact health assessor apparatus and method
A system includes a dry contact with a first pair of switchable electrodes, a wet contact with a second pair of switchable electrodes, an arc suppressor, and a controller circuit operatively coupled to the arc suppressor and the first and second pairs of switchable electrodes. The controller circuit is configured to detect a failure of the wet contact and determine a stick duration associated with the first pair of switchable electrodes. The stick duration is based on a duration between an instance when a coil of the dry contact is deactivated and an instance of separation of the first pair of switchable electrodes during deactivation of the coil. The controller circuit generates, in-situ and in real-time, health assessment for the first pair of switchable electrodes based on a comparison of the determined stick duration with an average stick duration associated with a window of observation.