Skip to content

Releases: AdhocAdam/smletsexchangeconnector

SMLets Exchange Connector v4.1

23 Apr 04:03
0ef48a6
Compare
Choose a tag to compare

SMLets Exchange Connector v4.1

General
The Management Pack (4.1.0.12) introduces an Azure Cloud Instance picker alongside UI changes that minimize the need for horizonal scrolling.

Enhancements

  • Azure Government customers can now quickly connect to Exchange or Azure AI services without having to update URLs within the connector's PowerShell. Just choose your Azure Cloud Instance on either the General, A.I., Translation, Vision, or Transcription UIs.
  • Several UIs (e.g. Multi-Mailbox & Custom Rules) now resize as the Settings UI resizes
  • A link to the wiki on how to configure Custom Events is now featured on the DLL form

Bugs

  • If users are not being created in SCSM via the connector and suggest KA/RO is enabled. The suggestion fails because the user doesn't exist within SCSM and thus their permissions scope/language settings can't be retrieved

SMLets Exchange Connector v4.0.1

30 Mar 18:36
9efd326
Compare
Choose a tag to compare

SMLets Exchange Connector v4.0.1

General
Contains single bug fix for those utilizing Custom Rules

Bugs

  • When using Custom Rules, if a pattern is identified as a match the Work Item fails to update

SMLets Exchange Connector v4.0

10 Mar 04:47
0e600b8
Compare
Choose a tag to compare

SMLets Exchange Connector v4.0

General
The Management Pack (4.0.0.19) introduces support for Custom Rules to route messages based on custom defined patterns found in the body/subject of an email to create/update Work Items or Configuration Items.

To support Custom Rule functionality and to follow PowerShell best practice per PSScriptAnalyzer, several functions throughout the connector have been refactored and renamed. Finally, the connector now makes widespread use of [PSCustomObject] instead of New-Object/Add-Member resulting in significantly faster processing times.

New Features
The Management Pack (4.0.0.19) introduces a "Message Class" List/Enum and a new configuration pane for Custom Rules wherein you can define what happens to messages that DO NOT match known SCSM Work Item patterns. For example:

  • A vendor emails you on an issue you've created. They have their own ticketing pattern of CASE#52435. The connector can create a single Incident and ensure it is continually updated as your vendor updates you
  • A 3rd party is conducting planned maintenance. You're notified about MAIN8754. The connector can create a single Change Request and ensure it is continually updated as the 3rd party provides updates
  • An anti-virus tool sends email notifications. It has its own custom Alert Id pattern. The connector can create a single Incident, ensure it is continually updated and with Custom Events, you can parse a Closed Alert to Resolve the Incident
  • Using Custom Events, a 3rd party notifies you of an outage about one of your Business Services. Change the Status of the Business Service and attach the email to the Configuration Item for record keeping
  • Using Custom Events and Cireson Asset Management, you're notified about your latest Microsoft Azure Invoice. Create an Invoice, mark it as Paid, optionally create and relate "Microsoft" as a Vendor, and attach the email to the Invoice for record keeping

Custom Rules respect any Multi-Mailbox configuration as Multi-Mailbox will always take precedence. Documentation on how to build Custom Rules has been introduced to the wiki which you can find here.

Bugs

  • Creating a Problem as the default work item did not correctly apply it's configured Template
  • If an email is signed, encrypted and has attachments both found inline + attached, then the Description of a new Work Item is malformed

Miscellaneous

  • When creating a Cireson Portal Announcement, the response should pipe to Out-Null rather than hide its result within an unused variable
  • $null should be on the left hand side of comparison operations
  • All (PowerShell) Aliases have been replaced with their full cmdlet counterpart
  • $sender removed as a parameter in Get-SCSMAuthorizedAnnouncer and Get-SCOMAuthorizedRequester as it is a built-in/automatic PowerShell variable
  • Removed unused variables where appropriate
  • When calling functions, variables are passed by param name as opposed to implied order
  • New Logging events for initial call to Exchange to show which type of Message (Classes) are being retrieved
  • Several functions have been renamed to respect PowerShell best practice:
