Tenants in einer Multi-Tenant-JSON-Konfiguration konfigurieren

Obwohl das Konzept ähnlich ist, unterscheidet sich die Konfiguration einer Voice Gateway-Umgebung mit JSON-Konfigurationseigenschaften von einer Single-Tenant-Konfiguration im Hinblick auf die Implementierung, da die Tenantkonfiguration getrennt von der Serverkonfiguration erfolgt.

Wenn Sie Voice Gateway mit JSON-Konfigurationseigenschaften konfigurieren, können nur Anrufe zu den konfigurierten Tenants hergestellt werden. Das entspricht sozusagen einem Whitelisting konfigurierter Tenants. Damit Anrufe verbunden werden können, muss das Headerfeld für den SIP-Ziel-URI oder der Anforderungs-URI in der SIP-INVITE-Anforderung, durch das bzw. den der Anruf gestartet wird, die vollständige Telefonnummer oder einen anderen Wert enthalten, der in der JSON-Datei für tenantURI definiert ist. Wenn versucht wird, einen Tenant anzurufen, der nicht definiert ist, weist Voice Gateway den Anruf zurück.

Die Konfiguration von Multi-Tenant-Funktionalität mit JSON-Eigenschaften wird ab Version 1.0.0.2 unterstützt.

Tenants konfigurieren

  1. Erstellen Sie eine JSON-Datei, die die Konfiguration für einen oder mehrere Tenants enthält.

    Tipp: Wenn Sie ohne großen Aufwand beginnen möchten, kopieren Sie die Inhalte der Beispieldatei tenantConfig.json und fügen Sie sie in eine leere JSON-Datei ein. Bearbeiten Sie anschließend die Datei und fügen Sie die Konfiguration für jeden Tenant hinzu.

    Geben Sie innerhalb eines Haupttenantobjekts (tenants) eine Liste der Tenantobjekte an. Jeder Tenant kann die folgenden Schlüssel enthalten:

    • tenantURI: Eine eindeutige Tenant-ID, z. B. eine Telefonnummer. Sie muss mit dem SIP-Ziel-URI in der SIP-INVITE-Anforderung übereinstimmen, die den Anruf startet. Erforderlich.
    • description: Eine Beschreibung des Tenants, z. B. zur Art der Verwendung. Optional, aber empfohlen.
    • Weitere optionale Tenantkonfigurationseigenschaften, die Einstellungen für den bestimmten Tenant definieren.
    • conversation: Ein JSON-Objekt mit Konfigurationseigenschaften für Watson Assistant. Optional.
    • stt: Ein JSON-Objekt mit Konfigurationseigenschaften für den IBM Speech to Text-Service oder für Spracherkennungsservices anderer Anbieter, die über Speech to Text Adapter aktiviert werden. Optional.
    • tts: Ein JSON-Objekt mit Konfigurationseigenschaften für den IBM Text to Speech-Service. Optional.
    • reporting: Ein JSON-Objekt mit Konfigurationseigenschaften für die Veröffentlichung von Berichterstellungsereignissen. Optional.
    • SMSpipe: Ein JSON-Objekt mit Konfigurationseigenschaften für die Integration der SMS Gateway-Unterstützung für Voice Gateway. Optional.

    Sie können über die Objekte conversation, wva, stt, tts undreporting die zugehörigen Services oder Berichterstellungsereignisse weiter konfigurieren. Eine vollständige Liste der Eigenschaften und eine JSON-Beispielkonfigurationsdatei finden Sie unter Erweiterte JSON-Konfigurationseigenschaften.

    Im folgenden JSON-Beispiel wird ein Tenant mit der Nummer 234-555-6789 als Self-Service-Agent und ein weiterer Tenant mit der Nummer 234-555-7890 am Host myhost.com, für den keine Details angezeigt werden, konfiguriert.

    {
     "tenants": [
       {
         "tenantURI": "2345556789",
         "description": "Voice Gateway Demo US",
         "whitelistFromUri" : "8765554321",
         "putCallerOnHoldOnTransfer" : "false",
         "conversation": {
           "url": "https://gateway.watsonplatform.net/conversation/api",
           "workspaceID": "a23de67h-e527-40d5-a867-5c0ce9e72d0d",
           "password": "InWtiUpYhF1Z",
           "username": "9h7f54cb-d9ed-46b3-8492-e9a9bf555021"
         },
       },
       {
         "tenantURI":"2345557890@myhost.com"
         ...
       }
     ]
    }
    
  2. Fügen Sie der Voice Gateway-Konfiguration Ihre Tenantkonfiguration hinzu und stellen Sie Ihre Umgebung bereit. Weitere Informationen hierzu finden Sie unter Multi-Tenant-JSON-Konfiguration.

Eigenschaften für die Tenantkonfiguration

Weitere Informationen zu Tenantkonfigurationseigenschaften finden Sie unter Erweiterte JSON-Konfigurationseigenschaften.