diff --git a/demo-app/src/main/kotlin/io/getstream/video/android/ui/DogfoodingNavHost.kt b/demo-app/src/main/kotlin/io/getstream/video/android/ui/DogfoodingNavHost.kt index b57f12de1ac..6f340ec4c67 100644 --- a/demo-app/src/main/kotlin/io/getstream/video/android/ui/DogfoodingNavHost.kt +++ b/demo-app/src/main/kotlin/io/getstream/video/android/ui/DogfoodingNavHost.kt @@ -91,7 +91,7 @@ fun AppNavHost( composable(AppScreens.DirectCallJoin.route) { val context = LocalContext.current DirectCallJoinScreen( - navigateToDirectCall = { cid, members -> + navigateToDirectCall = { cid, members, joinAndRing -> context.startActivity( StreamCallActivity.callIntent( action = NotificationHandler.ACTION_OUTGOING_CALL, @@ -101,6 +101,7 @@ fun AppNavHost( leaveWhenLastInCall = true, context = context, cid = cid, + joinAndRing = joinAndRing, members = members.split(","), clazz = CallActivity::class.java, ), diff --git a/demo-app/src/main/kotlin/io/getstream/video/android/ui/outgoing/DirectCallJoinScreen.kt b/demo-app/src/main/kotlin/io/getstream/video/android/ui/outgoing/DirectCallJoinScreen.kt index f41b65fea91..dfe16f7658e 100644 --- a/demo-app/src/main/kotlin/io/getstream/video/android/ui/outgoing/DirectCallJoinScreen.kt +++ b/demo-app/src/main/kotlin/io/getstream/video/android/ui/outgoing/DirectCallJoinScreen.kt @@ -30,6 +30,7 @@ import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.foundation.layout.width import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.material.Checkbox import androidx.compose.material.CircularProgressIndicator import androidx.compose.material.RadioButton import androidx.compose.material.RadioButtonDefaults @@ -40,7 +41,11 @@ import androidx.compose.material.icons.filled.VideoCall import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.saveable.rememberSaveable +import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment +import androidx.compose.ui.Alignment.Companion.CenterVertically import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.platform.testTag @@ -62,7 +67,7 @@ import java.util.UUID @Composable fun DirectCallJoinScreen( viewModel: DirectCallJoinViewModel = hiltViewModel(), - navigateToDirectCall: (cid: StreamCallId, memberList: String) -> Unit, + navigateToDirectCall: (cid: StreamCallId, memberList: String, joinAndRing: Boolean) -> Unit, ) { val uiState by viewModel.uiState.collectAsStateWithLifecycle() @@ -128,8 +133,10 @@ private fun Header(user: User?) { private fun Body( uiState: DirectCallUiState, toggleUserSelection: (Int) -> Unit, - onStartCallClick: (cid: StreamCallId, membersList: String) -> Unit, + onStartCallClick: (cid: StreamCallId, membersList: String, joinAndRing: Boolean) -> Unit, ) { + var callerJoinsFirst by rememberSaveable { mutableStateOf(false) } + Box( modifier = Modifier .fillMaxSize() @@ -145,15 +152,27 @@ private fun Body( } else { uiState.otherUsers?.let { users -> Column( - modifier = Modifier.align(Alignment.TopStart) + modifier = Modifier + .align(Alignment.TopStart) .padding(bottom = 80.dp), ) { + Row( + verticalAlignment = CenterVertically, + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 10.dp), + horizontalArrangement = Arrangement.SpaceBetween, + ) { + Text("Join First", color = Color.White) + Checkbox(callerJoinsFirst, onCheckedChange = { + callerJoinsFirst = !callerJoinsFirst + }) + } UserList( entries = users, onUserClick = { clickedIndex -> toggleUserSelection(clickedIndex) }, ) } - Row( Modifier .fillMaxWidth() @@ -178,6 +197,7 @@ private fun Body( users .filter { it.isSelected } .joinToString(separator = ",") { it.user.id ?: "" }, + callerJoinsFirst, ) }, ) @@ -198,6 +218,7 @@ private fun Body( users .filter { it.isSelected } .joinToString(separator = ",") { it.user.id ?: "" }, + callerJoinsFirst, ) }, ) @@ -294,7 +315,7 @@ private fun HeaderPreview() { }, ), toggleUserSelection = {}, - ) { _, _ -> + ) { _, _, _ -> } } } diff --git a/stream-video-android-core/api/stream-video-android-core.api b/stream-video-android-core/api/stream-video-android-core.api index 6fb319c751e..f1dde612f8b 100644 --- a/stream-video-android-core/api/stream-video-android-core.api +++ b/stream-video-android-core/api/stream-video-android-core.api @@ -51,6 +51,9 @@ public abstract interface class io/getstream/android/video/generated/apis/Produc public abstract fun rejectCall (Ljava/lang/String;Ljava/lang/String;Lio/getstream/android/video/generated/models/RejectCallRequest;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public abstract fun rejectCall (Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public abstract fun requestPermission (Ljava/lang/String;Ljava/lang/String;Lio/getstream/android/video/generated/models/RequestPermissionRequest;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public abstract fun resolveSipInbound (Lio/getstream/android/video/generated/models/ResolveSipInboundRequest;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public abstract fun ringCall (Ljava/lang/String;Ljava/lang/String;Lio/getstream/android/video/generated/models/RingCallRequest;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public abstract fun ringCall (Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public abstract fun sendCallEvent (Ljava/lang/String;Ljava/lang/String;Lio/getstream/android/video/generated/models/SendCallEventRequest;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public abstract fun sendCallEvent (Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public abstract fun sendVideoReaction (Ljava/lang/String;Ljava/lang/String;Lio/getstream/android/video/generated/models/SendReactionRequest;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; @@ -1107,17 +1110,19 @@ public final class io/getstream/android/video/generated/models/CallReactionEvent } public final class io/getstream/android/video/generated/models/CallRecording { - public fun (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;)V + public fun (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;)V public final fun component1 ()Lorg/threeten/bp/OffsetDateTime; public final fun component2 ()Ljava/lang/String; public final fun component3 ()Ljava/lang/String; - public final fun component4 ()Lorg/threeten/bp/OffsetDateTime; - public final fun component5 ()Ljava/lang/String; - public final fun copy (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;)Lio/getstream/android/video/generated/models/CallRecording; - public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/CallRecording;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/CallRecording; + public final fun component4 ()Ljava/lang/String; + public final fun component5 ()Lorg/threeten/bp/OffsetDateTime; + public final fun component6 ()Ljava/lang/String; + public final fun copy (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;)Lio/getstream/android/video/generated/models/CallRecording; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/CallRecording;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/CallRecording; public fun equals (Ljava/lang/Object;)Z public final fun getEndTime ()Lorg/threeten/bp/OffsetDateTime; public final fun getFilename ()Ljava/lang/String; + public final fun getRecordingType ()Ljava/lang/String; public final fun getSessionId ()Ljava/lang/String; public final fun getStartTime ()Lorg/threeten/bp/OffsetDateTime; public final fun getUrl ()Ljava/lang/String; @@ -1653,6 +1658,33 @@ public final class io/getstream/android/video/generated/models/CallStateResponse public fun toString ()Ljava/lang/String; } +public final class io/getstream/android/video/generated/models/CallStatsLocation { + public fun ()V + public fun (Ljava/lang/Integer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Float;Ljava/lang/String;)V + public synthetic fun (Ljava/lang/Integer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Float;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/lang/Integer; + public final fun component2 ()Ljava/lang/String; + public final fun component3 ()Ljava/lang/String; + public final fun component4 ()Ljava/lang/String; + public final fun component5 ()Ljava/lang/String; + public final fun component6 ()Ljava/lang/Float; + public final fun component7 ()Ljava/lang/Float; + public final fun component8 ()Ljava/lang/String; + public final fun copy (Ljava/lang/Integer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Float;Ljava/lang/String;)Lio/getstream/android/video/generated/models/CallStatsLocation; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/CallStatsLocation;Ljava/lang/Integer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Ljava/lang/Float;Ljava/lang/String;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/CallStatsLocation; + public fun equals (Ljava/lang/Object;)Z + public final fun getAccuracyRadiusMeters ()Ljava/lang/Integer; + public final fun getCity ()Ljava/lang/String; + public final fun getContinent ()Ljava/lang/String; + public final fun getCountry ()Ljava/lang/String; + public final fun getCountryIsoCode ()Ljava/lang/String; + public final fun getLatitude ()Ljava/lang/Float; + public final fun getLongitude ()Ljava/lang/Float; + public final fun getSubdivision ()Ljava/lang/String; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + public final class io/getstream/android/video/generated/models/CallStatsParticipant { public fun (Ljava/lang/String;Ljava/util/List;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/util/List;)V public synthetic fun (Ljava/lang/String;Ljava/util/List;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/util/List;ILkotlin/jvm/internal/DefaultConstructorMarker;)V @@ -1674,16 +1706,20 @@ public final class io/getstream/android/video/generated/models/CallStatsParticip } public final class io/getstream/android/video/generated/models/CallStatsParticipantCounts { - public fun (IIII)V + public fun (IIIIII)V public final fun component1 ()I public final fun component2 ()I public final fun component3 ()I public final fun component4 ()I - public final fun copy (IIII)Lio/getstream/android/video/generated/models/CallStatsParticipantCounts; - public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/CallStatsParticipantCounts;IIIIILjava/lang/Object;)Lio/getstream/android/video/generated/models/CallStatsParticipantCounts; + public final fun component5 ()I + public final fun component6 ()I + public final fun copy (IIIIII)Lio/getstream/android/video/generated/models/CallStatsParticipantCounts; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/CallStatsParticipantCounts;IIIIIIILjava/lang/Object;)Lio/getstream/android/video/generated/models/CallStatsParticipantCounts; public fun equals (Ljava/lang/Object;)Z public final fun getLiveSessions ()I public final fun getParticipants ()I + public final fun getPeakConcurrentSessions ()I + public final fun getPeakConcurrentUsers ()I public final fun getPublishers ()I public final fun getSessions ()I public fun hashCode ()I @@ -1691,26 +1727,46 @@ public final class io/getstream/android/video/generated/models/CallStatsParticip } public final class io/getstream/android/video/generated/models/CallStatsParticipantSession { - public fun (ZLjava/lang/String;Lio/getstream/android/video/generated/models/PublishedTrackFlags;Ljava/lang/Integer;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;)V - public synthetic fun (ZLjava/lang/String;Lio/getstream/android/video/generated/models/PublishedTrackFlags;Ljava/lang/Integer;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun (ZLjava/lang/String;Lio/getstream/android/video/generated/models/PublishedTrackFlags;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Lio/getstream/android/video/generated/models/CallStatsLocation;)V + public synthetic fun (ZLjava/lang/String;Lio/getstream/android/video/generated/models/PublishedTrackFlags;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Lio/getstream/android/video/generated/models/CallStatsLocation;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun component1 ()Z + public final fun component10 ()Lorg/threeten/bp/OffsetDateTime; + public final fun component11 ()Ljava/lang/String; + public final fun component12 ()Ljava/lang/String; + public final fun component13 ()Ljava/lang/String; + public final fun component14 ()Ljava/lang/String; + public final fun component15 ()Lorg/threeten/bp/OffsetDateTime; + public final fun component16 ()Ljava/lang/String; + public final fun component17 ()Ljava/lang/String; + public final fun component18 ()Lio/getstream/android/video/generated/models/CallStatsLocation; public final fun component2 ()Ljava/lang/String; public final fun component3 ()Lio/getstream/android/video/generated/models/PublishedTrackFlags; - public final fun component4 ()Ljava/lang/Integer; - public final fun component5 ()Lorg/threeten/bp/OffsetDateTime; - public final fun component6 ()Ljava/lang/String; - public final fun component7 ()Lorg/threeten/bp/OffsetDateTime; + public final fun component4 ()Ljava/lang/String; + public final fun component5 ()Ljava/lang/String; + public final fun component6 ()Ljava/lang/Integer; + public final fun component7 ()Ljava/lang/String; public final fun component8 ()Ljava/lang/String; - public final fun copy (ZLjava/lang/String;Lio/getstream/android/video/generated/models/PublishedTrackFlags;Ljava/lang/Integer;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;)Lio/getstream/android/video/generated/models/CallStatsParticipantSession; - public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/CallStatsParticipantSession;ZLjava/lang/String;Lio/getstream/android/video/generated/models/PublishedTrackFlags;Ljava/lang/Integer;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/CallStatsParticipantSession; + public final fun component9 ()Ljava/lang/Float; + public final fun copy (ZLjava/lang/String;Lio/getstream/android/video/generated/models/PublishedTrackFlags;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Lio/getstream/android/video/generated/models/CallStatsLocation;)Lio/getstream/android/video/generated/models/CallStatsParticipantSession; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/CallStatsParticipantSession;ZLjava/lang/String;Lio/getstream/android/video/generated/models/PublishedTrackFlags;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Lio/getstream/android/video/generated/models/CallStatsLocation;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/CallStatsParticipantSession; public fun equals (Ljava/lang/Object;)Z + public final fun getBrowser ()Ljava/lang/String; + public final fun getBrowserVersion ()Ljava/lang/String; public final fun getCqScore ()Ljava/lang/Integer; + public final fun getCurrentIp ()Ljava/lang/String; + public final fun getCurrentSfu ()Ljava/lang/String; + public final fun getDistanceToSfuKilometers ()Ljava/lang/Float; public final fun getEndedAt ()Lorg/threeten/bp/OffsetDateTime; + public final fun getLocation ()Lio/getstream/android/video/generated/models/CallStatsLocation; + public final fun getOs ()Ljava/lang/String; public final fun getPublishedTracks ()Lio/getstream/android/video/generated/models/PublishedTrackFlags; public final fun getPublisherType ()Ljava/lang/String; + public final fun getSdk ()Ljava/lang/String; + public final fun getSdkVersion ()Ljava/lang/String; public final fun getStartedAt ()Lorg/threeten/bp/OffsetDateTime; public final fun getUnifiedSessionId ()Ljava/lang/String; public final fun getUserSessionId ()Ljava/lang/String; + public final fun getWebrtcVersion ()Ljava/lang/String; public fun hashCode ()I public final fun isLive ()Z public fun toString ()Ljava/lang/String; @@ -2482,7 +2538,7 @@ public final class io/getstream/android/video/generated/models/EndCallResponse { public fun toString ()Ljava/lang/String; } -public final class io/getstream/android/video/generated/models/FeedsPreferences { +public final class io/getstream/android/video/generated/models/FeedsPreferencesResponse { public fun ()V public fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)V public synthetic fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V @@ -2492,8 +2548,8 @@ public final class io/getstream/android/video/generated/models/FeedsPreferences public final fun component4 ()Ljava/lang/String; public final fun component5 ()Ljava/lang/String; public final fun component6 ()Ljava/util/Map; - public final fun copy (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lio/getstream/android/video/generated/models/FeedsPreferences; - public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/FeedsPreferences;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/FeedsPreferences; + public final fun copy (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lio/getstream/android/video/generated/models/FeedsPreferencesResponse; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/FeedsPreferencesResponse;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/FeedsPreferencesResponse; public fun equals (Ljava/lang/Object;)Z public final fun getComment ()Ljava/lang/String; public final fun getCommentReaction ()Ljava/lang/String; @@ -3571,6 +3627,42 @@ public final class io/getstream/android/video/generated/models/MessageStatsRespo public fun toString ()Ljava/lang/String; } +public final class io/getstream/android/video/generated/models/MetricDescriptor { + public fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + public synthetic fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/lang/String; + public final fun component2 ()Ljava/lang/String; + public final fun component3 ()Ljava/lang/String; + public final fun copy (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lio/getstream/android/video/generated/models/MetricDescriptor; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/MetricDescriptor;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/MetricDescriptor; + public fun equals (Ljava/lang/Object;)Z + public final fun getDescription ()Ljava/lang/String; + public final fun getLabel ()Ljava/lang/String; + public final fun getUnit ()Ljava/lang/String; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + +public final class io/getstream/android/video/generated/models/MetricThreshold { + public fun (Ljava/lang/String;Ljava/lang/String;FLjava/lang/String;Ljava/lang/Integer;)V + public synthetic fun (Ljava/lang/String;Ljava/lang/String;FLjava/lang/String;Ljava/lang/Integer;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/lang/String; + public final fun component2 ()Ljava/lang/String; + public final fun component3 ()F + public final fun component4 ()Ljava/lang/String; + public final fun component5 ()Ljava/lang/Integer; + public final fun copy (Ljava/lang/String;Ljava/lang/String;FLjava/lang/String;Ljava/lang/Integer;)Lio/getstream/android/video/generated/models/MetricThreshold; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/MetricThreshold;Ljava/lang/String;Ljava/lang/String;FLjava/lang/String;Ljava/lang/Integer;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/MetricThreshold; + public fun equals (Ljava/lang/Object;)Z + public final fun getLevel ()Ljava/lang/String; + public final fun getOperator ()Ljava/lang/String; + public final fun getValue ()F + public final fun getValueUnit ()Ljava/lang/String; + public final fun getWindowSeconds ()Ljava/lang/Integer; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + public final class io/getstream/android/video/generated/models/MuteUsersRequest { public fun ()V public fun (Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/util/List;)V @@ -3836,8 +3928,8 @@ public final class io/getstream/android/video/generated/models/OwnCapability$Upd } public final class io/getstream/android/video/generated/models/OwnUserResponse { - public fun (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Ljava/util/List;Ljava/util/Map;Ljava/lang/Integer;Lorg/threeten/bp/OffsetDateTime;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Lio/getstream/android/video/generated/models/PushPreferences;Ljava/util/Map;)V - public synthetic fun (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Ljava/util/List;Ljava/util/Map;Ljava/lang/Integer;Lorg/threeten/bp/OffsetDateTime;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Lio/getstream/android/video/generated/models/PushPreferences;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Ljava/util/List;Ljava/util/Map;Ljava/lang/Integer;Lorg/threeten/bp/OffsetDateTime;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Lio/getstream/android/video/generated/models/PushPreferencesResponse;Ljava/util/Map;)V + public synthetic fun (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Ljava/util/List;Ljava/util/Map;Ljava/lang/Integer;Lorg/threeten/bp/OffsetDateTime;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Lio/getstream/android/video/generated/models/PushPreferencesResponse;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun component1 ()Lorg/threeten/bp/OffsetDateTime; public final fun component10 ()Lorg/threeten/bp/OffsetDateTime; public final fun component11 ()Lorg/threeten/bp/OffsetDateTime; @@ -3846,7 +3938,7 @@ public final class io/getstream/android/video/generated/models/OwnUserResponse { public final fun component14 ()Ljava/lang/String; public final fun component15 ()Lorg/threeten/bp/OffsetDateTime; public final fun component16 ()Ljava/util/List; - public final fun component17 ()Lio/getstream/android/video/generated/models/PushPreferences; + public final fun component17 ()Lio/getstream/android/video/generated/models/PushPreferencesResponse; public final fun component18 ()Ljava/util/Map; public final fun component2 ()Ljava/lang/String; public final fun component3 ()Ljava/lang/String; @@ -3856,8 +3948,8 @@ public final class io/getstream/android/video/generated/models/OwnUserResponse { public final fun component7 ()Ljava/util/List; public final fun component8 ()Ljava/util/Map; public final fun component9 ()Ljava/lang/Integer; - public final fun copy (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Ljava/util/List;Ljava/util/Map;Ljava/lang/Integer;Lorg/threeten/bp/OffsetDateTime;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Lio/getstream/android/video/generated/models/PushPreferences;Ljava/util/Map;)Lio/getstream/android/video/generated/models/OwnUserResponse; - public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/OwnUserResponse;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Ljava/util/List;Ljava/util/Map;Ljava/lang/Integer;Lorg/threeten/bp/OffsetDateTime;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Lio/getstream/android/video/generated/models/PushPreferences;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/OwnUserResponse; + public final fun copy (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Ljava/util/List;Ljava/util/Map;Ljava/lang/Integer;Lorg/threeten/bp/OffsetDateTime;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Lio/getstream/android/video/generated/models/PushPreferencesResponse;Ljava/util/Map;)Lio/getstream/android/video/generated/models/OwnUserResponse; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/OwnUserResponse;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Ljava/util/List;Ljava/util/Map;Ljava/lang/Integer;Lorg/threeten/bp/OffsetDateTime;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Lio/getstream/android/video/generated/models/PushPreferencesResponse;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/OwnUserResponse; public fun equals (Ljava/lang/Object;)Z public final fun getAvgResponseTime ()Ljava/lang/Integer; public final fun getBlockedUserIds ()Ljava/util/List; @@ -3871,7 +3963,7 @@ public final class io/getstream/android/video/generated/models/OwnUserResponse { public final fun getLanguage ()Ljava/lang/String; public final fun getLastActive ()Lorg/threeten/bp/OffsetDateTime; public final fun getName ()Ljava/lang/String; - public final fun getPushPreferences ()Lio/getstream/android/video/generated/models/PushPreferences; + public final fun getPushPreferences ()Lio/getstream/android/video/generated/models/PushPreferencesResponse; public final fun getRevokeTokensIssuedBefore ()Lorg/threeten/bp/OffsetDateTime; public final fun getRole ()Ljava/lang/String; public final fun getTeams ()Ljava/util/List; @@ -3945,14 +4037,20 @@ public final class io/getstream/android/video/generated/models/ParticipantReport public final class io/getstream/android/video/generated/models/ParticipantSeriesPublisherStats { public fun ()V - public fun (Ljava/util/Map;Ljava/util/Map;)V - public synthetic fun (Ljava/util/Map;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V - public final fun component1 ()Ljava/util/Map; + public fun (Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)V + public synthetic fun (Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/util/List; public final fun component2 ()Ljava/util/Map; - public final fun copy (Ljava/util/Map;Ljava/util/Map;)Lio/getstream/android/video/generated/models/ParticipantSeriesPublisherStats; - public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/ParticipantSeriesPublisherStats;Ljava/util/Map;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/ParticipantSeriesPublisherStats; + public final fun component3 ()Ljava/util/Map; + public final fun component4 ()Ljava/util/Map; + public final fun component5 ()Ljava/util/Map; + public final fun copy (Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)Lio/getstream/android/video/generated/models/ParticipantSeriesPublisherStats; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/ParticipantSeriesPublisherStats;Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/ParticipantSeriesPublisherStats; public fun equals (Ljava/lang/Object;)Z public final fun getGlobal ()Ljava/util/Map; + public final fun getGlobalMeta ()Ljava/util/Map; + public final fun getGlobalMetricsOrder ()Ljava/util/List; + public final fun getGlobalThresholds ()Ljava/util/Map; public final fun getTracks ()Ljava/util/Map; public fun hashCode ()I public fun toString ()Ljava/lang/String; @@ -3960,14 +4058,20 @@ public final class io/getstream/android/video/generated/models/ParticipantSeries public final class io/getstream/android/video/generated/models/ParticipantSeriesSubscriberStats { public fun ()V - public fun (Ljava/util/List;Ljava/util/Map;)V - public synthetic fun (Ljava/util/List;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun (Ljava/util/List;Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)V + public synthetic fun (Ljava/util/List;Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun component1 ()Ljava/util/List; - public final fun component2 ()Ljava/util/Map; - public final fun copy (Ljava/util/List;Ljava/util/Map;)Lio/getstream/android/video/generated/models/ParticipantSeriesSubscriberStats; - public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/ParticipantSeriesSubscriberStats;Ljava/util/List;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/ParticipantSeriesSubscriberStats; + public final fun component2 ()Ljava/util/List; + public final fun component3 ()Ljava/util/Map; + public final fun component4 ()Ljava/util/Map; + public final fun component5 ()Ljava/util/Map; + public final fun copy (Ljava/util/List;Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)Lio/getstream/android/video/generated/models/ParticipantSeriesSubscriberStats; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/ParticipantSeriesSubscriberStats;Ljava/util/List;Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/ParticipantSeriesSubscriberStats; public fun equals (Ljava/lang/Object;)Z public final fun getGlobal ()Ljava/util/Map; + public final fun getGlobalMeta ()Ljava/util/Map; + public final fun getGlobalMetricsOrder ()Ljava/util/List; + public final fun getGlobalThresholds ()Ljava/util/Map; public final fun getSubscriptions ()Ljava/util/List; public fun hashCode ()I public fun toString ()Ljava/lang/String; @@ -4009,17 +4113,27 @@ public final class io/getstream/android/video/generated/models/ParticipantSeries } public final class io/getstream/android/video/generated/models/ParticipantSeriesTrackMetrics { - public fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)V - public synthetic fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)V + public synthetic fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun component1 ()Ljava/lang/String; public final fun component2 ()Ljava/lang/String; public final fun component3 ()Ljava/lang/String; - public final fun component4 ()Ljava/util/Map; - public final fun copy (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lio/getstream/android/video/generated/models/ParticipantSeriesTrackMetrics; - public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/ParticipantSeriesTrackMetrics;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/ParticipantSeriesTrackMetrics; + public final fun component4 ()Ljava/lang/String; + public final fun component5 ()Ljava/lang/String; + public final fun component6 ()Ljava/util/List; + public final fun component7 ()Ljava/util/Map; + public final fun component8 ()Ljava/util/Map; + public final fun component9 ()Ljava/util/Map; + public final fun copy (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)Lio/getstream/android/video/generated/models/ParticipantSeriesTrackMetrics; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/ParticipantSeriesTrackMetrics;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/ParticipantSeriesTrackMetrics; public fun equals (Ljava/lang/Object;)Z + public final fun getCodec ()Ljava/lang/String; public final fun getLabel ()Ljava/lang/String; public final fun getMetrics ()Ljava/util/Map; + public final fun getMetricsMeta ()Ljava/util/Map; + public final fun getMetricsOrder ()Ljava/util/List; + public final fun getRid ()Ljava/lang/String; + public final fun getThresholds ()Ljava/util/Map; public final fun getTrackId ()Ljava/lang/String; public final fun getTrackType ()Ljava/lang/String; public fun hashCode ()I @@ -4028,13 +4142,19 @@ public final class io/getstream/android/video/generated/models/ParticipantSeries public final class io/getstream/android/video/generated/models/ParticipantSeriesUserStats { public fun ()V - public fun (Ljava/util/Map;)V - public synthetic fun (Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V - public final fun component1 ()Ljava/util/Map; - public final fun copy (Ljava/util/Map;)Lio/getstream/android/video/generated/models/ParticipantSeriesUserStats; - public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/ParticipantSeriesUserStats;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/ParticipantSeriesUserStats; + public fun (Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)V + public synthetic fun (Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/util/List; + public final fun component2 ()Ljava/util/Map; + public final fun component3 ()Ljava/util/Map; + public final fun component4 ()Ljava/util/Map; + public final fun copy (Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)Lio/getstream/android/video/generated/models/ParticipantSeriesUserStats; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/ParticipantSeriesUserStats;Ljava/util/List;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/ParticipantSeriesUserStats; public fun equals (Ljava/lang/Object;)Z public final fun getMetrics ()Ljava/util/Map; + public final fun getMetricsMeta ()Ljava/util/Map; + public final fun getMetricsOrder ()Ljava/util/List; + public final fun getThresholds ()Ljava/util/Map; public fun hashCode ()I public fun toString ()Ljava/lang/String; } @@ -4149,23 +4269,23 @@ public final class io/getstream/android/video/generated/models/PublisherStatsRes public fun toString ()Ljava/lang/String; } -public final class io/getstream/android/video/generated/models/PushPreferences { +public final class io/getstream/android/video/generated/models/PushPreferencesResponse { public fun ()V - public fun (Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lio/getstream/android/video/generated/models/FeedsPreferences;)V - public synthetic fun (Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lio/getstream/android/video/generated/models/FeedsPreferences;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun (Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lio/getstream/android/video/generated/models/FeedsPreferencesResponse;)V + public synthetic fun (Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lio/getstream/android/video/generated/models/FeedsPreferencesResponse;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun component1 ()Ljava/lang/String; public final fun component2 ()Ljava/lang/String; public final fun component3 ()Lorg/threeten/bp/OffsetDateTime; public final fun component4 ()Ljava/lang/String; - public final fun component5 ()Lio/getstream/android/video/generated/models/FeedsPreferences; - public final fun copy (Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lio/getstream/android/video/generated/models/FeedsPreferences;)Lio/getstream/android/video/generated/models/PushPreferences; - public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/PushPreferences;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lio/getstream/android/video/generated/models/FeedsPreferences;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/PushPreferences; + public final fun component5 ()Lio/getstream/android/video/generated/models/FeedsPreferencesResponse; + public final fun copy (Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lio/getstream/android/video/generated/models/FeedsPreferencesResponse;)Lio/getstream/android/video/generated/models/PushPreferencesResponse; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/PushPreferencesResponse;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Lio/getstream/android/video/generated/models/FeedsPreferencesResponse;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/PushPreferencesResponse; public fun equals (Ljava/lang/Object;)Z public final fun getCallLevel ()Ljava/lang/String; public final fun getChatLevel ()Ljava/lang/String; public final fun getDisabledUntil ()Lorg/threeten/bp/OffsetDateTime; public final fun getFeedsLevel ()Ljava/lang/String; - public final fun getFeedsPreferences ()Lio/getstream/android/video/generated/models/FeedsPreferences; + public final fun getFeedsPreferences ()Lio/getstream/android/video/generated/models/FeedsPreferencesResponse; public fun hashCode ()I public fun toString ()Ljava/lang/String; } @@ -4908,6 +5028,42 @@ public final class io/getstream/android/video/generated/models/RequestPermission public fun toString ()Ljava/lang/String; } +public final class io/getstream/android/video/generated/models/ResolveSipInboundRequest { + public fun (Ljava/lang/String;Ljava/lang/String;Lio/getstream/android/video/generated/models/SIPChallenge;Ljava/util/Map;)V + public synthetic fun (Ljava/lang/String;Ljava/lang/String;Lio/getstream/android/video/generated/models/SIPChallenge;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/lang/String; + public final fun component2 ()Ljava/lang/String; + public final fun component3 ()Lio/getstream/android/video/generated/models/SIPChallenge; + public final fun component4 ()Ljava/util/Map; + public final fun copy (Ljava/lang/String;Ljava/lang/String;Lio/getstream/android/video/generated/models/SIPChallenge;Ljava/util/Map;)Lio/getstream/android/video/generated/models/ResolveSipInboundRequest; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/ResolveSipInboundRequest;Ljava/lang/String;Ljava/lang/String;Lio/getstream/android/video/generated/models/SIPChallenge;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/ResolveSipInboundRequest; + public fun equals (Ljava/lang/Object;)Z + public final fun getChallenge ()Lio/getstream/android/video/generated/models/SIPChallenge; + public final fun getSipCallerNumber ()Ljava/lang/String; + public final fun getSipHeaders ()Ljava/util/Map; + public final fun getSipTrunkNumber ()Ljava/lang/String; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + +public final class io/getstream/android/video/generated/models/ResolveSipInboundResponse { + public fun (Ljava/lang/String;Lio/getstream/android/video/generated/models/SipInboundCredentials;Lio/getstream/android/video/generated/models/SIPInboundRoutingRuleResponse;Lio/getstream/android/video/generated/models/SIPTrunkResponse;)V + public synthetic fun (Ljava/lang/String;Lio/getstream/android/video/generated/models/SipInboundCredentials;Lio/getstream/android/video/generated/models/SIPInboundRoutingRuleResponse;Lio/getstream/android/video/generated/models/SIPTrunkResponse;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/lang/String; + public final fun component2 ()Lio/getstream/android/video/generated/models/SipInboundCredentials; + public final fun component3 ()Lio/getstream/android/video/generated/models/SIPInboundRoutingRuleResponse; + public final fun component4 ()Lio/getstream/android/video/generated/models/SIPTrunkResponse; + public final fun copy (Ljava/lang/String;Lio/getstream/android/video/generated/models/SipInboundCredentials;Lio/getstream/android/video/generated/models/SIPInboundRoutingRuleResponse;Lio/getstream/android/video/generated/models/SIPTrunkResponse;)Lio/getstream/android/video/generated/models/ResolveSipInboundResponse; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/ResolveSipInboundResponse;Ljava/lang/String;Lio/getstream/android/video/generated/models/SipInboundCredentials;Lio/getstream/android/video/generated/models/SIPInboundRoutingRuleResponse;Lio/getstream/android/video/generated/models/SIPTrunkResponse;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/ResolveSipInboundResponse; + public fun equals (Ljava/lang/Object;)Z + public final fun getCredentials ()Lio/getstream/android/video/generated/models/SipInboundCredentials; + public final fun getDuration ()Ljava/lang/String; + public final fun getSipRoutingRule ()Lio/getstream/android/video/generated/models/SIPInboundRoutingRuleResponse; + public final fun getSipTrunk ()Lio/getstream/android/video/generated/models/SIPTrunkResponse; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + public final class io/getstream/android/video/generated/models/Response { public fun (Ljava/lang/String;)V public final fun component1 ()Ljava/lang/String; @@ -4919,6 +5075,35 @@ public final class io/getstream/android/video/generated/models/Response { public fun toString ()Ljava/lang/String; } +public final class io/getstream/android/video/generated/models/RingCallRequest { + public fun ()V + public fun (Ljava/lang/Boolean;Ljava/util/List;)V + public synthetic fun (Ljava/lang/Boolean;Ljava/util/List;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/lang/Boolean; + public final fun component2 ()Ljava/util/List; + public final fun copy (Ljava/lang/Boolean;Ljava/util/List;)Lio/getstream/android/video/generated/models/RingCallRequest; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/RingCallRequest;Ljava/lang/Boolean;Ljava/util/List;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/RingCallRequest; + public fun equals (Ljava/lang/Object;)Z + public final fun getMembersIds ()Ljava/util/List; + public final fun getVideo ()Ljava/lang/Boolean; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + +public final class io/getstream/android/video/generated/models/RingCallResponse { + public fun (Ljava/lang/String;Ljava/util/List;)V + public synthetic fun (Ljava/lang/String;Ljava/util/List;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/lang/String; + public final fun component2 ()Ljava/util/List; + public final fun copy (Ljava/lang/String;Ljava/util/List;)Lio/getstream/android/video/generated/models/RingCallResponse; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/RingCallResponse;Ljava/lang/String;Ljava/util/List;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/RingCallResponse; + public fun equals (Ljava/lang/Object;)Z + public final fun getDuration ()Ljava/lang/String; + public final fun getMembersIds ()Ljava/util/List; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + public final class io/getstream/android/video/generated/models/RingSettingsRequest { public fun (IILjava/lang/Integer;)V public synthetic fun (IILjava/lang/Integer;ILkotlin/jvm/internal/DefaultConstructorMarker;)V @@ -4991,6 +5176,190 @@ public final class io/getstream/android/video/generated/models/SFUResponse { public fun toString ()Ljava/lang/String; } +public final class io/getstream/android/video/generated/models/SIPCallConfigsResponse { + public fun ()V + public fun (Ljava/util/Map;)V + public synthetic fun (Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/util/Map; + public final fun copy (Ljava/util/Map;)Lio/getstream/android/video/generated/models/SIPCallConfigsResponse; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/SIPCallConfigsResponse;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/SIPCallConfigsResponse; + public fun equals (Ljava/lang/Object;)Z + public final fun getCustomData ()Ljava/util/Map; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + +public final class io/getstream/android/video/generated/models/SIPCallerConfigsResponse { + public fun (Ljava/lang/String;Ljava/util/Map;)V + public synthetic fun (Ljava/lang/String;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/lang/String; + public final fun component2 ()Ljava/util/Map; + public final fun copy (Ljava/lang/String;Ljava/util/Map;)Lio/getstream/android/video/generated/models/SIPCallerConfigsResponse; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/SIPCallerConfigsResponse;Ljava/lang/String;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/SIPCallerConfigsResponse; + public fun equals (Ljava/lang/Object;)Z + public final fun getCustomData ()Ljava/util/Map; + public final fun getId ()Ljava/lang/String; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + +public final class io/getstream/android/video/generated/models/SIPChallenge { + public fun ()V + public fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;Ljava/util/List;Ljava/util/List;)V + public synthetic fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;Ljava/util/List;Ljava/util/List;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/lang/String; + public final fun component10 ()Ljava/lang/String; + public final fun component11 ()Ljava/lang/Boolean; + public final fun component12 ()Ljava/lang/String; + public final fun component13 ()Ljava/lang/Boolean; + public final fun component14 ()Ljava/lang/String; + public final fun component15 ()Ljava/util/List; + public final fun component16 ()Ljava/util/List; + public final fun component2 ()Ljava/lang/String; + public final fun component3 ()Ljava/lang/String; + public final fun component4 ()Ljava/lang/String; + public final fun component5 ()Ljava/lang/String; + public final fun component6 ()Ljava/lang/String; + public final fun component7 ()Ljava/lang/String; + public final fun component8 ()Ljava/lang/String; + public final fun component9 ()Ljava/lang/String; + public final fun copy (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;Ljava/util/List;Ljava/util/List;)Lio/getstream/android/video/generated/models/SIPChallenge; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/SIPChallenge;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;Ljava/util/List;Ljava/util/List;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/SIPChallenge; + public fun equals (Ljava/lang/Object;)Z + public final fun getA1 ()Ljava/lang/String; + public final fun getAlgorithm ()Ljava/lang/String; + public final fun getCharset ()Ljava/lang/String; + public final fun getCnonce ()Ljava/lang/String; + public final fun getDomain ()Ljava/util/List; + public final fun getMethod ()Ljava/lang/String; + public final fun getNc ()Ljava/lang/String; + public final fun getNonce ()Ljava/lang/String; + public final fun getOpaque ()Ljava/lang/String; + public final fun getQop ()Ljava/util/List; + public final fun getRealm ()Ljava/lang/String; + public final fun getResponse ()Ljava/lang/String; + public final fun getStale ()Ljava/lang/Boolean; + public final fun getUri ()Ljava/lang/String; + public final fun getUserhash ()Ljava/lang/Boolean; + public final fun getUsername ()Ljava/lang/String; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + +public final class io/getstream/android/video/generated/models/SIPDirectRoutingRuleCallConfigsResponse { + public fun (Ljava/lang/String;Ljava/lang/String;)V + public final fun component1 ()Ljava/lang/String; + public final fun component2 ()Ljava/lang/String; + public final fun copy (Ljava/lang/String;Ljava/lang/String;)Lio/getstream/android/video/generated/models/SIPDirectRoutingRuleCallConfigsResponse; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/SIPDirectRoutingRuleCallConfigsResponse;Ljava/lang/String;Ljava/lang/String;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/SIPDirectRoutingRuleCallConfigsResponse; + public fun equals (Ljava/lang/Object;)Z + public final fun getCallId ()Ljava/lang/String; + public final fun getCallType ()Ljava/lang/String; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + +public final class io/getstream/android/video/generated/models/SIPInboundRoutingRulePinConfigsResponse { + public fun ()V + public fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + public synthetic fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/lang/String; + public final fun component2 ()Ljava/lang/String; + public final fun component3 ()Ljava/lang/String; + public final fun component4 ()Ljava/lang/String; + public final fun component5 ()Ljava/lang/String; + public final fun copy (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lio/getstream/android/video/generated/models/SIPInboundRoutingRulePinConfigsResponse; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/SIPInboundRoutingRulePinConfigsResponse;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/SIPInboundRoutingRulePinConfigsResponse; + public fun equals (Ljava/lang/Object;)Z + public final fun getCustomWebhookUrl ()Ljava/lang/String; + public final fun getPinFailedAttemptPrompt ()Ljava/lang/String; + public final fun getPinHangupPrompt ()Ljava/lang/String; + public final fun getPinPrompt ()Ljava/lang/String; + public final fun getPinSuccessPrompt ()Ljava/lang/String; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + +public final class io/getstream/android/video/generated/models/SIPInboundRoutingRuleResponse { + public fun (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Ljava/util/List;Ljava/util/List;Lio/getstream/android/video/generated/models/SIPCallConfigsResponse;Lio/getstream/android/video/generated/models/SIPCallerConfigsResponse;Lio/getstream/android/video/generated/models/SIPDirectRoutingRuleCallConfigsResponse;Lio/getstream/android/video/generated/models/SIPPinProtectionConfigsResponse;Lio/getstream/android/video/generated/models/SIPInboundRoutingRulePinConfigsResponse;)V + public synthetic fun (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Ljava/util/List;Ljava/util/List;Lio/getstream/android/video/generated/models/SIPCallConfigsResponse;Lio/getstream/android/video/generated/models/SIPCallerConfigsResponse;Lio/getstream/android/video/generated/models/SIPDirectRoutingRuleCallConfigsResponse;Lio/getstream/android/video/generated/models/SIPPinProtectionConfigsResponse;Lio/getstream/android/video/generated/models/SIPInboundRoutingRulePinConfigsResponse;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Lorg/threeten/bp/OffsetDateTime; + public final fun component10 ()Lio/getstream/android/video/generated/models/SIPCallerConfigsResponse; + public final fun component11 ()Lio/getstream/android/video/generated/models/SIPDirectRoutingRuleCallConfigsResponse; + public final fun component12 ()Lio/getstream/android/video/generated/models/SIPPinProtectionConfigsResponse; + public final fun component13 ()Lio/getstream/android/video/generated/models/SIPInboundRoutingRulePinConfigsResponse; + public final fun component2 ()Ljava/lang/String; + public final fun component3 ()Ljava/lang/String; + public final fun component4 ()Ljava/lang/String; + public final fun component5 ()Lorg/threeten/bp/OffsetDateTime; + public final fun component6 ()Ljava/util/List; + public final fun component7 ()Ljava/util/List; + public final fun component8 ()Ljava/util/List; + public final fun component9 ()Lio/getstream/android/video/generated/models/SIPCallConfigsResponse; + public final fun copy (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Ljava/util/List;Ljava/util/List;Lio/getstream/android/video/generated/models/SIPCallConfigsResponse;Lio/getstream/android/video/generated/models/SIPCallerConfigsResponse;Lio/getstream/android/video/generated/models/SIPDirectRoutingRuleCallConfigsResponse;Lio/getstream/android/video/generated/models/SIPPinProtectionConfigsResponse;Lio/getstream/android/video/generated/models/SIPInboundRoutingRulePinConfigsResponse;)Lio/getstream/android/video/generated/models/SIPInboundRoutingRuleResponse; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/SIPInboundRoutingRuleResponse;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/util/List;Ljava/util/List;Ljava/util/List;Lio/getstream/android/video/generated/models/SIPCallConfigsResponse;Lio/getstream/android/video/generated/models/SIPCallerConfigsResponse;Lio/getstream/android/video/generated/models/SIPDirectRoutingRuleCallConfigsResponse;Lio/getstream/android/video/generated/models/SIPPinProtectionConfigsResponse;Lio/getstream/android/video/generated/models/SIPInboundRoutingRulePinConfigsResponse;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/SIPInboundRoutingRuleResponse; + public fun equals (Ljava/lang/Object;)Z + public final fun getCallConfigs ()Lio/getstream/android/video/generated/models/SIPCallConfigsResponse; + public final fun getCalledNumbers ()Ljava/util/List; + public final fun getCallerConfigs ()Lio/getstream/android/video/generated/models/SIPCallerConfigsResponse; + public final fun getCallerNumbers ()Ljava/util/List; + public final fun getCreatedAt ()Lorg/threeten/bp/OffsetDateTime; + public final fun getDirectRoutingConfigs ()Lio/getstream/android/video/generated/models/SIPDirectRoutingRuleCallConfigsResponse; + public final fun getDuration ()Ljava/lang/String; + public final fun getId ()Ljava/lang/String; + public final fun getName ()Ljava/lang/String; + public final fun getPinProtectionConfigs ()Lio/getstream/android/video/generated/models/SIPPinProtectionConfigsResponse; + public final fun getPinRoutingConfigs ()Lio/getstream/android/video/generated/models/SIPInboundRoutingRulePinConfigsResponse; + public final fun getTrunkIds ()Ljava/util/List; + public final fun getUpdatedAt ()Lorg/threeten/bp/OffsetDateTime; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + +public final class io/getstream/android/video/generated/models/SIPPinProtectionConfigsResponse { + public fun (ZLjava/lang/String;Ljava/lang/Integer;Ljava/lang/Integer;)V + public synthetic fun (ZLjava/lang/String;Ljava/lang/Integer;Ljava/lang/Integer;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Z + public final fun component2 ()Ljava/lang/String; + public final fun component3 ()Ljava/lang/Integer; + public final fun component4 ()Ljava/lang/Integer; + public final fun copy (ZLjava/lang/String;Ljava/lang/Integer;Ljava/lang/Integer;)Lio/getstream/android/video/generated/models/SIPPinProtectionConfigsResponse; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/SIPPinProtectionConfigsResponse;ZLjava/lang/String;Ljava/lang/Integer;Ljava/lang/Integer;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/SIPPinProtectionConfigsResponse; + public fun equals (Ljava/lang/Object;)Z + public final fun getDefaultPin ()Ljava/lang/String; + public final fun getEnabled ()Z + public final fun getMaxAttempts ()Ljava/lang/Integer; + public final fun getRequiredPinDigits ()Ljava/lang/Integer; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + +public final class io/getstream/android/video/generated/models/SIPTrunkResponse { + public fun (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)V + public synthetic fun (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Lorg/threeten/bp/OffsetDateTime; + public final fun component2 ()Ljava/lang/String; + public final fun component3 ()Ljava/lang/String; + public final fun component4 ()Ljava/lang/String; + public final fun component5 ()Lorg/threeten/bp/OffsetDateTime; + public final fun component6 ()Ljava/lang/String; + public final fun component7 ()Ljava/lang/String; + public final fun component8 ()Ljava/util/List; + public final fun copy (Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Lio/getstream/android/video/generated/models/SIPTrunkResponse; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/SIPTrunkResponse;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/threeten/bp/OffsetDateTime;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/SIPTrunkResponse; + public fun equals (Ljava/lang/Object;)Z + public final fun getCreatedAt ()Lorg/threeten/bp/OffsetDateTime; + public final fun getId ()Ljava/lang/String; + public final fun getName ()Ljava/lang/String; + public final fun getNumbers ()Ljava/util/List; + public final fun getPassword ()Ljava/lang/String; + public final fun getUpdatedAt ()Lorg/threeten/bp/OffsetDateTime; + public final fun getUri ()Ljava/lang/String; + public final fun getUsername ()Ljava/lang/String; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + public final class io/getstream/android/video/generated/models/SRTIngress { public fun (Ljava/lang/String;)V public final fun component1 ()Ljava/lang/String; @@ -5110,6 +5479,28 @@ public final class io/getstream/android/video/generated/models/SessionSettingsRe public fun toString ()Ljava/lang/String; } +public final class io/getstream/android/video/generated/models/SipInboundCredentials { + public fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)V + public synthetic fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/lang/String; + public final fun component2 ()Ljava/lang/String; + public final fun component3 ()Ljava/lang/String; + public final fun component4 ()Ljava/lang/String; + public final fun component5 ()Ljava/util/Map; + public final fun component6 ()Ljava/util/Map; + public final fun copy (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lio/getstream/android/video/generated/models/SipInboundCredentials; + public static synthetic fun copy$default (Lio/getstream/android/video/generated/models/SipInboundCredentials;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;ILjava/lang/Object;)Lio/getstream/android/video/generated/models/SipInboundCredentials; + public fun equals (Ljava/lang/Object;)Z + public final fun getCallCustomData ()Ljava/util/Map; + public final fun getCallId ()Ljava/lang/String; + public final fun getCallType ()Ljava/lang/String; + public final fun getToken ()Ljava/lang/String; + public final fun getUserCustomData ()Ljava/util/Map; + public final fun getUserId ()Ljava/lang/String; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + public final class io/getstream/android/video/generated/models/SortParamRequest { public fun ()V public fun (Ljava/lang/Integer;Ljava/lang/String;)V @@ -7213,6 +7604,8 @@ public final class io/getstream/video/android/core/Call { public final fun isVideoEnabled ()Z public final fun join (ZLio/getstream/video/android/core/CreateCallOptions;ZZLkotlin/coroutines/Continuation;)Ljava/lang/Object; public static synthetic fun join$default (Lio/getstream/video/android/core/Call;ZLio/getstream/video/android/core/CreateCallOptions;ZZLkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public final fun joinAndRing (Ljava/util/List;Lio/getstream/video/android/core/CreateCallOptions;ZLkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static synthetic fun joinAndRing$default (Lio/getstream/video/android/core/Call;Ljava/util/List;Lio/getstream/video/android/core/CreateCallOptions;ZLkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public final fun kickUser (Ljava/lang/String;ZLkotlin/coroutines/Continuation;)Ljava/lang/Object; public static synthetic fun kickUser$default (Lio/getstream/video/android/core/Call;Ljava/lang/String;ZLkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public final fun leave ()V @@ -7237,6 +7630,7 @@ public final class io/getstream/video/android/core/Call { public final fun removeMembers (Ljava/util/List;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public final fun requestPermissions ([Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public final fun revokePermissions (Ljava/lang/String;Ljava/util/List;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public final fun ring (Lio/getstream/android/video/generated/models/RingCallRequest;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public final fun ring (Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public final fun sendCustomEvent (Ljava/util/Map;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public final fun sendReaction (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/apis/ProductvideoApi.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/apis/ProductvideoApi.kt index 30e22648068..f4a83b7b6f1 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/apis/ProductvideoApi.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/apis/ProductvideoApi.kt @@ -388,6 +388,27 @@ interface ProductvideoApi { @Body requestPermissionRequest: io.getstream.android.video.generated.models.RequestPermissionRequest ): io.getstream.android.video.generated.models.RequestPermissionResponse + /** + * Ring Call Users + * Sends a ring notification to the provided users who are not already in the call. All users should be members of the call + */ + @POST("/video/call/{type}/{id}/ring") + suspend fun ringCall( + @Path("type") type: kotlin.String, + @Path("id") id: kotlin.String , + @Body ringCallRequest: io.getstream.android.video.generated.models.RingCallRequest + ): io.getstream.android.video.generated.models.RingCallResponse + + /** + * Ring Call Users + * Sends a ring notification to the provided users who are not already in the call. All users should be members of the call + */ + @POST("/video/call/{type}/{id}/ring") + suspend fun ringCall( + @Path("type") type: kotlin.String, + @Path("id") id: kotlin.String + ): io.getstream.android.video.generated.models.RingCallResponse + /** * Start RTMP broadcasts * Starts RTMP broadcasts for the provided RTMP destinations @@ -778,6 +799,15 @@ interface ProductvideoApi { suspend fun videoConnect( ) + /** + * Resolve SIP Inbound Routing + * Resolve SIP inbound routing based on trunk number, caller number, and challenge authentication + */ + @POST("/video/sip/resolve") + suspend fun resolveSipInbound( + @Body resolveSipInboundRequest: io.getstream.android.video.generated.models.ResolveSipInboundRequest + ): io.getstream.android.video.generated.models.ResolveSipInboundResponse + /** * Query Aggregate call Stats * diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallModerationBlurEvent.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallModerationBlurEvent.kt index dddde332b6b..00fed1eb552 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallModerationBlurEvent.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallModerationBlurEvent.kt @@ -35,7 +35,7 @@ import com.squareup.moshi.JsonWriter import com.squareup.moshi.ToJson /** - * + * This event is sent when a moderation blur action is applied to a user's video stream */ data class CallModerationBlurEvent ( diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallModerationWarningEvent.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallModerationWarningEvent.kt index af51d10f73c..744173a55d1 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallModerationWarningEvent.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallModerationWarningEvent.kt @@ -35,7 +35,7 @@ import com.squareup.moshi.JsonWriter import com.squareup.moshi.ToJson /** - * + * This event is sent when a moderation warning is issued to a user */ data class CallModerationWarningEvent ( diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallRecording.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallRecording.kt index e1b71e64916..8d7db91a450 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallRecording.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallRecording.kt @@ -45,6 +45,9 @@ data class CallRecording ( @Json(name = "filename") val filename: kotlin.String, + @Json(name = "recording_type") + val recordingType: kotlin.String, + @Json(name = "session_id") val sessionId: kotlin.String, diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallStatsLocation.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallStatsLocation.kt new file mode 100644 index 00000000000..0410956761c --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallStatsLocation.kt @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * + */ + +data class CallStatsLocation ( + @Json(name = "accuracy_radius_meters") + val accuracyRadiusMeters: kotlin.Int? = null, + + @Json(name = "city") + val city: kotlin.String? = null, + + @Json(name = "continent") + val continent: kotlin.String? = null, + + @Json(name = "country") + val country: kotlin.String? = null, + + @Json(name = "country_iso_code") + val countryIsoCode: kotlin.String? = null, + + @Json(name = "latitude") + val latitude: kotlin.Float? = null, + + @Json(name = "longitude") + val longitude: kotlin.Float? = null, + + @Json(name = "subdivision") + val subdivision: kotlin.String? = null +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallStatsParticipantCounts.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallStatsParticipantCounts.kt index f4b72a57959..b3f789d52a0 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallStatsParticipantCounts.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallStatsParticipantCounts.kt @@ -45,6 +45,12 @@ data class CallStatsParticipantCounts ( @Json(name = "participants") val participants: kotlin.Int, + @Json(name = "peak_concurrent_sessions") + val peakConcurrentSessions: kotlin.Int, + + @Json(name = "peak_concurrent_users") + val peakConcurrentUsers: kotlin.Int, + @Json(name = "publishers") val publishers: kotlin.Int, diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallStatsParticipantSession.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallStatsParticipantSession.kt index 0511059ed38..c83da5d3503 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallStatsParticipantSession.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/CallStatsParticipantSession.kt @@ -48,18 +48,48 @@ data class CallStatsParticipantSession ( @Json(name = "published_tracks") val publishedTracks: io.getstream.android.video.generated.models.PublishedTrackFlags, + @Json(name = "browser") + val browser: kotlin.String? = null, + + @Json(name = "browser_version") + val browserVersion: kotlin.String? = null, + @Json(name = "cq_score") val cqScore: kotlin.Int? = null, + @Json(name = "current_ip") + val currentIp: kotlin.String? = null, + + @Json(name = "current_sfu") + val currentSfu: kotlin.String? = null, + + @Json(name = "distance_to_sfu_kilometers") + val distanceToSfuKilometers: kotlin.Float? = null, + @Json(name = "ended_at") val endedAt: org.threeten.bp.OffsetDateTime? = null, + @Json(name = "os") + val os: kotlin.String? = null, + @Json(name = "publisher_type") val publisherType: kotlin.String? = null, + @Json(name = "sdk") + val sdk: kotlin.String? = null, + + @Json(name = "sdk_version") + val sdkVersion: kotlin.String? = null, + @Json(name = "started_at") val startedAt: org.threeten.bp.OffsetDateTime? = null, @Json(name = "unified_session_id") - val unifiedSessionId: kotlin.String? = null + val unifiedSessionId: kotlin.String? = null, + + @Json(name = "webrtc_version") + val webrtcVersion: kotlin.String? = null, + + @Json(name = "location") + val location: io.getstream.android.video.generated.models.CallStatsLocation? = null ) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/FeedsPreferences.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/FeedsPreferencesResponse.kt similarity index 97% rename from stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/FeedsPreferences.kt rename to stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/FeedsPreferencesResponse.kt index 000422930b9..8b6e2a88e10 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/FeedsPreferences.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/FeedsPreferencesResponse.kt @@ -38,7 +38,7 @@ import com.squareup.moshi.ToJson * */ -data class FeedsPreferences ( +data class FeedsPreferencesResponse ( @Json(name = "comment") val comment: kotlin.String? = null, diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/MetricDescriptor.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/MetricDescriptor.kt new file mode 100644 index 00000000000..ba114a81c0c --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/MetricDescriptor.kt @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * + */ + +data class MetricDescriptor ( + @Json(name = "label") + val label: kotlin.String, + + @Json(name = "description") + val description: kotlin.String? = null, + + @Json(name = "unit") + val unit: kotlin.String? = null +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/MetricThreshold.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/MetricThreshold.kt new file mode 100644 index 00000000000..6a60cea77ce --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/MetricThreshold.kt @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * + */ + +data class MetricThreshold ( + @Json(name = "level") + val level: kotlin.String, + + @Json(name = "operator") + val operator: kotlin.String, + + @Json(name = "value") + val value: kotlin.Float, + + @Json(name = "value_unit") + val valueUnit: kotlin.String? = null, + + @Json(name = "window_seconds") + val windowSeconds: kotlin.Int? = null +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/OwnUserResponse.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/OwnUserResponse.kt index 14d4e0f92aa..ce67ae18eb3 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/OwnUserResponse.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/OwnUserResponse.kt @@ -88,7 +88,7 @@ data class OwnUserResponse ( val blockedUserIds: kotlin.collections.List? = emptyList(), @Json(name = "push_preferences") - val pushPreferences: io.getstream.android.video.generated.models.PushPreferences? = null, + val pushPreferences: io.getstream.android.video.generated.models.PushPreferencesResponse? = null, @Json(name = "teams_role") val teamsRole: kotlin.collections.Map? = emptyMap() diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesPublisherStats.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesPublisherStats.kt index 697a2b43e1b..0844b90167e 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesPublisherStats.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesPublisherStats.kt @@ -39,9 +39,18 @@ import com.squareup.moshi.ToJson */ data class ParticipantSeriesPublisherStats ( + @Json(name = "global_metrics_order") + val globalMetricsOrder: kotlin.collections.List? = emptyList(), + @Json(name = "global") val global: kotlin.collections.Map>>? = emptyMap(), + @Json(name = "global_meta") + val globalMeta: kotlin.collections.Map? = emptyMap(), + + @Json(name = "global_thresholds") + val globalThresholds: kotlin.collections.Map>? = emptyMap(), + @Json(name = "tracks") val tracks: kotlin.collections.Map>? = emptyMap() ) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesSubscriberStats.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesSubscriberStats.kt index 671d845e960..c825f6179aa 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesSubscriberStats.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesSubscriberStats.kt @@ -39,9 +39,18 @@ import com.squareup.moshi.ToJson */ data class ParticipantSeriesSubscriberStats ( + @Json(name = "global_metrics_order") + val globalMetricsOrder: kotlin.collections.List? = emptyList(), + @Json(name = "subscriptions") val subscriptions: kotlin.collections.List? = emptyList(), @Json(name = "global") - val global: kotlin.collections.Map>>? = emptyMap() + val global: kotlin.collections.Map>>? = emptyMap(), + + @Json(name = "global_meta") + val globalMeta: kotlin.collections.Map? = emptyMap(), + + @Json(name = "global_thresholds") + val globalThresholds: kotlin.collections.Map>? = emptyMap() ) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesTrackMetrics.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesTrackMetrics.kt index 4270745694d..c95063be5cc 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesTrackMetrics.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesTrackMetrics.kt @@ -42,12 +42,27 @@ data class ParticipantSeriesTrackMetrics ( @Json(name = "track_id") val trackId: kotlin.String, + @Json(name = "codec") + val codec: kotlin.String? = null, + @Json(name = "label") val label: kotlin.String? = null, + @Json(name = "rid") + val rid: kotlin.String? = null, + @Json(name = "track_type") val trackType: kotlin.String? = null, + @Json(name = "metrics_order") + val metricsOrder: kotlin.collections.List? = emptyList(), + @Json(name = "metrics") - val metrics: kotlin.collections.Map>>? = emptyMap() + val metrics: kotlin.collections.Map>>? = emptyMap(), + + @Json(name = "metrics_meta") + val metricsMeta: kotlin.collections.Map? = emptyMap(), + + @Json(name = "thresholds") + val thresholds: kotlin.collections.Map>? = emptyMap() ) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesUserStats.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesUserStats.kt index 0bac4fb1efe..1a276663eeb 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesUserStats.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ParticipantSeriesUserStats.kt @@ -39,6 +39,15 @@ import com.squareup.moshi.ToJson */ data class ParticipantSeriesUserStats ( + @Json(name = "metrics_order") + val metricsOrder: kotlin.collections.List? = emptyList(), + @Json(name = "metrics") - val metrics: kotlin.collections.Map>>? = emptyMap() + val metrics: kotlin.collections.Map>>? = emptyMap(), + + @Json(name = "metrics_meta") + val metricsMeta: kotlin.collections.Map? = emptyMap(), + + @Json(name = "thresholds") + val thresholds: kotlin.collections.Map>? = emptyMap() ) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/PushPreferences.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/PushPreferencesResponse.kt similarity index 95% rename from stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/PushPreferences.kt rename to stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/PushPreferencesResponse.kt index e3a4a161939..24c7d8ddbf5 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/PushPreferences.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/PushPreferencesResponse.kt @@ -38,7 +38,7 @@ import com.squareup.moshi.ToJson * */ -data class PushPreferences ( +data class PushPreferencesResponse ( @Json(name = "call_level") val callLevel: kotlin.String? = null, @@ -52,5 +52,5 @@ data class PushPreferences ( val feedsLevel: kotlin.String? = null, @Json(name = "feeds_preferences") - val feedsPreferences: io.getstream.android.video.generated.models.FeedsPreferences? = null + val feedsPreferences: io.getstream.android.video.generated.models.FeedsPreferencesResponse? = null ) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ResolveSipInboundRequest.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ResolveSipInboundRequest.kt new file mode 100644 index 00000000000..65f3020df13 --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ResolveSipInboundRequest.kt @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * Request to resolve SIP inbound routing using challenge authentication + */ + +data class ResolveSipInboundRequest ( + @Json(name = "sip_caller_number") + val sipCallerNumber: kotlin.String, + + @Json(name = "sip_trunk_number") + val sipTrunkNumber: kotlin.String, + + @Json(name = "challenge") + val challenge: io.getstream.android.video.generated.models.SIPChallenge, + + @Json(name = "sip_headers") + val sipHeaders: kotlin.collections.Map? = emptyMap() +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ResolveSipInboundResponse.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ResolveSipInboundResponse.kt new file mode 100644 index 00000000000..940829c4836 --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/ResolveSipInboundResponse.kt @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * Response containing resolved SIP inbound routing information + */ + +data class ResolveSipInboundResponse ( + @Json(name = "duration") + val duration: kotlin.String, + + @Json(name = "credentials") + val credentials: io.getstream.android.video.generated.models.SipInboundCredentials, + + @Json(name = "sip_routing_rule") + val sipRoutingRule: io.getstream.android.video.generated.models.SIPInboundRoutingRuleResponse? = null, + + @Json(name = "sip_trunk") + val sipTrunk: io.getstream.android.video.generated.models.SIPTrunkResponse? = null +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/RingCallRequest.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/RingCallRequest.kt new file mode 100644 index 00000000000..826991c17d9 --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/RingCallRequest.kt @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * + */ + +data class RingCallRequest ( + @Json(name = "video") + val video: kotlin.Boolean? = null, + + @Json(name = "members_ids") + val membersIds: kotlin.collections.List? = emptyList() +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/RingCallResponse.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/RingCallResponse.kt new file mode 100644 index 00000000000..e3dc6b27153 --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/RingCallResponse.kt @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * + */ + +data class RingCallResponse ( + @Json(name = "duration") + val duration: kotlin.String, + + @Json(name = "members_ids") + val membersIds: kotlin.collections.List = emptyList() +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPCallConfigsResponse.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPCallConfigsResponse.kt new file mode 100644 index 00000000000..af714e02996 --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPCallConfigsResponse.kt @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * SIP call configuration response + */ + +data class SIPCallConfigsResponse ( + @Json(name = "custom_data") + val customData: kotlin.collections.Map = emptyMap() +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPCallerConfigsResponse.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPCallerConfigsResponse.kt new file mode 100644 index 00000000000..df822a7ccc7 --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPCallerConfigsResponse.kt @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * SIP caller configuration response + */ + +data class SIPCallerConfigsResponse ( + @Json(name = "id") + val id: kotlin.String, + + @Json(name = "custom_data") + val customData: kotlin.collections.Map = emptyMap() +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPChallenge.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPChallenge.kt new file mode 100644 index 00000000000..a5519d4c602 --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPChallenge.kt @@ -0,0 +1,89 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * + */ + +data class SIPChallenge ( + @Json(name = "a1") + val a1: kotlin.String? = null, + + @Json(name = "algorithm") + val algorithm: kotlin.String? = null, + + @Json(name = "charset") + val charset: kotlin.String? = null, + + @Json(name = "cnonce") + val cnonce: kotlin.String? = null, + + @Json(name = "method") + val method: kotlin.String? = null, + + @Json(name = "nc") + val nc: kotlin.String? = null, + + @Json(name = "nonce") + val nonce: kotlin.String? = null, + + @Json(name = "opaque") + val opaque: kotlin.String? = null, + + @Json(name = "realm") + val realm: kotlin.String? = null, + + @Json(name = "response") + val response: kotlin.String? = null, + + @Json(name = "stale") + val stale: kotlin.Boolean? = null, + + @Json(name = "uri") + val uri: kotlin.String? = null, + + @Json(name = "userhash") + val userhash: kotlin.Boolean? = null, + + @Json(name = "username") + val username: kotlin.String? = null, + + @Json(name = "domain") + val domain: kotlin.collections.List? = emptyList(), + + @Json(name = "qop") + val qop: kotlin.collections.List? = emptyList() +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPDirectRoutingRuleCallConfigsResponse.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPDirectRoutingRuleCallConfigsResponse.kt new file mode 100644 index 00000000000..a8181850cde --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPDirectRoutingRuleCallConfigsResponse.kt @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * Direct routing rule call configuration response + */ + +data class SIPDirectRoutingRuleCallConfigsResponse ( + @Json(name = "call_id") + val callId: kotlin.String, + + @Json(name = "call_type") + val callType: kotlin.String +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPInboundRoutingRulePinConfigsResponse.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPInboundRoutingRulePinConfigsResponse.kt new file mode 100644 index 00000000000..54c16e629b6 --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPInboundRoutingRulePinConfigsResponse.kt @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * PIN routing rule call configuration response + */ + +data class SIPInboundRoutingRulePinConfigsResponse ( + @Json(name = "custom_webhook_url") + val customWebhookUrl: kotlin.String? = null, + + @Json(name = "pin_failed_attempt_prompt") + val pinFailedAttemptPrompt: kotlin.String? = null, + + @Json(name = "pin_hangup_prompt") + val pinHangupPrompt: kotlin.String? = null, + + @Json(name = "pin_prompt") + val pinPrompt: kotlin.String? = null, + + @Json(name = "pin_success_prompt") + val pinSuccessPrompt: kotlin.String? = null +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPInboundRoutingRuleResponse.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPInboundRoutingRuleResponse.kt new file mode 100644 index 00000000000..9fdd44be500 --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPInboundRoutingRuleResponse.kt @@ -0,0 +1,80 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * SIP Inbound Routing Rule response + */ + +data class SIPInboundRoutingRuleResponse ( + @Json(name = "created_at") + val createdAt: org.threeten.bp.OffsetDateTime, + + @Json(name = "duration") + val duration: kotlin.String, + + @Json(name = "id") + val id: kotlin.String, + + @Json(name = "name") + val name: kotlin.String, + + @Json(name = "updated_at") + val updatedAt: org.threeten.bp.OffsetDateTime, + + @Json(name = "called_numbers") + val calledNumbers: kotlin.collections.List = emptyList(), + + @Json(name = "trunk_ids") + val trunkIds: kotlin.collections.List = emptyList(), + + @Json(name = "caller_numbers") + val callerNumbers: kotlin.collections.List? = emptyList(), + + @Json(name = "call_configs") + val callConfigs: io.getstream.android.video.generated.models.SIPCallConfigsResponse? = null, + + @Json(name = "caller_configs") + val callerConfigs: io.getstream.android.video.generated.models.SIPCallerConfigsResponse? = null, + + @Json(name = "direct_routing_configs") + val directRoutingConfigs: io.getstream.android.video.generated.models.SIPDirectRoutingRuleCallConfigsResponse? = null, + + @Json(name = "pin_protection_configs") + val pinProtectionConfigs: io.getstream.android.video.generated.models.SIPPinProtectionConfigsResponse? = null, + + @Json(name = "pin_routing_configs") + val pinRoutingConfigs: io.getstream.android.video.generated.models.SIPInboundRoutingRulePinConfigsResponse? = null +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPPinProtectionConfigsResponse.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPPinProtectionConfigsResponse.kt new file mode 100644 index 00000000000..4baa3306c01 --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPPinProtectionConfigsResponse.kt @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * PIN protection configuration response + */ + +data class SIPPinProtectionConfigsResponse ( + @Json(name = "enabled") + val enabled: kotlin.Boolean, + + @Json(name = "default_pin") + val defaultPin: kotlin.String? = null, + + @Json(name = "max_attempts") + val maxAttempts: kotlin.Int? = null, + + @Json(name = "required_pin_digits") + val requiredPinDigits: kotlin.Int? = null +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPTrunkResponse.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPTrunkResponse.kt new file mode 100644 index 00000000000..2c0cc2fa24f --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SIPTrunkResponse.kt @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * SIP trunk information + */ + +data class SIPTrunkResponse ( + @Json(name = "created_at") + val createdAt: org.threeten.bp.OffsetDateTime, + + @Json(name = "id") + val id: kotlin.String, + + @Json(name = "name") + val name: kotlin.String, + + @Json(name = "password") + val password: kotlin.String, + + @Json(name = "updated_at") + val updatedAt: org.threeten.bp.OffsetDateTime, + + @Json(name = "uri") + val uri: kotlin.String, + + @Json(name = "username") + val username: kotlin.String, + + @Json(name = "numbers") + val numbers: kotlin.collections.List = emptyList() +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SipInboundCredentials.kt b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SipInboundCredentials.kt new file mode 100644 index 00000000000..11cda9c76a0 --- /dev/null +++ b/stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/models/SipInboundCredentials.kt @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2014-2024 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-video-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +@file:Suppress( + "ArrayInDataClass", + "EnumEntryName", + "RemoveRedundantQualifierName", + "UnusedImport" +) + +package io.getstream.android.video.generated.models + +import kotlin.collections.List +import kotlin.collections.Map +import kotlin.collections.* +import kotlin.io.* +import com.squareup.moshi.FromJson +import com.squareup.moshi.Json +import com.squareup.moshi.JsonAdapter +import com.squareup.moshi.JsonReader +import com.squareup.moshi.JsonWriter +import com.squareup.moshi.ToJson + +/** + * Credentials for SIP inbound call authentication + */ + +data class SipInboundCredentials ( + @Json(name = "call_id") + val callId: kotlin.String, + + @Json(name = "call_type") + val callType: kotlin.String, + + @Json(name = "token") + val token: kotlin.String, + + @Json(name = "user_id") + val userId: kotlin.String, + + @Json(name = "call_custom_data") + val callCustomData: kotlin.collections.Map = emptyMap(), + + @Json(name = "user_custom_data") + val userCustomData: kotlin.collections.Map = emptyMap() +) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/video/android/core/Call.kt b/stream-video-android-core/src/main/kotlin/io/getstream/video/android/core/Call.kt index 7cb71bad3f6..b00de0108cd 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/video/android/core/Call.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/video/android/core/Call.kt @@ -39,6 +39,8 @@ import io.getstream.android.video.generated.models.MuteUsersResponse import io.getstream.android.video.generated.models.OwnCapability import io.getstream.android.video.generated.models.PinResponse import io.getstream.android.video.generated.models.RejectCallResponse +import io.getstream.android.video.generated.models.RingCallRequest +import io.getstream.android.video.generated.models.RingCallResponse import io.getstream.android.video.generated.models.SendCallEventResponse import io.getstream.android.video.generated.models.SendReactionResponse import io.getstream.android.video.generated.models.StartTranscriptionResponse @@ -57,6 +59,7 @@ import io.getstream.result.Error import io.getstream.result.Result import io.getstream.result.Result.Failure import io.getstream.result.Result.Success +import io.getstream.result.flatMap import io.getstream.video.android.core.audio.StreamAudioDevice import io.getstream.video.android.core.call.RtcSession import io.getstream.video.android.core.call.audio.InputAudioFilter @@ -95,6 +98,7 @@ import io.getstream.webrtc.android.ui.VideoTextureViewRenderer import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Job import kotlinx.coroutines.SupervisorJob +import kotlinx.coroutines.cancel import kotlinx.coroutines.delay import kotlinx.coroutines.flow.MutableSharedFlow import kotlinx.coroutines.flow.MutableStateFlow @@ -556,6 +560,27 @@ public class Call( return Failure(value = Error.GenericError(errorMessage)) } + suspend fun joinAndRing( + members: List, + createOptions: CreateCallOptions? = CreateCallOptions(members), + video: Boolean = isVideoEnabled(), + ): Result { + logger.d { "[joinAndRing] #ringing; #track; members: $members, video: $video" } + state.toggleRingingStateUpdates(true) + return join(ring = false, createOptions = createOptions).flatMap { rtcSession -> + logger.d { "[joinAndRing] Joined #ringing; #track; ring: $members" } + ring(RingCallRequest(isVideoEnabled(), members)).map { + logger.d { "[joinAndRing] Ringed #ringing; #track; ring: $members" } + clientImpl.state._ringingCall.value = this + rtcSession + }.onError { + logger.e { "[joinAndRing] Ring failed #ringing; #track; error: $it" } + state.toggleRingingStateUpdates(false) + leave() + } + } + } + internal fun isPermanentError(error: Any): Boolean { if (error is Error.ThrowableError) { if (error.message.contains("Unable to resolve host")) { @@ -1434,6 +1459,7 @@ public class Call( supervisorJob.children.forEach { it.join() } supervisorJob.cancel() } + scope.cancel() } suspend fun ring(): Result { @@ -1441,6 +1467,11 @@ public class Call( return clientImpl.ring(type, id) } + suspend fun ring(ringCallRequest: RingCallRequest): Result { + logger.d { "[ring] #ringing ringCallRequest: $ringCallRequest" } + return clientImpl.ring(type, id, ringCallRequest) + } + suspend fun notify(): Result { logger.d { "[notify] #ringing; no args" } return clientImpl.notify(type, id) diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/video/android/core/CallState.kt b/stream-video-android-core/src/main/kotlin/io/getstream/video/android/core/CallState.kt index 478d1c136f9..13d775fe575 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/video/android/core/CallState.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/video/android/core/CallState.kt @@ -941,7 +941,11 @@ public class CallState( is JoinCallResponseEvent -> { // time to update call state based on the join response updateFromJoinResponse(event) - updateRingingState() + if (!ringingStateUpdatesStopped) { + updateRingingState() + } else { + _ringingState.value = RingingState.Outgoing(acceptedByCallee = true) + } updateServerSidePins( event.callState.pins.map { PinUpdate(it.user_id, it.session_id) @@ -1163,7 +1167,7 @@ public class CallState( ) // no members - call is empty, we can join - val state: RingingState = if (hasActiveCall) { + val state: RingingState = if (hasActiveCall && !ringingStateUpdatesStopped) { cancelTimeout() RingingState.Active } else if ((rejectedBy.isNotEmpty() && rejectedBy.size >= outgoingMembersCount) || @@ -1188,6 +1192,7 @@ public class CallState( } } else if (hasRingingCall && createdBy?.id == client.userId) { // The call is created by us + logger.d { "acceptedBy: $acceptedBy, userIsParticipant: $userIsParticipant" } if (acceptedBy.isEmpty()) { // no one accepted the call RingingState.Outgoing(acceptedByCallee = false) @@ -1196,6 +1201,7 @@ public class CallState( RingingState.Outgoing(acceptedByCallee = true) } else { // call is accepted and we are already in the call + ringingStateUpdatesStopped = false cancelTimeout() RingingState.Active } @@ -1277,6 +1283,7 @@ public class CallState( // double check that we are still in Outgoing call state and call is not active if (_ringingState.value is RingingState.Outgoing || _ringingState.value is RingingState.Incoming && client.state.activeCall.value == null) { + ringingStateUpdatesStopped = false call.reject(reason = RejectReason.Custom(alias = REJECT_REASON_TIMEOUT)) call.leave() } @@ -1525,6 +1532,12 @@ public class CallState( _broadcasting.value = true } + private var ringingStateUpdatesStopped = false + + internal fun toggleRingingStateUpdates(stopped: Boolean) { + ringingStateUpdatesStopped = stopped + } + /** * Update participants visibility on the UI. * diff --git a/stream-video-android-core/src/main/kotlin/io/getstream/video/android/core/StreamVideoClient.kt b/stream-video-android-core/src/main/kotlin/io/getstream/video/android/core/StreamVideoClient.kt index 8413d696f91..eb536dde76b 100644 --- a/stream-video-android-core/src/main/kotlin/io/getstream/video/android/core/StreamVideoClient.kt +++ b/stream-video-android-core/src/main/kotlin/io/getstream/video/android/core/StreamVideoClient.kt @@ -50,6 +50,8 @@ import io.getstream.android.video.generated.models.QueryCallsRequest import io.getstream.android.video.generated.models.RejectCallRequest import io.getstream.android.video.generated.models.RejectCallResponse import io.getstream.android.video.generated.models.RequestPermissionRequest +import io.getstream.android.video.generated.models.RingCallRequest +import io.getstream.android.video.generated.models.RingCallResponse import io.getstream.android.video.generated.models.SendCallEventRequest import io.getstream.android.video.generated.models.SendCallEventResponse import io.getstream.android.video.generated.models.SendReactionRequest @@ -1173,6 +1175,12 @@ internal class StreamVideoClient internal constructor( } } + internal suspend fun ring(type: String, id: String, ringCallRequest: RingCallRequest): Result { + return apiCall { + coordinatorConnectionModule.api.ringCall(type = type, id = id, ringCallRequest) + } + } + suspend fun startTranscription( type: String, id: String, diff --git a/stream-video-android-ui-core/api/stream-video-android-ui-core.api b/stream-video-android-ui-core/api/stream-video-android-ui-core.api index fb32a36d161..fe9c34be7e3 100644 --- a/stream-video-android-ui-core/api/stream-video-android-ui-core.api +++ b/stream-video-android-ui-core/api/stream-video-android-ui-core.api @@ -137,8 +137,8 @@ public abstract class io/getstream/video/android/ui/common/StreamCallActivity : } public final class io/getstream/video/android/ui/common/StreamCallActivity$Companion { - public final fun callIntent (Landroid/content/Context;Lio/getstream/video/android/model/StreamCallId;Ljava/util/List;ZLjava/lang/String;Ljava/lang/Class;Lio/getstream/video/android/ui/common/StreamCallActivityConfiguration;Landroid/os/Bundle;)Landroid/content/Intent; - public static synthetic fun callIntent$default (Lio/getstream/video/android/ui/common/StreamCallActivity$Companion;Landroid/content/Context;Lio/getstream/video/android/model/StreamCallId;Ljava/util/List;ZLjava/lang/String;Ljava/lang/Class;Lio/getstream/video/android/ui/common/StreamCallActivityConfiguration;Landroid/os/Bundle;ILjava/lang/Object;)Landroid/content/Intent; + public final fun callIntent (Landroid/content/Context;Lio/getstream/video/android/model/StreamCallId;Ljava/util/List;ZLjava/lang/String;Ljava/lang/Class;Lio/getstream/video/android/ui/common/StreamCallActivityConfiguration;ZLandroid/os/Bundle;)Landroid/content/Intent; + public static synthetic fun callIntent$default (Lio/getstream/video/android/ui/common/StreamCallActivity$Companion;Landroid/content/Context;Lio/getstream/video/android/model/StreamCallId;Ljava/util/List;ZLjava/lang/String;Ljava/lang/Class;Lio/getstream/video/android/ui/common/StreamCallActivityConfiguration;ZLandroid/os/Bundle;ILjava/lang/Object;)Landroid/content/Intent; public final fun callIntentBundle (Lio/getstream/video/android/model/StreamCallId;Ljava/util/List;ZLio/getstream/video/android/ui/common/StreamCallActivityConfiguration;Landroid/os/Bundle;)Landroid/os/Bundle; public static synthetic fun callIntentBundle$default (Lio/getstream/video/android/ui/common/StreamCallActivity$Companion;Lio/getstream/video/android/model/StreamCallId;Ljava/util/List;ZLio/getstream/video/android/ui/common/StreamCallActivityConfiguration;Landroid/os/Bundle;ILjava/lang/Object;)Landroid/os/Bundle; } diff --git a/stream-video-android-ui-core/src/main/kotlin/io/getstream/video/android/ui/common/StreamCallActivity.kt b/stream-video-android-ui-core/src/main/kotlin/io/getstream/video/android/ui/common/StreamCallActivity.kt index 1f0e8a3e335..95b803025c3 100644 --- a/stream-video-android-ui-core/src/main/kotlin/io/getstream/video/android/ui/common/StreamCallActivity.kt +++ b/stream-video-android-ui-core/src/main/kotlin/io/getstream/video/android/ui/common/StreamCallActivity.kt @@ -84,6 +84,7 @@ public abstract class StreamCallActivity : ComponentActivity(), ActivityCallOper // Extra keys private const val EXTRA_LEAVE_WHEN_LAST: String = "leave_when_last" private const val EXTRA_MEMBERS_ARRAY: String = "members_extra" + private const val EXTRA_JOIN_AND_RING: String = "join_and_ring" // Extra default values private const val DEFAULT_LEAVE_WHEN_LAST: Boolean = false @@ -109,6 +110,7 @@ public abstract class StreamCallActivity : ComponentActivity(), ActivityCallOper action: String? = null, clazz: Class, configuration: StreamCallActivityConfiguration = StreamCallActivityConfiguration(), + joinAndRing: Boolean = false, extraData: Bundle? = null, ): Intent { return Intent(context, clazz).apply { @@ -122,6 +124,7 @@ public abstract class StreamCallActivity : ComponentActivity(), ActivityCallOper // Add the generated call ID and other params putExtra(NotificationHandler.INTENT_EXTRA_CALL_CID, cid) putExtra(EXTRA_LEAVE_WHEN_LAST, leaveWhenLastInCall) + putExtra(EXTRA_JOIN_AND_RING, joinAndRing) // Setup the members to transfer to the new activity val membersArrayList = ArrayList() members.forEach { membersArrayList.add(it) } @@ -517,13 +520,26 @@ public abstract class StreamCallActivity : ComponentActivity(), ActivityCallOper logger.v { "[onIntentAction] #ringing; Action OUTGOING_CALL, ${call.cid}" } // Extract the members and the call ID and place the outgoing call val members = intent.getStringArrayListExtra(EXTRA_MEMBERS_ARRAY) ?: emptyList() - create( - call, - members = members, - ring = true, - onSuccess = onSuccess, - onError = onError, - ) + val joinAndRing = intent.getBooleanExtra(EXTRA_JOIN_AND_RING, false) + if (joinAndRing) { + create( + call, + members = members, + ring = false, + onSuccess = { + join(call, onSuccess = onSuccess, onError = onError) + }, + onError = onError, + ) + } else { + create( + call, + members = members, + ring = true, + onSuccess = onSuccess, + onError = onError, + ) + } } else -> { @@ -824,9 +840,15 @@ public abstract class StreamCallActivity : ComponentActivity(), ActivityCallOper onSuccess: (suspend (Call) -> Unit)?, onError: (suspend (Exception) -> Unit)?, ) { - acceptOrJoinNewCall(call, onSuccess, onError) { + acceptOrJoinNewCall(call, onSuccess, onError) { availableCall -> logger.d { "Join call, ${call.cid}" } - it.join() + val joinAndRing = intent.getBooleanExtra(EXTRA_JOIN_AND_RING, false) + if (joinAndRing) { + logger.d { "[joinAndRing] Join and ring call, ${call.cid}" } + availableCall.joinAndRing(call.state.members.value.map { it.user.id }) + } else { + availableCall.join() + } } }