Technisches Referenzhandbuch

Dieser Abschnitt enthält ausführliche technische Referenzinformationen über die Skripterstellung in Studio. Die Informationen beziehen sich im Allgemeinen auf die Skripterstellung mithilfe von Aktionen und in benutzerdefinierten Code-Snippets. In einigen Fällen gelten die Informationen nur für eine bestimmte Methode der Skript-Erstellung.

Auf dieser Seite werden die grundlegenden Konzepte zusammengefasst, die Sie bei der Skripterstellung mit Studio kennen sollten. Ausführlichere Informationen finden Sie auf den anderen Seiten in diesem Abschnitt.

Skript- und Snippet-Struktur

Studio-Skripte können aus einer einzelnen Datei bestehen. Sie können sich aber auch aus einem Hauptskript und einem oder mehreren Subskripten zusammensetzen, die sich in separaten Dateien befinden. Für jedes Skript gelten die folgenden Regeln:

  • Es muss mit einer Begin-Aktion beginnen. Subskripte müssen ebenfalls mit einer Begin-Aktion beginnen.
  • Sie müssen mit einer Beendigungsaktion enden, wie beispielsweise End. Subskripte enden mit der Return-Aktion, mit der der Ablauf wieder zum Hauptskript zurückkehrt.
  • Sie müssen über einen bestimmten Medientyp verfügen.

Innerhalb des Skripts folgt die Struktur dem erforderlichen Ablauf für die Verhaltensweisen, die das Skript bereitstellen soll. Sie können den Aktionsablauf im Skript so organisieren und anordnen, dass er Ihren spezifischen Anforderungen entspricht. Beispielsweise kann das Skript von rechts nach links oder von links nach rechts verlaufen. Oder es verläuft von oben nach unten.

Beachten Sie bei der Struktur von Skripten die folgenden Punkte:

  • Verwenden Sie Verzweigungsbedingungen, um in Ihrem Skript Verzweigungen zu erstellen. Damit können Sie die verschiedenen Ergebnisse, Variationen oder Situationen berücksichtigen, die an verschiedenen Stellen im Skript auftreten können. Verwendungsbeispiele für Verzweigungen sind die Fehlerbehandlung, die Optionen in einem IVRGeschlossen Automatisiertes Telefonmenü, das es Anrufern ermöglicht, durch Sprachbefehle, Tasteneingaben oder beides zu interagieren, um Informationen zu erhalten, einen eingehenden Sprachanruf weiterzuleiten oder beides.-Menü und die Pfade "true/false" nach einer IF-Aktion.
  • Für manche Aktionen sind mehrere Verzweigungsbedingungen verfügbar. Sie müssen sie nicht immer alle verbinden. Die Default-Verzweigung muss jedoch immer verbunden werden. Dies ist die Verzweigung, der das Skript folgt, wenn keine der anderen Bedingungen zutreffen. Mit dieser Verzweigung können Sie dafür sorgen, dass Kontakte nicht an der jeweiligen Stelle im Skript hängen bleiben, falls ein unerwartetes Ereignis auftritt.
  • Ereignisaktionen sind nicht mit den Aktionen verbunden, die das jeweilige Ereignis auslösen. Sie starten einen neuen Abschnitt in derselben Skriptdatei. Die neuen Abschnitte können sich an einer beliebigen Stelle in der Skriptdatei befinden. Wenn Ihr Skript mehrere Ereignisaktionen enthält, sollten Sie sie so organisieren, dass sie später einfach aufgefunden werden können.

Bei Snippets gelten keine spezifischen Anforderungen für die Struktur, abgesehen davon, dass die Anweisungen in logischer Reihenfolge angeordnet werden müssen. Sie können eine einzelne ASSIGN-Anweisung enthalten oder komplexe Skriptlogik, die aus mehreren verschachtelten Anweisungen und Blöcken besteht. Wenn Sie benutzerdefinierte Funktionen erstellen möchten, müssen Sie Snippets verwenden.

