{"id":4212,"date":"2021-11-11T17:17:52","date_gmt":"2021-11-11T09:17:52","guid":{"rendered":"https:\/\/www.enablex.io\/developer\/?page_id=4212"},"modified":"2022-04-11T20:41:32","modified_gmt":"2022-04-11T12:41:32","slug":"break-out-room","status":"publish","type":"page","link":"https:\/\/doc.smartflomeet.ttns.in\/developer\/video-api\/client-api\/android-toolkit\/break-out-room\/","title":{"rendered":"Break-Out Room: Android SDK &#8211; Video API"},"content":{"rendered":"\n<p>Break-Out Rooms allow users to participate in a discussion outside of the main Video Room i.e. the Parent Room. <\/p>\n\n\n\n<h4>Table of Contents<\/h4>\n\n\n\n<ul><li><a href=\"#create-breakout-room\">Create Break-Out Room<\/a><\/li><li><a href=\"#invite-breakout-room\">Invite Users to join a Break-Out Room<\/a><\/li><li><a href=\"#create-breakout-room-invite\">Create Break-Out Room &amp; Auto-Invite Users<\/a><\/li><li><a href=\"#join-breakout-room\">Join Break-Out Room<\/a><\/li><li><a href=\"#reject-break-out-room\">Reject Break-Out Room Invitation<\/a><\/li><li><a href=\"#pause-resume-parent-room\">Pause \/ Resume Parent Room<\/a><\/li><li><a href=\"#mute-unmute-parent-room\">Mute \/ Unmute Parent Room<\/a><\/li><li><a href=\"#disconnect-breakout-room\">Disconnect from Break-Out Room<\/a><\/li><li><a href=\"#clearall-breakout-room\">Cancel All Break-Out Rooms<\/a><\/li><li><a href=\"#destroyall-breakout-rooms\">Handle All Destroyed Break-Out Rooms<\/a><\/li><\/ul>\n\n\n\n<p>The process of breaking-out takes place in the following manner:<\/p>\n\n\n\n<ul><li>A creator or owner of the Break-Out Room invites one or more users from the Parent Room to the Break-Out Room. <\/li><li>The invited users get notified about the request and need to accept the request to join the Break-Out room.<\/li><li>Users moving out of the Parent Room are treated as &#8220;paused&#8221; users in the Parent Room until they return. <\/li><\/ul>\n\n\n\n<p>The implementation of Break-Out Room must be carried out with the following considerations: <\/p>\n\n\n\n<ul><li>Break-Out room can be created by a user from the Parent Room only. <\/li><li>A user cannot create another Break-Out Room while being within a Break-Out Room.<\/li><li>A Break-Out Room can be created with a limit to the maximum allowed participants in it. In any case, the maximum allowed participants in the Break-Out Room must be less than the maximum Active Talkers in the Parent Room.   <\/li><li>Break-Out room currently supports only Audio Call with Screen Share and Canvas Streaming support. <\/li><\/ul>\n\n\n\n<a name=\"create-breakout-room\"><\/a>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Create Break-Out Room<\/h3>\n\n\n\n<p>The <code>EnxRoom.createBreakOutRoom()<\/code> method is used to create a Break-Out Room. <\/p>\n\n\n\n<p><strong>Class:<\/strong> EnxRoom<\/p>\n\n\n\n<p><strong>Method:&nbsp;<\/strong><code>public void createBreakOutRoom(JSONObject RoomDefinition);<\/code><\/p>\n\n\n\n<p><strong>Parameters<\/strong>:<\/p>\n\n\n\n<ul><li><code>RoomDefinition<\/code> \u2013 Required. JSON Object with Room definition parameters defined as following keys:<ul><li><code>participants <\/code>&#8211; Numeric. Required. Total number of Participants in the Break-Out Room. Range: Min: 2. Max: max_active_talkers of Parent Room &#8211; 1<\/li><li><code>audio <\/code>\u2013 Boolean. Required. Set to <em>true<\/em> to enable Audio Communication in Break-Out Room.<\/li><li><code>video <\/code>\u2013 Boolean. Required.  Set to <em>true<\/em> to enable Video Communication in Break-Out Room. (This is currently not supported).<\/li><li><code>canvas <\/code>\u2013 Boolean. Required.  Set to <em>true<\/em> to enable Canvas Streaming in Break-Out Room.<\/li><li><code>share <\/code>\u2013 Boolean. Required.  Set to <em>true<\/em> to enable Screen-Sharing in Break-Out Room.<\/li><li><code>max_rooms <\/code>\u2013 Numeric. Required. The total number of Break-Out rooms to be created.<\/li><\/ul><\/li><\/ul>\n\n\n\n<p><strong>Callbacks:<\/strong><\/p>\n\n\n\n<ul><li><code>onAckCreateBreakOutRoom<\/code> &#8211; Acknowledgment to the creator with Break-Out Room returned as a JSON object when created.<\/li><\/ul>\n\n\n\n<p><strong>Response Body:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">{\tmsg: {\u200b\u200b\n\t\trooms: [ \n\t\t\t  xxx, xxx\n\t\t       ]\n\t     },\n\t\t\tresult: 0\n}<\/pre>\n\n\n\n<ul><li><code>onBreakoutRoomCreated<\/code> &#8211; Notification to all the Moderators in the Parent Room when a Break-Out Room is created.<\/li><\/ul>\n\n\n\n<p><strong>Response Body:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">{ \n    id = \"breakout-room-created\"; \n    msg =     { \n        clientId = \"68d0388c-5630-4f16-883a-8bc2a138a905\"; \n        roomId = 61249702a7282c251ec8d840;\n    }; \n}, <\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">JSONObject  RoomDefinition = {\n\t\"participants\" :2, \n\t\"audio\" : true,\n\t\"video\": false , \n\t\"canvas\": false, \n\t\"share\": false, \n\t\"max_rooms\": 1\n};\n\/\/ Create Break-Out Room\nenxRoom.createBreakOutRoom(RoomDefinition);\n\n\/\/ Acknowledgment to the creator\npublic void onAckCreateBreakOutRoom(JSONObject jsonObject) {\n\t\/\/ jsonObject is JSON with created Break-Out Room Information\n\t\n}\n\n\/\/ Notification to all the Moderators\npublic void onBreakoutRoomCreated(JSONObject jsonObject); <\/pre>\n\n\n\n<p><strong>Error Codes \/ Exceptions<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Code<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td>5067<\/td><td>Break-Out Room not supported in a Room in <code>lecture-<\/code>mode.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<a name=\"invite-breakout-room\"><\/a>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Invite Users to join a Break-Out Room<\/h3>\n\n\n\n<p>The <code>EnxRoom.inviteToBreakOutRoom()<\/code> method allows the Creator\/Owner of a Break-Out Room to invite one or more users from the Parent Room to join the Break-Out Room. In case, if the <code>force_join<\/code> feature is enabled, the invitee automatically joins the Break-Out Room.<\/p>\n\n\n\n<p>This method must be invoked from the Parent Room and NOT from the Break-Out Room.<\/p>\n\n\n\n<p><strong>Class:<\/strong> EnxRoom<\/p>\n\n\n\n<p><strong>Method:&nbsp;<\/strong><code>public void inviteToBreakOutRoom(JSONObject <code>invitee<\/code>)<\/code><\/p>\n\n\n\n<p><strong>Parameters<\/strong>:<\/p>\n\n\n\n<ul><li><code>invitee<\/code> \u2013 JSON Object with invitation details.<ul><li><code>clients <\/code>&#8211; Array of Client IDs of users to be invited.<\/li><li><code>room_id <\/code>\u2013 String. Room ID of the Break-Out Room to which the users are being invited.<\/li><li><code>force_join<\/code>&nbsp;\u2013 Boolean. If set to true, the invited participant will be forced to join the Break-Out Room. Availability: Android SDK 2.0.1+.<\/li><\/ul><\/li><\/ul>\n\n\n\n<p><strong>Callbacks:<\/strong><\/p>\n\n\n\n<ul><li><code>onAckInviteBreakOutRoom<\/code> &#8211; Acknowledgment to the Creator with JSON object returned as a response to the invitation process.<\/li><\/ul>\n\n\n\n<p><strong>Response Body:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">{\t\n      \"msg\": \"Success\",\n      \"result\": 0,\n}<\/pre>\n\n\n\n<ul><li><code>onInvitationForBreakoutRoom<\/code> &#8211; Notification to the invited users when they are invited to join a Break-Out Room.<\/li><\/ul>\n\n\n\n<p><strong>Response Body:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">{\t\n     \"result\": 0,\n}<\/pre>\n\n\n\n<ul><li><code>onBreakoutRoomInvited<\/code> &#8211; Notification to all the Moderators in the Parent Room when a user is invited to a Break-Out Room.<\/li><\/ul>\n\n\n\n<p><strong>Response Body:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">{ \n\n    id = \"breakout-room-invited\"; \n    msg =     { \n                   clientId = \"12f31157-e62a-43f6-8719-f98b3da40978\"; \n                   roomId = 6124b82e98533871c791a788; \n              }; \n}<\/pre>\n\n\n\n<ul><li><code>didBreakoutroomjoining<\/code> &#8211; Notification sent to the invited Participant that he has to join the Break-Out Room.<\/li><\/ul>\n\n\n\n<ul><li><code>onBreakoutroomjoining<\/code> &#8211; Notification sent to the invited Participant when he gets connected to the Break-Out Room.<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">JSONObject invitee = {\n\t\"clients\" : [ clientId1, clientId2], \n\t\"room_id\" : \"RoomID\"\n};\n\n\/\/ Invite user to Break-Out Room.\nenxRoom.inviteToBreakOutRoom(invitee);\n \n\/\/ Acknowledgment to the Creator\npublic void onAckInviteBreakOutRoom(JSONObject jsonObject) {\n\t\/\/ jsonObject is the result of invitation process, e.g.\n} \n\n\/\/ Notification to the invited users\npublic void onInvitationForBreakoutRoom(JSONObject jsonObject) {\n\t\/\/ jsonObject carries the invitation details, e.g.\n}\n\n\/\/ Notification to the Moderator(s)\npublic void onBreakoutRoomInvited(JSONObject jsonObject); {\n}\n\n\/\/ Notification to the Participant(s) \npublic void didBreakoutroomjoining(JSONObject jsonObject); {\n}\n\n\/\/ Notification to the Participant(s) \npublic void onBreakoutroomjoining(JSONObject jsonObject); {\n}<\/pre>\n\n\n\n<a name=\"create-breakout-room-invite\"><\/a>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Create Break-Out Room &amp; Auto-Invite Users<\/h3>\n\n\n\n<p>The <code>EnxRoom.createAndInviteBreakoutRoom()<\/code> is used to support certain use-cases where auto-assignment of users into different Break-Out Rooms is required. This method creates a Break-Out Room with given specifications and invites users to join a Break-Out Room randomly depending on the Room&#8217;s capacity. <\/p>\n\n\n\n<p><strong>Class:<\/strong> EnxRoom<\/p>\n\n\n\n<p><strong>Method:&nbsp;<\/strong><code>public void createAndInviteBreakoutRoom (JSONObject <code>roomDefinition<\/code>)<\/code><\/p>\n\n\n\n<p><strong>Parameters<\/strong>:<\/p>\n\n\n\n<ul><li><code>roomDefinition<\/code> \u2013 JSON object with Room definition parameters as explained in<a href=\"#create-breakout-room\"> Create Break-Out Room<\/a>. <\/li><\/ul>\n\n\n\n<p><strong>Callbacks:<\/strong><\/p>\n\n\n\n<ul><li><code>onAckCreateAndInviteBreakOutRoom<\/code>  &#8211; Acknowledgment to the creator with the result of invitation in a JSON Array.<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">JSONObject  RoomDefinition = {\n\t\"participants\" :2, \n\t\"audio\" : true,\n\t\"video\": false , \n\t\"canvas\": false, \n\t\"share\": false, \n\t\"max_rooms\": 1\n};\n\nenxRoom.createAndInviteBreakoutRoom(RoomDefinition);\n\npublic void onAckCreateAndInviteBreakOutRoom(JSONObject jsonObject) {\n\t\/\/ jsonObject is JSON with created Break-Out Room Information, e.g.\n\t\/*\t\t\n\t\n\t\t{\tmsg: {\u200b\u200b\n\t\t\t\t\trooms: [ \n\t\t\t\t\t\txxx, xxx\n\t\t\t\t\t]\n\t\t\t},\n\t\t\tresult: 0\n\t\t|\n\t\n\t*\/\n}<\/pre>\n\n\n\n<p><strong>Error Codes \/ Exceptions<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Code<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td>5067<\/td><td>Break-Out Room not supported in a Room in <code>lecture<\/code> mode.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<a name=\"join-breakout-room\"><\/a>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Join a Break-Out Room<\/h3>\n\n\n\n<p>The <code>EnxRoom.joinBreakOutRoom()<\/code> method allows users to join a Break-Out room on being invited by the creator. A user can join a Break-Out Room from the Parent Room only and can join only one Break-Out Room at a time, thus allowing the user to join another Break-Out Room only after rejoining the Parent Room first.  <\/p>\n\n\n\n<p><strong>Class:<\/strong> EnxRoom<\/p>\n\n\n\n<p><strong>Method:&nbsp;<\/strong><code>public void joinBreakOutRoom(JSONObject Joinee, JSONObject streamInfo)<\/code><\/p>\n\n\n\n<p><strong>Parameters<\/strong>:<\/p>\n\n\n\n<ul><li><code>Joinee<\/code> \u2013 JSON Object with details required to join the Break-Out Room.<ul><li><code>role<\/code> &#8211; String. Required. Enumerated Values: participant, moderator.<\/li><li><code>room_id<\/code> &#8211; String. Required. Room-ID of the Break-Out Room being joined.<\/li><\/ul><\/li><li><code>streamInfo<\/code> &#8211; JSON Object with Stream information while joining the Break-Out Room.<ul><li><code>audio<\/code> &#8211; Boolean. Set to <em>true<\/em> to join with Audio.<\/li><li><code>video<\/code> &#8211; Boolean. Set <em>to true <\/em>to join with Video. This is currently not supported.<\/li><\/ul><\/li><\/ul>\n\n\n\n<p><strong>Callbacks:<\/strong><\/p>\n\n\n\n<ul><li><code>onConnectedBreakoutRoom<\/code> &#8211; Acknowledgment to the Joiner when Break-Out Room joined successfully.<\/li><li><code>onFailedJoinBreakOutRoom<\/code> &#8211; Notification to the Joiner when fails to join the Break-Out Room.<\/li><li><code>onUserJoinedBreakoutRoom<\/code> &#8211; Notification to everyone in the Break-Out Room when a new user joins the Room. <\/li><\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">JSONObject Joinee = {\n\t\"role\" : \"participant\", \n\t\"room_id\" : \"RoomID\"\n};\n\nJSONObject StreamInfo = {\n\t\"audio\" : true, \n\t\"room_id\" : false\n};\n\nenxRoom.joinBreakOutRoom(Joinee, StreamInfo);\n\npublic void onConnectedBreakoutRoom(JSONObject roomMetadata)  {\n\t\/\/ roomMetadata contains meta information of the Room \n} \n\npublic void onFailedJoinBreakOutRoom(JSONObject jsonObject) {\n\t\/\/ data contains reasons for failed connection\n}\n\npublic void onUserJoinedBreakoutRoom(EnxRoom room, JSONObject jsonObject) {\n\t\/\/ jsonObject contains new joiner's information \n\t\/*\n\t{\t\"clientId\": \"String\",\n\t\t\"room\": \"String\";\n\t}\n\t*\/\n}<\/pre>\n\n\n\n<a name=\"reject-break-out-room\"><\/a>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Reject Break-Out Room Invitation<\/h3>\n\n\n\n<p>The <code>EnxRoom.rejectBreakOutRoom()<\/code> allows the invited user to reject the invitation to join a Break-Out Room. <\/p>\n\n\n\n<p><strong>Class:<\/strong> <code>EnxRoom<\/code><\/p>\n\n\n\n<p><strong>Method:<\/strong> <code>public void&nbsp;rejectBreakOutRoom(String&nbsp;roomId)&nbsp;<\/code><\/p>\n\n\n\n<p><strong>Parameter:<\/strong><\/p>\n\n\n\n<p><code>roomId<\/code> &#8211; The Break-Out Room identifier to which the user is invited.<\/p>\n\n\n\n<p><strong>Callbacks:<\/strong><\/p>\n\n\n\n<ul><li><code>onAckRejectBreakOutRoom<\/code> &#8211; Acknowledgment to the user who rejected the invitation when the request to reject is successfully processed.<\/li><\/ul>\n\n\n\n<p><strong>Response Body:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">{ \n         \u201cresult\u201d : 0\/1,   \/\/ 0 for success and 1 for failure \n         \u201cmsg\u201d : \u201csuccess\/failure\u201d \n} <\/pre>\n\n\n\n<ul><li><code>onBreakoutRoomInviteRejected<\/code> &#8211; Notification to all the Moderators in the Parent Room when a user rejects an invitation to a Break-Out Room.<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">\/\/ User rejects break-out room invitation.\nEnxRoom. rejectBreakOutRoom(\" roomId\u201d); \n\n\/\/ Acknowledgment to the user when invitation rejected.\npublic void onAckRejectBreakOutRoom(JSONObject jsonObject); \n\n\/\/ Notification to the Moderators in the Parent Room when invitation rejected.\npublic void onBreakoutRoomInviteRejected(JSONObject jsonObject); <\/pre>\n\n\n\n<a name=\"pause-resume-parent-room\"><\/a>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Pause \/ Resume Parent Room<\/h3>\n\n\n\n<p>The <code>EnxRoom.pause()<\/code> method allows the user to pause the Parent Room after joining the Break-Out Room. <\/p>\n\n\n\n<p>The <code>EnxRoom.resume()<\/code> method is used to resume the Parent Room if it was paused while joining the Break-Out Room.<\/p>\n\n\n\n<p><strong>Method:&nbsp;<\/strong><\/p>\n\n\n\n<ul><li><code>public void pause()<\/code><\/li><li><code>public void resume()<\/code> <\/li><\/ul>\n\n\n\n<p><strong>Callbacks:<\/strong><\/p>\n\n\n\n<ul><li><code>onAckPause<\/code> &#8211; Acknowledgment to the user when the Parent Room is paused.<\/li><li><code>onAckResume<\/code> &#8211; Acknowledgment to the user when the Parent Room is resumed.<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">enxRoom.pause();\t\/\/ Pause Parent Room\nenxRoom.resume();\t\/\/ Resume Parent Room\n\npublic void onAckPause(JSONObject jsonObject) {\n\t\/\/ jsonObject carries info related to pausing\n\t\/*\n\t{\t\"msg\": \"Room muted\",\n\t\t\"result\": 0\n\t}\n\t*\/\n};\n\npublic void onAckResume(JSONObject jsonObject) {\n\t\/\/ jsonObject carries info related to resume\n\t\/*\n\t{\t\"msg\": \"Room unmuted\",\n\t\t\"result\": 0\n\t}\n\t*\/\n};<\/pre>\n\n\n\n<a name=\"mute-unmute-parent-room\"><\/a>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Mute \/ Unmute Parent Room<\/h3>\n\n\n\n<p>The <code>EnxRoom.muteRoom()<\/code> method allows the user to mute Audio and\/or Video of the Parent Room after joining the Break-Out Room. <\/p>\n\n\n\n<p>The <code>EnxRoom.unmuteRoom()<\/code> is used to unmute Audio and\/or Video of the Parent Room after disconnecting from Break-Out Room and resuming the Parent Room.  <\/p>\n\n\n\n<p><strong>Class:<\/strong> EnxRoom<\/p>\n\n\n\n<p><strong>Methods:&nbsp;<\/strong><\/p>\n\n\n\n<ul><li><code>public void muteRoom(JSONObject muteInfo)<\/code> <\/li><li><code>public void unmuteRoom(JSONObject unmuteInfo)<\/code> <\/li><\/ul>\n\n\n\n<p><strong>Parameters<\/strong>:<\/p>\n\n\n\n<ul><li><code>muteInfo <\/code>&#8211; JSON object with options to mute Audio and Video separately. <ul><li><code>audio <\/code>&#8211; Boolean. Set to <em>true<\/em> to mute Audio.<\/li><li><code>video <\/code>&#8211; Boolean. Set to <em>true<\/em> to mute Video.<\/li><\/ul><\/li><li><code>unmuteInfo <\/code>&#8211; JSON Object with options to unmute Audio and Video separately.<ul><li><code>audio <\/code>&#8211; Boolean. Set to <em>true<\/em> unmute Audio.<\/li><li><code>video <\/code>&#8211; Boolean. Set to <em>true<\/em> to unmute Video.<\/li><\/ul><\/li><\/ul>\n\n\n\n<p><strong>Callbacks:<\/strong><\/p>\n\n\n\n<ul><li><code>onAckMuteRoom<\/code> &#8211; Acknowledgment to the user when the Parent Room is muted.<\/li><li><code>onAckUnmuteRoom<\/code> &#8211; Acknowledgment to the user when the Parent Room is unmuted.<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">JSONObject MuteInfo = {\n\t\"audio\" : true, \n\t\"video\" : true\n};\n\nJSONObject UnmuteInfo = {\n\t\"audio\" : true, \n\t\"video\" : true\n};\n\nenxRoom muteRoom(MuteInfo);\nenxRoom unmuteRoom(UnmuteInfo);\n\npublic void onAckMuteRoom(JSONObject jsonObject) {\n\t\/\/ jsonObject contains muting status\n} \n\npublic void onAckUnmuteRoom(JSONObject jsonObject) {\n\t\/\/ jsonObject contains unmuting status\n}<\/pre>\n\n\n\n<a name=\"disconnect-breakout-room\"><\/a>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Disconnect from Break-Out Room<\/h3>\n\n\n\n<p>The <code>EnxRoom.disconnect()<\/code> method allows the user to disconnect from the Break-Out Room.<\/p>\n\n\n\n<p><strong>Class:<\/strong> EnxRoom  <\/p>\n\n\n\n<p><strong>Method:<\/strong><code> public void disconnect()<\/code>  <\/p>\n\n\n\n<p><strong>Callbacks:<\/strong><\/p>\n\n\n\n<ul><li><code>onDisconnectedBreakoutRoom<\/code> &#8211; Acknowledgment to the user when successfully disconnected from the Break-Out Room.<\/li><li><code>onUserDisconnectedFromBreakoutRoom<\/code> &#8211; Notification to everyone in the Break-Out Room when a user gets disconnected from the Room. <\/li><\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">enxRoom.disconnect(); \n\npublic void onDisconnectedBreakoutRoom(JSONObject jsonObject) {\n\t\/\/ jsonObject carries info related to disconnection\n\t\/*\n\t{\t\"moderatorId\": \"String\",\n\t\t\"msg\": \"Breakout Room disconnected\",\n\t\t\"result\": 0\n\t}\n\t*\/\n};\n\npublic void onUserDisconnectedFromBreakoutRoom(EnxRoom room,JSONObject jsonObject) {\n\t\/\/ jsonObject carries info related to disconnected user\n\t\/*\n\t{\t\"clientId\": \"String\",\n\t\t\"name\": \"String\",\n\t\t\"room\": \"breakout-Development\"\n\t}\n\t*\/\n};<\/pre>\n\n\n\n<a name=\"clearall-breakout-room\"><\/a>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Clear All Break-Out Rooms<\/h3>\n\n\n\n<p>Availability: Android SDK 2.0.1+<\/p>\n\n\n\n<p>The&nbsp;<code>EnxRoom.clearAllBreakOutSession()<\/code>&nbsp;method allows the participant to clear all Break-Out Rooms. The Participant gets disconnected from all breakout instances and resumes with the Parent Room.  <\/p>\n\n\n\n<p><strong>Class:&nbsp;<\/strong><code>EnxRoom<\/code><\/p>\n\n\n\n<p><strong>Method:&nbsp;<\/strong><code>EnxRoom.clearAllBreakOutSession()<\/code>&nbsp;\u2013 No Parameter required.<\/p>\n\n\n\n<p><strong>Event Listeners:<\/strong><\/p>\n\n\n\n<ul><li><code>onDisconnectedBreakoutRoom<\/code>&nbsp;\u2013 Notification to the Moderator\/Owner of the Break-Out Room with information of the disconnected participant(s).<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">public void onDisconnectedBreakoutRoom(JSONObject jsonObject) {\n\t\/\/ JSON Object carries disconnected participants information \n\t\/* \n\t{\t\"room_id\": \"String\"\n\t}\n\t*\/\n}<\/pre>\n\n\n\n<a name=\"destroyall-breakout-rooms\"><\/a>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3>Handle All Destroyed Break-Out Rooms<\/h3>\n\n\n\n<p>Availability: Android SDK 2.0.1+<\/p>\n\n\n\n<p>The&nbsp;<code>EnxRoom.destroyAllBreakOutSession()<\/code>&nbsp;method allows the moderator to destroy all the Breakout Room sessions. When all the Breakout Room sessions get destroyed, the Participants get disconnected and the Parent Room is automatically resumed and unmuted.<\/p>\n\n\n\n<p><strong>Class:<\/strong>&nbsp;<code>EnxRoom<\/code><\/p>\n\n\n\n<p><strong>Method<\/strong>:&nbsp;<code>EnxRoom.destroyAllBreakOutSession()<\/code>&nbsp;\u2013 No Parameter required<\/p>\n\n\n\n<p><strong>Event Listeners:<\/strong><\/p>\n\n\n\n<ul><li><code>onDisconnectedBreakoutRoom<\/code>&nbsp;\u2013 Notification to the owner when the Breakout Room gets destroyed.<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">public void onDisconnectedBreakoutRoom(JSONObject jsonObject) {\n\t\/\/ JSON Object carries destroyed room information \n\t\/* \n\t{\t\"room_id\": \"String\"\n\t}\n\t*\/\n}<\/pre>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n\n\n\n<div class=\"wp-block-columns\">\n<div class=\"wp-block-column\">\n<p>\u2190 <a href=\"..\/room-mode-switch\/\">Room Mode Switch<\/a><\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column\">\n<p class=\"has-text-align-center\"><a href=\"..\/\">Index<\/a><\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column\">\n<p class=\"has-text-align-right\"><a href=\"..\/join-aside-room\/\">Join Aside Room<\/a> \u2192<\/p>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Break-Out Rooms allow users to participate in a discussion outside of the main Video Room i.e. the Parent Room. Table of Contents Create Break-Out Room Invite Users to join a Break-Out Room Create Break-Out Room &amp; Auto-Invite Users Join Break-Out Room Reject Break-Out Room Invitation Pause \/ Resume Parent Room Mute \/ Unmute Parent Room Disconnect from Break-Out Room Cancel All Break-Out Rooms Handle All Destroyed Break-Out Rooms The process&hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"parent":3740,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"ub_ctt_via":""},"featured_image_src":null,"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"featured":false,"featured-large":false},"uagb_author_info":{"display_name":"vcxdevwpadmin","author_link":"https:\/\/doc.smartflomeet.ttns.in\/developer\/author\/vcxdevwpadmin\/"},"uagb_comment_info":0,"uagb_excerpt":"Break-Out Rooms allow users to participate in a discussion outside of the main Video Room i.e. the Parent Room. Table of Contents Create Break-Out Room Invite Users to join a Break-Out Room Create Break-Out Room &amp; Auto-Invite Users Join Break-Out Room Reject Break-Out Room Invitation Pause \/ Resume Parent Room Mute \/ Unmute Parent Room&hellip;","_links":{"self":[{"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/pages\/4212"}],"collection":[{"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/comments?post=4212"}],"version-history":[{"count":0,"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/pages\/4212\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/pages\/3740"}],"wp:attachment":[{"href":"https:\/\/doc.smartflomeet.ttns.in\/developer\/wp-json\/wp\/v2\/media?parent=4212"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}