Exchange (CMIS Binding): Difference between revisions

From Grooper Wiki
Line 48: Line 48:
=== Importing ===
=== Importing ===
==== Submitting an Import Job with Exchange from the Batches Page ====
==== Submitting an Import Job with Exchange from the Batches Page ====
[https://app.supademo.com/demo/cmab8oykh0001zi0ixt05vy3r?step=1 Click here for an interactive walkthrough]


# Click the Imports icon.
# Click the Imports icon.
Line 60: Line 59:
# When finished, click Submit.
# When finished, click Submit.
# Once your Import Job is complete, go to the Design page, then Batches --> Test --> Imported Batches and select the newly imported Batch to view the contents.
# Once your Import Job is complete, go to the Design page, then Batches --> Test --> Imported Batches and select the newly imported Batch to view the contents.
<div style="position: relative; box-sizing: content-box; max-height: 80vh; max-height: 80svh; width: 100%; aspect-ratio: 1.7777777777777777; padding: 40px 0 40px 0;"><iframe src="https://app.supademo.com/embed/cmab8oykh0001zi0ixt05vy3r?embed_v=2&utm_source=embed" loading="lazy" title="Submitting an Import Job with Exchange" allow="clipboard-write" frameborder="0" webkitallowfullscreen="true" mozallowfullscreen="true" allowfullscreen style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe></div>


=== Exporting ===
=== Exporting ===

Revision as of 08:16, 19 September 2025

This article is about the current version of Grooper.

Note that some content may still need to be updated.

2025 20232.72

Exchange is a connection option for cloud CMIS Connections. It connects Grooper to Microsoft Exchange email servers (including Outlook servers) for import and export operations.

The Exchange Connection Type allows you to access Outlook files and folders. You can access mail messages, calendar appointments, contact cards, and tasks all using this binding. Once connected, you can import full mail message threads and attached files into Grooper.

About

Microsoft Exchange Server is "a mail server and calendaring server developed by Microsoft".

  • Microsoft Outlook is an email client that is usually hosted on Exchange servers.
    • If using Outlook with a Microsoft 365 subscription, your email is (typically) hosted on Exchange Online (outlook.office365.com).
    • In corporate environments, Outlook often connects to an on-premise Exchange server managed by the organizations IT.

The "Exchange" CMIS Binding provides Grooper connectivity to Microsoft Exchange mail servers (on-prem Exchange or Exchange Online) via Exchange Web Services. This enables Grooper to access, search and manage mail messages, appointments, contacts and tasks from one or more Exchange mailboxes. Mailboxes are exposed to Grooper as a CMIS Repository. CMIS Repository nodes are created as children of the CMIS Connection by importing a reference to their source location.

The Exchange CMIS Repository allows Grooper to "see" emails in the mailbox. Once a CMIS Repository is created, you can import, browse and query emails from Grooper.

  • The Exchange binding can be used for import operations via CMIS Import using "Import Descendants" or "Import Query Results".
  • It can be used for export operations via CMIS Export.
    • While it's common to import documents from an email source, it's not common to export documents to an email source. While exporting to a CMIS Repository using the Exchange binding is technically possible, it is not common. While exporting to an Exchange CMIS Repository is partially documented in this article, it is not widely done in production scenarios.

How To: Create a New Exchange Connection

  1. Expand your Projects Folder.
  2. Right-click the Project.
  3. Select "Add", then "CMIS Connection".
  4. Name your CMIS Connection.
  5. Then click "Execute."
  6. On the CMIS Connection tab, select "Exchange" from the "Connection Settings" drop-down menu.
  7. Enter the host name or IP address of the Microsoft exchange server.
    • For example, outlook.office365.com is the hostname for exchange online.
  8. Choose your Authentication Method.
    • Auto Authentication - Authenticates automatically using the current Windows user's credentials.
    • Basic Authentication - Implements Basic HTTP Authentication as defined in RFC-7617. If you choose this option, you will need to enter your user name and password
    • NTLM Authentication - Implements NTLM Authentication as defined in MS-NLMP. If you choose this method, you will need to enter the Windows Active Directory domain name and user name and password.
    • OAuth Authentication - Implements OAuth 2.0 for connections to Exchange. If you choose this method, you will click a nested button to log in using a Microsoft account.
  9. Under "Mailbox Llist", press the ellipses button to bring up a List Editor.
  10. Here you can enter a list of email addresses you want to access as repositories.
    • This means you can access multiple emails using one "super-user" account.
  11. Select "Import Repository" to bring in these repositories for Grooper to import and export to the corresponding folders in the connecting file system.
  12. This False icon will turn to True once the repositories have been imported.
  13. Selecting the imported repository, you see you can have access to all email folders from messages to contacts.
  14. You can bring in any email message, including attached files into Grooper.

Importing and Exporting using an Exchange CMIS Connection

Importing

Submitting an Import Job with Exchange from the Batches Page

  1. Click the Imports icon.
    • IMPORTANT: You will need to have an Import Watcher service installed and running prior to submitting an Import Job.
  2. Click the Add New Jobs button.
  3. Enter a description for your Import Job.
  4. Choose Import Query Results for your Provider.
    • Exchange enables a user to import across an entire mail server. While powerful, having to sort through each imported message can be a tedious hassle. Import Query Results is a good option for narrowing down results based on certain conditions and search criteria such as a sender's name or key words within the message or subject line.
  5. Select the Exchange Repository you will be importing your Batch from.
  6. Configure your CMIS Query.
  7. When finished, click Submit.
  8. Once your Import Job is complete, go to the Design page, then Batches --> Test --> Imported Batches and select the newly imported Batch to view the contents.

Exporting

Configuring an Export Behavior

Click here for an interactive walkthrough

  1. Click ... at the end of the Behaviors property to begin configuring.
  2. Within the Behaviors List window that appears, click the add button and select Export Behavior.
  3. Click ... at the end of the Export Definitions property.
  4. Click the add button within the Export Definitions List Window and select CMIS Export.
  5. To choose the Repository, click the hamburger icon at the far end of the CMIS Repository property, and click through the dropdown menu.
  6. Select the Exchange Repository.
  7. Click ... at the end of the Target Folder property to choose a specific folder or sub-folder if you do not wish to export your Batch to the root folder of the Repository.
  8. Define the Object Type.
  9. Click OK when finished configuring the Export Definition.
  10. Click OK to finalize the Export Behavior.
  11. Save.

Exchange CMISQL Query Examples

You can search across all item types, including searching for e-mail messages. A use for this could be using Import Query Results to narrow down what you want to import across one or more mailboxes based on sender and/or words in the subject line.

Query 1

SELECT * FROM Message WHERE HasAttachments=True AND Subject LIKE '%Sales Order%' AND Subject LIKE '%grooper%' AND DateTime Received>='1/1/2018'


This query would search the Message content type for certain property values. Namely, that the messages have attachment, contain the words "Sales Order" and "grooper" in the title and were received after Jan 01, 2018.

Note you cannot search for "identity" in a subject line.

  • You cannot use the = operator to search for something in a subject.
  • Instead, use the LIKE operator. Search using grammar like this: Subject LIKE '%put what you're searching for here%'

Query 2

SELECT * FROM Item WHERE CONTAINS ('grooper AND 2023 AND beta')

You can also search across all content types. This query would return any Messages, Contacts, Appointments or Tasks that have the words "grooper" "2023" and "beta" in their text (including subject lines). You also have access to OR and NOT operators.

Exchange CMIS Content Types

The Exchange Binding has five "CMIS content types": Item, Messages, Appointments, Contacts and Tasks. Each one has its own set of properties you can query using CMISQL queries (Either using a CMIS Repository's "Search Tab" or using Import Query Results to import files from an inbox). The "Item" content type is a base type from which all four content types inherit. It defines a common set of properties to the other four content types. All five content types are full text searchable using the CONTAINS() predicate.

Content Type Description Properties
Item The base type item, which all content types inherit.

Users should only query using this content type if they want to return files of all types (Messages, Appointments, Contacts and Tasks).

  • Subject
  • Size
  • Has Attachments
Message Represents an email message.

This is the most commonly used Exchange content type. Most typically users want to query/import email messages.

  • MIME Type: message/rfc822
  • File Extension: .eml
  • Subject
  • Sender
  • To Recipients
  • Cc Recipients
  • Bcc Recipients
  • Date Time Recieved
  • Date Time Sent
  • Is Read
  • Size
  • Has Attachments
Appointment Represents a calendar appointment
  • MIME Type: text/calendar
  • File Extension: .ics
  • Subject
  • Organizer
  • Size
  • Has Attachments
Contact Represents a contact card.
  • MIME Type: text/x-vcard
  • File Extension: .vcf
  • Display Name
  • Subject
  • Size
  • Has Attachments
Task Represents a task
  • MIME Type: text/plain
  • File Extension: .txt
  • Subject
  • Size
  • Has Attachments

Known Issues & Limitations

Exchange CMISQL Query Limitations

When configuring a WHERE clause (using a Comparison Predicate), the "Subject", "Sender", "To Recipients", "Cc Recipients", and "Bcc Recipients" cannot use the = operator.

  • Use the LIKE operator instead.
    • Incorrect syntax: Sender = '%user@example.com%'
    • Correct syntax: Sender LIKE '%user@example.com%'
  • BE AWARE: EWS only supports substring matching for these properties. You must use the % wildcard on either side of the search term when using the LIKE operator.
    • Incorrect syntax: Sender LIKE 'user@example.com'
    • Correct syntax: Sender LIKE '%user@example.com%'