Benutzerdefiniertes Ereignis hinzufügen
Mit benutzerdefinierten Ereignissen können Sie Metadaten zu Ihrer Konversation hinzufügen. Bei der Verwendung von benutzerdefinierten Ereignissen gibt es einige Einschränkungen:
- Der Ereignistyp muss beginnen mit
custom: - Der Ereignistyp darf nicht länger als 100 Zeichen sein.
- Der Ereignistyp darf NUR alphanumerische Zeichen enthalten,
-und_Zeichen - Der Ereignistext darf 4096 Bytes nicht überschreiten.
Beispiel
Stellen Sie sicher, dass die folgenden Variablen mit einer beliebigen Methode auf die gewünschten Werte gesetzt werden:
| Schlüssel | Beschreibung |
|---|---|
CONVERSATION_ID | The ID of the Conversation. |
MEMBER_ID | The unique ID of the Member. |
Voraussetzungen
You will need to use an existing Application that contains a Conversation in order to be able to add a custom event. See the Create Conversation code snippet for information on how to create an Application and some sample Conversations.
Schreiben Sie den Code
Fügen Sie Folgendes zu create-custom-event.sh hinzu:
# `from` is only required if you're using a JWT with a `sub` claim
curl -X "POST" "https://api.nexmo.com/v1/conversations/$CONV_ID/events" \
-H 'Authorization: Bearer '$JWT\
-H 'Content-Type: application/json' \
-d $'{
"type": "custom:YOUR_EVENT_NAME",
"from": "'$CONV_EVENT_FROM'",
"body": {
"your": "data"
}
}'Führen Sie Ihren Code aus
Speichern Sie diese Datei auf Ihrem Rechner und führen Sie sie aus:
Voraussetzungen
You will need to use an existing Application that contains a Conversation in order to be able to add a custom event. See the Create Conversation code snippet for information on how to create an Application and some sample Conversations.
npm install @vonage/server-sdkErstellen Sie eine Datei mit dem Namen create-custom-event.js und fügen Sie den folgenden Code hinzu:
const { Vonage } = require('@vonage/server-sdk');
const vonage = new Vonage({
applicationId: VONAGE_APPLICATION_ID,
privateKey: VONAGE_PRIVATE_KEY,
});Schreiben Sie den Code
Fügen Sie Folgendes zu create-custom-event.js hinzu:
vonage.conversations.createEvent(
CONV_ID,
{
'type': 'custom:YOUR_EVENT_NAME',
'from': CONV_EVENT_FROM,
'body': {
'your': 'data',
},
},
)
.then((event) => console.log(event))
.catch((error) => console.error(error));Führen Sie Ihren Code aus
Speichern Sie diese Datei auf Ihrem Rechner und führen Sie sie aus:
Voraussetzungen
You will need to use an existing Application that contains a Conversation in order to be able to add a custom event. See the Create Conversation code snippet for information on how to create an Application and some sample Conversations.
Fügen Sie Folgendes zu build.gradle hinzu:
implementation 'com.vonage:server-sdk:9.3.1'Erstellen Sie eine Datei mit dem Namen CreateCustomEvent und fügen Sie den folgenden Code in die Methode main ein:
VonageClient client = VonageClient.builder()
.applicationId(VONAGE_APPLICATION_ID)
.privateKeyPath(VONAGE_PRIVATE_KEY_PATH)
.build();Schreiben Sie den Code
Fügen Sie der Methode main in der Datei CreateCustomEvent Folgendes hinzu:
var event = client.getConversationsClient().createEvent(
CONV_ID, CustomEvent.builder("my_custom_event_name")
.from(CONV_MEMBER_ID)
.body(Map.of("your", "data"))
.build()
);
System.out.println(event);Führen Sie Ihren Code aus
Wir können das Applikation Plugin für Gradle verwenden, um die Ausführung unserer Anwendung zu vereinfachen. Aktualisieren Sie Ihre build.gradle mit dem Folgenden:
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Führen Sie den folgenden Befehl gradle aus, um Ihre Anwendung auszuführen, und ersetzen Sie dabei com.vonage.quickstart.conversation durch das Paket, das CreateCustomEvent enthält:
Voraussetzungen
You will need to use an existing Application that contains a Conversation in order to be able to add a custom event. See the Create Conversation code snippet for information on how to create an Application and some sample Conversations.
Install-Package VonageErstellen Sie eine Datei mit dem Namen CreateCustomEvent.cs und fügen Sie den folgenden Code hinzu:
using System;
using System.Threading.Tasks;
using Newtonsoft.Json;
using Vonage;
using Vonage.Conversations.CreateEvent;
using Vonage.Request;Fügen Sie Folgendes zu CreateCustomEvent.cs hinzu:
var credentials = Credentials.FromAppIdAndPrivateKeyPath(VONAGE_APPLICATION_ID, VONAGE_PRIVATE_KEY_PATH);
var client = new VonageClient(credentials);Schreiben Sie den Code
Fügen Sie Folgendes zu CreateCustomEvent.cs hinzu:
var response = await client.ConversationsClient.CreateEventAsync(CreateEventRequest.Build()
.WithConversationId(CONV_ID)
.WithType($"custom:{YOUR_EVENT_NAME}")
.WithBody(new
{
your = "data",
})
.WithFrom(CONV_EVENT_FROM)
.Create());Voraussetzungen
You will need to use an existing Application that contains a Conversation in order to be able to add a custom event. See the Create Conversation code snippet for information on how to create an Application and some sample Conversations.
composer require vonage/clientErstellen Sie eine Datei mit dem Namen create-custom-event.php und fügen Sie den folgenden Code hinzu:
use Vonage\Conversation\ConversationObjects\CreateConversationRequest;
use Vonage\Conversation\ConversationObjects\UpdateConversationRequest;
require_once __DIR__ . '../../config.php';
require_once __DIR__ . '../../vendor/autoload.php';
$keypair = new \Vonage\Client\Credentials\Keypair(
file_get_contents(VONAGE_APPLICATION_PRIVATE_KEY_PATH),
VONAGE_APPLICATION_ID
);
$client = new \Vonage\Client($keypair);Schreiben Sie den Code
Fügen Sie Folgendes zu create-custom-event.php hinzu:
$eventRequest = new \Vonage\Conversation\ConversationObjects\EventRequest(
CONVERSATION_ID,
'custom:' . YOUR_EVENT_NAME,
MEMBER_ID,
[
'your' => 'data'
]
);
$client->conversation()->createEvent($eventRequest);Führen Sie Ihren Code aus
Speichern Sie diese Datei auf Ihrem Rechner und führen Sie sie aus:
Probieren Sie es aus
Wenn Sie den Code ausführen, sehen Sie ein benutzerdefiniertes Ereignis in Ihrer Ereignisliste