Integrate - Outlook Calendar for Change Requests

monkalope
Tera Expert

We are beginning to test our Outlook integration with Change requests and we are noticing when a client accepts the meeting invitation it is creating a new incident. Is there a simple way to filter out these requests coming back in?

3 REPLIES 3

monkalope
Tera Expert

How can we also send the meeting request as free versus busy? Thanks


Hi there. Recently I implemented the Outlook calendar integration in our Change Request. From what you are saying, it seems like there is this Inbound Email action that is reading the response and creating the incident. You can do two things:
Update that Inbound so that it does not create new incidents based on some logic, such as subject, or some text on the email body or something like that, or
you can update the email template (change.calendar.integration) so that there is no reply when the user accepts/rejects the meeting. I really cannot recall what I changed, I think it was METHOD:PUBLISH. You can compare whats there in your instance with the following:

BEGIN:VCALENDAR
PRODID:-//Service-now.com//Outlook 11.0
MIMEDIR//EN
VERSION:2.0
METHOD:PUBLISH
BEGIN:VEVENT
ATTENDEE;ROLE=REQ-PARTICIPANT;RSVP=TRUE:MAILTO:${to}
ORGANIZER:MAILTO:${from}
FREEBUSY;FBTYPE=FREE
DTSTART:${dtstart}
DTEND:${dtend}
LOCATION:${location}
TRANSP:OPAQUE
SEQUENCE:${sys_mod_count}
UID:${uid}
DTSTAMP:${dtstamp}
DESCRIPTION:${description}
SUMMARY:${summary}
PRIORITY:${priority}
X-MICROSOFT-CDO-IMPORTANCE:${priority}
STATUS:CONFIRMED
CLASS:PUBLIC
END:VEVENT
END:VCALENDAR

I would be glad if someone can respond to the free vs busy concern.


danzak
ServiceNow Employee
ServiceNow Employee

For Outlook specifically, there is a content line that can be added to send a calendar invitation that can differentiate between busy, free, tentative, and out-of-office. You can use X-MICROSOFT-CDO-BUSYSTATUS: value. Assuming this link still works, here are the available options: [MS-OXCICAL]: Property: X-MICROSOFT-CDO-BUSYSTATUS



For example:


X-MICROSOFT-CDO-BUSYSTATUS:FREE



Unfortunately, because of the way calendar invites are handled, changing that status is not trivial. For instance, if you want one change request to send out as free and one as busy, you can't use the same template without a little bit of tweaking. I can think of three solutions to this issue.


  1. The simplest is to create a copy of the change.calendar.intergration template for each of the statuses you want to send and then a notification for each of those templates, but that is a serious pain to maintain.
  2. One approach I tested was adding a field to the change request that contained the word "FREE" or the word "TENTATIVE". For instance, if you have a u_calendar_status field on the change_request table and set it to BUSY, FREE, etc... then you can use it in the change.calendar.integration like:
    1. X-MICROSOFT-CDO-BUSYSTATUS:${u_calendar_status}
  3. A third approach is to add a business rule to the creation of sys_emails specifiically for calendar invites. Then simply add the status content line into the body.