what is each type of network-connection event. How to make these events understandable to end user?

I would like to show some logs to each and every event and let the users understand what is happening in the call of 2 people. I see that for network-connection event, the event types are signalling, peer-to-peer and sfu . I see that when user joined the room, then type signalling gets triggered and status is connected and when the remote participant joins, then event type peer-to-peer gets triggered and status is connected . and if the remote participants has lost his network, then event type peer-to-peer gets triggered and status is interrupted . and if the user lost his network then event type signalling gets triggered and status is interrupted .

Throught these events can I conclude that type signalling represents network status of local user and type peer-to-peer represents network status of remote user?


and also can I show log "you lost your network" when type signalling: interrupted gets triggered and show log "remote user lost his network" when type peer-to-peer: interrupted gets triggered?

is there any better way to add some logs which are easily understandle to end users?

Answers

  • I see that 'error' event triggeres when a user lost his network. I would like to catch this error event and show the end user an understandable message. I would like to know at what errors this event gets triggered. Is there any a way to reproduce this error event other than user losing his network.

    https://docs.daily.co/reference/daily-js/events/meeting-events#error

  • Tasha
    Tasha Community Manager, Dailynista admin

    Hi @svm_agilis I merged these questions together so you'll be able to get help in one spot.

    We discussed this today. @Dom from our Solutions Engineering team will be following up with you here tomorrow with more info!

  • Dom
    Dom Dailynista
    edited February 2023

    Hi @svm_agilis

    When you connect to a call and eventually another person joins, you're going to be in two states. One is the signaling state which occurs when you have correctly setup a call. This is because all of the call setup and call management information flows through a separate signalling connection.

    Then to actually send video and audio, we send that information via one of two modes. Either peer-to-peer or sfu mode.

    So in this case, a user will have two states.

    1. signaling, and that can be either connected or interrupted. This will fire first.
    2. peer-to-peer / sfu and that can also be connected or interrupted. This will fire when either 2 or more people join the call.

    So signaling does not represent connection status. It represents a type of connection. As does peer-to-peer and SFU mode. Both are required to have a functioning call.

    Also these are all local events. You are not seeing events for the remote user.

    The reason it might appear as if its a remote event is, when you first connect you create a signalling connection. Then when a 2nd person connects, you create a peer-to-peer connection. That's why you're seeing that event fire when the person connects. It represents the 'calls' state, rather than a users state.

    Currently (This may change), by default, when you have 5 or more people on a call we switch from peer-to-peer mode to sfu mode. So you'll eventually get a new event that says sfu: connected.

    Does that make sense?