Form Filling

Config

{
  "name": <string>,
  "description": <string>,
  "type": "FormFilling"
  "gameSpecificConfiguration": {
    "invocationUtterance": <MultilangVariationString>,
    "introductoryMessage": <MultilangVariationString>,
    "formFields": [
      {
        "label": <string>,
        "type": <string>,
        "mandatory": <boolean>,
        "dependencies": [
          {
            "logicalOperator": "always"|"never"|"if"|"and"|"or",
            "field": <string>,
            "comparisonOperator": <string>,
            "value": <string>
          },
          ...
        ],
        "utterances": <MultilangVariationString>,
        "validation": {
          "regex": <String>, # for regex validation for string-like field value types
          "minimum": <String>, # for minmax validation for number-like field value types
          "maximum": <String>, # for minmax validation for number-like field value types
          "message": <MultilangString>
        },
        "nlg": <NLG>,
      },
      ...
    ],
    "order": <"order"|"random">
    "apiUrl": <ApiDefinition>,
    "contextUpdates": [<ContextUpdate>, ...],
    "resultPresentation": <NLG>,
    "emptyResultPresentation": <NLG>,
    "apiResultData": [
      {
        "label": <string>,
        "level": <integer>,
        "value": <string>,
        "klass": <string>
      },
      ...
    ],
    "resultListLabel": <string>
  }
}