Exchange Listener synchronization service

Beginner

The Exchange Listener service synchronizes Creatio with MS Exchange and IMAP/SMTP mail services using a subscription mechanism.

Workflow 

The service includes two required components:

  • The primary Exchange Listener module.
  • NoSQL Redis DBMS.
The Exchange Listener synchronization service workflow
scr_ExchangeListener_components.png

Exchange Listener module 

Uses the mailbox credentials to create a subscription to “new message” events. The open subscription remains in the component memory, ensuring fast response times to new emails. When the module receives a corresponding event, the email instance loads.

NoSQL Redis DBMS 

Used to create a scalable and fault-tolerant processing node system. The Redis repository contains the information about the served mailboxes. This lets any container process Creatio queries to add a new subscription or check the status of a specific subscription regardless of the subscription node.

Redis requirements:

  • Anonymous access allowed.
  • Separate database for the Exchange Listener service operation available.

Scalability 

By default, separate StatefulSet type nodes process queries at the rate of 1 processor replica per 50 active mailboxes. The replicaCount parameter manages the number of replicas. You can increase the number of processors by specifying the value during deployment. You can configure automatic scaling depending on the number of active subscriptions.

Compatibility with Creatio products 

The Exchange Listener synchronization service 1.0 (MS Exchange support) for Creatio in the cloud is compatible with all Creatio products of version 7.15.2 and later.

The Exchange Listener synchronization service 1.0 (IMAP/SMTP support) for Creatio in the cloud is compatible with all Creatio products of version 7.16 and later.

Deployment options 

We recommend using the Kubernetes orchestrator and Helm package manager to deploy the service and ensure the application's operation in the production environment. Learn more about deploying the synchronization service via Kubernetes in the Exchange Listener synchronization service user guide article.

You can also use Docker to speed up deployment in the development environment. Learn more about deploying the containerized service version in the Exchange Listener synchronization service user guide article.

The sufficient condition for service deployment is using in-memory storage.