How to get the status of a zoom room on Scheduling Dispaly via Zoom APIs

Hi everyone

Testing environment:

  • Zoom Room *1, (Purchase Zoom Rooms licenses online)
  • Zoom Scheduling Dispaly *1
  • Zoom Controller *1
  • Zoom Client *1

I thought I could get room’s status by using Zoom APIs – List Zoom Rooms,
(There are three statuses here, including InMeeting, Offline, and Available).

However, during actual testing, I found that if you leave the meeting during the scheduled meeting time (for example, scheduled for 50 minutes, but exit the meeting from the Zoom Controller only after 10 minutes)

At this time, what you see on the Scheduling Display is Busy instead of the status of exiting the meeting( it should be Available, because I have already exited the meeting ), and the status returned by the ZOOM APIs List Zoom Rooms is Available.

The problem here is that the status displayed by the Scheduling Display does not match the status returned by the ZOOM APIs List Zoom Rooms.

Controller

Scheduling Display:

So does anyone know how to get the status on the Scheduling Display?

Hi @evan_kao
Thanks for reaching out to the Zoom Developer Forum and sorry for the late reply here!
Have you been able to troubleshoot this on your end? Are you still looking for guidance on this matter?

Hello @elisa.zoom

I haven’t resolved this matter yet. :pensive: May I ask if there is a ZOOM API that can retrieve the status from a Scheduling Display?
This status is based on the meeting states listed on a Scheduling Display, rather than whether the Zoom Room have actually opened the meeting, including an instant meeting, an scheduled meeting, a recurring meeting and a prescheduled meeting, etc.

For example, I would like a API to be able to return back if I see “Busy” on the Scheduling Display, the API may return “InMeeting,” and if I see “Available,” the API may return “Available.”

Hi @evan_kao
As far as I know, we do not have an endpoint that you can query to get the Scheduling Display for a Zoom room
Do you think the GetWorkspaceCalendar endpoint could help?

Hello @elisa.zoom

I am sorry for the delayed response; there were some issues with my testing environment.

Regarding the test results for the Get Workspace Calendar API, I can just only receive the following result:

“room_status”: “busy”,
“desk_status”: “free”

I noticed that the room_status always remains in the “busy” status, even when I haven’t scheduled any meetings on the Scheduling Display. During this time, the Scheduling Display indeed shows an “Available” status. However, the API response continues to show the above result.

Is this kind of response normal?

Hi @evan_kao ,

I am jumping in with @elisa.zoom on this one with you. Can you clarify for me what your overall goals are for your project so we can help connect you with the right APIs or improve API gaps if we don’t have a solution for you?

I believe that we will have the endpoints for you to accomplish your tasks, but I need some more clarity to point you in the right direction.

(we will also look into some testing on the GetWorkspaceCalendar endpoint to ensure that is working correctly)

Hi @Shane

Thank you for your reply.

I agree that my current approach may not be the best for achieving my goals, and I would appreciate some suggestions for a better method.

In my environment, I have:

  • Scheduling Display for Zoom Rooms(Install in Android)
    
  • Zoom Rooms for Conference Rooms and Touchscreen Displays(Installed in Windows)
    
  • Controllers for Zoom Rooms(Installed in Android)
    
  • Zoom Rooms(Purchase Zoom Rooms licenses online)
    

My goal is:
Without considering the type of meeting (e.g., instant, scheduled, upcoming and so on) and whether check-in/out is used or not, I want to retrieve the status of the meeting list on the Scheduling Display.

The following use cases are quite complex, and I am wondering which Zoom API can be used to achieve the goal:

Possible Scenario 1:
After initiating an instant meeting on the Zoom Room Controller, if the Zoom Room Controller ends this meeting quickly, the Scheduling Display will show an instant meeting with a BUSY status. Can I retrieve this BUSY status?

Possible Scenario 2:
Continuing from Scenario 1, if I check-out from the instant meeting on the Scheduling Display, the Scheduling Display shows an AVAILABLE status. Can I retrieve this AVAILABLE status?

