Comment envoyer et recevoir des événements personnalisés

Product deprecation notice

Effective April 30th, 2026, Vonage In-App Messaging will no longer be available. Access for new users will be closed, and the service will be discontinued for all existing users.

If you have any questions regarding this product’s discontinuation, please contact your account manager or our support team.

Ce guide explique comment envoyer et recevoir des événements personnalisés avec le Client SDK de Vonage. Avant de commencer, assurez-vous d'avoir ajouté le SDK à votre application, créé une session (Android, iOS, JS), et a rejoint une conversation.

Les événements personnalisés sont des événements qui contiennent des données personnalisées et qui sont stockés dans une conversation à la différence des autres événements. Événements éphémères. Par conséquent, lorsque vous obtenez un Événements de la conversation ils seront renvoyés. Vous pouvez également filtrer par votre type d'événement personnalisé lorsque vous obtenez les événements d'une conversation.

Les événements personnalisés sont diffusés à tous les App dans une conversation. Ils conviennent mieux à la mise en œuvre d'actions personnalisées pour la conversation, telles qu'un sondage.

Envoi d'événements personnalisés

Vous pouvez envoyer un événement personnalisé à partir d'un identifiant de conversation. Vous devez donner un type à votre événement. Le type doit :

  • commencer par custom:
  • ne pas dépasser 100 caractères au total
  • ne contiennent que des caractères alphanumériques, :, -et _ caractères Par exemple, un sondage peut utiliser les types custom:poll:question et custom:poll:response.

Les données personnalisées ne doivent pas dépasser 4096 octets. Il est recommandé d'utiliser JSON pour vos données personnalisées, mais vous pouvez envoyer n'importe quoi ici.

const customData = {
    key1: "value 1",
    key2: "value 2"
};

client.sendCustomEvent(conversationId, "custom:my-event", customData)
    .then(timestamp => {
        console.log("Successfully sent custom event at ", timestamp);
    }).catch(error => {
        console.error("Error sending custom event: ", error);
    });

Réception d'événements personnalisés

Vous pouvez recevoir tous les événements de conversation dans votre application en mettant en place une fonction d'écoute/délégation d'événements. Ici, vous pouvez vérifier le type d'événement entrant. Un filtrage plus poussé de l'événement personnalisé entrant peut être effectué dans la fonction eventType.

client.on("conversationEvent", event => {
    switch (event.kind) {
        case "custom":
            handleCustomEvent(event); // event.eventType: custom event type
            break;
    };
});