Platform docs
Auth, users, webhooks & more

Connection Unstable

As described here, you can listen to the participants' connection quality and show a network quality indicator. Additionally, you can use this information to notify the current user (in case their connection is bad). Depending on the where you want to place the warning, you can choose to customize one of the view slots available, and add the indicator as an overlay:

YourView()
    .overlay(
        participant.connectionQuality == .poor ? Text("Your network connection is bad.") : nil
    )

When the connection is unstable and it drops, we try to reconnect to the call. In that case, the callingState from the CallViewModel changes to reconnecting and we present a view that reflects this state.

If you want to customize the default reconnection view, you should implement the method makeReconnectionView in the ViewFactory:

func makeReconnectionView(viewModel: CallViewModel) -> some View {
    ReconnectionView(viewModel: viewModel, viewFactory: self)
}
Add Chat to my app: getstream.io/SKILL.md

The fastest way to build with Stream. Start a new project or improve an existing one. Full CLI and documentation integration out of the box.


Ask your agent:

/stream Build me a Social App with Feeds and Moderation.
/stream Any livestream calls running?
/stream Video iOS v1: <Your Question>