Session migration (#72)

* impl

* retry logic

* simulate

* pass checks

* adjust log level

* retry condition

* fix simulate scenario params

* format

* use `RTCPeerConnectionState` instead of `RTCIceConnectionState`

* adjust retry

* additional check for completer

* more logging

* fix id

* pub

* change package

* doc update

* retry tests

* format

* apply suggestions
This commit is contained in:
Hiroshi Horie
2022-01-25 00:53:18 +07:00
committed by GitHub
parent 3d37f4491d
commit 224047c31f
25 changed files with 575 additions and 275 deletions
+5
View File
@@ -10,6 +10,7 @@ import '../extensions.dart';
import '../logger.dart';
import '../options.dart';
import '../proto/livekit_models.pb.dart' as lk_models;
import '../proto/livekit_rtc.pb.dart' as lk_rtc;
import '../publication/local.dart';
import '../track/local/audio.dart';
import '../track/local/local.dart';
@@ -331,4 +332,8 @@ class LocalParticipant extends Participant<LocalTrackPublication> {
allParticipants: allParticipantsAllowed,
trackPermissions: trackPermissions.map((e) => e.toPBType()).toList(),
);
@internal
Iterable<lk_rtc.TrackPublishedResponse> publishedTracksInfo() =>
trackPublications.values.map((e) => e.toPBTrackPublishedResponse());
}
+7
View File
@@ -216,4 +216,11 @@ class RemoteParticipant extends Participant<RemoteTrackPublication> {
await pub.dispose();
}
@internal
lk_models.ParticipantTracks participantTracks() =>
lk_models.ParticipantTracks(
participantSid: sid,
trackSids: trackPublications.values.map((e) => e.sid),
);
}