Snippets können nicht nur benutzerdefinierten Code enthalten, sondern sie können auch für andere Zwecke verwendet werden. Sie können damit Variablenzuweisungen an weniger Stellen im Skript konsolidieren. Anstatt für jede hinzuzufügende Variable eine ASSIGN-Aktion zu verwenden, können Sie mehrere Deklarierungsanweisungen in einer einzelnen Snippet-Aktion zusammenfassen.

Es gibt einige Vorgehensweisen, mit denen Sie dafür sorgen können, dass Ihre Skripte besser lesbar sind. Damit vereinfachen Sie die Arbeit für andere Entwickler, die später möglicherweise mit Ihrem Skript arbeiten müssen. Sie können:

  • Ändern Sie die Eigenschaft Caption für jede Aktion. Der Inhalt dieser Eigenschaft wird im Arbeitsbereich des Skripts angezeigt. Sie können ein Wort oder einen kurzen Satz als Beschreibung der einzelnen Aktionen hinzufügen. Beispielsweise können Sie angeben, welchen Skill die Aktion verwendet, welche Musikdatei sie abspielt oder welche Funktion der Snippet-Code hat.
  • Verwenden Sie die Annotation- und Note-Aktionen, um zusätzliche Dokumentation in Ihrem Skript bereitzustellen. In Snippet-Aktionen können Sie Kommentare hinzufügen.
  • Befolgen Sie die weiteren empfohlenen Verfahren für die Skripterstellung in Studio.

Syntax

Wie alle Programmiersprachen hat auch Snippet Syntaxregeln, die eingehalten werden müssen. Jede Hilfeseite in der Referenz enthält einen Abschnitt über die Syntax, in dem die Regeln für das jeweilige Element der Sprache beschrieben werden. Informieren Sie sich über die Syntaxregeln für die folgenden Elemente:

Die Syntaxregeln werden mit einer Syntax-Zusammenfassung beschrieben. In den Zusammenfassungen werden bestimmte Konventionen verwendet, um zwischen den optionalen und den erforderlichen Elementen zu unterscheiden. Weitere Informationen über diese Konventionen finden Sie auf der Hilfeseite Anweisungen.

Datentypen

Datentypen beschreiben, wie Daten dargestellt werden und welche Vorgänge mit ihnen ausgeführt werden können. Viele Programmiersprachen unterstützen zahlreiche Datentypen, bei denen zwischen unterschiedlichen Arten von numerischen und alphanumerischen Darstellungen unterschieden wird. Studio nimmt diese Unterscheidungen nicht vor. In Studio haben Werte einen der folgenden Typen:

  • String: Der Wert der Variablen enthält alphanumerische und Sonderzeichen, wie Punkte, Kommas und Unterstriche. Stringwerte müssen in doppelte Anführungszeichen eingeschlossen werden.
  • Numerisch: Der Wert der Variablen ist eine Zahl. Für numerische Werte sind keine doppelten Anführungszeichen erforderlich.
  • Datum/Uhrzeit: Der Wert der Variablen ist ein Datum, eine Uhrzeit oder beides. Wenn ein Datum/Uhrzeit-Wert mit Datum/Uhrzeit-Funktionen in Studio verwendet wird, muss der Wert in Anführungszeichen eingeschlossen werden. Vor dem Wert außerhalb der Anführungszeichen muss das Rautezeichen stehen: var = #"11-23-2023".
  • Boolesch: Der Wert der Variablen ist entweder true oder 1 oder false oder 0. Boolesche Werte werden nicht in Anführungszeichen eingeschlossen.

Im Gegensatz zu einigen anderen Programmiersprachen müssen Sie beim Erstellen von Variablen nicht den Datentyp deklarieren. In Studio wird der Typ von Variablen implizit angegeben. Das bedeutet, dass der Typ beim Kompilieren des Skripts automatisch bestimmt wird.

