Bot
in
Класс отвечающий за запуск приложения.
В нем происходит инициализации параметров, выбор типа приложения, запуск логики и возврат корректного результата.
Table of Contents
$content | Полученный запрос. В основном JSON или объект. | bool|string|null |
---|---|---|
$botController | Контроллер с логикой приложения. | BotController|null |
$auth | Авторизационный токен если есть (Актуально для Алисы). Передастся в том случае, если пользователь произвел авторизацию в навыке. | string|null |
__construct() | Bot constructor. | mixed |
initAuth() | Проверяем что пользователь авторизовался в приложении. | void |
initTypeInGet() | Инициализация типа бота через GET параметры. | bool |
initConfig() | Инициализация конфигурации приложения. | void |
initParams() | Инициализация параметров приложения. | void |
initBotController() | Подключение логики приложения. | void |
getBotClassAndType() | Возвращаем корректно заполненный тип приложения, а также класс, отвечающий за возврат результата. | array |
run() | Запуск приложения. | string |
test() | Тестирование навыка. | mixed |
getSkillContent() | Возвращаем корректную конфигурацию для конкретного типа приложения. | array |
Properties
$content
Полученный запрос. В основном JSON или объект.
private
bool|string|null
$content
$botController
Контроллер с логикой приложения.
protected
BotController|null
$botController
$auth
Авторизационный токен если есть (Актуально для Алисы). Передастся в том случае, если пользователь произвел авторизацию в навыке.
private
string|null
$auth
Methods
__construct()
Bot constructor.
public
__construct(
[ $type :
string|null
= null ]
)
: mixed
Parameters
- $type : string|null = null
Тип приложения (alisa, vk, telegram).
Return values
mixedinitAuth()
Проверяем что пользователь авторизовался в приложении.
protected
initAuth(
)
: void
В случае успеха, auth не будет равен null
initTypeInGet()
Инициализация типа бота через GET параметры.
public
initTypeInGet(
)
: bool
Если присутствует get['type'], и он корректен (Равен одному из типов бота), тогда инициализация пройдет успешно.
Tags
Return values
boolinitConfig()
Инициализация конфигурации приложения.
public
initConfig(
$config :
array|null
)
: void
Parameters
- $config : array|null
Конфигурация приложения.
Tags
initParams()
Инициализация параметров приложения.
public
initParams(
$params :
array|null
)
: void
Parameters
- $params : array|null
Параметры приложения.
Tags
initBotController()
Подключение логики приложения.
public
initBotController(
$fn :
BotController
)
: void
Parameters
- $fn : BotController
Контроллер с логикой приложения.
Tags
getBotClassAndType()
Возвращаем корректно заполненный тип приложения, а также класс, отвечающий за возврат результата.
protected
getBotClassAndType(
[ $userBotClass :
TemplateTypeModel|null
= null ]
)
: array
Parameters
- $userBotClass : TemplateTypeModel|null = null
Пользовательский класс для обработки команд.
Return values
arrayrun()
Запуск приложения.
public
run(
[ $userBotClass :
TemplateTypeModel|null
= null ]
)
: string
В случае ошибки кинет исключение
Parameters
- $userBotClass : TemplateTypeModel|null = null
Пользовательский класс для обработки команд.
Tags
Return values
stringtest()
Тестирование навыка.
public
test(
[ $isShowResult :
bool
= false ]
[, $isShowStorage :
bool
= false ]
[, $isShowTime :
bool
= true ]
[, $userBotClass :
TemplateTypeModel|null
= null ]
[, $userBotConfig :
string|null
= null ]
)
: mixed
Отображает только ответы навыка. Никакой прочей информации (изображения, звуки, кнопки и тд) не отображаются!
Для корректной работы, внутри логики навыка не должно быть пользовательских вызовов к серверу бота.
Parameters
- $isShowResult : bool = false
Отображать полный ответ навыка.
- $isShowStorage : bool = false
Отображать данные из хранилища.
- $isShowTime : bool = true
Отображать время выполнения запроса.
- $userBotClass : TemplateTypeModel|null = null
Пользовательский класс для обработки команд.
- $userBotConfig : string|null = null
Шаблон с пользовательским типом приложения
Tags
Return values
mixedgetSkillContent()
Возвращаем корректную конфигурацию для конкретного типа приложения.
protected
getSkillContent(
$query :
string
, $count :
int
, $state :
array|null
, $userBotConfig :
string|null
)
: array
Parameters
- $query : string
Пользовательский запрос.
- $count : int
Номер сообщения.
- $state : array|null
Данные из хранилища.
- $userBotConfig : string|null
Шаблон с пользовательским типом приложения