×

Providing real-time events to applications

  • US 10,291,607 B1
  • Filed: 07/29/2016
  • Issued: 05/14/2019
  • Est. Priority Date: 02/02/2016
  • Status: Active Grant
First Claim
Patent Images

1. A system, comprising:

  • a hardware processor configured to;

    receive, at one of a plurality of nodes in a system, a connection request from a first client device, wherein the connection request includes authentication information;

    determine whether the first client device has previously connected to the system;

    when the first client device has not previously connected to the system, authenticate the first client device using the authentication information contained in the connection request;

    after the first client device is authenticated, generate an ephemeral identifier for the first client device by concatenating a node identifier with hashed identifying information of the first client device, wherein the node identifier uniquely identifies the node to which the first client device is connected to amongst the plurality of nodes in the system;

    bind the first client device to the generated ephemeral identifier; and

    create an entry in a distributed routing table for the first client device that includes the ephemeral identifier;

    provide the entry to the plurality of nodes in the system to update the distributed routing table located on each of the plurality of nodes;

    maintain an incoming message queue to store one or more communications received from a plurality of second client devices; and

    deliver, via a secure channel, a first communication from the incoming message queue to the first client device based on the entry for the first client device in the distributed routing table; and

    a memory coupled to the hardware processor and configured to provide the hardware processor with instructions.

View all claims
  • 4 Assignments
Timeline View
Assignment View
    ×
    ×