# US 2019/0319909 A1 · System and method for enabling real-time eventing

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2019/0319909 A1
- Document ID: US20190319909A1
- Status: Published application
- Kind: A1
- Application number: 16/361,925
- Filed: 2019-03-22
- Published: 2019-10-17
- Earliest claimed: 2010-06-25
- Assignees: Twilio Inc.
- Applicants: Twilio Inc.
- Inventors: Jeffrey Lawson; John Wolthuis; Evan Cooke; Jeffrey Comer
- Web page: https://patentgrep.com/patent/US20190319909A1

## CPC

- H04L 51/52: for supporting social networking services
- G06F 9/542: {Event management; Broadcasting; Multicasting; Notifications}
- H04L 51/04: Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L 51/212: using filtering or selective blocking
- H04L 51/214: using selective forwarding
- G06F 2209/544: Remote
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method and system for real-time eventing including interacting with at least one configuration attribute according to instructions specified through an application programming interface (API); adding subscribers for an event channel; generating an event from operation of an application; publishing the event message to the event channel on an event router; processing the event message according to the at least one configuration attribute; identifying a subscriber to the event channel; and sending the event from the event router to the subscriber.

## Claims

### Claim 1

(canceled)

### Claim 2

A method comprising:
receiving a first event subscription request identifying a first user account and a first type of event;
in response to receiving the first event subscription request, adding the first user account to a list of subscribers of a first event channel for the first type of event, the first event channel being associated with a first sequence for processing events of the first type;
receiving a first event message from an authenticated publisher system, the first event message indicating an occurrence of the first type of event during operation of an application;
in response to receiving the first event message, processing the first type of event according to the first sequence, the first sequence specifying routing the first event message to user accounts included in the list of subscribers of the first event channel; and
sending the first event message to a client device associated with the first user account as a result of the first user account being included in the list of subscribers of the first event channel.

### Claim 3 (depends on 2)

The method of claim 2, wherein the first sequence further specifying routing the first event message to user accounts included in a list of subscribers of a second event channel for a second type of event.

### Claim 4 (depends on 3)

The method of claim 3, further comprising:
sending the first event message to a second client device associated with a second user account as a result of the second user account being included in the list of subscribers of the second event channel.

### Claim 5 (depends on 2)

The method of claim 2, further comprising:
in response to receiving the first event message, identifying a set of subscribers that are subscribed to the first event channel, the set of subscribers including the first subscriber.

### Claim 6 (depends on 2)

The method of claim 2, further comprising:
receiving, from at least one subscriber system, a first event processing attribute describing the first sequence for processing events of the first type, the first event processing attribute received via an application programming interface (API).

### Claim 7 (depends on 2)

The method of claim 2, wherein the authenticated publisher system generates the first event message responsive to the occurrence of the first type of event during operation of the application.

### Claim 8 (depends on 2)

The method of claim 2, further comprising:
receiving at least one routing attribute from the authenticated publisher system via an API, the routing attribute providing details on routing the first event message to user accounts included in the list of subscribers of the first event channel.

### Claim 9

A system comprising:
one or more computer processors; and
one or more computer-readable mediums storing instructions that when executed by the one or more computer processors, cause the system to perform operations comprising:
receiving a first event subscription request identifying a first user account and a first type of event;
in response to receiving the first event subscription request, adding the first user account to a list of subscribers of a first event channel for the first type of event, the first event channel being associated with a first sequence for processing events of the first type;
receiving a first event message from an authenticated publisher system, the first event message indicating an occurrence of the first type of event during operation of an application;
in response to receiving the first event message, processing the first type of event according to the first sequence, the first sequence specifying routing the first event message to user accounts included in the list of subscribers of the first event channel; and
sending the first event message to a client device associated with the first user account as a result of the first user account being included in the list of subscribers of the first event channel.

### Claim 10 (depends on 9)

The system of claim 9, wherein the first sequence further specifying routing the first event message to user accounts included in a list of subscribers of a second event channel for a second type of event.

### Claim 11 (depends on 10)

The system of claim 10, the operations further comprising:
sending the first event message to a second client device associated with a second user account as a result of the second user account being included in the list of subscribers of the second event channel.

### Claim 12 (depends on 9)

The system of claim 9, the operations further comprising:
in response to receiving the first event message, identifying a set of subscribers that are subscribed to the first event channel, the set of subscribers including the first subscriber.

### Claim 13 (depends on 9)

The system of claim 9, the operations further comprising:
receiving, from at least one subscriber system, a first event processing attribute describing the first sequence for processing events of the first type, the first event processing attribute received via an application programming interface (API).

### Claim 14 (depends on 9)

The system of claim 9, wherein the authenticated publisher system generates the first event message responsive to the occurrence of the first type of event during operation of the application.

### Claim 15 (depends on 9)

The system of claim 9, the operations further comprising:
receiving at least one routing attribute from the authenticated publisher system via an API, the routing attribute providing details on routing the first event message to user accounts included in the list of subscribers of the first event channel.

### Claim 16

A non-transitory computer-readable medium storing instructions that when executed by one or more computer processors of one or more computing devices, cause the one or more computing devices to perform operations comprising:
receiving a first event subscription request identifying a first user account and a first type of event;
in response to receiving the first event subscription request, adding the first user account to a list of subscribers of a first event channel for the first type of event, the first event channel being associated with a first sequence for processing events of the first type;
receiving a first event message from an authenticated publisher system, the first event message indicating an occurrence of the first type of event during operation of an application;
in response to receiving the first event message, processing the first type of event according to the first sequence, the first sequence specifying routing the first event message to user accounts included in the list of subscribers of the first event channel; and
sending the first event message to a client device associated with the first user account as a result of the first user account being included in the list of subscribers of the first event channel.

### Claim 17 (depends on 16)

The non-transitory computer-readable medium of claim 16, wherein the first sequence further specifying routing the first event message to user accounts included in a list of subscribers of a second event channel for a second type of event.

### Claim 18 (depends on 17)

The non-transitory computer-readable medium of claim 17, the operations further comprising:
sending the first event message to a second client device associated with a second user account as a result of the second user account being included in the list of subscribers of the second event channel.

### Claim 19 (depends on 16)

The non-transitory computer-readable medium of claim 16, the operations further comprising:
in response to receiving the first event message, identifying a set of subscribers that are subscribed to the first event channel, the set of subscribers including the first subscriber.

### Claim 20 (depends on 16)

The non-transitory computer-readable medium of claim 16, the operations further comprising:
receiving, from at least one subscriber system, a first event processing attribute describing the first sequence for processing events of the first type, the first event processing attribute received via an application programming interface (API).

### Claim 21 (depends on 16)

The non-transitory computer-readable medium of claim 16, wherein the authenticated publisher system generates the first event message responsive to the occurrence of the first type of event during operation of the application.
