-
Notifications
You must be signed in to change notification settings - Fork 56
Reconnect v2 #1219
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Reconnect v2 #1219
Changes from all commits
Commits
Show all changes
97 commits
Select commit
Hold shift + click to select a range
5c4ae39
Initial socket from chat implementation
aleksandar-apostolov 1ab9358
Authenticate on connected in coordinator socket.
aleksandar-apostolov 3bd89aa
Spotless
aleksandar-apostolov c797080
Merge branch 'refs/heads/develop' into socket_improvements
aleksandar-apostolov 9cc4fe4
Migrate `CoordinatorSocket`
aleksandar-apostolov 50f31cc
Spotless and API dump
aleksandar-apostolov 8a2b619
Merge branch 'refs/heads/develop' into socket_improvements
aleksandar-apostolov 26f36fc
Fix an issue where StreamCallActivity would leave the call when going…
aleksandar-apostolov 8ed0fd3
Initial reconnect V2 implementation
aleksandar-apostolov 2dbe94c
API dump
aleksandar-apostolov f4859b9
Spotless
aleksandar-apostolov e33637a
Correct JoinRequest
aleksandar-apostolov c0dc0fa
Merge branch 'refs/heads/socket_improvements' into feature/reconnect-v2
aleksandar-apostolov 12b48f9
[WIP] Refactored Coordinator and SFU sockets
aleksandar-apostolov 1b31488
Update correct type for SfuSocketStateEvent
aleksandar-apostolov 4f53329
Update state in Connection module, package renaming
aleksandar-apostolov 0ac3e31
Merge branch 'refs/heads/develop' into socket_improvements
aleksandar-apostolov a7f3576
Merge branch 'refs/heads/develop' into socket_improvements
aleksandar-apostolov 18f0a98
Merge branch 'refs/heads/develop' into socket_improvements
aleksandar-apostolov ac25fe7
Resolve merge conflicts
aleksandar-apostolov ab6a883
Merge branch 'refs/heads/socket_improvements' into feature/reconnect-v2
aleksandar-apostolov a33a1aa
Continue refactoring
aleksandar-apostolov f108d6e
Add connection common implementation
aleksandar-apostolov 374ef24
Keep refactoring the SFU socket
aleksandar-apostolov bd43828
Merge branch 'refs/heads/develop' into feature/reconnect-v2
aleksandar-apostolov 300a892
Merge conflicts
aleksandar-apostolov 41adbcf
Update
aleksandar-apostolov 601deb1
Update
aleksandar-apostolov 07262c4
Update
aleksandar-apostolov ca02dd5
Update
aleksandar-apostolov 227bd86
Merge branch 'refs/heads/develop' into feature/reconnect-v2
aleksandar-apostolov 9ad0baf
Update
aleksandar-apostolov 3f907cd
Update
aleksandar-apostolov 643073f
Update
aleksandar-apostolov 35cc663
Update
aleksandar-apostolov c1beaa2
Update
aleksandar-apostolov db55df3
Update
aleksandar-apostolov 0192d7b
Update
aleksandar-apostolov d68524d
Update
aleksandar-apostolov f147afd
Update
aleksandar-apostolov 5130870
Update
aleksandar-apostolov a19336c
Merge branch 'refs/heads/develop' into feature/reconnect-v2
aleksandar-apostolov 16d9cf9
Update
aleksandar-apostolov e81e161
Update
aleksandar-apostolov b08055f
Update
aleksandar-apostolov 90a1567
Update
aleksandar-apostolov e509dc0
Update
aleksandar-apostolov 8d785f0
Update
aleksandar-apostolov 451d09d
Update
aleksandar-apostolov e202a7a
Update
aleksandar-apostolov 87e9134
Update
aleksandar-apostolov 1319c88
Update
aleksandar-apostolov 7bf183a
Update
aleksandar-apostolov 229fe86
Update
aleksandar-apostolov 0552bcd
Update
aleksandar-apostolov b0c5999
Update
aleksandar-apostolov 6b081fb
Spotless & ApiDump
aleksandar-apostolov a9c9dfd
Merge branch 'develop' into feature/reconnect-v2
aleksandar-apostolov bd47ddf
Adapt for the new token provider
aleksandar-apostolov becca24
Update tests
aleksandar-apostolov a6c0990
Spotless apidump
aleksandar-apostolov b5d3f56
Merge branch 'develop' into feature/reconnect-v2
aleksandar-apostolov b73572c
Update
aleksandar-apostolov 0be905d
Sotless api dump
aleksandar-apostolov 084bf88
Update
aleksandar-apostolov 0c445e3
Spotless
aleksandar-apostolov c0d260f
Move call health monitor into call
aleksandar-apostolov e064aa9
Spotless
aleksandar-apostolov fdd64d2
Update
aleksandar-apostolov 284067e
Revert "Update"
aleksandar-apostolov 921b10e
Revert "Spotless"
aleksandar-apostolov 51ecf19
Revert "Move call health monitor into call"
aleksandar-apostolov 9d17587
Revert "Spotless"
aleksandar-apostolov d2cabae
Revert "Update"
aleksandar-apostolov 3ea65d2
Revert "Sotless api dump"
aleksandar-apostolov 0f6f7f0
Revert "Update"
aleksandar-apostolov a19b103
Update
aleksandar-apostolov 753bd8e
Spotless
aleksandar-apostolov 1f6beaf
Update
aleksandar-apostolov 469663b
Update
aleksandar-apostolov 04447e0
Update
aleksandar-apostolov 853dc77
Update
aleksandar-apostolov 1567a53
Update
aleksandar-apostolov ef549da
Update
aleksandar-apostolov d65a638
Update
aleksandar-apostolov 24a8326
Add timeout to the scheduled jobs
aleksandar-apostolov 6109fb9
Update tests
aleksandar-apostolov 0c04f53
Update tests
aleksandar-apostolov 983ad77
Add missing dependencies
aleksandar-apostolov bb8abc8
Merge branch 'develop' into feature/reconnect-v2
aleksandar-apostolov 2af086a
Add javadoc, make some methods internal, remove myself when rejoin to…
aleksandar-apostolov 74c2d3c
Add javadoc, make some methods internal, remove myself when rejoin to…
aleksandar-apostolov c38b10e
Add javadoc, make some methods internal, remove myself when rejoin to…
aleksandar-apostolov fb3369e
Rejoin if PC state is FAILED
aleksandar-apostolov fc94bf3
Try fast reconnect instead.
aleksandar-apostolov 07eb516
Cancel previous job instead
aleksandar-apostolov fa9741b
Synchronize the job handling process
aleksandar-apostolov File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -107,6 +107,7 @@ import io.getstream.video.android.ui.menu.availableVideoFilters | |
| import io.getstream.video.android.util.config.AppConfig | ||
| import kotlinx.coroutines.GlobalScope | ||
| import kotlinx.coroutines.delay | ||
| import kotlinx.coroutines.flow.firstOrNull | ||
| import kotlinx.coroutines.launch | ||
| import org.openapitools.client.models.OwnCapability | ||
|
|
||
|
|
@@ -331,33 +332,36 @@ fun CallScreen( | |
| ) | ||
| }, | ||
| floatingVideoRenderer = { _, _ -> | ||
| FloatingParticipantVideo( | ||
| call = call, | ||
| participant = me!!, | ||
| parentBounds = IntSize( | ||
| [email protected], | ||
| [email protected], | ||
| ), | ||
| videoRenderer = { participant -> | ||
| ParticipantVideo( | ||
| modifier = Modifier | ||
| .fillMaxSize() | ||
| .clip(VideoTheme.shapes.dialog), | ||
| call = call, | ||
| participant = participant, | ||
| reactionContent = { | ||
| CustomReactionContent( | ||
| participant = participant, | ||
| style = RegularVideoRendererStyle().copy( | ||
| isShowingConnectionQualityIndicator = false, | ||
| reactionPosition = Alignment.TopCenter, | ||
| reactionDuration = 5000, | ||
| ), | ||
| ) | ||
| }, | ||
| ) | ||
| }, | ||
| ) | ||
| val myself = me ?: participantsSize.firstOrNull { it.sessionId == call.sessionId } | ||
| myself?.let { | ||
| FloatingParticipantVideo( | ||
| call = call, | ||
| participant = it, | ||
| parentBounds = IntSize( | ||
| [email protected], | ||
| [email protected], | ||
| ), | ||
| videoRenderer = { participant -> | ||
| ParticipantVideo( | ||
| modifier = Modifier | ||
| .fillMaxSize() | ||
| .clip(VideoTheme.shapes.dialog), | ||
| call = call, | ||
| participant = participant, | ||
| reactionContent = { | ||
| CustomReactionContent( | ||
| participant = participant, | ||
| style = RegularVideoRendererStyle().copy( | ||
| isShowingConnectionQualityIndicator = false, | ||
| reactionPosition = Alignment.TopCenter, | ||
| reactionDuration = 5000, | ||
| ), | ||
| ) | ||
| }, | ||
| ) | ||
| }, | ||
| ) | ||
| } | ||
| }, | ||
| videoOverlayContent = { | ||
| Crossfade( | ||
|
|
@@ -463,7 +467,8 @@ fun CallScreen( | |
| mutableStateOf(call.isAudioProcessingEnabled()) | ||
| } | ||
| val settings by call.state.settings.collectAsStateWithLifecycle() | ||
| val noiseCancellationFeatureEnabled = settings?.audio?.noiseCancellation?.isEnabled == true | ||
| val noiseCancellationFeatureEnabled = | ||
| settings?.audio?.noiseCancellation?.isEnabled == true | ||
| SettingsMenu( | ||
| call = call, | ||
| selectedVideoFilter = selectedVideoFilter, | ||
|
|
@@ -478,11 +483,14 @@ fun CallScreen( | |
| is VideoFilter.None -> { | ||
| call.videoFilter = null | ||
| } | ||
|
|
||
| is VideoFilter.BlurredBackground -> { | ||
| call.videoFilter = BlurredBackgroundVideoFilter() | ||
| } | ||
|
|
||
| is VideoFilter.VirtualBackground -> { | ||
| call.videoFilter = VirtualBackgroundVideoFilter(context, filter.drawable) | ||
| call.videoFilter = | ||
| VirtualBackgroundVideoFilter(context, filter.drawable) | ||
| } | ||
| } | ||
| }, | ||
|
|
@@ -493,10 +501,11 @@ fun CallScreen( | |
| onNoiseCancellation = { | ||
| isNoiseCancellationEnabled = call.toggleAudioProcessing() | ||
| }, | ||
| ) { | ||
| isShowingStats = true | ||
| isShowingSettingMenu = false | ||
| } | ||
| onShowCallStats = { | ||
| isShowingStats = true | ||
| isShowingSettingMenu = false | ||
| }, | ||
| ) | ||
| } | ||
|
|
||
| if (isShowingFeedbackDialog) { | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.