Featured Post

Attachments in Oracle Communication Convergence Calendar Migration to Exchange

Attachments. The bane of full-state calendar migration, largely because it slows down the entire process and really grinds every gear we h...

Tuesday, April 11, 2017

How the Sumatra Double-Booking cmdlet works

First: you can always get help at the PowerShell prompt with:
get-help Get-suDoubleBookedMeetings

Let's say that we have the following calendar for Room 222:

Clearly there is some double-booking here.  

Keep in mind neither Jimi Hendrix not Janis Joplin have any way of knowing from their own calendars that a conflict is imminent.

If you execute the cmdlet in this way say a week before this is to unfold:
Get-suDoubleBookedMeetings -ExchangeVersion 2013 -EWSurl "https://outlook.office365.com/EWS/Exchange.ASMX" `
-PrimarySMTPAddress "room222@sumatra.onmicrosoft.com" `
-VIPfile "c:\users\Admin\Desktop\suDoubleBook\vips.txt" `
-DeclineConflicts `
-EmailOrganizers `
-VIPsGetBookingPreference `
-ImpersonationAccount "ADMIN@sumatra.onmicrosoft.com" `
-Credential $LiveCred `
-bw 10 `
-Verbose -Debug `
-licensefile "c:\users\Admin\Desktop\suDoubleBook\license.txt"

You will generate notifications to Jimi Hendrix that look like this:



Note also that we cover the case of a managed conference room where a Delegate might be putting appointments into the room calendar.  In this case even though the time is listed as FREE, we notify both parties.  We have no way of knowing WHAT is there, but there is the potential for conflict and we need to alert users to it.

If you want to get a little more proactive, we could define Janis Joplin as a "VIP" so that her meetings take priority over everyone else's.  Look at her conflict with Jimi Hendrix here:


We execute this command:

Get-suDoubleBookedMeetings `
-writeHTML `
-HTMLFile "c:\users\Admin\Desktop\suDoubleBook\MyHtml.html" `
-ExchangeVersion 2013 `
-EWSurl "https://outlook.office365.com/EWS/Exchange.ASMX" `
-PrimarySMTPAddress "room222@sumatra.onmicrosoft.com" `
-ImpersonationAccount "ADMIN@sumatra.onmicrosoft.com" -Credential $LiveCred -bw 16 `
-VIPFile ($myPath + "vips.txt") `
-VIPsGetBookingPreference `
-DeclineConflicts `
-licensefile "c:\users\Admin\Desktop\suDoubleBook\license.txt" 


And immediately the resource calendar looks like this:

And Jimi is notified that the resource has declined his request

We think this is a very elegant solution to the problem of managing double-booking in the real world.

No comments: