umbot
Version:
Мультиплатформенный фреймворк для создания голосовых навыков и чат-ботов с единой бизнес-логикой. Встроенная поддержка ВКонтакте, Telegram, Viber, MAX, Яндекс Алисы, Маруси и Сбера SmartApp. Архитектура на адаптерах позволяет подключать любые другие платф
38 lines (37 loc) • 1.95 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.BaseBotController = void 0;
const BotController_1 = require("./BotController");
const utils_1 = require("../utils");
function i18n(controller) {
if (controller.text && controller.appContext.plugins['i18n']) {
controller.text =
typeof controller.appContext.plugins['i18n'] === 'function'
? controller.appContext.plugins['i18n'](controller.text)
: controller.appContext.plugins['i18n'].getData(controller.text);
}
}
/**
* Контроллер для обработки запросов приложения по умолчанию.
* Используется в качестве контроллера по умолчанию, и позволяет не создавать свой контроллер,
* если вся обработка команд или шагов осуществляется через bot.addCommand или bot.addStep.
*
* Контроллер из коробки обрабатывает стандартные команды (приветствие и помощь), а также сценарий, когда ни одна из команд не была найдена.
* Обработка базовых механик происходит только в том случае, если не была обработана ни одна команда или шаг.
*/
class BaseBotController extends BotController_1.BotController {
/**
* Обработка команд, добавленных через slots
*/
action(intentName, isCommand, isStep) {
if (isCommand || isStep) {
i18n(this);
return;
}
if (!this.text) {
this.text = utils_1.Text.getText(this.appContext?.platformParams.empty_text || '');
}
i18n(this);
}
}
exports.BaseBotController = BaseBotController;