Automation
Hooks
Diese Dokumentation beschreibt das Konzept der Hooks; was ist ein Hook, wofür und wo werden sie eingesetzt.
Einleitung
Während sich die meisten Benutzereingaben auf eine bestimmte Absicht (UserIntent) zurückführen lassen, existieren auch allgemeine Ausdrücke wie "ja", "nein", "vielleicht" etc., die sich nicht explizit einer einzelnen Absicht zuordnen lassen und nur im jeweiligen Kontext ihrer Verwendung relevant sind: der Hook.
Ein Hook erweitert dabei temporär die Liste der Utterances eines UserIntents im Dialogablauf.
Hooks erhöhen so die Natürlichkeit eines Dialogs, ohne dabei die Komplexität zu erhöhen. Es gibt drei Stellen im Dialogeditor wo Hooks Verwendung finden:
- Priming: Ein Priming stellt eine Verknüpfung zwischen einem BotIntent und einem UserIntent her. Ein Priming kommt meistens in der Form eines Buttons. Soll der Button (respektive der verknüpfte UserIntent) über Utterances ausgewählt werden (z.B. durch Zustimmung "Ja", "Auf jeden Fall" etc.) kann der entsprechende Hook dem Priming hinzugefügt werden.
- ContextInitiative: Die ContextInitiative ist das zentrale dialogische Element, wenn es darum geht Informationen von Nutzern einzusammeln. In vielen Fällen kann die direkte Nutzereingabe als Wert verwendet werden, z.B. die Antwort auf die Frage "Wie lautete Dein Vorname". In manchen Fällen möchte man jedoch den echten Wert hinter einer Utterance verstecken. Zum Beispiel die auf die Frage "Möchtest du den Newsletter bestellen?" möchte man die Nutzereingabe "ja" oder "nein" auf einen entsprechenden booleschen Wert verlinken. So kann zum Beispiel der Hook Acknowledge mit dem Wert
true
verknüpft werden. - Confirmation: Innerhalb der ContextInitiative gibt es zwei Stellen an denen vom Nutzer eine Bestätigung eingeholt werden muss. Dies sind die Settings ConfirmUnderstood und ConfirmExisting. Die zugehörigen Hooks werden in den Advanced Settings definiert.
Hooks werden generell in der entsprechenden Reihenfolge abgearbeitet. Werden zwei Hooks gleichzeitig verwendet die gleiche Utterances haben, wird immer der zuerst hinzugefügte Hook bevorzugt! Dies spielt vor allem beim OrElse Hook eine entscheidende Rolle.
Predefined Hooks
Jedes Projekt beinhaltet eine Reihe von vordefinierten Standard-Hooks, die automatisch bereitgestellt werden und nicht gelöscht werden können. Werden jedoch alle utterances einens vordefinierten Hooks entfernt verliert er seine Bedeutung, da er von der NLP nicht mehr angesprochen werden kann.
OptInAck
OptInAck wird standardmäßig verwendet um die Einwilligung zur Datenverarbeitung zu bestätigen. Im Gegensatz zum Acknowledge Hook sollten die zustimmenden Utterances eindeutiger sein, da hier rechtlich eine Einwilligung abgeleitet wird.
Wird per Default verwendet in der ContextInitiative des OptIn & Consent ContextParameters.
OptInNotAck
Der OptInNotAck Hook wird standardmäßig verwendet um die OptIn Einwilligung abzulehnen. Wird per Default verwendet in der ContextInitiative des OptIn & Consent ContextParameters.
Acknowledge
Bestätigt eine Aussage oder eine Aktion. Übliche Ausdrücke sind "Ja", "Genau" etc.
Wird per Default verwendet bei der Positive Confirmation der ContextInitiative. Siehe oben.
NotAcknowledge
Verneint eine Aussage oder Aktion. Übliche Ausdrücke sind "Nein", "Nicht wirklich" usw. Wird per Default verwendet bei der Negative Confirmation der ContextInitiative. Siehe oben.
DontCare
Beinhaltet eine Reihe an Utterances die ausdrücken, dass dem Nutzer eine Aussage oder Aktion egal ist. Übliche Ausdrücke sind "Egal", "Weiß nicht" usw.
Wird per Default nicht verwendet.
OrElse
Der OrElse Hook stellt eine besondere Art des Hooks dar, da er keine Utterances hat und haben kann. Dieser Hook trifft auf alle Nutzereingaben zu und kann daher als kontextualisierter Fallback verwendet werden.
Wird per Default nicht verwendet.
firstElement - lastElement
Die hier beschriebenen Hooks firstElement - lastElement werden ausschließlich dazu verwendet mehrere Buttons in einer Botnachicht zu referenzieren.
Das entsprechende Set dieser Hooks sind standardmäßig aktiv, sobald ein oder mehrere Buttons ausgespielt werden.
Custom Hooks
Neben den vordefinierten Hooks ist es auch möglich eigene Custom Hooks anzulegen. Mit diesen Custom Hooks können Sie noch besser auf die individuellen Bedürfnisse und Interaktionen Ihrer Benutzer eingehen. Klicke dazu auf den button mit dem Label Create new hook. Wähle ein sprechenden den Namen (aus dem der finale Key automatisch generiert wird) und füge eine beliebige Anzahl an Utterances hinzu.