@whereby.com/core 1.1.8 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,7 +2,7 @@ import nodeBtoa from 'btoa';
2
2
  import { assert, fromLocation, ServerSocket, getDeviceData, getStream, getUpdatedDevices, RtcManagerDispatcher, setClientProvider, subscribeIssues } from '@whereby.com/media';
3
3
  import axios from 'axios';
4
4
  import { EventEmitter } from 'events';
5
- import { createListenerMiddleware, createSlice, createAction, createSelector, createAsyncThunk, isAnyOf, combineReducers, configureStore } from '@reduxjs/toolkit';
5
+ import { createListenerMiddleware, createSlice, createAction, createSelector, createAsyncThunk, isAnyOf, combineReducers, configureStore, addListener } from '@reduxjs/toolkit';
6
6
 
7
7
  class Response {
8
8
  constructor(initialValues = {}) {
@@ -1145,12 +1145,13 @@ const createReactor = (selectors, callback) => {
1145
1145
  });
1146
1146
  };
1147
1147
 
1148
- const coreVersion = "1.1.8";
1148
+ const coreVersion = "1.2.1";
1149
1149
 
1150
1150
  const initialState = {
1151
1151
  isNodeSdk: false,
1152
1152
  isActive: false,
1153
1153
  isDialIn: false,
1154
+ isAssistant: false,
1154
1155
  ignoreBreakoutGroups: false,
1155
1156
  roomName: null,
1156
1157
  roomUrl: null,
@@ -1164,7 +1165,7 @@ const appSlice = createSlice({
1164
1165
  reducers: {
1165
1166
  doAppStart: (state, action) => {
1166
1167
  const url = new URL(action.payload.roomUrl);
1167
- return Object.assign(Object.assign(Object.assign({}, state), action.payload), { roomName: url.pathname, initialConfig: Object.assign({}, action.payload), isActive: true });
1168
+ return Object.assign(Object.assign(Object.assign({}, state), action.payload), { roomName: url.pathname, initialConfig: Object.assign({}, action.payload), isActive: true, isAssistant: Boolean(action.payload.assistantKey) });
1168
1169
  },
1169
1170
  doAppStop: (state) => {
1170
1171
  return Object.assign(Object.assign({}, state), { isActive: false });
@@ -1174,6 +1175,7 @@ const appSlice = createSlice({
1174
1175
  const { doAppStop, doAppStart } = appSlice.actions;
1175
1176
  const selectAppIsActive = (state) => state.app.isActive;
1176
1177
  const selectAppIsDialIn = (state) => state.app.isDialIn;
1178
+ const selectAppIsAssistant = (state) => state.app.isAssistant;
1177
1179
  const selectAppRoomName = (state) => state.app.roomName;
1178
1180
  const selectAppRoomUrl = (state) => state.app.roomUrl;
1179
1181
  const selectAppDisplayName = (state) => state.app.displayName;
@@ -1230,6 +1232,7 @@ const ROOM_ACTION_PERMISSIONS_BY_ROLE = {
1230
1232
  };
1231
1233
  const authorizationSliceInitialState = {
1232
1234
  roomKey: null,
1235
+ assistantKey: null,
1233
1236
  roleName: "none",
1234
1237
  };
1235
1238
  const authorizationSlice = createSlice({
@@ -1242,7 +1245,7 @@ const authorizationSlice = createSlice({
1242
1245
  },
1243
1246
  extraReducers: (builder) => {
1244
1247
  builder.addCase(doAppStart, (state, action) => {
1245
- return Object.assign(Object.assign({}, state), { roomKey: action.payload.roomKey });
1248
+ return Object.assign(Object.assign({}, state), { roomKey: action.payload.roomKey, assistantKey: action.payload.assistantKey });
1246
1249
  });
1247
1250
  builder.addCase(signalEvents.roomJoined, (state, action) => {
1248
1251
  if ("error" in action.payload) {
@@ -1259,6 +1262,7 @@ const authorizationSlice = createSlice({
1259
1262
  });
1260
1263
  const { setRoomKey } = authorizationSlice.actions;
1261
1264
  const selectRoomKey = (state) => state.authorization.roomKey;
1265
+ const selectAssistantKey = (state) => state.authorization.assistantKey;
1262
1266
  const selectAuthorizationRoleName = (state) => state.authorization.roleName;
1263
1267
  const selectIsAuthorizedToLockRoom = createSelector(selectAuthorizationRoleName, (localParticipantRole) => ROOM_ACTION_PERMISSIONS_BY_ROLE.canLockRoom.includes(localParticipantRole));
1264
1268
  const selectIsAuthorizedToRequestAudioEnable = createSelector(selectAuthorizationRoleName, (localParticipantRole) => ROOM_ACTION_PERMISSIONS_BY_ROLE.canRequestAudioEnable.includes(localParticipantRole));
@@ -1654,8 +1658,8 @@ const localMediaSlice = createSlice({
1654
1658
  let cameraEnabled = false;
1655
1659
  let microphoneDeviceId = undefined;
1656
1660
  let microphoneEnabled = false;
1657
- const audioTrack = stream.getAudioTracks()[0];
1658
- const videoTrack = stream.getVideoTracks()[0];
1661
+ const audioTrack = stream === null || stream === void 0 ? void 0 : stream.getAudioTracks()[0];
1662
+ const videoTrack = stream === null || stream === void 0 ? void 0 : stream.getVideoTracks()[0];
1659
1663
  if (audioTrack) {
1660
1664
  microphoneDeviceId = audioTrack.getSettings().deviceId;
1661
1665
  microphoneEnabled = audioTrack.enabled;
@@ -1841,7 +1845,7 @@ const doStartLocalMedia = createAppAsyncThunk("localMedia/doStartLocalMedia", (p
1841
1845
  return Promise.resolve({ stream: payload, onDeviceChange });
1842
1846
  }
1843
1847
  if (!(payload.audio || payload.video)) {
1844
- return { stream: new MediaStream(), onDeviceChange };
1848
+ return { stream: undefined, onDeviceChange };
1845
1849
  }
1846
1850
  else {
1847
1851
  dispatch(setLocalMediaOptions({ options: payload }));
@@ -3058,6 +3062,20 @@ startAppListening({
3058
3062
  dispatch(rtcClientConnectionStatusChanged({ localParticipantId: localParticipant.id }));
3059
3063
  },
3060
3064
  });
3065
+ startAppListening({
3066
+ actionCreator: doStartLocalMedia.fulfilled,
3067
+ effect: ({ payload }, { getState }) => {
3068
+ const { rtcManager, rtcManagerInitialized } = selectRtcConnectionRaw(getState());
3069
+ if (!rtcManager || !rtcManagerInitialized)
3070
+ return;
3071
+ const isCameraEnabled = selectIsCameraEnabled(getState());
3072
+ const isMicrophoneEnabled = selectIsMicrophoneEnabled(getState());
3073
+ const { stream } = payload;
3074
+ if (stream) {
3075
+ rtcManager.addNewStream("0", payload.stream, !isMicrophoneEnabled, !isCameraEnabled);
3076
+ }
3077
+ },
3078
+ });
3061
3079
  const selectShouldConnectRtc = createSelector(selectRtcStatus, selectAppIsActive, selectRtcDispatcherCreated, selectRtcIsCreatingDispatcher, selectSignalConnectionSocket, (rtcStatus, appIsActive, dispatcherCreated, isCreatingDispatcher, signalSocket) => {
3062
3080
  if (appIsActive && rtcStatus === "inactive" && !dispatcherCreated && !isCreatingDispatcher && signalSocket) {
3063
3081
  return true;
@@ -3368,8 +3386,13 @@ startAppListening({
3368
3386
  dispatch(doEnableAudio({ enabled: enabled || !isAudioEnabled }));
3369
3387
  },
3370
3388
  });
3371
- createReactor([selectLocalParticipantDisplayName, selectLocalParticipantStickyReaction, selectRoomConnectionStatus], ({ dispatch }, diplayName, stickyReaction, roomConnectionStatus) => {
3372
- if (roomConnectionStatus === "connected") {
3389
+ createReactor([
3390
+ selectLocalParticipantDisplayName,
3391
+ selectLocalParticipantStickyReaction,
3392
+ selectRoomConnectionStatus,
3393
+ selectAppIsAssistant,
3394
+ ], ({ dispatch }, diplayName, stickyReaction, roomConnectionStatus, isAssistant) => {
3395
+ if (roomConnectionStatus === "connected" && !isAssistant) {
3373
3396
  dispatch(doSendClientMetadata());
3374
3397
  }
3375
3398
  });
@@ -3697,6 +3720,7 @@ const doConnectRoom = createAppThunk(() => (dispatch, getState) => {
3697
3720
  const socket = selectSignalConnectionRaw(state).socket;
3698
3721
  const roomName = selectAppRoomName(state);
3699
3722
  const roomKey = selectRoomKey(state);
3723
+ const assistantKey = selectAssistantKey(state);
3700
3724
  const displayName = selectAppDisplayName(state);
3701
3725
  const userAgent = selectAppUserAgent(state);
3702
3726
  const externalId = selectAppExternalId(state);
@@ -3710,6 +3734,7 @@ const doConnectRoom = createAppThunk(() => (dispatch, getState) => {
3710
3734
  isVideoEnabled: isCameraEnabled,
3711
3735
  }, deviceCapabilities: { canScreenshare: true }, displayName, isCoLocated: false, isDialIn, isDevicePermissionDenied: false, kickFromOtherRooms: false, organizationId,
3712
3736
  roomKey,
3737
+ assistantKey,
3713
3738
  roomName,
3714
3739
  userAgent,
3715
3740
  externalId }, (clientClaim && { clientClaim })));
@@ -4332,7 +4357,7 @@ class LocalMediaClient extends BaseClient {
4332
4357
  }
4333
4358
  startMedia() {
4334
4359
  return __awaiter(this, arguments, void 0, function* (options = { audio: true, video: true }) {
4335
- return this.store.dispatch(doStartLocalMedia(options));
4360
+ return yield this.store.dispatch(doStartLocalMedia(options));
4336
4361
  });
4337
4362
  }
4338
4363
  toggleCamera(enabled) {
@@ -4589,19 +4614,41 @@ class RoomConnectionClient extends BaseClient {
4589
4614
  this.options = options;
4590
4615
  }
4591
4616
  joinRoom() {
4592
- const { roomUrl } = this.options;
4593
- if (!roomUrl) {
4594
- throw new Error("Room URL is required to join a room.");
4595
- }
4596
- const roomConfig = {
4597
- localMediaOptions: this.options.localMediaOptions || undefined,
4598
- displayName: this.options.displayName || "Guest",
4599
- roomKey: this.options.roomKey || null,
4600
- externalId: this.options.externalId || null,
4601
- sdkVersion: `core:${coreVersion}`,
4602
- roomUrl,
4603
- };
4604
- this.store.dispatch(doAppStart(roomConfig));
4617
+ return __awaiter(this, void 0, void 0, function* () {
4618
+ const { roomUrl } = this.options;
4619
+ if (!roomUrl) {
4620
+ throw new Error("Room URL is required to join a room.");
4621
+ }
4622
+ const roomConfig = {
4623
+ localMediaOptions: this.options.localMediaOptions || undefined,
4624
+ displayName: this.options.displayName || "Guest",
4625
+ roomKey: this.options.roomKey || null,
4626
+ externalId: this.options.externalId || null,
4627
+ sdkVersion: `core:${coreVersion}`,
4628
+ roomUrl,
4629
+ assistantKey: this.options.assistantKey || null,
4630
+ isNodeSdk: this.options.isNodeSdk || false,
4631
+ };
4632
+ this.store.dispatch(doAppStart(roomConfig));
4633
+ let resolve;
4634
+ let reject;
4635
+ const promise = new Promise((res, rej) => {
4636
+ resolve = res;
4637
+ reject = rej;
4638
+ });
4639
+ const unsubscribeRoomJoined = this.store.dispatch(addListener({
4640
+ actionCreator: signalEvents.roomJoined,
4641
+ effect: ({ payload }) => {
4642
+ unsubscribeRoomJoined();
4643
+ if ("error" in payload) {
4644
+ reject === null || reject === void 0 ? void 0 : reject(payload.error);
4645
+ return;
4646
+ }
4647
+ resolve === null || resolve === void 0 ? void 0 : resolve(payload);
4648
+ },
4649
+ }));
4650
+ return promise;
4651
+ });
4605
4652
  }
4606
4653
  sendChatMessage(text) {
4607
4654
  this.store.dispatch(doSendChatMessage({ text }));
@@ -75,12 +75,13 @@ const createReactor = (selectors, callback) => {
75
75
  });
76
76
  };
77
77
 
78
- const coreVersion = "1.1.8";
78
+ const coreVersion = "1.2.1";
79
79
 
80
80
  const initialState = {
81
81
  isNodeSdk: false,
82
82
  isActive: false,
83
83
  isDialIn: false,
84
+ isAssistant: false,
84
85
  ignoreBreakoutGroups: false,
85
86
  roomName: null,
86
87
  roomUrl: null,
@@ -94,7 +95,7 @@ const appSlice = toolkit.createSlice({
94
95
  reducers: {
95
96
  doAppStart: (state, action) => {
96
97
  const url = new URL(action.payload.roomUrl);
97
- return Object.assign(Object.assign(Object.assign({}, state), action.payload), { roomName: url.pathname, initialConfig: Object.assign({}, action.payload), isActive: true });
98
+ return Object.assign(Object.assign(Object.assign({}, state), action.payload), { roomName: url.pathname, initialConfig: Object.assign({}, action.payload), isActive: true, isAssistant: Boolean(action.payload.assistantKey) });
98
99
  },
99
100
  doAppStop: (state) => {
100
101
  return Object.assign(Object.assign({}, state), { isActive: false });
@@ -105,6 +106,7 @@ const { doAppStop, doAppStart } = appSlice.actions;
105
106
  const selectAppRaw = (state) => state.app;
106
107
  const selectAppIsActive = (state) => state.app.isActive;
107
108
  const selectAppIsDialIn = (state) => state.app.isDialIn;
109
+ const selectAppIsAssistant = (state) => state.app.isAssistant;
108
110
  const selectAppRoomName = (state) => state.app.roomName;
109
111
  const selectAppRoomUrl = (state) => state.app.roomUrl;
110
112
  const selectAppDisplayName = (state) => state.app.displayName;
@@ -162,6 +164,7 @@ const ROOM_ACTION_PERMISSIONS_BY_ROLE = {
162
164
  };
163
165
  const authorizationSliceInitialState = {
164
166
  roomKey: null,
167
+ assistantKey: null,
165
168
  roleName: "none",
166
169
  };
167
170
  const authorizationSlice = toolkit.createSlice({
@@ -174,7 +177,7 @@ const authorizationSlice = toolkit.createSlice({
174
177
  },
175
178
  extraReducers: (builder) => {
176
179
  builder.addCase(doAppStart, (state, action) => {
177
- return Object.assign(Object.assign({}, state), { roomKey: action.payload.roomKey });
180
+ return Object.assign(Object.assign({}, state), { roomKey: action.payload.roomKey, assistantKey: action.payload.assistantKey });
178
181
  });
179
182
  builder.addCase(signalEvents.roomJoined, (state, action) => {
180
183
  if ("error" in action.payload) {
@@ -191,6 +194,7 @@ const authorizationSlice = toolkit.createSlice({
191
194
  });
192
195
  const { setRoomKey } = authorizationSlice.actions;
193
196
  const selectRoomKey = (state) => state.authorization.roomKey;
197
+ const selectAssistantKey = (state) => state.authorization.assistantKey;
194
198
  const selectAuthorizationRoleName = (state) => state.authorization.roleName;
195
199
  const selectIsAuthorizedToLockRoom = toolkit.createSelector(selectAuthorizationRoleName, (localParticipantRole) => ROOM_ACTION_PERMISSIONS_BY_ROLE.canLockRoom.includes(localParticipantRole));
196
200
  const selectIsAuthorizedToRequestAudioEnable = toolkit.createSelector(selectAuthorizationRoleName, (localParticipantRole) => ROOM_ACTION_PERMISSIONS_BY_ROLE.canRequestAudioEnable.includes(localParticipantRole));
@@ -558,8 +562,8 @@ const localMediaSlice = toolkit.createSlice({
558
562
  let cameraEnabled = false;
559
563
  let microphoneDeviceId = undefined;
560
564
  let microphoneEnabled = false;
561
- const audioTrack = stream.getAudioTracks()[0];
562
- const videoTrack = stream.getVideoTracks()[0];
565
+ const audioTrack = stream === null || stream === void 0 ? void 0 : stream.getAudioTracks()[0];
566
+ const videoTrack = stream === null || stream === void 0 ? void 0 : stream.getVideoTracks()[0];
563
567
  if (audioTrack) {
564
568
  microphoneDeviceId = audioTrack.getSettings().deviceId;
565
569
  microphoneEnabled = audioTrack.enabled;
@@ -745,7 +749,7 @@ const doStartLocalMedia = createAppAsyncThunk("localMedia/doStartLocalMedia", (p
745
749
  return Promise.resolve({ stream: payload, onDeviceChange });
746
750
  }
747
751
  if (!(payload.audio || payload.video)) {
748
- return { stream: new MediaStream(), onDeviceChange };
752
+ return { stream: undefined, onDeviceChange };
749
753
  }
750
754
  else {
751
755
  dispatch(setLocalMediaOptions({ options: payload }));
@@ -1975,6 +1979,20 @@ startAppListening({
1975
1979
  dispatch(rtcClientConnectionStatusChanged({ localParticipantId: localParticipant.id }));
1976
1980
  },
1977
1981
  });
1982
+ startAppListening({
1983
+ actionCreator: doStartLocalMedia.fulfilled,
1984
+ effect: ({ payload }, { getState }) => {
1985
+ const { rtcManager, rtcManagerInitialized } = selectRtcConnectionRaw(getState());
1986
+ if (!rtcManager || !rtcManagerInitialized)
1987
+ return;
1988
+ const isCameraEnabled = selectIsCameraEnabled(getState());
1989
+ const isMicrophoneEnabled = selectIsMicrophoneEnabled(getState());
1990
+ const { stream } = payload;
1991
+ if (stream) {
1992
+ rtcManager.addNewStream("0", payload.stream, !isMicrophoneEnabled, !isCameraEnabled);
1993
+ }
1994
+ },
1995
+ });
1978
1996
  const selectShouldConnectRtc = toolkit.createSelector(selectRtcStatus, selectAppIsActive, selectRtcDispatcherCreated, selectRtcIsCreatingDispatcher, selectSignalConnectionSocket, (rtcStatus, appIsActive, dispatcherCreated, isCreatingDispatcher, signalSocket) => {
1979
1997
  if (appIsActive && rtcStatus === "inactive" && !dispatcherCreated && !isCreatingDispatcher && signalSocket) {
1980
1998
  return true;
@@ -2294,8 +2312,13 @@ startAppListening({
2294
2312
  dispatch(doEnableAudio({ enabled: enabled || !isAudioEnabled }));
2295
2313
  },
2296
2314
  });
2297
- createReactor([selectLocalParticipantDisplayName, selectLocalParticipantStickyReaction, selectRoomConnectionStatus], ({ dispatch }, diplayName, stickyReaction, roomConnectionStatus) => {
2298
- if (roomConnectionStatus === "connected") {
2315
+ createReactor([
2316
+ selectLocalParticipantDisplayName,
2317
+ selectLocalParticipantStickyReaction,
2318
+ selectRoomConnectionStatus,
2319
+ selectAppIsAssistant,
2320
+ ], ({ dispatch }, diplayName, stickyReaction, roomConnectionStatus, isAssistant) => {
2321
+ if (roomConnectionStatus === "connected" && !isAssistant) {
2299
2322
  dispatch(doSendClientMetadata());
2300
2323
  }
2301
2324
  });
@@ -2625,6 +2648,7 @@ const doConnectRoom = createAppThunk(() => (dispatch, getState) => {
2625
2648
  const socket = selectSignalConnectionRaw(state).socket;
2626
2649
  const roomName = selectAppRoomName(state);
2627
2650
  const roomKey = selectRoomKey(state);
2651
+ const assistantKey = selectAssistantKey(state);
2628
2652
  const displayName = selectAppDisplayName(state);
2629
2653
  const userAgent = selectAppUserAgent(state);
2630
2654
  const externalId = selectAppExternalId(state);
@@ -2638,6 +2662,7 @@ const doConnectRoom = createAppThunk(() => (dispatch, getState) => {
2638
2662
  isVideoEnabled: isCameraEnabled,
2639
2663
  }, deviceCapabilities: { canScreenshare: true }, displayName, isCoLocated: false, isDialIn, isDevicePermissionDenied: false, kickFromOtherRooms: false, organizationId,
2640
2664
  roomKey,
2665
+ assistantKey,
2641
2666
  roomName,
2642
2667
  userAgent,
2643
2668
  externalId }, (clientClaim && { clientClaim })));
@@ -3869,12 +3894,14 @@ exports.selectAppExternalId = selectAppExternalId;
3869
3894
  exports.selectAppIgnoreBreakoutGroups = selectAppIgnoreBreakoutGroups;
3870
3895
  exports.selectAppInitialConfig = selectAppInitialConfig;
3871
3896
  exports.selectAppIsActive = selectAppIsActive;
3897
+ exports.selectAppIsAssistant = selectAppIsAssistant;
3872
3898
  exports.selectAppIsDialIn = selectAppIsDialIn;
3873
3899
  exports.selectAppIsNodeSdk = selectAppIsNodeSdk;
3874
3900
  exports.selectAppRaw = selectAppRaw;
3875
3901
  exports.selectAppRoomName = selectAppRoomName;
3876
3902
  exports.selectAppRoomUrl = selectAppRoomUrl;
3877
3903
  exports.selectAppUserAgent = selectAppUserAgent;
3904
+ exports.selectAssistantKey = selectAssistantKey;
3878
3905
  exports.selectAuthorizationRoleName = selectAuthorizationRoleName;
3879
3906
  exports.selectBreakoutActive = selectBreakoutActive;
3880
3907
  exports.selectBreakoutAssignments = selectBreakoutAssignments;
@@ -657,6 +657,7 @@ interface AppConfig {
657
657
  displayName: string;
658
658
  localMediaOptions?: LocalMediaOptions;
659
659
  roomKey: string | null;
660
+ assistantKey?: string | null;
660
661
  roomUrl: string;
661
662
  userAgent?: string;
662
663
  externalId: string | null;
@@ -665,6 +666,7 @@ interface AppState {
665
666
  isNodeSdk: boolean;
666
667
  isActive: boolean;
667
668
  isDialIn: boolean;
669
+ isAssistant: boolean;
668
670
  ignoreBreakoutGroups: boolean;
669
671
  roomUrl: string | null;
670
672
  roomName: string | null;
@@ -684,17 +686,20 @@ declare const appSlice: _reduxjs_toolkit.Slice<AppState, {
684
686
  displayName: string;
685
687
  localMediaOptions?: LocalMediaOptions;
686
688
  roomKey: string | null;
689
+ assistantKey?: string | null;
687
690
  roomUrl: string;
688
691
  userAgent?: string;
689
692
  externalId: string | null;
690
693
  };
691
694
  isActive: true;
695
+ isAssistant: boolean;
692
696
  isNodeSdk: boolean;
693
697
  isDialIn: boolean;
694
698
  ignoreBreakoutGroups: boolean;
695
699
  displayName: string;
696
700
  localMediaOptions?: LocalMediaOptions;
697
701
  roomKey: string | null;
702
+ assistantKey?: string | null;
698
703
  roomUrl: string;
699
704
  userAgent: string | null;
700
705
  externalId: string | null;
@@ -703,6 +708,7 @@ declare const appSlice: _reduxjs_toolkit.Slice<AppState, {
703
708
  isActive: false;
704
709
  isNodeSdk: boolean;
705
710
  isDialIn: boolean;
711
+ isAssistant: boolean;
706
712
  ignoreBreakoutGroups: boolean;
707
713
  roomUrl: string | null;
708
714
  roomName: string | null;
@@ -717,6 +723,7 @@ declare const doAppStart: _reduxjs_toolkit.ActionCreatorWithPayload<AppConfig, "
717
723
  declare const selectAppRaw: (state: RootState) => AppState;
718
724
  declare const selectAppIsActive: (state: RootState) => boolean;
719
725
  declare const selectAppIsDialIn: (state: RootState) => boolean;
726
+ declare const selectAppIsAssistant: (state: RootState) => boolean;
720
727
  declare const selectAppRoomName: (state: RootState) => string | null;
721
728
  declare const selectAppRoomUrl: (state: RootState) => string | null;
722
729
  declare const selectAppDisplayName: (state: RootState) => string | null;
@@ -728,17 +735,20 @@ declare const selectAppIgnoreBreakoutGroups: (state: RootState) => boolean;
728
735
 
729
736
  interface AuthorizationState {
730
737
  roomKey: string | null;
738
+ assistantKey?: string | null;
731
739
  roleName: RoleName;
732
740
  }
733
741
  declare const authorizationSliceInitialState: AuthorizationState;
734
742
  declare const authorizationSlice: _reduxjs_toolkit.Slice<AuthorizationState, {
735
743
  setRoomKey: (state: immer.WritableDraft<AuthorizationState>, action: PayloadAction<string | null>) => {
736
744
  roomKey: string | null;
745
+ assistantKey?: string | null | undefined;
737
746
  roleName: RoleName;
738
747
  };
739
748
  }, "authorization", "authorization", _reduxjs_toolkit.SliceSelectors<AuthorizationState>>;
740
749
  declare const setRoomKey: _reduxjs_toolkit.ActionCreatorWithPayload<string | null, "authorization/setRoomKey">;
741
750
  declare const selectRoomKey: (state: RootState) => string | null;
751
+ declare const selectAssistantKey: (state: RootState) => string | null | undefined;
742
752
  declare const selectAuthorizationRoleName: (state: RootState) => RoleName;
743
753
  declare const selectIsAuthorizedToLockRoom: ((state: {
744
754
  app: AppState;
@@ -1727,6 +1737,9 @@ declare const doSwitchLocalStream: _reduxjs_toolkit.AsyncThunk<{
1727
1737
  declare const doStartLocalMedia: _reduxjs_toolkit.AsyncThunk<{
1728
1738
  stream: MediaStream;
1729
1739
  onDeviceChange: DebouncedFunction;
1740
+ } | {
1741
+ stream: undefined;
1742
+ onDeviceChange: DebouncedFunction;
1730
1743
  }, LocalMediaOptions | MediaStream, ThunkConfig>;
1731
1744
  declare const doStopLocalMedia: (args: void) => AppThunk;
1732
1745
  declare const selectBusyDeviceIds: (state: RootState) => string[];
@@ -4690,5 +4703,5 @@ declare const selectRoomConnectionSessionId: (state: RootState) => string | unde
4690
4703
  declare const selectRoomConnectionStatus: (state: RootState) => ConnectionStatus;
4691
4704
  declare const selectRoomConnectionError: (state: RootState) => string | null;
4692
4705
 
4693
- export { addAppListener, addSpotlight, appSlice, authorizationSlice, authorizationSliceInitialState, breakoutSlice, breakoutSliceInitialState, chatSlice, chatSliceInitialState, cloudRecordingSlice, connectionMonitorSlice, connectionMonitorSliceInitialState, connectionMonitorStarted, connectionMonitorStopped, createAppAsyncThunk, createAppAuthorizedThunk, createAppThunk, createAsyncRoomConnectedThunk, createAuthorizedRoomConnectedThunk, createReactor, createRemoteParticipant, createRoomConnectedThunk, createServices, createStore, createWebRtcEmitter, deviceBusy, deviceCredentialsSlice, deviceCredentialsSliceInitialState, deviceIdentified, deviceIdentifying, doAcceptWaitingParticipant, doAppStart, doAppStop, doBreakoutJoin, doClearNotifications, doConnectRoom, doConnectRtc, doDisconnectRtc, doEnableAudio, doEnableVideo, doEndMeeting, doGetDeviceCredentials, doHandleAcceptStreams, doHandleStreamingStarted, doHandleStreamingStopped, doKickParticipant, doKnockRoom, doLockRoom, doOrganizationFetch, doRejectWaitingParticipant, doRemoveSpotlight, doRequestAudioEnable, doRequestVideoEnable, doRtcAnalyticsCustomEventsInitialize, doRtcManagerCreated, doRtcManagerInitialize, doRtcReportStreamResolution, doSendChatMessage, doSendClientMetadata, doSetDevice, doSetDisplayName, doSetLocalStickyReaction, doSetNotification, doSignalConnect, doSignalDisconnect, doSignalIdentifyDevice, doSpotlightParticipant, doStartCloudRecording, doStartConnectionMonitor, doStartLocalMedia, doStartScreenshare, doStopCloudRecording, doStopConnectionMonitor, doStopLocalMedia, doStopScreenshare, doSwitchLocalStream, doToggleCamera, doToggleLowDataMode, doUpdateDeviceList, initialCloudRecordingState, initialLocalMediaState, initialNotificationsState, initialState, isAcceptingStreams, isClientSpotlighted, listenerMiddleware, localMediaSlice, localMediaStopped, localParticipantSlice, localParticipantSliceInitialState, localScreenshareSlice, localScreenshareSliceInitialState, localStreamMetadataUpdated, notificationsSlice, observeStore, organizationSlice, organizationSliceInitialState, participantStreamAdded, participantStreamIdAdded, recordingRequestStarted, remoteParticipantsSlice, remoteParticipantsSliceInitialState, removeSpotlight, resolutionReported, roomConnectionSlice, roomConnectionSliceInitialState, roomSlice, roomSliceInitialState, rootReducer, rtcAnalyticsCustomEvents, rtcAnalyticsSlice, rtcAnalyticsSliceInitialState, rtcClientConnectionStatusChanged, rtcConnectionSlice, rtcConnectionSliceInitialState, rtcDisconnected, rtcDispatcherCreated, rtcEvents, rtcManagerCreated, rtcManagerDestroyed, rtcManagerInitialized, selectAllClientViews, selectAllClientViewsInCurrentGroup, selectAppDisplayName, selectAppExternalId, selectAppIgnoreBreakoutGroups, selectAppInitialConfig, selectAppIsActive, selectAppIsDialIn, selectAppIsNodeSdk, selectAppRaw, selectAppRoomName, selectAppRoomUrl, selectAppUserAgent, selectAuthorizationRoleName, selectBreakoutActive, selectBreakoutAssignments, selectBreakoutCurrentGroup, selectBreakoutCurrentId, selectBreakoutGroupedParticipants, selectBreakoutGroups, selectBreakoutInitiatedBy, selectBreakoutRaw, selectBusyDeviceIds, selectCameraDeviceError, selectCameraDevices, selectChatMessages, selectChatRaw, selectCloudRecordingError, selectCloudRecordingIsInitiator, selectCloudRecordingRaw, selectCloudRecordingStartedAt, selectCloudRecordingStatus, selectConnectionMonitorIsRunning, selectCurrentCameraDeviceId, selectCurrentMicrophoneDeviceId, selectCurrentSpeakerDeviceId, selectDeviceCredentialsRaw, selectDeviceId, selectHasFetchedDeviceCredentials, selectIsAcceptingStreams, selectIsAuthorizedToAskToSpeak, selectIsAuthorizedToEndMeeting, selectIsAuthorizedToKickClient, selectIsAuthorizedToLockRoom, selectIsAuthorizedToRequestAudioEnable, selectIsAuthorizedToRequestVideoEnable, selectIsAuthorizedToSpotlight, selectIsCameraEnabled, selectIsCloudRecording, selectIsLocalMediaStarting, selectIsLocalParticipantSpotlighted, selectIsLowDataModeEnabled, selectIsMicrophoneEnabled, selectIsSettingCameraDevice, selectIsSettingMicrophoneDevice, selectIsToggleCamera, selectLocalMediaConstraintsOptions, selectLocalMediaDevices, selectLocalMediaIsSwitchingStream, selectLocalMediaOptions, selectLocalMediaOwnsStream, selectLocalMediaRaw, selectLocalMediaShouldStartWithOptions, selectLocalMediaShouldStop, selectLocalMediaStartError, selectLocalMediaStatus, selectLocalMediaStream, selectLocalParticipantBreakoutAssigned, selectLocalParticipantBreakoutGroup, selectLocalParticipantClientClaim, selectLocalParticipantDisplayName, selectLocalParticipantIsScreenSharing, selectLocalParticipantRaw, selectLocalParticipantStickyReaction, selectLocalParticipantView, selectLocalScreenshareRaw, selectLocalScreenshareStatus, selectLocalScreenshareStream, selectMicrophoneDeviceError, selectMicrophoneDevices, selectNotificationsEmitter, selectNotificationsEvents, selectNotificationsRaw, selectNumClients, selectNumParticipants, selectOrganizationId, selectOrganizationPreferences, selectOrganizationRaw, selectRemoteClientViews, selectRemoteClients, selectRemoteParticipants, selectRemoteParticipantsRaw, selectRoomConnectionError, selectRoomConnectionRaw, selectRoomConnectionSession, selectRoomConnectionSessionId, selectRoomConnectionStatus, selectRoomIsLocked, selectRoomKey, selectRtcConnectionRaw, selectRtcDispatcherCreated, selectRtcIsCreatingDispatcher, selectRtcManager, selectRtcManagerInitialized, selectRtcStatus, selectScreenshares, selectSelfId, selectShouldConnectRoom, selectShouldConnectRtc, selectShouldConnectSignal, selectShouldDisconnectRtc, selectShouldFetchDeviceCredentials, selectShouldFetchOrganization, selectShouldIdentifyDevice, selectShouldInitializeRtc, selectShouldStartConnectionMonitor, selectShouldStopConnectionMonitor, selectSignalConnectionDeviceIdentified, selectSignalConnectionRaw, selectSignalConnectionSocket, selectSignalIsIdentifyingDevice, selectSignalStatus, selectSpeakerDevices, selectSpotlightedClientViews, selectSpotlights, selectSpotlightsRaw, selectStopCallbackFunction, selectStreamingRaw, selectStreamsToAccept, selectWaitingParticipants, selectWaitingParticipantsRaw, setBreakoutGroupAssigned, setCurrentCameraDeviceId, setCurrentMicrophoneDeviceId, setCurrentSpeakerDeviceId, setDisplayName, setLocalMediaOptions, setLocalMediaStream, setRoomKey, signalConnectionSlice, signalConnectionSliceInitialState, signalEvents, socketConnected, socketConnecting, socketDisconnected, socketReconnecting, spotlightsSlice, spotlightsSliceInitialState, startAppListening, stopScreenshare, streamIdForClient, streamStatusUpdated, streamingSlice, streamingSliceInitialState, toggleCameraEnabled, toggleLowDataModeEnabled, toggleMicrophoneEnabled, updateReportedValues, waitingParticipantsSlice, waitingParticipantsSliceInitialState };
4706
+ export { addAppListener, addSpotlight, appSlice, authorizationSlice, authorizationSliceInitialState, breakoutSlice, breakoutSliceInitialState, chatSlice, chatSliceInitialState, cloudRecordingSlice, connectionMonitorSlice, connectionMonitorSliceInitialState, connectionMonitorStarted, connectionMonitorStopped, createAppAsyncThunk, createAppAuthorizedThunk, createAppThunk, createAsyncRoomConnectedThunk, createAuthorizedRoomConnectedThunk, createReactor, createRemoteParticipant, createRoomConnectedThunk, createServices, createStore, createWebRtcEmitter, deviceBusy, deviceCredentialsSlice, deviceCredentialsSliceInitialState, deviceIdentified, deviceIdentifying, doAcceptWaitingParticipant, doAppStart, doAppStop, doBreakoutJoin, doClearNotifications, doConnectRoom, doConnectRtc, doDisconnectRtc, doEnableAudio, doEnableVideo, doEndMeeting, doGetDeviceCredentials, doHandleAcceptStreams, doHandleStreamingStarted, doHandleStreamingStopped, doKickParticipant, doKnockRoom, doLockRoom, doOrganizationFetch, doRejectWaitingParticipant, doRemoveSpotlight, doRequestAudioEnable, doRequestVideoEnable, doRtcAnalyticsCustomEventsInitialize, doRtcManagerCreated, doRtcManagerInitialize, doRtcReportStreamResolution, doSendChatMessage, doSendClientMetadata, doSetDevice, doSetDisplayName, doSetLocalStickyReaction, doSetNotification, doSignalConnect, doSignalDisconnect, doSignalIdentifyDevice, doSpotlightParticipant, doStartCloudRecording, doStartConnectionMonitor, doStartLocalMedia, doStartScreenshare, doStopCloudRecording, doStopConnectionMonitor, doStopLocalMedia, doStopScreenshare, doSwitchLocalStream, doToggleCamera, doToggleLowDataMode, doUpdateDeviceList, initialCloudRecordingState, initialLocalMediaState, initialNotificationsState, initialState, isAcceptingStreams, isClientSpotlighted, listenerMiddleware, localMediaSlice, localMediaStopped, localParticipantSlice, localParticipantSliceInitialState, localScreenshareSlice, localScreenshareSliceInitialState, localStreamMetadataUpdated, notificationsSlice, observeStore, organizationSlice, organizationSliceInitialState, participantStreamAdded, participantStreamIdAdded, recordingRequestStarted, remoteParticipantsSlice, remoteParticipantsSliceInitialState, removeSpotlight, resolutionReported, roomConnectionSlice, roomConnectionSliceInitialState, roomSlice, roomSliceInitialState, rootReducer, rtcAnalyticsCustomEvents, rtcAnalyticsSlice, rtcAnalyticsSliceInitialState, rtcClientConnectionStatusChanged, rtcConnectionSlice, rtcConnectionSliceInitialState, rtcDisconnected, rtcDispatcherCreated, rtcEvents, rtcManagerCreated, rtcManagerDestroyed, rtcManagerInitialized, selectAllClientViews, selectAllClientViewsInCurrentGroup, selectAppDisplayName, selectAppExternalId, selectAppIgnoreBreakoutGroups, selectAppInitialConfig, selectAppIsActive, selectAppIsAssistant, selectAppIsDialIn, selectAppIsNodeSdk, selectAppRaw, selectAppRoomName, selectAppRoomUrl, selectAppUserAgent, selectAssistantKey, selectAuthorizationRoleName, selectBreakoutActive, selectBreakoutAssignments, selectBreakoutCurrentGroup, selectBreakoutCurrentId, selectBreakoutGroupedParticipants, selectBreakoutGroups, selectBreakoutInitiatedBy, selectBreakoutRaw, selectBusyDeviceIds, selectCameraDeviceError, selectCameraDevices, selectChatMessages, selectChatRaw, selectCloudRecordingError, selectCloudRecordingIsInitiator, selectCloudRecordingRaw, selectCloudRecordingStartedAt, selectCloudRecordingStatus, selectConnectionMonitorIsRunning, selectCurrentCameraDeviceId, selectCurrentMicrophoneDeviceId, selectCurrentSpeakerDeviceId, selectDeviceCredentialsRaw, selectDeviceId, selectHasFetchedDeviceCredentials, selectIsAcceptingStreams, selectIsAuthorizedToAskToSpeak, selectIsAuthorizedToEndMeeting, selectIsAuthorizedToKickClient, selectIsAuthorizedToLockRoom, selectIsAuthorizedToRequestAudioEnable, selectIsAuthorizedToRequestVideoEnable, selectIsAuthorizedToSpotlight, selectIsCameraEnabled, selectIsCloudRecording, selectIsLocalMediaStarting, selectIsLocalParticipantSpotlighted, selectIsLowDataModeEnabled, selectIsMicrophoneEnabled, selectIsSettingCameraDevice, selectIsSettingMicrophoneDevice, selectIsToggleCamera, selectLocalMediaConstraintsOptions, selectLocalMediaDevices, selectLocalMediaIsSwitchingStream, selectLocalMediaOptions, selectLocalMediaOwnsStream, selectLocalMediaRaw, selectLocalMediaShouldStartWithOptions, selectLocalMediaShouldStop, selectLocalMediaStartError, selectLocalMediaStatus, selectLocalMediaStream, selectLocalParticipantBreakoutAssigned, selectLocalParticipantBreakoutGroup, selectLocalParticipantClientClaim, selectLocalParticipantDisplayName, selectLocalParticipantIsScreenSharing, selectLocalParticipantRaw, selectLocalParticipantStickyReaction, selectLocalParticipantView, selectLocalScreenshareRaw, selectLocalScreenshareStatus, selectLocalScreenshareStream, selectMicrophoneDeviceError, selectMicrophoneDevices, selectNotificationsEmitter, selectNotificationsEvents, selectNotificationsRaw, selectNumClients, selectNumParticipants, selectOrganizationId, selectOrganizationPreferences, selectOrganizationRaw, selectRemoteClientViews, selectRemoteClients, selectRemoteParticipants, selectRemoteParticipantsRaw, selectRoomConnectionError, selectRoomConnectionRaw, selectRoomConnectionSession, selectRoomConnectionSessionId, selectRoomConnectionStatus, selectRoomIsLocked, selectRoomKey, selectRtcConnectionRaw, selectRtcDispatcherCreated, selectRtcIsCreatingDispatcher, selectRtcManager, selectRtcManagerInitialized, selectRtcStatus, selectScreenshares, selectSelfId, selectShouldConnectRoom, selectShouldConnectRtc, selectShouldConnectSignal, selectShouldDisconnectRtc, selectShouldFetchDeviceCredentials, selectShouldFetchOrganization, selectShouldIdentifyDevice, selectShouldInitializeRtc, selectShouldStartConnectionMonitor, selectShouldStopConnectionMonitor, selectSignalConnectionDeviceIdentified, selectSignalConnectionRaw, selectSignalConnectionSocket, selectSignalIsIdentifyingDevice, selectSignalStatus, selectSpeakerDevices, selectSpotlightedClientViews, selectSpotlights, selectSpotlightsRaw, selectStopCallbackFunction, selectStreamingRaw, selectStreamsToAccept, selectWaitingParticipants, selectWaitingParticipantsRaw, setBreakoutGroupAssigned, setCurrentCameraDeviceId, setCurrentMicrophoneDeviceId, setCurrentSpeakerDeviceId, setDisplayName, setLocalMediaOptions, setLocalMediaStream, setRoomKey, signalConnectionSlice, signalConnectionSliceInitialState, signalEvents, socketConnected, socketConnecting, socketDisconnected, socketReconnecting, spotlightsSlice, spotlightsSliceInitialState, startAppListening, stopScreenshare, streamIdForClient, streamStatusUpdated, streamingSlice, streamingSliceInitialState, toggleCameraEnabled, toggleLowDataModeEnabled, toggleMicrophoneEnabled, updateReportedValues, waitingParticipantsSlice, waitingParticipantsSliceInitialState };
4694
4707
  export type { AppConfig, AppDispatch, AppReducer, AppStartListening, AppState, AppThunk, AuthorizationState, BreakoutState, ChatMessage, ChatMessageEvent, ChatMessageEventProps, ChatState, ClientView, CloudRecordingState, ConnectionMonitorStart, ConnectionMonitorState, ConnectionStatus, DeviceCredentialsState, LocalMediaOptions, LocalMediaState, LocalParticipantState, LocalScreenshareState, Notification, NotificationEvent, NotificationEventMap, NotificationEvents, NotificationsEventEmitter, NotificationsState, OrganizationState, RemoteParticipantSliceState, RequestAudioEvent, RequestAudioEventProps, RequestVideoEvent, RequestVideoEventProps, RoomConnectionState, RoomState, RootState, RtcConnectionState, SignalClientEvent, SignalClientEventProps, SignalConnectionState, SignalStatusEvent, SignalStatusEventProps, SpotlightsState, StickyReactionEvent, StickyReactionEventProps, Store, StreamingState, ThunkConfig, WaitingParticipantsState, rtcAnalyticsState };
@@ -657,6 +657,7 @@ interface AppConfig {
657
657
  displayName: string;
658
658
  localMediaOptions?: LocalMediaOptions;
659
659
  roomKey: string | null;
660
+ assistantKey?: string | null;
660
661
  roomUrl: string;
661
662
  userAgent?: string;
662
663
  externalId: string | null;
@@ -665,6 +666,7 @@ interface AppState {
665
666
  isNodeSdk: boolean;
666
667
  isActive: boolean;
667
668
  isDialIn: boolean;
669
+ isAssistant: boolean;
668
670
  ignoreBreakoutGroups: boolean;
669
671
  roomUrl: string | null;
670
672
  roomName: string | null;
@@ -684,17 +686,20 @@ declare const appSlice: _reduxjs_toolkit.Slice<AppState, {
684
686
  displayName: string;
685
687
  localMediaOptions?: LocalMediaOptions;
686
688
  roomKey: string | null;
689
+ assistantKey?: string | null;
687
690
  roomUrl: string;
688
691
  userAgent?: string;
689
692
  externalId: string | null;
690
693
  };
691
694
  isActive: true;
695
+ isAssistant: boolean;
692
696
  isNodeSdk: boolean;
693
697
  isDialIn: boolean;
694
698
  ignoreBreakoutGroups: boolean;
695
699
  displayName: string;
696
700
  localMediaOptions?: LocalMediaOptions;
697
701
  roomKey: string | null;
702
+ assistantKey?: string | null;
698
703
  roomUrl: string;
699
704
  userAgent: string | null;
700
705
  externalId: string | null;
@@ -703,6 +708,7 @@ declare const appSlice: _reduxjs_toolkit.Slice<AppState, {
703
708
  isActive: false;
704
709
  isNodeSdk: boolean;
705
710
  isDialIn: boolean;
711
+ isAssistant: boolean;
706
712
  ignoreBreakoutGroups: boolean;
707
713
  roomUrl: string | null;
708
714
  roomName: string | null;
@@ -717,6 +723,7 @@ declare const doAppStart: _reduxjs_toolkit.ActionCreatorWithPayload<AppConfig, "
717
723
  declare const selectAppRaw: (state: RootState) => AppState;
718
724
  declare const selectAppIsActive: (state: RootState) => boolean;
719
725
  declare const selectAppIsDialIn: (state: RootState) => boolean;
726
+ declare const selectAppIsAssistant: (state: RootState) => boolean;
720
727
  declare const selectAppRoomName: (state: RootState) => string | null;
721
728
  declare const selectAppRoomUrl: (state: RootState) => string | null;
722
729
  declare const selectAppDisplayName: (state: RootState) => string | null;
@@ -728,17 +735,20 @@ declare const selectAppIgnoreBreakoutGroups: (state: RootState) => boolean;
728
735
 
729
736
  interface AuthorizationState {
730
737
  roomKey: string | null;
738
+ assistantKey?: string | null;
731
739
  roleName: RoleName;
732
740
  }
733
741
  declare const authorizationSliceInitialState: AuthorizationState;
734
742
  declare const authorizationSlice: _reduxjs_toolkit.Slice<AuthorizationState, {
735
743
  setRoomKey: (state: immer.WritableDraft<AuthorizationState>, action: PayloadAction<string | null>) => {
736
744
  roomKey: string | null;
745
+ assistantKey?: string | null | undefined;
737
746
  roleName: RoleName;
738
747
  };
739
748
  }, "authorization", "authorization", _reduxjs_toolkit.SliceSelectors<AuthorizationState>>;
740
749
  declare const setRoomKey: _reduxjs_toolkit.ActionCreatorWithPayload<string | null, "authorization/setRoomKey">;
741
750
  declare const selectRoomKey: (state: RootState) => string | null;
751
+ declare const selectAssistantKey: (state: RootState) => string | null | undefined;
742
752
  declare const selectAuthorizationRoleName: (state: RootState) => RoleName;
743
753
  declare const selectIsAuthorizedToLockRoom: ((state: {
744
754
  app: AppState;
@@ -1727,6 +1737,9 @@ declare const doSwitchLocalStream: _reduxjs_toolkit.AsyncThunk<{
1727
1737
  declare const doStartLocalMedia: _reduxjs_toolkit.AsyncThunk<{
1728
1738
  stream: MediaStream;
1729
1739
  onDeviceChange: DebouncedFunction;
1740
+ } | {
1741
+ stream: undefined;
1742
+ onDeviceChange: DebouncedFunction;
1730
1743
  }, LocalMediaOptions | MediaStream, ThunkConfig>;
1731
1744
  declare const doStopLocalMedia: (args: void) => AppThunk;
1732
1745
  declare const selectBusyDeviceIds: (state: RootState) => string[];
@@ -4690,5 +4703,5 @@ declare const selectRoomConnectionSessionId: (state: RootState) => string | unde
4690
4703
  declare const selectRoomConnectionStatus: (state: RootState) => ConnectionStatus;
4691
4704
  declare const selectRoomConnectionError: (state: RootState) => string | null;
4692
4705
 
4693
- export { addAppListener, addSpotlight, appSlice, authorizationSlice, authorizationSliceInitialState, breakoutSlice, breakoutSliceInitialState, chatSlice, chatSliceInitialState, cloudRecordingSlice, connectionMonitorSlice, connectionMonitorSliceInitialState, connectionMonitorStarted, connectionMonitorStopped, createAppAsyncThunk, createAppAuthorizedThunk, createAppThunk, createAsyncRoomConnectedThunk, createAuthorizedRoomConnectedThunk, createReactor, createRemoteParticipant, createRoomConnectedThunk, createServices, createStore, createWebRtcEmitter, deviceBusy, deviceCredentialsSlice, deviceCredentialsSliceInitialState, deviceIdentified, deviceIdentifying, doAcceptWaitingParticipant, doAppStart, doAppStop, doBreakoutJoin, doClearNotifications, doConnectRoom, doConnectRtc, doDisconnectRtc, doEnableAudio, doEnableVideo, doEndMeeting, doGetDeviceCredentials, doHandleAcceptStreams, doHandleStreamingStarted, doHandleStreamingStopped, doKickParticipant, doKnockRoom, doLockRoom, doOrganizationFetch, doRejectWaitingParticipant, doRemoveSpotlight, doRequestAudioEnable, doRequestVideoEnable, doRtcAnalyticsCustomEventsInitialize, doRtcManagerCreated, doRtcManagerInitialize, doRtcReportStreamResolution, doSendChatMessage, doSendClientMetadata, doSetDevice, doSetDisplayName, doSetLocalStickyReaction, doSetNotification, doSignalConnect, doSignalDisconnect, doSignalIdentifyDevice, doSpotlightParticipant, doStartCloudRecording, doStartConnectionMonitor, doStartLocalMedia, doStartScreenshare, doStopCloudRecording, doStopConnectionMonitor, doStopLocalMedia, doStopScreenshare, doSwitchLocalStream, doToggleCamera, doToggleLowDataMode, doUpdateDeviceList, initialCloudRecordingState, initialLocalMediaState, initialNotificationsState, initialState, isAcceptingStreams, isClientSpotlighted, listenerMiddleware, localMediaSlice, localMediaStopped, localParticipantSlice, localParticipantSliceInitialState, localScreenshareSlice, localScreenshareSliceInitialState, localStreamMetadataUpdated, notificationsSlice, observeStore, organizationSlice, organizationSliceInitialState, participantStreamAdded, participantStreamIdAdded, recordingRequestStarted, remoteParticipantsSlice, remoteParticipantsSliceInitialState, removeSpotlight, resolutionReported, roomConnectionSlice, roomConnectionSliceInitialState, roomSlice, roomSliceInitialState, rootReducer, rtcAnalyticsCustomEvents, rtcAnalyticsSlice, rtcAnalyticsSliceInitialState, rtcClientConnectionStatusChanged, rtcConnectionSlice, rtcConnectionSliceInitialState, rtcDisconnected, rtcDispatcherCreated, rtcEvents, rtcManagerCreated, rtcManagerDestroyed, rtcManagerInitialized, selectAllClientViews, selectAllClientViewsInCurrentGroup, selectAppDisplayName, selectAppExternalId, selectAppIgnoreBreakoutGroups, selectAppInitialConfig, selectAppIsActive, selectAppIsDialIn, selectAppIsNodeSdk, selectAppRaw, selectAppRoomName, selectAppRoomUrl, selectAppUserAgent, selectAuthorizationRoleName, selectBreakoutActive, selectBreakoutAssignments, selectBreakoutCurrentGroup, selectBreakoutCurrentId, selectBreakoutGroupedParticipants, selectBreakoutGroups, selectBreakoutInitiatedBy, selectBreakoutRaw, selectBusyDeviceIds, selectCameraDeviceError, selectCameraDevices, selectChatMessages, selectChatRaw, selectCloudRecordingError, selectCloudRecordingIsInitiator, selectCloudRecordingRaw, selectCloudRecordingStartedAt, selectCloudRecordingStatus, selectConnectionMonitorIsRunning, selectCurrentCameraDeviceId, selectCurrentMicrophoneDeviceId, selectCurrentSpeakerDeviceId, selectDeviceCredentialsRaw, selectDeviceId, selectHasFetchedDeviceCredentials, selectIsAcceptingStreams, selectIsAuthorizedToAskToSpeak, selectIsAuthorizedToEndMeeting, selectIsAuthorizedToKickClient, selectIsAuthorizedToLockRoom, selectIsAuthorizedToRequestAudioEnable, selectIsAuthorizedToRequestVideoEnable, selectIsAuthorizedToSpotlight, selectIsCameraEnabled, selectIsCloudRecording, selectIsLocalMediaStarting, selectIsLocalParticipantSpotlighted, selectIsLowDataModeEnabled, selectIsMicrophoneEnabled, selectIsSettingCameraDevice, selectIsSettingMicrophoneDevice, selectIsToggleCamera, selectLocalMediaConstraintsOptions, selectLocalMediaDevices, selectLocalMediaIsSwitchingStream, selectLocalMediaOptions, selectLocalMediaOwnsStream, selectLocalMediaRaw, selectLocalMediaShouldStartWithOptions, selectLocalMediaShouldStop, selectLocalMediaStartError, selectLocalMediaStatus, selectLocalMediaStream, selectLocalParticipantBreakoutAssigned, selectLocalParticipantBreakoutGroup, selectLocalParticipantClientClaim, selectLocalParticipantDisplayName, selectLocalParticipantIsScreenSharing, selectLocalParticipantRaw, selectLocalParticipantStickyReaction, selectLocalParticipantView, selectLocalScreenshareRaw, selectLocalScreenshareStatus, selectLocalScreenshareStream, selectMicrophoneDeviceError, selectMicrophoneDevices, selectNotificationsEmitter, selectNotificationsEvents, selectNotificationsRaw, selectNumClients, selectNumParticipants, selectOrganizationId, selectOrganizationPreferences, selectOrganizationRaw, selectRemoteClientViews, selectRemoteClients, selectRemoteParticipants, selectRemoteParticipantsRaw, selectRoomConnectionError, selectRoomConnectionRaw, selectRoomConnectionSession, selectRoomConnectionSessionId, selectRoomConnectionStatus, selectRoomIsLocked, selectRoomKey, selectRtcConnectionRaw, selectRtcDispatcherCreated, selectRtcIsCreatingDispatcher, selectRtcManager, selectRtcManagerInitialized, selectRtcStatus, selectScreenshares, selectSelfId, selectShouldConnectRoom, selectShouldConnectRtc, selectShouldConnectSignal, selectShouldDisconnectRtc, selectShouldFetchDeviceCredentials, selectShouldFetchOrganization, selectShouldIdentifyDevice, selectShouldInitializeRtc, selectShouldStartConnectionMonitor, selectShouldStopConnectionMonitor, selectSignalConnectionDeviceIdentified, selectSignalConnectionRaw, selectSignalConnectionSocket, selectSignalIsIdentifyingDevice, selectSignalStatus, selectSpeakerDevices, selectSpotlightedClientViews, selectSpotlights, selectSpotlightsRaw, selectStopCallbackFunction, selectStreamingRaw, selectStreamsToAccept, selectWaitingParticipants, selectWaitingParticipantsRaw, setBreakoutGroupAssigned, setCurrentCameraDeviceId, setCurrentMicrophoneDeviceId, setCurrentSpeakerDeviceId, setDisplayName, setLocalMediaOptions, setLocalMediaStream, setRoomKey, signalConnectionSlice, signalConnectionSliceInitialState, signalEvents, socketConnected, socketConnecting, socketDisconnected, socketReconnecting, spotlightsSlice, spotlightsSliceInitialState, startAppListening, stopScreenshare, streamIdForClient, streamStatusUpdated, streamingSlice, streamingSliceInitialState, toggleCameraEnabled, toggleLowDataModeEnabled, toggleMicrophoneEnabled, updateReportedValues, waitingParticipantsSlice, waitingParticipantsSliceInitialState };
4706
+ export { addAppListener, addSpotlight, appSlice, authorizationSlice, authorizationSliceInitialState, breakoutSlice, breakoutSliceInitialState, chatSlice, chatSliceInitialState, cloudRecordingSlice, connectionMonitorSlice, connectionMonitorSliceInitialState, connectionMonitorStarted, connectionMonitorStopped, createAppAsyncThunk, createAppAuthorizedThunk, createAppThunk, createAsyncRoomConnectedThunk, createAuthorizedRoomConnectedThunk, createReactor, createRemoteParticipant, createRoomConnectedThunk, createServices, createStore, createWebRtcEmitter, deviceBusy, deviceCredentialsSlice, deviceCredentialsSliceInitialState, deviceIdentified, deviceIdentifying, doAcceptWaitingParticipant, doAppStart, doAppStop, doBreakoutJoin, doClearNotifications, doConnectRoom, doConnectRtc, doDisconnectRtc, doEnableAudio, doEnableVideo, doEndMeeting, doGetDeviceCredentials, doHandleAcceptStreams, doHandleStreamingStarted, doHandleStreamingStopped, doKickParticipant, doKnockRoom, doLockRoom, doOrganizationFetch, doRejectWaitingParticipant, doRemoveSpotlight, doRequestAudioEnable, doRequestVideoEnable, doRtcAnalyticsCustomEventsInitialize, doRtcManagerCreated, doRtcManagerInitialize, doRtcReportStreamResolution, doSendChatMessage, doSendClientMetadata, doSetDevice, doSetDisplayName, doSetLocalStickyReaction, doSetNotification, doSignalConnect, doSignalDisconnect, doSignalIdentifyDevice, doSpotlightParticipant, doStartCloudRecording, doStartConnectionMonitor, doStartLocalMedia, doStartScreenshare, doStopCloudRecording, doStopConnectionMonitor, doStopLocalMedia, doStopScreenshare, doSwitchLocalStream, doToggleCamera, doToggleLowDataMode, doUpdateDeviceList, initialCloudRecordingState, initialLocalMediaState, initialNotificationsState, initialState, isAcceptingStreams, isClientSpotlighted, listenerMiddleware, localMediaSlice, localMediaStopped, localParticipantSlice, localParticipantSliceInitialState, localScreenshareSlice, localScreenshareSliceInitialState, localStreamMetadataUpdated, notificationsSlice, observeStore, organizationSlice, organizationSliceInitialState, participantStreamAdded, participantStreamIdAdded, recordingRequestStarted, remoteParticipantsSlice, remoteParticipantsSliceInitialState, removeSpotlight, resolutionReported, roomConnectionSlice, roomConnectionSliceInitialState, roomSlice, roomSliceInitialState, rootReducer, rtcAnalyticsCustomEvents, rtcAnalyticsSlice, rtcAnalyticsSliceInitialState, rtcClientConnectionStatusChanged, rtcConnectionSlice, rtcConnectionSliceInitialState, rtcDisconnected, rtcDispatcherCreated, rtcEvents, rtcManagerCreated, rtcManagerDestroyed, rtcManagerInitialized, selectAllClientViews, selectAllClientViewsInCurrentGroup, selectAppDisplayName, selectAppExternalId, selectAppIgnoreBreakoutGroups, selectAppInitialConfig, selectAppIsActive, selectAppIsAssistant, selectAppIsDialIn, selectAppIsNodeSdk, selectAppRaw, selectAppRoomName, selectAppRoomUrl, selectAppUserAgent, selectAssistantKey, selectAuthorizationRoleName, selectBreakoutActive, selectBreakoutAssignments, selectBreakoutCurrentGroup, selectBreakoutCurrentId, selectBreakoutGroupedParticipants, selectBreakoutGroups, selectBreakoutInitiatedBy, selectBreakoutRaw, selectBusyDeviceIds, selectCameraDeviceError, selectCameraDevices, selectChatMessages, selectChatRaw, selectCloudRecordingError, selectCloudRecordingIsInitiator, selectCloudRecordingRaw, selectCloudRecordingStartedAt, selectCloudRecordingStatus, selectConnectionMonitorIsRunning, selectCurrentCameraDeviceId, selectCurrentMicrophoneDeviceId, selectCurrentSpeakerDeviceId, selectDeviceCredentialsRaw, selectDeviceId, selectHasFetchedDeviceCredentials, selectIsAcceptingStreams, selectIsAuthorizedToAskToSpeak, selectIsAuthorizedToEndMeeting, selectIsAuthorizedToKickClient, selectIsAuthorizedToLockRoom, selectIsAuthorizedToRequestAudioEnable, selectIsAuthorizedToRequestVideoEnable, selectIsAuthorizedToSpotlight, selectIsCameraEnabled, selectIsCloudRecording, selectIsLocalMediaStarting, selectIsLocalParticipantSpotlighted, selectIsLowDataModeEnabled, selectIsMicrophoneEnabled, selectIsSettingCameraDevice, selectIsSettingMicrophoneDevice, selectIsToggleCamera, selectLocalMediaConstraintsOptions, selectLocalMediaDevices, selectLocalMediaIsSwitchingStream, selectLocalMediaOptions, selectLocalMediaOwnsStream, selectLocalMediaRaw, selectLocalMediaShouldStartWithOptions, selectLocalMediaShouldStop, selectLocalMediaStartError, selectLocalMediaStatus, selectLocalMediaStream, selectLocalParticipantBreakoutAssigned, selectLocalParticipantBreakoutGroup, selectLocalParticipantClientClaim, selectLocalParticipantDisplayName, selectLocalParticipantIsScreenSharing, selectLocalParticipantRaw, selectLocalParticipantStickyReaction, selectLocalParticipantView, selectLocalScreenshareRaw, selectLocalScreenshareStatus, selectLocalScreenshareStream, selectMicrophoneDeviceError, selectMicrophoneDevices, selectNotificationsEmitter, selectNotificationsEvents, selectNotificationsRaw, selectNumClients, selectNumParticipants, selectOrganizationId, selectOrganizationPreferences, selectOrganizationRaw, selectRemoteClientViews, selectRemoteClients, selectRemoteParticipants, selectRemoteParticipantsRaw, selectRoomConnectionError, selectRoomConnectionRaw, selectRoomConnectionSession, selectRoomConnectionSessionId, selectRoomConnectionStatus, selectRoomIsLocked, selectRoomKey, selectRtcConnectionRaw, selectRtcDispatcherCreated, selectRtcIsCreatingDispatcher, selectRtcManager, selectRtcManagerInitialized, selectRtcStatus, selectScreenshares, selectSelfId, selectShouldConnectRoom, selectShouldConnectRtc, selectShouldConnectSignal, selectShouldDisconnectRtc, selectShouldFetchDeviceCredentials, selectShouldFetchOrganization, selectShouldIdentifyDevice, selectShouldInitializeRtc, selectShouldStartConnectionMonitor, selectShouldStopConnectionMonitor, selectSignalConnectionDeviceIdentified, selectSignalConnectionRaw, selectSignalConnectionSocket, selectSignalIsIdentifyingDevice, selectSignalStatus, selectSpeakerDevices, selectSpotlightedClientViews, selectSpotlights, selectSpotlightsRaw, selectStopCallbackFunction, selectStreamingRaw, selectStreamsToAccept, selectWaitingParticipants, selectWaitingParticipantsRaw, setBreakoutGroupAssigned, setCurrentCameraDeviceId, setCurrentMicrophoneDeviceId, setCurrentSpeakerDeviceId, setDisplayName, setLocalMediaOptions, setLocalMediaStream, setRoomKey, signalConnectionSlice, signalConnectionSliceInitialState, signalEvents, socketConnected, socketConnecting, socketDisconnected, socketReconnecting, spotlightsSlice, spotlightsSliceInitialState, startAppListening, stopScreenshare, streamIdForClient, streamStatusUpdated, streamingSlice, streamingSliceInitialState, toggleCameraEnabled, toggleLowDataModeEnabled, toggleMicrophoneEnabled, updateReportedValues, waitingParticipantsSlice, waitingParticipantsSliceInitialState };
4694
4707
  export type { AppConfig, AppDispatch, AppReducer, AppStartListening, AppState, AppThunk, AuthorizationState, BreakoutState, ChatMessage, ChatMessageEvent, ChatMessageEventProps, ChatState, ClientView, CloudRecordingState, ConnectionMonitorStart, ConnectionMonitorState, ConnectionStatus, DeviceCredentialsState, LocalMediaOptions, LocalMediaState, LocalParticipantState, LocalScreenshareState, Notification, NotificationEvent, NotificationEventMap, NotificationEvents, NotificationsEventEmitter, NotificationsState, OrganizationState, RemoteParticipantSliceState, RequestAudioEvent, RequestAudioEventProps, RequestVideoEvent, RequestVideoEventProps, RoomConnectionState, RoomState, RootState, RtcConnectionState, SignalClientEvent, SignalClientEventProps, SignalConnectionState, SignalStatusEvent, SignalStatusEventProps, SpotlightsState, StickyReactionEvent, StickyReactionEventProps, Store, StreamingState, ThunkConfig, WaitingParticipantsState, rtcAnalyticsState };