User: Xavier/EventStream

From Genesys Documentation
Jump to: navigation, search

Event Stream[ | edit source]

Event Stream Administrator Guide[ | edit source]

Get Started[ | edit source]

Event Stream is a microservice that runs on the Genesys Multicloud CX platform. Event Stream subscribes to topics from Multicloud CX Kafka instance and passes them to either Kafka services or HTTPS endpoints managed by customers. Customers can subscribe to events by providing their endpoints.

[XR: Add Architecture diagram ]

Features[ | edit source]

Event Stream supports:

  • Multitenancy - If a topic is flagged as a multi-tenant, Event Stream will validate the `ccid` or `tenantID` to determine where the topic is sent to.
  • Multiple regions - Event Stream periodically checks if the tenant is in the correct primary region when processing and forwarding events.
  • Delivered Messages - As the fromBeginning flag is set to false for all consumers, new endpoints will receive messages generated after the endpoint has started. Any outages will resume from the last topic sent.
  • Security - Event Stream uses SSL and HTTPS connections when connecting to clients or endpoints.
  • Message Formats - Event Streams supports both JSON and AVRO as incoming message formats and all outgoing messages are in JSON format.
  • Filtering - Event Stream can be configured to filter out events and specific fields in messages. This is useful in parsing out non-relevant data or PII data.
  • Compression - Event Stream supports GZIP, LZ4, and Snappy compression algorithms for incoming messages. For outgoing messages, Event Streams uses GZIP for HTTPS endpoints and a configurable compression algorithm for Kafka endpoints.
  • Usage Tracking - The number and size of messages processed can be tracked for usage analysis using a REST API call.


Event Streams Components[ | edit source]

[XR: This can be a visual representation or a micro-video with brief descriptions of components.]

  • Kafka Client
  • Kafka Consumer
  • Event Endpoint
    • Event Handler
    • Event Processor
    • Event Producer
    • Kafka Producer
    • Config Service

Event Processing[ | edit source]

[XR: This can be a visual representation or a video on How do events flow through the endpoints?]

APIs[ | edit source]

[XR: How are we exposing APIs? As an OpenAPI/Swagger doc or does this go into a table as in the HLD doc?]

  • Endpoint Configuration APIs
  • Schema API
  • Usage API
  • Service Team Topic Testing API

Environment Variables[ | edit source]

[XR: This should go into the Deployment section of this doc or the PE doc.]]

Configuring a Service for Event Streams[ | edit source]

To get your topics into Event Streams, create a topic-details.json file

To have their topic supported, Genesys service teams can open a pull request in the Event Streams repo by filling in the JSON template outlining the details of their topic. The PR should consist of a new folder under the service-teams-topics folder. This folder should contain a file named "topic-details.json". The format of this file is outlined below. The avro file should also be added to this folder if applicable.

A topic can either be multi tenanted or single tenanted. If it is multi tenanted than there will only be one consumer group for all ccids for this topic has events for all ccids. If it is a single tenant topic there will be a one dedicated consumer group per ccid.

Retrieved from "https://all.docs.genesys.com/User:Xavier/EventStream (2026-05-16 03:50:39)"