Datentypen sind ein wesentlicher Bestandteil der Skripterstellung. Ausführlichere Informationen über die Datentypen in Studio-Skripten finden Sie auf den Hilfeseiten zu Datenstrukturen, Ausdrücken und Variablen. Wenn Sie mit Funktionen arbeiten, müssen Sie die Datentypen kennen, die im Skript verwendet werden. Außerdem müssen Sie wissen, was die Funktion erwartet und wie sich die Ausgabe je nach dem verwendeten Typ unterscheiden kann.

Datenstrukturen: Variablen, Arrays und Objekte

In Datenstrukturen können Sie Daten speichern, die in Ihrem Skript verwendet werden sollen. Sie können die Daten aus der Datenstruktur abrufen, wenn sie benötigt werden, oder durch andere Daten ersetzen. In anderen Programmiersprachen kann es zahlreiche Typen von Datenstrukturen geben, die sehr komplex sein können. In Studio gibt es nur drei Arten von Datenstrukturen:

Sie können diese Datenstrukturen erstellen, indem Sie sie mit einer Deklarierungsanweisung deklarieren.

Ausdrücke

Ein Ausdruck ist ein Teil des Skripts, der einen Wert vergleicht oder in einem Wert resultiert. Im Folgenden werden einige Ausdrücke aufgelistet:

  • x = 3(5+10)

  • y = 123 North Street
  • x != 5

Es gibt verschiedene Arten von Ausdrücken, wie String, numerisch und booleschGeschlossen Ein Datentyp, der zwei mögliche Werte hat: wahr und falsch.. Ausdrücke können in Studio-Skripten für viele verschiedene Zwecke verwendet werden. Es gibt folgende Verwendungszwecke:

Operatoren

Operatoren sind mathematische Symbole, die angeben, welche mathematische oder algebraische Operation für die Zahlen angewendet werden soll. Studio unterstützt alle mathematischen und einige algebraische Operatoren. Auch boolescheGeschlossen Ein Datentyp, der zwei mögliche Werte hat: wahr und falsch. Operatoren werden unterstützt, die in booleschen Ausdrücken verwendet werden. Diese Ausdrücke werden entweder als "true" oder als "false" ausgewertet. Sie können boolesche Ausdrücke in einigen Anweisungen verwenden, um in Ihren Skripten Entscheidungsmechanismen zu erstellen.

Anweisungen

Anweisungen definieren die Aktionen, die das Skript durchführt, wenn es ausgeführt wird. Beispiele sind: Variablen erstellen, neue Werte zuweisen, Berechnungen durchführen und auf Basis einer bestimmten Bedingung eine logische Wahl treffen. Einige Anweisungen führen nur eine Aufgabe durch. Beispielsweise weisen sie einer Variablen einen Wert zu. Andere Anweisungen wirken sich auf den Ablauf des Skripts aus. Anweisungen werden in logischer Reihenfolge ausgeführt, aber diese Reihenfolge kann sich bei jeder Ausführung des Skripts ändern.

Bei der Skripterstellung mithilfe von Aktionen spielen Anweisungen meist keine Rolle. In Snippets können Sie die folgenden Arten von Anweisungen verwenden:

  • Deklaration: Verwenden Sie Deklarierungsanweisungen, um neue Variablen, Objekte und Funktionen zu deklarieren bzw. zu erstellen.
  • Entscheidung: Verwenden Sie Entscheidungsanweisungen, damit der Snippet-Code auf Basis der von Ihnen festgelegten Bedingungen eine bestimmte Aufgabe ausführt. Sie können damit den linearen Ablauf der Ereignisse im Skript steuern.
  • Schleifen: Verwenden Sie Schleifen-Anweisungen, damit das Snippet eine oder mehrere Aufgaben wiederholt, bis die angegebene Endbedingung erfüllt ist.
  • Andere: Mit anderen Anweisungen können Sie Funktionen beenden, Ergebnisse beim Debuggen im Snippet editor-Fenster anzeigen und Proxy-DLLs für Webdienste in Ihre Snippets einschließen.

