Meeting SDK for Linux - Headless bots cannot participate in breakout rooms (never receive attendee rights)
Meeting SDK Version: 6.7.5.73 (Linux)
Description:
We are developing a headless Linux application using the Zoom Meeting SDK to create automated meeting bots. The bots need to participate in breakout rooms - specifically, they need to:
- Be moved between breakout rooms by the host
- Return to the main session when breakout rooms are closed
The Problem:
Our bots can join meetings successfully and can observe breakout room lifecycle events (EDIT, STARTED, STOPPING, ENDED) and they can be moved into breakout rooms, but once they are in the breakout rooms they can’t be moved between rooms and when the breakout rooms close they can’t return to the main room so breakout rooms never actually close while the bots are in them:
IMeetingBOController::IsInBOMeeting()always returnsNOonHasAttendeeRightsNotificationcallback never firesIBOAssistant::JoinBO()returnsfalseIBOAssistant::LeaveBO()returnsfalseonHostInviteReturnToMainSessioncallback never fires
What we have tried:
-
Joining with with join URL (with
tk=) - Bots receive no BO rights at all;IsInBOMeeting()always returns NO - ZAK token authentication - Bots receive
assistant,admin,creator, anddataHelperrights, but still noattendeerights - Re-initializing BO controller after STARTED - No change
- Explicitly calling JoinBO() with room ID - Returns false
Key observation:
The same code works correctly on a different Zoom account, on that account:
IsInBOMeeting()returnsYESduring the STOPPING phase- Bots correctly return to main session when breakout rooms close
- Moving bots between rooms works
On the current Zoom account:
- We have a breakout room update and with the new breakout rooms nobody on a web browser is able to join the room at all (they don’t even show up as participants who can be assigned to the breakout rooms), these headless bots do show up and can get assigned to the rooms so I don’t think this is an issue, but for some reason I can’t move them to a new room or back to the main session once they are in the breakout room
It seems the issue could be account-specific, the zoom settings are the same on both accounts from what I can see and so are the SDK app configurations. The new SDK app for the newer account that isn’t working was made later, but the settings do all look the same
Zoom Marketplace app details:
- On the one that is working:
- neither of the following are checked:
- Meeting SDK app with "Are you developing a programmatic join use case?" enabled
- "Request Anonymous Join Exception" submitted (pending approval)
- Meetings use registration (join URLs with
tk=token)
- neither of the following are checked:
- On the one that isn’t working:
- I tried checking off "Are you developing a programmatic join use case?" in the meeting SDK app, nothing change
- I tried checking off “Request Anonymous Join Exception" nothing changed yet, but this may require an approval
- Meetings use registration (join URLs with
tk=token)
Breakout room settings enabled in both apps:
- Allow participants to return to the main session at any time
- Automatically move all assigned participants into breakout rooms
- Automatically move all selected participants in breakout rooms to main session
Questions:
- Is there an account-level setting or policy that prevents SDK bots from receiving breakout room attendee rights? Wondering if something has changed when creating a newer Meeting SDK app
- Does the "Anonymous Join Exception" approval enable this functionality?
