Senden und Empfangen von benutzerdefinierten Ereignissen

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.

Dieser Leitfaden beschreibt, wie Sie mit dem Vonage Client SDK benutzerdefinierte Ereignisse senden und empfangen können. Bevor Sie beginnen, vergewissern Sie sich, dass Sie das SDK zu Ihrer Anwendung hinzugefügt und eine Sitzung (Android, iOS, JS), und an einer Konversation teilnehmen.

Benutzerdefinierte Ereignisse sind Ereignisse, die benutzerdefinierte Daten enthalten und im Gegensatz zu anderen Ereignissen in einer Konversation gespeichert werden. ephemere Ereignisse. Wenn Sie also eine Ereignisse des Gesprächs werden sie zurückgegeben. Sie können auch nach Ihrem benutzerdefinierten Ereignistyp filtern, wenn Sie die Ereignisse eines Gesprächs abrufen.

Benutzerdefinierte Ereignisse werden an alle App Mitglieder in einer Konversation. Sie sind am besten geeignet, um benutzerdefinierte Aktionen für die Konversation zu implementieren, wie z. B. eine Umfrage.

Senden von benutzerdefinierten Ereignissen

Mit einer Gesprächs-ID können Sie ein benutzerdefiniertes Ereignis senden. Sie müssen Ihrem Ereignis einen Typ geben. Der Typ muss:

  • beginnen mit custom:
  • insgesamt 100 Zeichen oder weniger betragen
  • nur alphanumerische Zeichen enthalten, :, -und _ Zeichen Eine Umfrage könnte zum Beispiel folgende Typen verwenden custom:poll:question und custom:poll:response.

Die benutzerdefinierten Daten dürfen 4096 Bytes nicht überschreiten. Es wird empfohlen, dass Sie JSON für Ihre benutzerdefinierten Daten verwenden, aber Sie können hier alles senden.

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);
    });

Empfang von benutzerdefinierten Ereignissen

Sie können alle Konversationsereignisse in Ihrer Anwendung empfangen, indem Sie eine Ereignis-Listener/Delegate-Funktion einrichten. Hier können Sie die Art des eingehenden Ereignisses überprüfen. Eine weitere Filterung der eingehenden benutzerdefinierten Ereignisse kann auf der Registerkarte eventType.

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