Overview
Each main class runs on a 100ms room (hmsRoomId). When you create breakout rooms, Tuition.in spins up N additional 100ms rooms named <parentRoomId>-breakout-1, <parentRoomId>-breakout-2, etc., each sharing the same room template (camera/mic permissions, layout, recording settings).
Creating breakout rooms
- From inside an active class, click the Breakout control in the tutor toolbar.
- Enter the number of rooms (default: 4).
- Toggle Auto-assign students on (default) or off.
- Click Create. Each room is created via the 100ms REST API in parallel.
If any individual room creation fails (rate limit, template issue, etc.) the others still go live and the failures are returned in the response so you can retry.
Auto-assignment
With auto-assign on, Tuition.in:
- Pulls every student with
ACTIVEenrollment in the parent batch. - Shuffles them (Fisher-Yates).
- Splits them evenly across rooms —
ceil(n / roomCount)per room.
The result includes one entry per room with the list of student names and IDs assigned to it. Show this list in the tutor UI so you know who's where.
How students join
When the tutor creates rooms, every assigned student receives a broadcast message in the main class with a join link for their room. Clicking the link replaces their current 100ms session with the breakout room session — the parent class continues without them.
Tutor drop-in
From the breakouts panel, tutors see all active rooms. Clicking any room opens it in a new tab with tutor permissions (camera on, unmuted, host controls). You can spend a minute in each room and return to the main class.
Closing rooms
Click Close all breakouts. Tuition.in calls the 100ms API to mark each breakout room enabled=false, which forcibly returns every participant to the parent class.
If the parent class ends without explicitly closing breakouts, they time out on their own when 100ms's idle timeout kicks in (about 60 seconds with no participants).