Possible Scenario 3:
Continuing from Scenario 1, if I delete the instant meeting on the Scheduling Display, the Scheduling Display shows an AVAILABLE status. Can I retrieve this AVAILABLE status?

Possible Scenario 4:
If I create a scheduled meeting by clicking the reserve button on the Scheduling Display, and the meeting time hasn’t arrived (e.g., the reserved meeting is at 2:00 PM, but the current time is 1:00 PM), the Scheduling Display’s status is AVAILABLE. Can I retrieve this AVAILABLE status?

Possible Scenario 5:
Continuing from Scenario 4, if I check-in to the scheduled meeting on the Scheduling Display, the Scheduling Display’s status becomes BUSY. Can I retrieve this BUSY status?

Possible Scenario 6:
Continuing from Scenario 4, if I check-in to the scheduled meeting on the Scheduling Display, and then open the meeting on the Zoom Room Controller, the Scheduling Display’s status becomes BUSY. Can I retrieve this BUSY status?

Possible Scenario 7:
Continuing from Scenario 4, if I check-in to the scheduled meeting on the Scheduling Display, and then open the meeting on the Zoom Room Controller, and the Zoom Room Controller ends the meeting before the scheduled time (e.g., a 1-hour meeting time but I end the meeting after 30 minutes), the Scheduling Display’s status becomes BUSY. Can I retrieve this BUSY status?

Possible Scenario 8:
Continuing from Scenario 4, if the meeting time has arrived (e.g., the reserved meeting is at 2:00 PM, and the current time is also 2:00 PM), and I open the meeting on the Zoom Room Controller, but the Zoom Room Controller ends the meeting before the scheduled time, the Scheduling Display’s status becomes BUSY. If I then delete the meeting on the Scheduling Display, the Scheduling Display’s status becomes AVAILABLE. Can I retrieve this AVAILABLE status?

Possible Scenario 9:
Continuing from Scenario 4, if the meeting time has arrived (e.g., the reserved meeting is at 2:00 PM, and the current time is also 2:00 PM), and I open the meeting on the Zoom Room Controller, but the Zoom Room Controller ends the meeting before the scheduled time, the Scheduling Display’s status becomes BUSY. If I then check-out from the meeting on the Scheduling Display, the Scheduling Display’s status becomes AVAILABLE. Can I retrieve this AVAILABLE status?

I hope I provide a clear explanation of my goals.

Thanks for supplying additional detail Evan. Can I get a little more detail around the why rather than the what? For example, I am hearing that you’re trying to retrieve the room status from the scheduler. But are you trying to simply be aware of the room’s schedule? Are you looking to take this information and doing more with it from there?

If I can better understand the whole context of the project, I can better advise. Many times in my conversations around Zoom Rooms API usage, it actually turns out that using a balance of Rooms APIs and other platform APIs can work better.

Thanks in advance.

Hi @shane

. But are you trying to simply be aware of the room’s schedule? Are you looking to take this information and doing more with it from there?

When I initially began testing, I used the List Zoom Rooms API
(Zoom Rooms API) to obtain the room status. The possible values retrieved here include Offline, Available, InMeeting, and UnderConstruction.

However, I noticed that the status from the List Zoom Rooms API did not correspond to the status on the Scheduling Display, e.g., in scenarios 2, 5, and 7.

Subsequently, I attempted to get the room’s schedule by using the List Meetings API
(Zoom Meeting API) with QUERY-STRING PARAMETERS: upcoming_meetings. I compared the meeting times with the system time to determine the current room status.

But, I also found that the status of instant meetings and the meetings by using check-out also did not match the status on the room’s schedule, e.g., scenarios 2, 5, 6, and 9. :pensive: So, I can’t still get the same status with Scheduling Display.

If I can better understand the whole context of the project, I can better advise. Many times in my conversations around Zoom Rooms API usage, it actually turns out that using a balance of Rooms APIs and other platform APIs can work better.

The main goal is to control the MCU’s GPIO through the status of the Scheduling Display. I hope the above descriptions bring you some thoughts to suggest which API I should use to achieve this goal.

Thank you.