Signalisation

Vue d'ensemble

L'API Video et les SDK de Vonage vous permettent d'envoyer et de recevoir des signaux. Les signaux sont des textes ou des données arbitraires qui sont envoyés dans une session et qui peuvent être envoyés à un client spécifique ou à tous les clients connectés. Les signaux peuvent être utilisés pour mettre en œuvre un chat textuel ou pour déclencher des événements dans un appel, comme lever la main.

Vous pouvez envoyer des signaux à partir de l'API ou des SDK clients. Ce guide se concentre sur l'envoi et la réception de signaux avec le SDK SDK du client vidéo de Vonage.

Ce mode d'emploi aborde les points suivants :

  • Envoi d'un signal.
  • Envoi d'un signal à un client spécifique.
  • Réception de signaux.
  • Empêcher l'envoi de signaux lors d'une reconnexion automatique.

Avant de commencer

Avant de pouvoir envoyer et recevoir des signaux, vous devez d'abord avoir un client connecté à une session. Pour en savoir plus sur les sessions et leur rôle dans une application Vonage Video, lisez la section Documentation sur les sessions.

Envoi d'un signal

Pour envoyer un signal, appelez la méthode Signal de l'objet Session avec une chaîne de données. Ce signal sera envoyé à tous les clients connectés à la session. Les données sont limitées à 8 Ko par signal.

session.signal({ data: "hello" },
  function(error) {
    if (error) {
        console.log("signal error (" 
          + error.name + "): " 
          + error.message
        );
    } else {
        console.log("signal sent.");
    }
  }
);

Veuillez vérifier le pour votre Client SDK pour tous les paramètres disponibles.

Envoi d'un signal à un client spécifique

Pour envoyer un signal à un client spécifique, passez-lui un to à la méthode du signal. La valeur du paramètre to doit être un Connexion qui correspond au client auquel vous voulez envoyer le signal.

session.signal({ to: connection1, data: "hello" },
  function(error) {
    if (error) {
        console.log("signal error (" 
          + error.name + "): " 
          + error.message
        );
    } else {
        console.log("signal sent.");
    }
  }
);

Réception des signaux

Pour commencer à recevoir des signaux envoyés dans une session, ajoutez une fonction d'écoute/de délégation d'événements pour les signaux. Lors de l'envoi d'un signal, vous pouvez également spécifier un type qui est une chaîne de caractères, ce type d'événement est renvoyé lorsque vous recevez un signal. En JavaScript et React Native uniquement, vous pouvez écouter les événements d'un type spécifique en enregistrant un écouteur d'événements pour la propriété signal:type événement. Par exemple, signal:foo écoute les signaux de type "foo".

session.on("signal", function(event) {
    console.log("Signal sent from connection " + event.from.id);
    // Process the event.data property, if there is any data.
});

Notez que vous pouvez envoyer des signaux à partir de votre serveur, plutôt qu'à partir d'un client connecté à la session. Dans ce cas, la propriété from est définie sur null.

Empêcher l'envoi de signaux pendant la reconnexion automatique

Les clients tenteront de se reconnecter automatiquement à une session qu'ils déconnectent inopinément (par exemple, en raison d'une perte de connectivité réseau). Par défaut, tous les signaux que vous envoyez lorsque le client est temporairement déconnecté d'une session sont mis en file d'attente et envoyés lorsque (et si) il se reconnecte avec succès.

Pour mettre fin à ce comportement, lors de l'envoi d'un signal, définissez le paramètre retryAfterReconnect au paramètre false. Pour plus d'informations, voir la rubrique Guide du développeur pour la reconnexion automatique.

Voir aussi