Watson Assistant-Service oder Serviceorchestrierungsengine dynamisch konfigurieren

Mit der IBM® Voice Gateway-API können Sie den IBM Watson™ Assistant-Service oder die Serviceorchestrierungsengine während eines Anrufs dynamisch konfigurieren. Definieren Sie zum Ändern der Konfiguration die Aktion vgwActSetConversationConfig über den "output" einer Knotenantwort in Ihrer Watson Assistant-Dialogbaumstruktur. Weitere Informationen zur Verwendung der API finden Sie unter Aktionstags und Statusvariablen definieren.

Die Attribute, die Sie für die Aktion vgwActSetConversationConfig definieren, haben jeweils eine entsprechende SIP Orchestrator-Konfigurationsumgebungsvariable. Wenn ein Attribut nicht in Watson Assistant definiert ist, wird der Wert aus der zugehörigen Umgebungsvariablen verwendet.

Wichtig: Die Aktionen vgwActSetConversationConfig und vgwActSetWVAConfig können nicht beide in einer Aktionsfolge definiert werden. Es kann immer nur ein einzelner Watson Assistant-Arbeitsbereichs-Chatbot zu einer Zeit konfiguriert werden.

In den folgenden Abschnitten finden Sie Beispiele für die Definition der Aktion vgwActSetConversationConfig:

Watson Assistant-Service

Das folgende Beispiel veranschaulicht, wie ein Watson Assistant-Arbeitsbereich definiert wird.

{
  "output": {
    "vgwAction": {
      "command": "vgwActSetConversationConfig",
      "parameters": {
        "url":"https://gateway.watsonplatform.net/conversation/api",
        "workspaceID":"a23de67h-4e92-4565-c1b5-ebd59a2ffcad",
        "username":"9h7f54cb-5epb-80d6-45c3-da41d2bf7a71",
        "password":"asxNzDLpIJ6F"
      }
    }
  }
}
Tabelle 1. Attribute für Watson Assistant
Attribut Beschreibung Zugehörige Umgebungsvariable
url Der Berechtigungsnachweis url für die Watson Assistant-API. WATSON_CONVERSATION_URL
workspaceID Die Arbeitsbereichs-ID für die Watson Assistant-API. WATSON_CONVERSATION_WORKSPACE_ID
username Der Berechtigungsnachweis username für Watson Assistant. WATSON_CONVERSATION_USERNAME
password Der Berechtigungsnachweis password für Watson Assistant. WATSON_CONVERSATION_PASSWORD

Watson Assistant-Services dynamisch konfigurieren

Sie können mehrere Provider in der Bereitstellungskonfiguration oder mit dem Befehl vgwActSetConversationConfig definieren. Wenn ein Fehler beim ersten Turnus zu einem Watson Assistant-Arbeitsbereich auftritt, versucht Voice Gateway, eine Verbindung zum nächsten definierten Provider in der Liste herzustellen. Dies tritt nicht bei nachfolgenden Turnussen zu demselben Arbeitsbereich auf, da der Kontext ungültig wäre. Im Abschnitt Mehrere Watson Assistant-Service-Provider konfigurieren finden Sie Informationen zu Attributen der providers-Eigenschaften.

Das folgende Beispiel zeigt zwei über den Befehl vgwActSetConversationConfig konfigurierte Provider. Wenn der erste Provider nyc beim ersten Turnus fehlschlägt, wechselt Voice Gateway zum zweiten Provider dallas. Beim Provider dallas ist die Tokenauthentifizierung aktiviert, während beim Provider nyc die Basisauthentifizierung aktiviert ist.