Old Name Updated Name
Attach-EmailToWorkItem Add-EmailToSCSMObject
Attach-FileToWorkItem Add-FileToSCSMObject
Verify-WorkItem Confirm-WorkItem
Schedule-WorkItem Set-WorkItemScheduledTime
Create-UserInCMDB New-CMDBUser
Apply-SCSMTemplate Set-SCSMTemplate

SMLets Exchange Connector v4.0 RC1

14 Feb 17:31
5d86605
Compare
Choose a tag to compare
Pre-release

SMLets Exchange Connector v4.0-RC1

Summary
Release Candidate 1 for v4.0 of the connector that introduces the ability to identify any Message Class, any text pattern in either the Subject or Body, and then control if the message should create/update a Work Item or Configuration Item. To support this functionality and to follow PowerShell best practice per PSScriptAnalyzer, several functions throughout the connector have been refactored and renamed. Finally, the connector now makes widespread use of [PSCustomObject] instead of New-Object/Add-Member resulting in even faster processing times.

General
Barring significant issues as they pertain to core execution with Custom Rules this version is the most representative in terms of functionality to the final v4 release.

New Features
The Management Pack (4.0.0.2) introduces a "Message Class" List/Enum and a new configuration pane for Custom Rules wherein you can define what happens to messages that DO NOT match known SCSM Work Item patterns. For example:

  • A vendor emails you on an issue you've created. They have their own ticketing pattern of CASE#52435. The connector can create a single Incident and ensure it is continually updated as your vendor updates you
  • A 3rd party is conducting planned maintenance. You're notified about MAIN8754. The connector can create a single Change Request and ensure it is continually updated as the 3rd party provides updates
  • Using Custom Events, a 3rd party notifies you of an outage about one of your Business Services. Change the Status of the Business Service and attach the email to the Configuration Item for record keeping
  • Using Custom Events and Cireson Asset Management, you're notified about your latest Microsoft Azure Invoice. Create an Invoice, mark it as Paid, optionally create and relate "Microsoft" as a Vendor, and attach the email to the Invoice for record keeping.

Documentation on how to build Custom Rules has been introduced to the wiki which you can find here.

FIXED ISSUES AND CHANGES FROM BETA1 & BETA2

  • Custom Message Classes were not retrieved/processed
  • Creating a Problem did not correctly apply it's configured Template
  • The example for Invoke-CustomRuleAction within Custom Events contained a syntactical error
  • If an email is signed, encrypted and has attachments both found inline + attached, then the Description of a new Work Item is malformed
  • Logging events for Test-EmailPattern have been renumbered and made more verbose given their context
  • When creating a Cireson Portal Announcement, the response should pipe to Out-Null rather than hide its result within an unused variable
  • Add-FileToSCSMObject is now called for each attachment, rather than processing each attachment within itself
  • Add-FileToSCSMObject and Add-EmailToSCSMObject have been made more generic to support Configuration Items
  • Test-EmailPattern logging has shifted numbering

SMLets Exchange Connector v4.0-Beta2

16 Jan 21:27
9435fa5
Compare
Choose a tag to compare
Pre-release

SMLets Exchange Connector v4.0-Beta2

Summary
Second beta release for v4.0 of the connector that introduces the ability to identify any Message Class, any text pattern in either the Subject or Body, and then control if the message should create/update a Work Item or Configuration Item. To support this functionality and to follow PowerShell best practice per PSScriptAnalyzer, several functions throughout the connector have been refactored and renamed. Finally, the connector now makes widespread use of [PSCustomObject] instead of New-Object/Add-Member resulting in even faster processing times.

