0

I'm trying to get the availability of all the meeting rooms of my company. Right now, i'm doing it this way:

account = Account(
primary_smtp_address= "mail_of_one_meeting_room",
autodiscover=False, 
config = config,
access_type=DELEGATE)

 items = account.calendar.view(
        start = tz.localize(EWSDateTime(now.year,now.month,now.day,8)),
        end = tz.localize(EWSDateTime(now.year,now.month,now.day,20))
        )

Then i check if there is a meeting right now by comparing item.start/end with the actual hour. I have 9 meeting rooms to check, so I send this request 9 times in a row. Is there a better way (I mean I'm sure there is) to first get the availability of one room, something like room.availability (True or False), and secondly can I get back the availabilities of many rooms with only one request ?

It worked this way but it takes quite some time, so I will be very happy to get a faster solution.

Elweiss
  • 545
  • 1
  • 4
  • 12

1 Answers1

0

Your solution is what's possible with exchangelib ATM. A better solution would involve the GetUserAvailability service, which is not currently implemented in exhcangelib: https://github.com/ecederstrand/exchangelib/issues/256

Erik Cederstrand
  • 9,643
  • 8
  • 39
  • 63