Event Connectors

The Connectors functionality allows to interact with external systems. Connectors are described in DES through interfaces and operations.

Integration with DES

DES allows to use connectors through our Workflow Modeler. Under Operations ribbon bar section, an Event Library is available and allow to set up connectors.

Security

Security rely on identities. Settings around security are made at interface level through the security section. Depending on these settings, an identity could be required and can be:

Supported connectors

Amazon Simple Queue Service

Interface

Host

Server SQS queue URL as provided in AWS console (formatted as https://sqs.<region-name>.amazonaws.com/<id>). It is not a mandatory field. If not set up, endpoint will be set up based on provided region and credentials.

Operation

Receive message

Address

Queue name

Region

Region identifier

Send to queue

Address

Queue name

Region

Region identifier

Fifo queue

Boolean to specify if queue is fifo or not

Authentication

DES supports 2 types of identity:

  • If an http with a basic scheme is used, a secret key id and an access key id must be provided, provided through IAM security credentials panel in AWS console

  • If a web identity token and IAM role ARN are set up, managed identity supports it

More information around IAM role and policies can be found here
Managed identity are usually set for client hosted environment

Message datatype

Body

Content of the message

Attributes

Attributes to add custom metadata to Amazon SQS messages for your applications

Apache Kafka

Interface

Host

Apache Kafka Server URL (should start with kafka://)

Operation

Receive from topic

Address

Topic name

Send to topic

Address

Topic name

Authentication

Apacke Kafka event connector support identity http with a basic scheme which means user name and password authentication.

Message datatype

Headers

It is a map of key value

Key

Attribute considered for both producer and consumer.

For producer, key determines which partition the message will go to (even though it is not the partition that is set but a key).

If not provided, Kafka uses a round-robbin approach to distribute messages across partitions

Body

Content of the message

Digital enterprise suite events

The definition of the topics, messages and security constraints can be found under link:https://<instance>.trisotech.com/publicapi/doc-events

Operation

For sending and receiving messages, parameters depend on what topic is being set.

In modeler, a dedicated component guides user through configuration. Below can be found parameters grouped per message type.

asset

N/A

client-app

clientId

connector

repo, group, artifact, version

containers

repo, group, artifact, version

datastore

id

email

N/A

environment

repo, group, artifact, version

graph

graphId

group

groupId

identity

N/A

integration

connectorId

issue

repoId

preference

N/A

repository

repoId

security

N/A

service

repo, group, artifact, version

task

repo, group, artifact, version

transformation

transformationId

user

N/A

user-event

repo, group, artifact, version

web-session

N/A

Authentication

Authentication relies on user’s identity.

Authorisation relies on producer that controls consumers who can receive these messages. Authorization is based on services and not identities. It is set through repo/group/artifact/version parameters.

Message datatype

Based on topic and message, datatype will differ. Please refer to documentation provided at the top of this section to get more information about datatypes related to each message.

Email service

This service lets user send email.

Interface

N/A

Operation

Send email

From

Sender’s address. Defaulted to noreply@trisotech.com

Authentication

N/A

Message datatype

To

Recipient’s email address. Support list of emails

Reply-To

Email address the recipient woudl reply to

Cc

Carbon copy. Support list of emails

Bcc

Blind copy carbon. Support list of emails

Subject

Subject of the enail

Body

Content of the email

Attachments

Files attached to the email. Support list of files

FHIR

Interface

Host

FHIR server URL

Operation

Receive based on criteria

Criteria

Type of resource and desired value to filter out resources (e.g. Patient?gender=male)

Authentication

Depending on how FHIR server is implemented, authentication could be required.

Message datatype

Datatype is by default set to Any. It means that depending on which resource is targeted, user can update message datatype to easily target most valuable fields.

If datatype is still set to Any, then everything from the payload of the message will be set as data.

Google Pub/Sub

Interface

N/A

Operation

Send to topic

Address

Address is the URL of the topic as provided in Google cloud console (e.g. projects/<project-id>/topics/<topic-name>)

Receive from subscription

Address

Address is the URL of the subscription as provided in Google cloud console (e.g. projects/<project-name>/subscriptions/<subscription-name>)

Authentication

DES supports 2 types of identity:

  • If an http with a bearer scheme is used, client credentials generated using Google cloud console as JSON must be base 64 encoded as the token

  • If a managed identity is used, client credentials generated using Google cloud console is stored and retrieved based on Google Pub/Sub credentials resolution logic

Message datatype

Datatype is split between body which is used to set or retrieve message’s content.

Attributes part of the message datatype is used to retrieve or set additional metadata about the message.

IMAP

IMAP is an internet standard protocol used by email clients to retrieve email messages.

Interface

Host

As specified in targeted email client’s documentation, it is the IMAP server’s address (e.g. imap.googlemail.com:993)

Operation

Receive based on topic or subscription

Mimetype

Email body’s mimetype. It can be either text/plain or text/html

Folder

Targeted folder (e.g. inbox)

Authentication

Authentication settings must be updated according to email client’s security guidelines. If a username and a password are required, then security must be of type http with a basic scheme which means user name and password authentication.

Message datatype

Below are listed message datatype’s fields.

To

List of recipients

From

List of senders

Reply-to

List of recipients to reply to

Cc

List of carbon copies

Bcc

List of blind carbon copies

Subject

Subject of the email

Body

Body of the email (can be text plain or html)

Attachments

List of files attached to the email

RabbitMQ (AMQP)

Interface

Host

Server address of RabbitMQ broker (should starts with amqps://)

Operation

Receive from queue

Address

Queue’s name

Prefetch

Number of messages a broker sends to a consumer without waiting for acknowledgement (defaulted to 1)

Send to queue

Address

Queue’s name

Priority

Message’s priority (accepted values are between 0 and 255 with higher number meaning higher priority)

Exchange name

Connect exchanges and queues to define how mesages are routed. It is the name of the exchange (it must not exceed 255 characters long)

Delivery mode

Delivery mode of the message. Its value must be either 1 (transient) or 2 (persistent). Defaulted to 1

Authentication

Authentication is of type http with a basic scheme which means user name and password authentication.

Message datatype

Message datatype is split between headers and body:

  • Headers provide additional information about the message, such as content type or custom application-specific data

  • Body contains the payload of the message. Its default datatype is set to any, but if a structured datatype is set, message’s payload will be parsed accordingly

Teams

MS Teams connector is meant to interact with an outgoing webhook. Documentation on how to create an outgoing webhook can be found here.

No configuration is required on interface and operation level as it relies on how outgoing webhook is configured.

Interface

N/A

Operation

Receive message from a channel

N/A

Authentication

Authentication relies on credntials settings inside Admin product Notification Channel.

Message datatype

Below are listed fields of the message.

Id

Identifier of the message

Timestamp

Date and time the message was sent

Service URL

URL of the service

Channel id

Id of the channel

Text

Actual text content of the message

From

Information about the user who sent the message

Conversation

Information about conversation

Recipient

Information about the recipient

From, Recipient and Conversation are complex fields. Except for the latter one, it contains an aadObjectId which is a unique identitier assigned by Azure AD.

Twilio

Interface

Host

REST API endpoint address

Operation

Receive incoming messages from phone number SID

Phone number SID

SID of the phone number to be used

Authentication

Authentication is of type http with a basic scheme which means user name and password authentication.

Message datatype

Complete information about message datatype’s fields is available here.