New Features
The Management Pack (4.0.0.1) introduces a "Message Class" List/Enum and a new configuration pane for Custom Rules wherein you can define what happens to messages that DO NOT match known SCSM Work Item patterns. For example:

  • A vendor emails you on an issue you've created. They have their own ticketing pattern of CASE#52435. The connector can create a single Incident and ensure it is continually updated as your vendor updates you
  • A 3rd party is conducting planned maintenance. You're notified about MAIN8754. The connector can create a single Change Request and ensure it is continually updated as the 3rd party provides updates
  • Using Custom Events, a 3rd party notifies you of an outage about one of your Business Services. Change the Status of the Business Service and attach the email to the Configuration Item for record keeping
  • Using Custom Events and Cireson Asset Management, you're notified about your latest Microsoft Azure Invoice. Create an Invoice, mark it as Paid, optionally create and relate "Microsoft" as a Vendor, and attach the email to the Invoice for record keeping.

FIXED ISSUES FROM BETA1

  • Custom Message Classes were not retrieved/processed
  • Creating a Problem did not correctly apply it's configured Template
  • The example for Invoke-CustomRuleAction within Custom Events contained a syntactical error
  • If an email is signed, encrypted and has attachments both found inline + attached, then the Description of a new Work Item is malformed

CHANGES FROM BETA1

  • Logging events for Test-EmailPattern have been renumbered and made more verbose given their context
  • When creating a Cireson Portal Announcement, the response should pipe to Out-Null rather than hide its result within an unused variable
  • Add-FileToSCSMObject is now called for each attachment, rather than processing each attachment within itself
  • Add-FileToSCSMObject and Add-EmailToSCSMObject have been made more generic to support Configuration Items

SMLets Exchange Connector v4.0-Beta1

02 Jan 00:43
be97484
Compare
Choose a tag to compare
Pre-release

SMLets Exchange Connector v4.0-Beta1

Summary
First beta release for v4.0 of the connector that introduces the ability to identify any Message Class, any text pattern in either the Subject or Body, and then control if the message should create/update a Work Item or Configuration Item. To support this functionality and to follow PowerShell best practice per PSScriptAnalyzer, several functions throughout the connector have been refactored and renamed. Finally, the connector now makes widespread use of [PSCustomObject] instead of New-Object/Add-Member resulting in even faster processing times.

New Features
The Management Pack (4.0.0.0) introduces a "Message Class" List/Enum and a new configuration pane for Custom Rules wherein you can define what happens to messages that DO NOT match known SCSM Work Item patterns. For example:

  • A vendor emails you on an issue you've created. They have their own ticketing pattern of CASE#52435. The connector can create a single Incident and ensure it is continually updated as your vendor updates you
  • A 3rd party is conducting planned maintenance. You're notified about MAIN8754. The connector can create a single Change Request and ensure it is continually updated as the 3rd party provides updates
  • Using Custom Events, a 3rd party notifies you of an outage about one of your Business Services. Change the Status of the Business Service and attach the email to the Configuration Item for record keeping
  • Using Custom Events and Cireson Asset Management, you're notified about your latest Microsoft Azure Invoice. Create an Invoice, mark it as Paid, optionally create and relate "Microsoft" as a Vendor, and attach the email to the Invoice for record keeping.

KNOWN ISSUES

  • Custom Defined Message Classes are not retrieved during the initial call to Exchange.

SMLets Exchange Connector v3.4.1

09 Dec 01:46
85647e7
Compare
Choose a tag to compare

SMLets Exchange Connector v3.4.1

General
This release marks the last release of the year and the last of the v3.x series. That said, work on v4 of the connector is currently underway which seeks to bring all new levels of flexibility and customization to your organization with support for Custom Rules. Granting you the ability to create, update, and even synchronize external systems with Service Manager through email. You can read more about this feature's ongoing development here.

The changes in this release are PowerShell in nature with no changes to the management pack.

Bugs

  • File Attachment Names should be cleansed of illegal characters before being committed into SCSM

SMLets Exchange Connector v3.4

04 Nov 03:13
3fa77b1
Compare
Choose a tag to compare

SMLets Exchange Connector v3.4

General
The changes/functionality introduced in this release are PowerShell in nature with no changes to the management pack.

New Features

  • File Attachments on Activities are related to the Parent Work Item and respect configured File Attachment settings.

