IOC Import Email to Notes Fix (Office365)

IOC Import Emails to Notes Fix (Office365)

The IOC Import Emails to Notes Fix is meant to serve as a temporary solution for institutions whos stock email import has stopped working due to the new login requirements Microsoft has implemented on their Office365 IMAP connections. Instead of using IMAP, the IOC email import retrieves emails using Microsoft’s Graph API and an Azure App with a secret key for authentication. In order to use this fix your IT department will need to setup the appropriate Azure application and permissions, and install the fix on your Sunapsis server.

IMPORTANT: The IOC Emails to Notes Fix is being provided free of charge with no warranty and it is in no way supported by Indiana University or the Sunapsis support team. You use this fix at your own risk.

Current Version Date: 04/16/2024

Installation Overview

  1. IT will create an Azure App with a secret key and assign the app the appropriate permissions to read and write email information. More detailed instructions can be found here. IOC Import Email To Notes – Azure Configuration
  2. Install the files on your Sunapsis admin server.
    1. Copy the IOCemailimport.cfm and IOCemailimportconfig.cfm files (link below) for your version of Coldfusion into the webroot/ioffice/batch/ folder on your admin web server.
    2. Populate the settings for the tenant, email, clientid, and clientsecret in the IOCemailimportconfig.cfm file using notepad.
  3. Test the import process by accessing the following url https://*youristarturl*/ioffice/batch/IOCemailimport.cfm?id=*yourbatchid* from a browser. The page should display the results of the email process. Your batch id can be found at the end of the urls in your ColdFusion scheduled tasks or in the configbatchid table in the database. If you receive an error, check the Sunapsis tech logs or the coldfusion-out.log for more information. Note: If you make any changes to the IOCemailimportconfig.cfm file, you must clear your CF template cache.
  4. Once it’s confirmed that the import is working as expected, update the your CF scheduled tasks to run the IOC import process as desired.

Additional Notes:

The IOCemailimportconfig.cfm file contains a few additional settings that you may choose to use.

    • testmode: Setting testmode to 1 will allow you to run and view the results (when triggering the import through your browser) of the email evaluation process without actually importing any emails into the database or moving any emails to Deleted Items. Set testmode to 0 once you’re ready to actually import the emails.
    • daysToKeepUnidentified: Normally, if the email import process can’t identify a client record to import the email into, the email simply sits in the inbox until someone manually cleans it up. If you set the daysToKeepUnidentified setting to greater than 0, the import process will delete emails it can’t import to a client record after the number of days you set.
    • daysToKeepBadSender: The import process only imports emails that have been sent to the mailbox by an email address of a user in Administrative Users or an email address that is assigned to an alert group. This avoids importing emails that are unintentionally sent to the import email box by students or other departments, etc. Normally these emails sit in the inbox until they are manually deleted. Setting the daysToKeepBadSender value to greater than 0 will cause the email import process to delete emails from bad senders after the number of days you set.
    • allowedDomains: This is a list of three character top level domains (edu,gov,org) from which any emails will be imported, regardless of the sender.
    • verbose: Setting verbose = 1 will display the Subject, From, and To information for emails when the IOCemailimport.cfm page is triggered in a browser. For security reasons, it’s suggested to leave the value set to zero unless you are troubleshooting.
    • disableClientViewable: Note: This setting is new as of the 1/24/24 release and it replaces the clientViewable setting. By default, if the client is identified by matching to the To or CC field, the email is imported as client viewable under the assumption that the client has already received a copy of the email. Setting disableClientViewable =1 will prevent any emails from being imported as client viewable. Clients identified by UID, Alt ID, or SEVIS ID matches will never have the email imported as client viewable regardless of this setting.

Download Link: IOC Import Email To Notes Fix (Office365) 04/16/2024
IMPORTANT: 
If you are installing over an existing version, make sure you compare your existing IOCemailimportconfig.cfm file to the new version to find any missing setting variables.

Version Notes:

2024-04-16: Added function to strip html from the subject and content before trying to find regex ID matches. This should help prevent false matches made on html color codes that corresponded to some university IDs.
2024-01-22: Rebuilt the import process to import the email to all clients identified in the To/CC fields and UID/SEVISID/Alt ID matches. Previously, emails were only imported to the first client identified. Replaced clientViewable setting with disableClientViewable (see settings details above).
2023-12-18: Added CF 2023 version
2023-07-29: Changed client lookup logic so a UID/SEVISID/Alt ID match gets priority over a To/CC email match. Now truncating subject line to 250 characters to avoid long subject lines from breaking import.
2023-05-11: Added clientViewable setting. 0 = not client viewable, 1 = client viewable, 2 = client viewable only if client email is in To or CC field.
2023-05-10: Added error reporting for easier troubleshooting
2023-03-08: Update imported email datestamp to be date received instead of date imported.
2023-02-09: Added allowedDomains and verbose settings
2023-02-02: Fixed CC email addresses not being imported correctly