Skip to content

Commit

Permalink
Do not emit Reconnecting event during connection resume. (#459)
Browse files Browse the repository at this point in the history
  • Loading branch information
cloudwebrtc authored Feb 3, 2024
1 parent 4785179 commit 0f68590
Show file tree
Hide file tree
Showing 4 changed files with 7 additions and 31 deletions.
4 changes: 1 addition & 3 deletions lib/src/core/engine.dart
Original file line number Diff line number Diff line change
Expand Up @@ -746,8 +746,6 @@ class Engine extends Disposable with EventsEmittable<EngineEvent> {
'resumeConnection: Timed out waiting for SignalReconnectedEvent'),
);

events.emit(const EngineSignalResumedEvent());

logger.fine('resumeConnection: reason: ${reason.name}');

if (_hasPublished) {
Expand All @@ -774,7 +772,7 @@ class Engine extends Disposable with EventsEmittable<EngineEvent> {
logger.fine('resumeConnection: primary connected');
}

events.emit(const EngineReconnectedEvent());
events.emit(const EngineResumedEvent());
}

@internal
Expand Down
11 changes: 4 additions & 7 deletions lib/src/core/room.dart
Original file line number Diff line number Diff line change
Expand Up @@ -357,14 +357,13 @@ class Room extends DisposableChangeNotifier with EventsEmittable<RoomEvent> {
});

void _setUpEngineListeners() => _engineListener
..on<EngineReconnectedEvent>((event) async {
events.emit(const RoomReconnectedEvent());
..on<EngineResumedEvent>((event) async {
// re-send tracks permissions
localParticipant?.sendTrackSubscriptionPermissions();
notifyListeners();
})
..on<EngineFullRestartingEvent>((event) async {
events.emit(const RoomRestartingEvent());
events.emit(const RoomReconnectingEvent());

// clean up RemoteParticipants
var copy = _remoteParticipants.values.toList();
Expand All @@ -385,8 +384,6 @@ class Room extends DisposableChangeNotifier with EventsEmittable<RoomEvent> {
notifyListeners();
})
..on<EngineRestartedEvent>((event) async {
events.emit(const RoomRestartedEvent());

// re-publish all tracks
await localParticipant?.rePublishAllTracks();

Expand All @@ -398,9 +395,9 @@ class Room extends DisposableChangeNotifier with EventsEmittable<RoomEvent> {
}
}
notifyListeners();
events.emit(const RoomReconnectedEvent());
})
..on<EngineReconnectingEvent>((event) async {
events.emit(const RoomReconnectingEvent());
..on<EngineResumingEvent>((event) async {
await _sendSyncState();
notifyListeners();
})
Expand Down
14 changes: 0 additions & 14 deletions lib/src/events.dart
Original file line number Diff line number Diff line change
Expand Up @@ -90,20 +90,6 @@ class RoomReconnectedEvent with RoomEvent {
String toString() => '${runtimeType}()';
}

class RoomRestartingEvent with RoomEvent {
const RoomRestartingEvent();

@override
String toString() => '${runtimeType}()';
}

class RoomRestartedEvent with RoomEvent {
const RoomRestartedEvent();

@override
String toString() => '${runtimeType}()';
}

/// Disconnected from the room
/// Emitted by [Room].
class RoomDisconnectedEvent with RoomEvent {
Expand Down
9 changes: 2 additions & 7 deletions lib/src/internal/events.dart
Original file line number Diff line number Diff line change
Expand Up @@ -197,20 +197,15 @@ class EngineReconnectingEvent with InternalEvent, EngineEvent {
}

@internal
class EngineReconnectedEvent with InternalEvent, EngineEvent {
const EngineReconnectedEvent();
class EngineResumedEvent with InternalEvent, EngineEvent {
const EngineResumedEvent();
}

@internal
class EngineResumingEvent with InternalEvent, EngineEvent {
const EngineResumingEvent();
}

@internal
class EngineSignalResumedEvent with EngineEvent, InternalEvent {
const EngineSignalResumedEvent();
}

@internal
class SignalConnectedEvent with SignalEvent, InternalEvent {
const SignalConnectedEvent();
Expand Down

0 comments on commit 0f68590

Please sign in to comment.