Enhancements

  • Searching for Knowledge Articles or Request Offerings could contain a line break resulting in less specific results
  • More validation is performed when creating URLs from Knowledge Article/Request Offering results
  • Searching for Knowledge Articles has been moved to a supported Cireson endpoint

Bugs

  • When using workflows, if an email subject is longer than 200 characters the workflow would error
  • When using workflows, if a Review Activity had a null Reviewer the workflow would error

SMLets Exchange Connector v3.3.1

22 Jun 02:14
4740de6
Compare
Choose a tag to compare

SMLets Exchange Connector v3.3.1

General
The Management Pack (3.3.1.21) removes the ability to use Resolved or Closed in a Status change based on who replied

Discussions on the repo let you converse about the project without raising Issues. That said, I'm looking for your thoughts on handling Out of Office replies and managing Related Senders.

Enhancements

  • Remaining instances of Get-SCSMClass that did not feature exact class matches have been updated to do so
  • Logging continues to extend itself to capture events as they pertain to:
    • Connecting to Microsoft 365
    • Dynamic Analyst Assignment with respect to using supported Templates or lack of Support Group Mapping
    • Using Azure Cognitive Services and the Text Analytics API to drive Impact/Urgency/Priority
    • Attaching anything from a message to a Work Item
  • Exchange Web Services has been linked as a project dependency on the repo thus enabling Dependabot use cases on GitHub
  • The following features have been optimized to improve their performance:
    • Retrieving Operations Manager Distributed Application Health (28% improvement)
    • Scheduling Work Items via Outlook Meetings (72% improvement)
    • Dynamic Analyst Assignment (33% improvement)
  • When New-SMExcoEvent is used, the call is more standardized to enable use of CTRL+F to quickly find all uses of an event. e.g. "New-SMExcoEvent -Source "Update-WorkItem" -EventId"

Bugs

  • When using workflows, if a user is not found in SCSM and users are not being created in the CMDB. Then the connector would run into an issue either defining an Affected User on a New Work Item or leaving comments/taking actions on an Update to a Work Item. Given this, users are now created in memory only and then disposed when the connector finishes running. Thus honoring the configuration of not Creating Users in the CMDB, still allowing a Work Item to be created/updated, and avoiding unnecessary churn within SCSM
  • When using workflows, a message without a body would cause Update-WorkItem to eventually throw an error when it calls Add-ActionLogEntry as the Comment is null
  • When using the [Reactivate] keyword on an Incident or Problem, the Resolution, Description, and Date were not set to null
  • When changing Incident Status based on who replies. The "Resolved" Status should not be taken into consideration as it provides a way to bypass [reactivate] functionality
  • Azure Machine Learning could predict an enumeration or configuration item that has been deleted since the last round of training. Error handling has been introduced to account for this

SMLets Exchange Connector v3.3

09 Apr 14:33
f15885e
Compare
Choose a tag to compare

SMLets Exchange Connector v3.3

General
The Management Pack (3.3.0.12) introduces a History form.

New Features

  • Similar to Work Items or Config Items, you can now view a record of changes made to the myriad of settings available in the SMLets Exchange Connector with the new History form in the Settings UI

Enhancements

  • Logging continues to extend itself to capture events as they pertain to connecting to Microsoft 365 for email, using Language Translation services with Azure Cognitive Services, and Dynamic Analyst Assignment
  • The project's security status via CodeQL now appears on the GitHub repo's readme
  • MimeKit has been linked as a project dependency on the repo thus enabling Dependabot use cases on GitHub

Bugs

  • When using SCSM Workflows if an email has at least 1 attachment that is another Email or Calendar appointment the message fails to process
  • If an email subject has multiple reply patterns, this could result in either duplicate Work Items or duplicate Action Log updates to the same Work Item. Which of these events occur is based on whether or not Merge Reply functionality is enabled.

Documentation

  • Connecting to Microsoft 365 via OAuth documentation screenshots have been updated to reflect changes in the Azure Portal
  • Inline PowerShell notes reflect current locations of documentation around working with relationships in Service Manager and how the Create-UserInCMDB/Add-ActionLogEntry functions came to be