Für einige dieser Anweisungen gibt es Studio-Aktionen, die dieselbe Auswirkung haben. Beispielsweise haben die Aktionen ASSIGN und IF dieselbe Funktionsweise wie die Anweisungen ASSIGN und IF in Snippets. Viele Anweisungen können nur in Snippets verwendet werden.

Reservierte Wörter

Studio enthält einige reservierte Wörter, die nicht als Namen für Variablen und andere Elemente im Skript verwendet werden können. Zu den reservierten Wörtern zählen die Namen folgender Elemente:

Wenn Sie ein reserviertes Wort als Namen für ein Element in Ihrem Skript verwenden, tritt ein Fehler auf. Sie müssen das Element umbenennen, um den Fehler zu beheben.

Kommentare

Mithilfe von Kommentaren können Sie bestimmte Komponenten Ihres Skripts oder Snippets dokumentieren. Sie können damit eine Anmerkung für sich selbst oder andere Skriptentwickler hinterlassen oder den Zweck bestimmter Skriptkomponenten erläutern.

In Studio-Skripten können Sie die Aktion Note oder Annotation verwenden, um Kommentare hinzuzufügen. Beide Aktionen bieten Ihnen die Möglichkeit, einen Kommentar im Skript-Arbeitsbereich zu hinterlassen. Mit der Annotation-Aktion wird der Kommentar sichtbar im Arbeitsbereich platziert. Wenn Sie den Kommentar in einer Note-Aktion lesen möchten, müssen Sie auf die Aktion doppelklicken.

In Snippets können Sie Kommentare mithilfe von zwei Schrägstrichen (//) hinzufügen. Kommentare können auf eigenen Zeilen oder am Ende einer Anweisung platziert werden.

Sie können Kommentare in Snippets auch verwenden, um Codezeilen auszublenden, die bei der Skriptausführung ignoriert werden sollen. Dies ist bei der Fehlerbehebung hilfreich.

Funktionen

Mithilfe von Funktionen können Sie Code erstellen, der wiederverwendet werden soll. Sie können eigene Funktionen erstellen und dann an der Stelle im Skript aufrufen, an der der enthaltene Code verwendet werden soll. Studio enthält auch einige integrierte Funktionen, die Sie verwenden können, ohne dass Sie sie in Ihrem Skript deklarieren müssen.

String-Handling

In Snippets können Sie Strings mit integrierten Funktionen auf viele verschiedene Arten verwenden:

  • verketten
  • in untergeordnete Strings aufteilen
  • durchsuchen
  • Teile des Inhalts ersetzen
  • vergleichen
  • Schreibweise von Großbuchstaben in Kleinbuchstaben und umgekehrt ändern

In manchen Fällen müssen Sie die Formatierung von Strings angeben, die ein Datum, eine Uhrzeit oder Zahlen enthalten. Sie können die festgelegten Formatzeichen verwenden, um das Format zu definieren, das im Skript verwendet werden soll. Außerdem können Sie einige der integrierten Funktionen verwenden, um Strings in andere Formate zu konvertieren.

Einige Zeichen können in Strings nur zusammen mit einer Escape-Sequenz verwendet werden. Strings müssen in einfache oder doppelte Anführungszeichen eingeschlossen werden. Wenn Sie ein einzelnes oder doppeltes Anführungszeichen als Literalwert in einem String verwenden, interpretiert das Skript es daher als Anfang oder Ende des Strings. Mit der Escape-Sequenz weisen Sie das Skript an, das Zeichen als Literalwert zu interpretieren, nicht als das Symbol, als das es standardmäßig verwendet wird. Weitere Zeichen, die Escape-Sequenzen erfordern, sind Tabulatorzeichen, Rücktasten-Zeichen und offene geschweifte Klammern.