Sign inGet Started

Eine Automation aus einer Sprachsequenz starten

Warnung: Sprachsequenzen befinden sich in der Vorschau. Schritte, Eingangsdaten und das Format der Sequenzdefinition können sich so ändern, dass bestehende Sequenzen und API-Anfragen nicht mehr funktionieren.

Mit Send Automation Event starten Sie eine Automation, während der Anruf weiterläuft. Wenn ein Anrufer zum Beispiel die 1 drückt, um einen Rückruf anzufordern, senden Sie seine Nummer an eine Automation, die den Rückruf plant. Der Anruf wartet nicht auf den Durchlauf der Automation.

Der Schritt befindet sich in der Vorschau. Automations ist im Early Access, und die Berechtigungen in Ihrem Workspace bestimmen, was Sie konfigurieren können.

Die Automation vorbereiten

  1. Erstellen Sie eine Automation mit Event from your application als Auslöser.
  2. Legen Sie Event name fest, zum Beispiel callback_requested.
  3. Definieren Sie Event fields für die Werte, die der Anruf senden soll, etwa Textfelder mit den Namen caller und digits.
  4. Veröffentlichen Sie die Automation.

In der Automation ist trigger.data die Ereignishülle und trigger.data.data sind die von Ihnen zugeordneten Daten. Die Nummer des Anrufers steht also unter trigger.data.data.caller. Ihre Anwendung mit einer Automation verbinden erklärt die Hülle, Ereignisnamen, Ereignisfelder und Durchläufe.

Den Schritt hinzufügen

  1. Fügen Sie Send Automation Event auf dem Pfad hinzu, der die Automation starten soll, etwa bei der Tastenauswahl für einen Rückruf.
  2. Wählen Sie unter Automation event die Automation und anschließend ihr Ereignis aus. Die Liste zeigt die Ereignisse, mit denen die veröffentlichte Version der Automation gestartet werden kann.
  3. Füllen Sie unter Data die Felder des Ereignisses aus. Jedes Feld kann ein fester Wert, ein Wert aus früheren Anrufdaten oder bei Textfeldern ein Text sein, der beides kombiniert. Wenn das Ereignis keine Ereignisfelder hat, fügen Sie eigene Namen und Werte hinzu.
  4. Verbinden Sie die Ergebnisse Success und Failure.

Die Daten, die Sie zuordnen, bilden die gesamten Daten des Ereignisses. Bird fügt keine Felder hinzu. Ordnen Sie daher jeden Wert zu, den die Automation liest. Die Nummer des Anrufers steht unter execution.call.orig.address und kann fehlen, daher sollten Sie sie absichern. Die Anruf-ID steht unter execution.call.id, die Tastenziffern unter steps.<gather step>.output.digits. Die Sequenz-ID ist nicht als Anrufdaten verfügbar. Geben Sie sie als festen Wert ein, wenn die Automation sie benötigt.

Um eine Automation auszuwählen, benötigen Sie die Berechtigung, Automations zu lesen. Ohne diese Berechtigung geben Sie die Automation-ID, den Ereignisnamen und die Daten selbst ein.

Ergebnisse verarbeiten

ErgebnisBedeutung und nächster Schritt
SuccessDas Ereignis wurde für die Automation in die Warteschlange gestellt. Setzen Sie den Anruf fort.
FailureDas Ereignis konnte nicht innerhalb weniger Sekunden in die Warteschlange gestellt werden. Setzen Sie den Anruf fort, oder bitten Sie den Anrufer, es auf anderem Weg zu versuchen.

Ein nicht verbundener Fehlerausgang beendet den Durchlauf als fehlgeschlagen. Verbinden Sie ihn, auch mit demselben Schritt wie den Erfolgsausgang, wenn der Anruf in jedem Fall weiterlaufen soll.

Keines der beiden Ergebnisse meldet, was die Automation getan hat. Auch eine pausierte, unveröffentlichte oder gelöschte Automation, ein Ereignisname, den sie nicht verwendet, oder Daten, die nicht zu ihren Ereignisfeldern passen, führen zum Erfolgsausgang. Prüfen Sie den Tab Runs der Automation, um zu sehen, ob ein Durchlauf gestartet wurde.

Vor dem Veröffentlichen prüfen

Beim Veröffentlichen der Sequenz erscheint eine Warnung, die das Veröffentlichen nicht blockiert, wenn die gewählte Automation fehlt, pausiert oder nicht veröffentlicht ist oder wenn ihre veröffentlichte Version mit dem gewählten Ereignis keinen Durchlauf starten kann. Eine pausierte Automation oder ein Ereignis, das nur von einer Warte- oder Abbruchregel verwendet wird, löst die Warnung ebenfalls aus, obwohl das Ereignis bestehende Durchläufe fortsetzen oder abbrechen kann. Wenn Sie keine Leseberechtigung für Automations haben, meldet die Warnung, dass der Schritt nicht geprüft wurde.

Zustellung

  • Der Schritt wird erst ausgeführt, nachdem der Anruf angenommen wurde. Ein nicht angenommener oder abgebrochener Anruf sendet nichts.
  • Das Ereignis erreicht die Automation in der Regel innerhalb etwa einer Sekunde nach dem Schritt.
  • Jeder Besuch des Schritts sendet ein Ereignis, und wiederholte Zustellungen dieses Ereignisses werden verworfen. Der Schutz vor Duplikaten ist begrenzt. Gestalten Sie die Automation deshalb so, dass sie eine seltene Wiederholung verkraftet.
  • Ein Transfer, der zum Schritt zurückkehrt, sendet ein neues Ereignis.
  • Jedes Ereignis geht an die veröffentlichte Version der Automation, auch bei Testanrufen. Ein Testanruf ist ein echter Anruf, und die Automation kann echte Aktionen ausführen.
  • Die Vorschau sendet kein Ereignis. Wählen Sie für den Schritt ein Beispiel für Erfolg oder Fehler.

Definition verwenden

In einer Sequenzdefinition ist der Schritt ein automation.send_event-Knoten:

Codebeispiel
{
  "id": "notify",
  "type": "automation.send_event",
  "type_version": 1,
  "config": {},
  "input": {
    "automation_id": "atm_01jz8x3v4w5y6z7a8b9c0d1e2f",
    "event": "callback_requested",
    "data": {
      "caller": {
        "$expr": "execution.call.orig != null && has(execution.call.orig.address) ? execution.call.orig.address : ''"
      },
      "digits": { "$expr": "steps.menu.output.digits" }
    }
  },
  "connections": {
    "success": { "node_id": "confirm", "port": "input" },
    "failure": { "node_id": "confirm", "port": "input" }
  }
}
FeldWert
config{}.
input.automation_idErforderlich. ID einer Automation in diesem Workspace.
input.eventErforderlich. Der Ereignisname der Automation: 1 bis 128 Buchstaben, Ziffern, Punkte, Unterstriche oder Bindestriche.
input.dataOptional, Standardwert {}. Ein Objekt, dessen Werte auf oberster Ebene jeweils mit $expr oder $template gebunden werden, oder ein einzelnes $expr für das gesamte Objekt. Tiefer verschachtelte Werte bleiben unverändert. Zusammen mit der übrigen Eingabe höchstens 16 KiB.
Ergebnissesuccess und failure, jeweils mit der Ausgabe {}. Ein nicht verbundenes failure lässt den Durchlauf fehlschlagen.

Nächste Schritte

Weiter mit der Dokumentation, Anleitungen und Beispielen zu diesem Thema.