Hi All,
Is it possible to check the meeting room conflicts by using FindMeetingTimes connector in PowerApps. Can someone please let me know if anyone implement this requirement.
I'm trying to get the busy rooms for the reccurring meetings by using FindMeetingTimesV2 connector. I could see that availability as "free" for the available rooms. But i could not see the busy rooms instead could see that OrganizerUnavailable
PFB code and guide me if i made any mistakes. Please let me know if you need more details.
Clear(ConflictsRooms); ForAll( mergedData, Collect( ConflictsRooms, Office365Outlook.FindMeetingTimesV2( { RequiredAttendees: "SingleRoom", IsOrganizerOptional: true, Start: DateTimeValue(UTCStartDateTime), // Ex: 12/10/2020 End: DateTimeValue(UTCEndDateTimeRecurr), // Ex: 12/15/2020 MeetingDuration:60, MinimumAttendeePercentage: "1", ActivityDomain: "Unrestricted" } ) ) );
Hi@BKGOUD,
Based on the issue that you mentioned, do you want to check the conflict room using FindMeetingTimes() function?
I think you should use the Office365Outlook connector, please try the following formula.
ClearCollect(
AllRooms,
Office365Outlook.GetRooms().value
);
Set(
AllRoomsConnector,
Concat(
AllRooms,
Address & ";"
)
);
ClearCollect(
AvailableRooms,
Office365Outlook.FindMeetingTimes(
{
RequiredAttendees: AllRoomsConnector,
Start: DateTimeValue("2020-11-30T09:00:00"), /*Assume that the start time of the meeting is 2020-11-30T 09:00:00*/
End: DateTimeValue("2020-11-30T12:00:00") /*Assume that the end time of the meeting is 2020-11-30T 12:00:00*/
}
)
);
ClearCollect(
AvailableRoomsSorted,
SortByColumns(
First(AvailableRooms).MeetingTimeSuggestions,
"Confidence",
Descending
)
);
ClearCollect(
AvailableRoomsConcat,
Concat(
Filter(
First(AvailableRoomsSorted).AttendeeAvailability,
Availability = "Free"
),
Attendee.EmailAddress.Address,
","
)
);
ClearCollect(
AvailableRoomEmails,
Split(
First(AvailableRoomsConcat).Value,
","
)
);
ClearCollect(
AvailableRoomEmailName,
AddColumns(
RenameColumns(
AvailableRoomEmails,
"Result",
"Email"
),
"Name",
LookUp(
AllRooms,
Email = Address
).Name
)
);
Note: You could check the result in the collection named AvailableRoomEmailName.
Hope it could help.
Best Regards,
Qi