Real-time application event detection for context-rich notifications and coaching
A realtime contextual event notification system that ingests events as streams from any authorized entity applies rules to the event streams, determines a context of an end-user who is a recipient of a targeted notification, and provides notifications to the end-user in accordance with the context. The event streams may come from multiple sources and rules may be applied to provide realtime contextual information associated with the end-user.
1 . A system for detecting application events during a communication between a first user and a second user, the system comprising:
a memory comprising executable instructions;
a processor configured to execute the executable instructions and cause the system to:
collect interaction data representing an interaction of the first user and the second user with an application protocol interface (API) during the communication;
analyze the interaction between the first user and the API to detect and identify an application event, wherein the application event is associated with a time of detection;
receive a stream of linguistic events determined from audio associated with the communication between the first user and the second user, wherein each linguistic event is associated with a time of detection;
enrich the identified application event with data from one or more additional streams comprising the stream of linguistic events by merging the identified application event with one or more linguistic events of the stream of linguistic events based on the associated times of detection;
generate a contextualized notification based on the enriched identified application event and identify additional information; and
present the contextualized notification to the first user via a user interface.
2 . The system of claim 1 , wherein the executable instructions further cause the system to present the additional information to the first user.
3 . The system of claim 1 , wherein the additional information comprises prompts for the first user.
4 . The system of claim 1 , wherein the interaction data comprises keystrokes, mouse clicks, screen touches, or data submissions.
5 . The system of claim 1 , wherein the interaction data is analyzed in real-time or near real-time.
6 . The system of claim 1 , wherein the contextualized notification includes an indication of the application event and contextual data.
7 . The system of claim 6 , wherein the contextual data includes application event messages received from a remote device over a socket connection.
8 . The system of claim 1 , wherein the executable instructions further cause the system to authenticate application event messages using a token contained within a header prior to analyzing the interaction data.
9 . The system of claim 1 , wherein the executable instructions further cause the system to:
determine a current state of the communication based on the interaction data; and
continuously update a cache based on the current state of the communication, wherein the cache is updated to reflect a most recent application event.
10 . The system of claim 1 , wherein the contextualized notification includes at least one interactive icon, and the executable instructions further cause the system to:
receive a user input via the at least one interactive icon; and
initiate a response action responsive to the user input.
11 . The system of claim 1 , wherein the contextualized notification identifies each merged event and the additional information includes an action for the first user to perform during the interaction with the second user.
12 . A non-transitory computer readable medium comprising instructions that, when executed by a processor of a processing system, cause the processing system to perform a method, the method comprising:
collecting interaction data representing an interaction of the first user and the second user with an application protocol interface (API) during a communication;
analyzing the interaction between the first user and the API to detect and identify an application event, wherein the application event is associated with a time of detection;
receiving a stream of linguistic events determined from audio associated with the communication between the first user and the second user, wherein each linguistic event is associated with a time of detection;
enriching the identified application event with data from one or more additional streams comprising the stream of linguistic events by merging the identified application event with one or more linguistic events of the stream of linguistic events based on the associated times of detection;
generating a contextualized notification based on the enriched identified application event and identify additional information; and
presenting the contextualized notification to the first user via a user interface.
13 . The non-transitory computer readable medium of claim 12 , the executable instructions further cause the system to present the additional information to the first user.
14 . The non-transitory computer readable medium of claim 12 , wherein the additional information comprises prompts for the first user.
15 . The non-transitory computer readable medium of claim 12 , wherein the interaction data comprises keystrokes, mouse clicks, screen touches, or data submissions.
16 . The non-transitory computer readable medium of claim 12 , wherein the interaction data is analyzed in real-time or near real-time.
17 . The non-transitory computer readable medium of claim 12 , wherein the contextualized notification includes an indication of the application event and contextual data.
18 . The non-transitory computer readable medium of claim 17 , wherein the contextual data includes application event messages received from a remote device over a socket connection.
19 . The non-transitory computer readable medium of claim 12 , wherein the executable instructions further cause the system to authenticate application event messages using a token contained within a header prior to analyzing the interaction data.
20 . The non-transitory computer readable medium of claim 12 , wherein the executable instructions further cause the system to:
determine a current state of the communication based on the interaction data; and
continuously update a cache based on the current state of the communication, wherein the cache is updated to reflect a most recent application event.
21 . The non-transitory computer readable medium of claim 12 , wherein the notification includes at least one interactive icon and the executable instructions further cause the system to:
receiving a user input via the at least one interactive icon; and
initiating a response action responsive to the user input.
22 . The non-transitory computer readable medium of claim 12 , wherein the contextualized notification identifies each merged event and the additional information includes an action for the first user to perform during the interaction with the second user.