@@ -287,91 +287,6 @@ class Room extends DisposableChangeNotifier with EventsEmittable<RoomEvent> {
287
287
}
288
288
289
289
void _setUpSignalListeners () => _signalListener
290
- ..on < SignalJoinResponseEvent > ((event) {
291
- _roomInfo = event.response.room;
292
- _name = event.response.room.name;
293
- _metadata = event.response.room.metadata;
294
- _serverVersion = event.response.serverVersion;
295
- _serverRegion = event.response.serverRegion;
296
-
297
- if (_isRecording != event.response.room.activeRecording) {
298
- _isRecording = event.response.room.activeRecording;
299
- emitWhenConnected (
300
- RoomRecordingStatusChanged (activeRecording: _isRecording));
301
- }
302
-
303
- logger.fine ('[Engine] Received JoinResponse, '
304
- 'serverVersion: ${event .response .serverVersion }' );
305
-
306
- _localParticipant ?? = LocalParticipant (
307
- room: this ,
308
- info: event.response.participant,
309
- );
310
-
311
- if (engine.fullReconnectOnNext) {
312
- _localParticipant! .updateFromInfo (event.response.participant);
313
- }
314
-
315
- if (connectOptions.protocolVersion.index >= ProtocolVersion .v8.index &&
316
- engine.fastConnectOptions != null &&
317
- ! engine.fullReconnectOnNext) {
318
- var options = engine.fastConnectOptions! ;
319
-
320
- var audio = options.microphone;
321
- bool audioEnabled = audio.enabled == true || audio.track != null ;
322
- if (audioEnabled) {
323
- if (audio.track != null ) {
324
- _localParticipant! .publishAudioTrack (audio.track as LocalAudioTrack ,
325
- publishOptions: roomOptions.defaultAudioPublishOptions);
326
- } else {
327
- _localParticipant! .setMicrophoneEnabled (true ,
328
- audioCaptureOptions: roomOptions.defaultAudioCaptureOptions);
329
- }
330
- }
331
-
332
- var video = options.camera;
333
- bool videoEnabled = video.enabled == true || video.track != null ;
334
- if (videoEnabled) {
335
- if (video.track != null ) {
336
- _localParticipant! .publishVideoTrack (video.track as LocalVideoTrack ,
337
- publishOptions: roomOptions.defaultVideoPublishOptions);
338
- } else {
339
- _localParticipant! .setCameraEnabled (true ,
340
- cameraCaptureOptions: roomOptions.defaultCameraCaptureOptions);
341
- }
342
- }
343
-
344
- var screen = options.screen;
345
- bool screenEnabled = screen.enabled == true || screen.track != null ;
346
- if (screenEnabled) {
347
- if (screen.track != null ) {
348
- _localParticipant! .publishVideoTrack (
349
- screen.track as LocalVideoTrack ,
350
- publishOptions: roomOptions.defaultVideoPublishOptions);
351
- } else {
352
- _localParticipant! .setScreenShareEnabled (true ,
353
- screenShareCaptureOptions:
354
- roomOptions.defaultScreenShareCaptureOptions);
355
- }
356
- }
357
- }
358
-
359
- for (final info in event.response.otherParticipants) {
360
- logger.fine (
361
- 'Creating RemoteParticipant: sid = ${info .sid }(identity:${info .identity }) '
362
- 'tracks:${info .tracks .map ((e ) => e .sid )}' );
363
- _getOrCreateRemoteParticipant (info.identity, info);
364
- }
365
-
366
- if (e2eeManager != null && event.response.sifTrailer.isNotEmpty) {
367
- e2eeManager! .keyProvider
368
- .setSifTrailer (Uint8List .fromList (event.response.sifTrailer));
369
- }
370
-
371
- logger.fine ('Room Connect completed' );
372
-
373
- events.emit (RoomConnectedEvent (room: this , metadata: _metadata));
374
- })
375
290
..on < SignalParticipantUpdateEvent > (
376
291
(event) => _onParticipantUpdateEvent (event.participants))
377
292
..on < SignalSpeakersChangedEvent > (
@@ -473,6 +388,91 @@ class Room extends DisposableChangeNotifier with EventsEmittable<RoomEvent> {
473
388
});
474
389
475
390
void _setUpEngineListeners () => _engineListener
391
+ ..on < EngineJoinResponseEvent > ((event) {
392
+ _roomInfo = event.response.room;
393
+ _name = event.response.room.name;
394
+ _metadata = event.response.room.metadata;
395
+ _serverVersion = event.response.serverVersion;
396
+ _serverRegion = event.response.serverRegion;
397
+
398
+ if (_isRecording != event.response.room.activeRecording) {
399
+ _isRecording = event.response.room.activeRecording;
400
+ emitWhenConnected (
401
+ RoomRecordingStatusChanged (activeRecording: _isRecording));
402
+ }
403
+
404
+ logger.fine ('[Engine] Received JoinResponse, '
405
+ 'serverVersion: ${event .response .serverVersion }' );
406
+
407
+ _localParticipant ?? = LocalParticipant (
408
+ room: this ,
409
+ info: event.response.participant,
410
+ );
411
+
412
+ if (engine.fullReconnectOnNext) {
413
+ _localParticipant! .updateFromInfo (event.response.participant);
414
+ }
415
+
416
+ if (connectOptions.protocolVersion.index >= ProtocolVersion .v8.index &&
417
+ engine.fastConnectOptions != null &&
418
+ ! engine.fullReconnectOnNext) {
419
+ var options = engine.fastConnectOptions! ;
420
+
421
+ var audio = options.microphone;
422
+ bool audioEnabled = audio.enabled == true || audio.track != null ;
423
+ if (audioEnabled) {
424
+ if (audio.track != null ) {
425
+ _localParticipant! .publishAudioTrack (audio.track as LocalAudioTrack ,
426
+ publishOptions: roomOptions.defaultAudioPublishOptions);
427
+ } else {
428
+ _localParticipant! .setMicrophoneEnabled (true ,
429
+ audioCaptureOptions: roomOptions.defaultAudioCaptureOptions);
430
+ }
431
+ }
432
+
433
+ var video = options.camera;
434
+ bool videoEnabled = video.enabled == true || video.track != null ;
435
+ if (videoEnabled) {
436
+ if (video.track != null ) {
437
+ _localParticipant! .publishVideoTrack (video.track as LocalVideoTrack ,
438
+ publishOptions: roomOptions.defaultVideoPublishOptions);
439
+ } else {
440
+ _localParticipant! .setCameraEnabled (true ,
441
+ cameraCaptureOptions: roomOptions.defaultCameraCaptureOptions);
442
+ }
443
+ }
444
+
445
+ var screen = options.screen;
446
+ bool screenEnabled = screen.enabled == true || screen.track != null ;
447
+ if (screenEnabled) {
448
+ if (screen.track != null ) {
449
+ _localParticipant! .publishVideoTrack (
450
+ screen.track as LocalVideoTrack ,
451
+ publishOptions: roomOptions.defaultVideoPublishOptions);
452
+ } else {
453
+ _localParticipant! .setScreenShareEnabled (true ,
454
+ screenShareCaptureOptions:
455
+ roomOptions.defaultScreenShareCaptureOptions);
456
+ }
457
+ }
458
+ }
459
+
460
+ for (final info in event.response.otherParticipants) {
461
+ logger.fine (
462
+ 'Creating RemoteParticipant: sid = ${info .sid }(identity:${info .identity }) '
463
+ 'tracks:${info .tracks .map ((e ) => e .sid )}' );
464
+ _getOrCreateRemoteParticipant (info.identity, info);
465
+ }
466
+
467
+ if (e2eeManager != null && event.response.sifTrailer.isNotEmpty) {
468
+ e2eeManager! .keyProvider
469
+ .setSifTrailer (Uint8List .fromList (event.response.sifTrailer));
470
+ }
471
+
472
+ logger.fine ('Room Connect completed' );
473
+
474
+ events.emit (RoomConnectedEvent (room: this , metadata: _metadata));
475
+ })
476
476
..on < EngineResumedEvent > ((event) async {
477
477
// re-send tracks permissions
478
478
localParticipant? .sendTrackSubscriptionPermissions ();
0 commit comments