Erstellen Sie Ihre Applikation, Benutzer und Token

Um das Client SDK nutzen zu können, müssen Sie drei Dinge einrichten, bevor Sie loslegen können:

  • Vonage Anwendung - eine Application, die die Konfiguration für die App enthält, die Sie bauen.
  • Benutzer - Benutzer, die mit der Vonage Application verbunden sind. Es wird erwartet, dass die Benutzer eine Eins-zu-Eins-Zuordnung zu Ihrem eigenen Authentifizierungssystem haben werden.
  • JSON-Web-Token, JWTs - Client SDK verwendet JWTs zur Authentifizierung. Damit sich ein Benutzer anmelden und die SDK-Funktionen nutzen kann, müssen Sie für jeden Benutzer ein JWT bereitstellen. JWTs enthalten alle Informationen, die die Vonage Plattform benötigt, um Anfragen zu authentifizieren, sowie Informationen wie die zugehörigen Applications, Benutzer und Berechtigungen.

All diese können sein erstellt von Ihrem Backend. Wenn Sie sofort loslegen und Erfahrungen SDK sofort nutzen möchten, können Sie auch eine Backend-Anwendung zur Verwendung mit dem Client SDK mit dem Client SDK Beispiel Server-Vorlage. Andernfalls zeigt Ihnen dieses Tutorial, wie Sie dies mit Hilfe des Vonage CLI.

Voraussetzungen

Vergewissern Sie sich, dass Sie die folgenden Informationen haben:

Erstellen einer Vonage-Applikation

Sie müssen nun eine Vonage-Anwendung erstellen. In diesem Beispiel erstellen Sie eine Anwendung, die den Anwendungsfall In-App Voice verarbeiten kann.

  1. Erstellen Sie zunächst Ihr Projektverzeichnis, falls Sie dies noch nicht getan haben.
  2. Wechseln Sie in das Projektverzeichnis, das Sie jetzt erstellt haben.
  3. Verwenden Sie die folgenden Befehle zum Erstellen und Konfigurieren einer Vonage-Applikation mit Sprach- und WebRTC-Funktionen. Ersetzen Sie Sie die Webhook-URLs durch Ihre eigenen. Wenn Ihre Plattform den eingehenden Datenverkehr, den sie empfangen kann, durch IP Adressbereiche einschränkt, müssen Sie die Vonage IP-Adressen zu Ihrer Zulassungsliste hinzufügen. Die IP-Adressen können programmatisch abgerufen werden, indem Sie eine GET-Anfrage an https://api.nexmo.com/ips-v4.
vonage apps create 'Your application'

✅ Creating Application
Saving private key ... Done!
Application created

Name: Your application
Application ID: 00000000-0000-0000-0000-000000000000
Improve AI: Off
Private/Public Key: Set

Capabilities:
  None Enabled

Sprachfähigkeiten hinzufügen:

vonage apps capabilities update 00000000-0000-0000-0000-000000000000 voice `
  --voice-answer-url='https://example.com/webhooks/voice/answer' `
  --voice-event-url='https://example.com/webhooks/voice/event' `
  --voice-fallback-url='https://example.com/webhooks/voice/fallback'
  
✅ Fetching Application
✅ Adding voice capability to application 00000000-0000-0000-0000-000000000000

Name: Your application
Application ID: 00000000-0000-0000-0000-000000000000
Improve AI: Off
Private/Public Key: Set

Capabilities:
 VOICE:
    Uses Signed callbacks: On
    Conversation TTL: 41 hours
    Leg Persistence Time: 6 days
    Event URL: [POST] https://example.com/webhooks/voice/event
    Answer URL: [POST] https://example.com/webhooks/voice/answer
    Fallback URL: [POST] https://example.com/webhooks/voice/fallback

RTC-Funktionen hinzufügen

vonage apps capabilities update 00000000-0000-0000-0000-000000000000 messages `
  --messages-inbound-url='https://example.com/messages/inboud' `
  --messages-status-url='https://example.com/messages/status' `
  --messages-version='v1' `
  --no-messages-authenticate-media
  
✅ Fetching Application
✅ Adding messages capability to application 00000000-0000-0000-0000-000000000000

Name: Your application
Application ID: 00000000-0000-0000-0000-000000000000
Improve AI: Off
Private/Public Key: Set

Capabilities:
  MESSAGES:
    Authenticate Inbound Media: Off
    Webhook Version: v1
    Status URL: [POST] https://example.com/messages/status
    Inbound URL: [POST] https://example.com/messages/inboud

Anschließend wird die Anwendung erstellt. Eine private Schlüsseldatei private.key wird ebenfalls erstellt.

Das Erstellen einer Anwendung und die Anwendungsmöglichkeiten werden im Detail in der Applikationsleitfaden.

Einen Benutzer erstellen

Erstellen Sie einen Benutzer, der sich beim Vonage Client SDK anmeldet und an den SDK-Funktionen teilnimmt: Konversationen, Anrufe und so weiter.

Führen Sie den folgenden Befehl in Ihrem Terminal aus, um einen Benutzer namens Alice zu erstellen:

vonage users create `
  --name='Alice'
  
