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:
|
| 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. |