{
  "vgwActSetConversationConfig": {
    "command": "vgwActSetConversationConfig",
      "parameters": {
        "providers": [
        {
          "name": "nyc",
          "url": "https://gateway.watsonplatform.net/assistant/api",
          "password": "nTnAEtntq2Tg",
          "username": "15a22419-cf6a-4004-a199-49d6a277d111",
          "workspaceID": "e6f9e3e2-c27a-49e7-a8ac-d9a8ace43981"
        },
        {
          "name": "dallas",
          "url": "https://gateway.watsonplatform.net/assistant/api",
          "password": "Qa55C0s473",
          "username": "8yw76lm-n5op-43q2-1098-r7s6tu543457",
          "tokenAuthEnabled": true,
          "tokenServiceProviderUrl": "https://gateway.watsonplatform.net/authorization/api/v1/token",
          "tokenServiceUrl": "https://gateway.watsonplatform.net/assistant/api"
        }
      ]
    }
  }
}

Serviceorchestrierungsengine

Da bei der Konfiguration einer Serviceorchestrierungsengine dieselben Umgebungsvariablen wie bei der Konfiguration von Watson Assistant verwendet werden, ändern Sie diese Konfiguration auch in der Aktion vgwActSetConversationConfig.

Wichtig: Wenn Sie zwischen einem direkt konfigurierten Watson Assistant-Service und einer Serviceorchestrierungsengine hin- und herwechseln, setzen Sie den Wert des Attributs workspaceID auf einen leeren Wert, damit die Konfiguration nicht den Wert aus der Konfiguration verwendet.

{
  "output": {
    "vgwAction": {
      "command": "vgwActSetConversationConfig",
      "parameters": {
        "url":"https://soe-example.net",
        "username":"adminuser",
        "password":"XgUCZZItgZD0"
      }
    }
  }
}
Tabelle 2. Attribute zum Herstellen einer Verbindung zu einer Serviceorchestrierungsengine
Attribut Beschreibung Zugehörige Umgebungsvariable
url Die genaue URL zur Serviceorchestrierungsengine. WATSON_CONVERSATION_URL
workspaceID Wenn Sie von einem Watson Assistant-Service wechseln, setzen Sie den Wert auf "", um die Arbeitsbereichskonfiguration zu löschen. WATSON_CONVERSATION_WORKSPACE_ID
username Der Benutzername in Klartext für die Serviceorchestrierungsengine (SOE). Nur erforderlich, wenn die Authentifizierung in der SOE aktiviert ist. WATSON_CONVERSATION_USERNAME
password Das Kennwort in Klartext für die Serviceorchestrierungsengine (SOE). Nur erforderlich, wenn die Authentifizierung in der SOE aktiviert ist. WATSON_CONVERSATION_PASSWORD

Veraltet: Watson Assistant-Service mit Statusvariablen konfigurieren

Ab Version 1.0.0.2 wird die Konfiguration von Watson-Services mithilfe von definierten Statusvariablen nicht mehr unterstützt. Stattdessen werden die in den vorherigen Abschnitten beschriebenen Aktionstags verwendet.

Wichtig: Obwohl die Statusvariablen weiterhin funktionieren, können Sie diese veralteten Statusvariablen und die Aktionstags nicht innerhalb eines Knotens definieren. Ihr Watson Assistant-Dialog kann Aktionstags sowie veraltete Statusvariablen enthalten, wohingegen die JSON-Definition für jeden Knoten entweder nur Aktionstags oder nur Statusvariablen enthalten kann.

{
    "context": {
        "vgwConversationConfigSettings": {
            "url":"https://gateway.watsonplatform.net/conversation/api",
            "workspaceID":"a23de67h-4e92-4565-c1b5-ebd59a2ffcad",
            "username":"9h7f54cb-5epb-80d6-45c3-da41d2bf7a71",
            "password":"asxNzDLpIJ6F"
        }
    }
}
Tabelle 3. JSON-Eigenschaften für Watson Assistant
JSON-Eigenschaft Beschreibung Zugehörige Umgebungsvariable
url Der Berechtigungsnachweis url für die Watson Assistant-API. WATSON_CONVERSATION_URL
workspaceID Die Arbeitsbereichs-ID für die Watson Assistant-API. WATSON_CONVERSATION_WORKSPACE_ID
username Der Berechtigungsnachweis username für Watson Assistant. WATSON_CONVERSATION_USERNAME
password Der Berechtigungsnachweis password für Watson Assistant. WATSON_CONVERSATION_PASSWORD