The common library is a set of scripts developed and shipped by Dasha and intended to make dialogue scripting easier by covering most common cases.
For now, the only library called common dialogue is developed. It covers common-sense dialogue logic and consists of several little scripts called common reactions.
Each common reaction is implemented as a digression and has (in most) the following parameters: triggers, which determines intents used in the condition, and responses, which determines what to say. If digression could end a call, it also has parameters status and serviceStatus which will be set before exiting.
In case a common reaction does not fit your requirements you could tweak the parameters. However, digression parametrization has its limits, so feel free to modify the digression body if you need to.
Here is a list of common reactions:
|Common reaction||Description||Default status/serviceStatus|
|answeringMachine||detects answering machine and end a conversation||AnsweringMachine/AnsweringMachine|
|canHearYou||detects interlocutor's question "can you hear me" and respond||-|
|iAmRobot||detects interlocutor's question "are you a robot?" and respond||-|
|repeatAndPing||detects interlocutor's question "repeat please" and repeat; support retries limit||RepeatHangup/Done|
|wait||detects interlocutor's question "wait please" and wait for some time||-|
|callBack||detects interlocutor's request "call back" and end a conversation||CallBack/Done|
|wontCallAnymore||detects interlocutor's request "don't call my anymore" and end a conversation||DontCall/Done|
|reactiveListening||randomly says "mhm" before response||-|
|hello||triggers when nothing meaningful happens in the dialogue for too long; support retries limit||EmptyCall/Done|
|dontUnderstand||triggers when the script has nothing to respond to an interlocutor; support retries limit||DontUnderstandHangup/Done|