✅ Creating User

User ID: USR-00000000-0000-0000-0000-000000000000
Name: Alice
Display Name: Not Set
Image URL: Not Set
Time to Live: Not Set

Channels:
  None Set

Die Benutzer-ID wird für die Durchführung von Aufgaben durch das SDK verwendet, z. B. für die Anmeldung, das Starten eines Anrufs und mehr.

Erzeugen eines Benutzer-JWTs

JWTs werden verwendet, um einen Benutzer beim Client SDK zu authentifizieren.

Um ein JWT für Alice zu generieren, führen Sie den folgenden Befehl aus (ersetzen Sie ihn durch Ihre Informationen):

# A command with parameters
vonage jwt create `
--app-id='00000000-0000-0000-0000-000000000000' `
--private-key=./private.key `
--sub='Alice' `
--acl='{\"paths\":{\"\/*\/users\/**\":{},\"\/*\/conversations\/**\":{},\"\/*\/sessions\/**\":{},\"\/*\/devices\/**\":{},\"\/*\/push\/**\":{},\"\/*\/knocking\/**\":{},\"\/*\/legs\/**\":{}}}'

# Will produce a token
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJhY2wiOnsicGF0aHMiOnsiLyovcnRjLyoqIjp7fSwiLyovdXNlcnMvKioiOnt9LCIvKi9jb252ZXJzYXRpb25zLyoqIjp7fSwiLyovc2Vzc2lvbnMvKioiOnt9LCIvKi9kZXZpY2VzLyoqIjp7fSwiLyovcHVzaC8qKiI6e30sIi8qL2tub2NraW5nLyoqIjp7fSwiLyovbGVncy8qKiI6e319fSwiZXhwIjoxNzQxMTgyMzA3LCJzdWIiOiJBbGljZSIsImp0aSI6Ijg1MTViNzk2LTA1YjktNGFkMS04MTRkLTE1NWZjZTQzZWM1YiIsImlhdCI6MTc0MTE4MTQwNywiYXBwbGljYXRpb25faWQiOiIwMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDAifQ.BscMdDXZ1-nuLtKyPJvw9tE8E8ZjJvTPJPMT9y0TjPz4Q7qqNaqxcjglc5QPtYEjh2YpZH6btSKbUF4XTClI026Hl5_QOBlnayYo7jXwhba16fa5PeyzSf30QFGFrHbANwrQJFVCjd329SZUpwK4GxgB1gf230NhbfmkhegKezqicru2WTGCKm8kQncYliFwIEYUlcRAb2c8xcaVrn_6QNNahyeJRwGFfWpIkX0Oe-S4RDlPjoq47_gYWac9MmaetB4Dd3Yp531AuniGV5JiIShkaEwuY4Zyov4Hcmajm4Lm_UFY119la7vzHis0P7cT9pPUDe5cyPj7eT8-VhitfQ

Mit dem obigen Befehl wird der Ablauf des JWT standardmäßig auf 24 Stunden festgelegt. Sie können den Ablauf auf eine kürzere Zeitspanne ändern Zeit ändern, indem Sie die --exp Flagge.

ANMERKUNG: In produktiven Anwendungen wird erwartet, dass Ihr Backend einen Endpunkt bereitstellt, der JWT für Ihre Client-Anfrage generiert.

Weitere Informationen