{
  "$kind": "ELMA.Assistant.Bot",
  "version": "2.6.0",
  "name": "1",
  "scenarios": [
    {
      "$kind": "ELMA.Assistant.DefaultScenario",
      "triggerGroup": {
        "$kind": "ELMA.Assistant.DefaultTriggerGroup",
        "triggers": [
          {
            "$kind": "ELMA.Assistant.StartTrigger",
            "outputBindingId": "BND_eT3lBm0oHR",
            "id": "TRR_v9_X1ggiwr",
            "$designer": null
          }
        ],
        "name": null,
        "id": "TRG001000",
        "$designer": null
      },
      "actionGroups": [
        {
          "$kind": "ELMA.Assistant.DefaultActionGroup",
          "actions": [
            {
              "$kind": "ELMA.Assistant.ScriptAction",
              "content": "context.output.variables.current_page = null;\r\ncontext.output.variables.employee = null;",
              "version": "1.0.0",
              "executionTimeout": 60,
              "retryCount": 0,
              "retryDelay": 1,
              "outputBindingId": null,
              "id": "ACT__wk4vQX4IX",
              "$designer": null
            }
          ],
          "inputBindingIds": [
            "BND_eT3lBm0oHR"
          ],
          "outputBindingId": "BND_9H3lio065R",
          "name": "",
          "id": "ACG_vYXMTA0Hff",
          "$designer": {
            "id": "ACG_vYXMTA0Hff",
            "name": "",
            "description": null,
            "positionX": 424.0,
            "positionY": 70.0
          }
        },
        {
          "$kind": "ELMA.Assistant.DefaultActionGroup",
          "actions": [
            {
              "$kind": "ELMA.Assistant.TextInput",
              "messages": [
                {
                  "$kind": "ELMA.Assistant.Message",
                  "content": "Выберите сотрудника:",
                  "attachments": [],
                  "id": "MSG_vj9Gmjfx23",
                  "$designer": null
                }
              ],
              "variableId": "VAR_Lx6CooYnla",
              "validators": [],
              "required": true,
              "cancellable": false,
              "unrecognizedPromptMessages": [],
              "defaultValueResponseMessages": [],
              "customValidationErrorMessages": [],
              "maxTurnCount": 3,
              "defaultValue": null,
              "canShowHelp": false,
              "helpMessages": [],
              "canTransferToOperator": false,
              "alwaysPrompt": true,
              "id": "ACT_DD9JyNCAU_",
              "$designer": null
            }
          ],
          "inputBindingIds": [
            "BND_9H3lio065R",
            "BND_xBc_ys5IGJ"
          ],
          "outputBindingId": "BND_PWL4Bua6hi",
          "name": "",
          "id": "ACG_Fg_ccyKjve",
          "$designer": {
            "id": "ACG_Fg_ccyKjve",
            "name": "",
            "description": null,
            "positionX": 798.0,
            "positionY": 70.0
          }
        },
        {
          "$kind": "ELMA.Assistant.DefaultActionGroup",
          "actions": [
            {
              "$kind": "ELMA.Assistant.SwitchAction",
              "mainCases": [
                {
                  "$kind": "ELMA.Assistant.MainCaseAction",
                  "conditions": [
                    {
                      "$kind": "ELMA.Assistant.BinaryCondition",
                      "operator": "NotEquals",
                      "leftOperand": {
                        "$kind": "ELMA.Assistant.VariableOperand",
                        "variableId": "VAR_Lx6CooYnla",
                        "propertyPath": null,
                        "id": "OPD_z2xRd_82HG",
                        "$designer": null
                      },
                      "rightOperand": {
                        "$kind": "ELMA.Assistant.ConstantOperand",
                        "value": "Next",
                        "id": "OPD_dqQk6xvtkW",
                        "$designer": null
                      },
                      "id": "CON_dtbAyf6j92",
                      "$designer": null
                    },
                    {
                      "$kind": "ELMA.Assistant.BinaryCondition",
                      "operator": "NotEquals",
                      "leftOperand": {
                        "$kind": "ELMA.Assistant.VariableOperand",
                        "variableId": "VAR_Lx6CooYnla",
                        "propertyPath": null,
                        "id": "OPD_XU4n9cryPM",
                        "$designer": null
                      },
                      "rightOperand": {
                        "$kind": "ELMA.Assistant.ConstantOperand",
                        "value": "Previous",
                        "id": "OPD_r5RdSJB8Qz",
                        "$designer": null
                      },
                      "id": "CON_UTVDPgOIko",
                      "$designer": null
                    }
                  ],
                  "outputBindingId": "BND_gkjEeSJxLu",
                  "id": "MCS_f5AKSRpfSn",
                  "$designer": null
                }
              ],
              "elseCase": {
                "$kind": "ELMA.Assistant.ElseCaseAction",
                "outputBindingId": "BND_xBc_ys5IGJ",
                "id": "ECS_MpnU3l8VZP",
                "$designer": null
              },
              "id": "ACT_VhIt2Srb6b",
              "$designer": null
            }
          ],
          "inputBindingIds": [
            "BND_PWL4Bua6hi"
          ],
          "outputBindingId": null,
          "name": "",
          "id": "ACG_k3qzupTzZP",
          "$designer": {
            "id": "ACG_k3qzupTzZP",
            "name": "",
            "description": null,
            "positionX": 1172.0,
            "positionY": 70.0
          }
        },
        {
          "$kind": "ELMA.Assistant.DefaultActionGroup",
          "actions": [
            {
              "$kind": "ELMA.Assistant.TextOutput",
              "messages": [
                {
                  "$kind": "ELMA.Assistant.Message",
                  "content": "Ваш выбор: {VAR_Lx6CooYnla} ",
                  "attachments": [],
                  "id": "MSG_IZftGDsWUZ",
                  "$designer": null
                }
              ],
              "id": "ACT_zmEcbXXOWG",
              "$designer": null
            }
          ],
          "inputBindingIds": [
            "BND_gkjEeSJxLu"
          ],
          "outputBindingId": null,
          "name": "",
          "id": "ACG__5WuYZwV0R",
          "$designer": {
            "id": "ACG__5WuYZwV0R",
            "name": "",
            "description": null,
            "positionX": 1546.0,
            "positionY": 70.0
          }
        }
      ],
      "intents": [],
      "bindings": [
        {
          "$kind": "ELMA.Assistant.Binding",
          "sourceEntityId": "TRR_v9_X1ggiwr",
          "targetEntityId": "ACG_vYXMTA0Hff",
          "id": "BND_eT3lBm0oHR",
          "$designer": null
        },
        {
          "$kind": "ELMA.Assistant.Binding",
          "sourceEntityId": "ACG_vYXMTA0Hff",
          "targetEntityId": "ACG_Fg_ccyKjve",
          "id": "BND_9H3lio065R",
          "$designer": null
        },
        {
          "$kind": "ELMA.Assistant.Binding",
          "sourceEntityId": "ACG_Fg_ccyKjve",
          "targetEntityId": "ACG_k3qzupTzZP",
          "id": "BND_PWL4Bua6hi",
          "$designer": null
        },
        {
          "$kind": "ELMA.Assistant.Binding",
          "sourceEntityId": "MCS_f5AKSRpfSn",
          "targetEntityId": "ACG__5WuYZwV0R",
          "id": "BND_gkjEeSJxLu",
          "$designer": null
        },
        {
          "$kind": "ELMA.Assistant.Binding",
          "sourceEntityId": "ECS_MpnU3l8VZP",
          "targetEntityId": "ACG_Fg_ccyKjve",
          "id": "BND_xBc_ys5IGJ",
          "$designer": null
        }
      ],
      "version": "1.1.0",
      "name": "Старт бота",
      "enabled": true,
      "interruption": "Disabled",
      "cancellation": "Disabled",
      "variables": [],
      "id": "SCN_KIKYLshHJk",
      "$designer": null
    }
  ],
  "variables": [
    {
      "$kind": "ELMA.Assistant.Variable",
      "name": "product",
      "code": "product",
      "type": "String",
      "scope": "User",
      "state": "Exists",
      "owner": "User",
      "validators": [],
      "id": "VAR_SagfRZ0rW3",
      "$designer": null
    },
    {
      "$kind": "ELMA.Assistant.Variable",
      "name": "current_page",
      "code": "current_page",
      "type": "Number",
      "scope": "User",
      "state": "Exists",
      "owner": "User",
      "validators": [],
      "id": "VAR_HatDlHUyHp",
      "$designer": null
    },
    {
      "$kind": "ELMA.Assistant.Variable",
      "name": "employee",
      "code": "employee",
      "type": "String",
      "scope": "User",
      "state": "Exists",
      "owner": "User",
      "validators": [],
      "id": "VAR_Lx6CooYnla",
      "$designer": null
    }
  ],
  "settings": {
    "$kind": "ELMA.Assistant.BotSettings",
    "script": {
      "content": "// Максимальное количество кнопок на странице\nconst MAX_PAGE_SIZE = 4;\n// Названия кнопок, отвечающих за навигацию по страницам\nconst NEXT_PAGE_BUTTON_NAME = 'Next';\nconst PREVIOUS_PAGE_BUTTON_NAME = 'Previous';\n\nonInputDialogBegin(\"employee\", async (botEvent) => {\n  // Список содержит ФИО сотрудников, которые предлагаются на выбор пользователю\n  // Для примера данные уже содержатся в массиве, но могут быть загружены извне\n  const employees = [\n    \"Кожевников А. И.\",\n    \"Орлов С. А.\",\n    \"Павлова С. К.\",\n    \"Руднева В. Н.\",\n    \"Козлова К. Т.\",\n    \"Кожевников Л. Ф.\",\n    \"Панов Д. Л.\",\n    \"Орлов Д. Д.\",\n    \"Полякова М. А.\",\n    \"Дмитриев А. М.\",\n    \"Шубин Т. Т.\",\n    \"Калинина М. М.\",\n    \"Гаврилова В. Н.\",\n    \"Кузнецова Н. Ф.\",\n    \"Овсянников А. В.\",\n    \"Николаев М. К.\",\n    \"Козина В. Т.\",\n    \"Давыдова А. Н.\",\n    \"Кузин Н. М.\",\n    \"Евдокимов Л. А.\",\n    \"Савин А. П.\",\n    \"Хохлов К. В.\",\n    \"Беликов Р. И.\"\n  ];\n\n  // Определяем максимальное количество страниц\n  const maxPageCount = ~~(employees.length / MAX_PAGE_SIZE);\n  // В отдельной переменной храним страницу, на которой находимся в данный момент\n  let currentPage = context.input.variables.current_page ?? 0;\n  // Если пользователь выбрал переход на следующую страницу, увеличиваем номер текущей\n  if (context.input.variables.employee === NEXT_PAGE_BUTTON_NAME) {\n    currentPage = currentPage + 1;\n  }\n  // Если пользователь выбрал переход на предыдущую страницу, то уменьшаем номер текущей\n  if (context.input.variables.employee === PREVIOUS_PAGE_BUTTON_NAME) {\n    currentPage = currentPage - 1;\n  }\n\n  // Определяем кнопки, которые будут находиться на текущей странице\n  let currentPageButtons = employees.slice(currentPage * MAX_PAGE_SIZE, (currentPage + 1) * MAX_PAGE_SIZE);\n  // Добавляем кнопки, отвечающие за навигацию по страницам\n  if (currentPage > 0) {\n    currentPageButtons.push(PREVIOUS_PAGE_BUTTON_NAME);\n  }\n  if (currentPage < maxPageCount) {\n    currentPageButtons.push(NEXT_PAGE_BUTTON_NAME);\n  }\n\n  // Передаем кнопки в \n  context.output.result.suggestedActions = currentPageButtons;\n  // Сохраняем в переменную номер текущей страницы\n  context.output.variables.current_page = currentPage;\n});",
      "version": "1.0.0",
      "executionTimeout": 15,
      "retryCount": 0,
      "retryDelay": 1
    },
    "integrations": [
      {
        "$kind": "ELMA.Assistant.ELMA365IntegrationSettings",
        "apiUrl": "",
        "integrationId": "",
        "organizationId": "",
        "xToken": "",
        "name": "ELMA365",
        "code": "elma365",
        "id": "EIS_006AwesQre",
        "$designer": null
      }
    ],
    "localization": {
      "locale": "ru-ru"
    },
    "smtp": {
      "host": "",
      "name": "",
      "username": "",
      "password": "",
      "port": 465,
      "useSsl": true
    },
    "recognition": {
      "intentThreshold": 0.6,
      "nlp": {
        "useCustomTrainingModel": false,
        "customTrainingModel": null
      },
      "kb": {
        "enabled": null,
        "threshold": 0.8,
        "searchParentsOnlyIfNoContext": null
      },
      "resultSelectionPriority": "Score"
    },
    "conversationClosing": {
      "closingEnabled": false,
      "closingTimeoutSeconds": 1800,
      "closingMessage": ""
    },
    "id": "SET_mK8o_9Qgrv",
    "$designer": null
  },
  "id": "BOT_ZnthLJF_Xz",
  "$designer": null
}