Meeting room calendar in Exchange (Office 365)
By default a room mailbox does not permit external users to make bookings. However there is an option that you can configure to allow external people to make bookings if you need them to. It's the ProcessExternalMeetingMessages flag.
Get-Mailbox "external room" | Get-CalendarProcessing | Select *external*
If an external sender attempts to book the meeting room they will not receive an acceptance or rejection message, which may lead to confusion if the room is assumed to have been successfully booked (given that the ressource hat automatic processing anabled).
To configure the room mailbox to process external requests:
Get-Mailbox "external room" | Set-CalendarProcessing -ProcessExternalMeetingMessages $true
This change will enable the processing of external meeting requests. The meeting request, however, is still subject to being accepted/rejected based on availability of the room and any other booking policies.
Note (fooled myself with this one a few times): This change will only take effect for new requests. Any meeting requests from external senders that were received before the setting was enabled will not be processed.