ExchangeODataEventsProcessor

The Microsoft Graph API allows you to register event handlers, so that notifications are sent to a web server when various events take place. The ExchangeODataEventsProcessor is a NiFi Ingest processor that handles these events.

There are many use cases for this processor - for example you could use it to ingest new messages as soon as they are received (real-time ingestion), rather than having a connector retrieve messages at regular intervals. You can also use the processor to create an automatic response to e-mail messages sent to a specific mailbox. For example, you could create a NiFi dataflow that answers questions, or processes requests like "Please run OCR on this file", by reading messages and providing suitable responses.

To receive notifications from Microsoft, you must have a public-facing web server with a trusted SSL certificate. The ExchangeODataEventsProcessor starts its own web server but you must provide the certificate, and you might want to set up a reverse proxy.

The processor produces FlowFile documents that are compatible with the Exchange OData Connector processors. The FlowFiles produced by the ExchangeODataEventsProcessor do not contain any binary files - for example message attachments. However, you can route the FlowFiles to a GetExchangeOData processor to obtain the files.

Properties

Name Description
IDOL License Service

An IdolLicenseServiceImpl that provides a way to communicate with a Knowledge Discovery License Server.

Event Types

A comma-separated list of event types to request:

  • created
  • updated
Event Web Server Host The processor starts a web server to receive event notifications from Microsoft. This parameter specifies the host name to bind to.
Event Web Server Port The processor starts a web server to receive event notifications from Microsoft. This parameter specifies the port number to use.
OAuth site name The processor must be able to use the Microsoft Graph API. To configure OAuth authentication, right-click the processor and click Advanced, and then follow the instructions on the GUIDED SETUP tab.
OAuth sites file The processor must be able to use the Microsoft Graph API. To configure OAuth authentication, right-click the processor and click Advanced, and then follow the instructions on the GUIDED SETUP tab.
Proxy Configuration Service A ProxyConfigurationServiceImpl to use when connecting to the Microsoft Graph API. The processor has to register the Event Web Server with Microsoft.
SSL Config Service An IdolSSLConfigServiceImpl to use to configure the SSL settings for the Event Web Server. The web server must have a trusted SSL certificate (not a self-signed certificate).
Enabled accounts only Specifies whether to ignore a mailbox if the associated user account is not enabled. To ingest shared mailboxes you might need to set this parameter to FALSE (user accounts for shared mailboxes are normally disabled).
Event Web Server Max Request Size The maximum size (in bytes) for incoming requests to the web server.
Event Web Server Threads The number of threads to use for processing incoming requests.
Event Web Server Trace Logging Enabled To log debug-level information about incoming requests, set this property to TRUE.
Event Web Server Use SSL To configure the events web server to accept secure connections, set this property to TRUE.
Explicit Users An explicit list of users whose mailboxes you want to monitor for events. If you set this property, User cant have regex and User must have regex are ignored.
Receiver Expiry If the Receiver URL is not available for this time duration, Microsoft removes the subscription (no further events are sent).
Receiver URL The URL for Microsoft to send events to.
Reply Body Content Type The Content-Type for reply message bodies. You can route an event FlowFile back to the processor, to send a reply to the event email. This property specifies the content-type of the reply message body, provided in the FlowFile document content.
User cant have regex A regular expression to restrict the mailboxes to subscribe to. If a user's e-mail address matches the regular expression, their mailbox is ignored.
User must have regex A regular expression to restrict the mailboxes to subscribe to. A user's e-mail address must match the regular expression, otherwise their mailbox is ignored.

Relationships

Name Description
created FlowFiles that represent something being created in Microsoft Exchange.
updated FlowFiles that represent something being updated in Microsoft Exchange.
success Successfully handled ProcessEvent FlowFiles.
failure Unsuccessfully handled ProcessEvent FlowFiles.