Системные сущности и справочники
В Aimylogic есть набор наиболее часто использ уемых системных справочников и сущностей. Это позволяет вам не создавать их вручную каждый раз. Вы можете использовать системные сущности в блоке Интенты, чтобы бот извлекал из фразы клиента ту или иную сущность и создавал переменную с ее языконезависимым представлением.
Среди таких сущностей и справочников: $TEXT, $NUMBER, $FLOATNUMBER, $PHONE, $CITY, $CAPITAL, $COUNTRY, $NAME.
Системные сущности
Эти сущности позволяют извлечь из фразы клиента данные, которые соответствуют определенным шаблонам.
$TEXT
Данная сущность позволяет извлечь из фразы клиента произвольный текст.
$TEXT можно использовать только в шаблонах. В примерах фраз ее использовать нельзя.Для того чтобы добавить шаблон для интента, в окне создания интента нажмите на иконку в строке, где собираетесь добавить шаблон.
На ее месте появится иконка :
Например, если вы добавили шаблон вида Я ищу $TEXT, то бот извлечет из фразы клиента «Я ищу интересную работу» сущность $TEXT. Он сохранит часть фразы «интересную работу» в переменной $TEXT.
$NUMBER
Эта сущность извлекает из фразы клиента целые числа. Клиент может указать их как цифрами, так и словами. В результате бот создаст переменную $NUMBER, в которую поместит целое число.
Если вы ожидаете получить во фразе клиента два числа, то добавьте шаблон вместо примера фраз и запишите его следующим образом:
сколько будет $NUMBER: x плюс $NUMBER: y
После того как клиент пришлет фразу «сколько будет пять плюс 25», бот создаст переменные $x и $y со значениями 5 и 25 соответственно.
$FLOATNUMBER
Данная переменная аналогична переменной $NUMBER, только она позволяет извлечь из фразы клиента дробные числа.
Например, если клиент напишет «пять целых шесть десятых» или «пять и шесть сотых», бот создаст переменную $FLOATNUMBER со значением 5.6 или 5.06 соответственно.
$PHONE
Извлекает из фразы клиента мобильный номер телефона. Соответствует блоку phone to $var.
Например, если клиент напишет «восемь девять один два три четыре пять шесть семь восемь девять» или «89123456789», бот сохранит значение +79123456789 в переменную $phone.
Системные справочники
Статичные сущности называются справочниками. Сюда входят, например, города, страны или имена людей. На странице Сущности в редакторе бота вы можете скачать файлы этих справочников, чтобы увидеть весь перечень сущностей в них.

$CITY
Эту сущность можно использовать, чтобы извлечь из фразы клиента название какого-либо города мира. Например, если в примерах фраз указать Я живу в $CITY, то бот будет реагировать на фразы, в которых клиент назовет город проживания. При этом бот создаст переменную $CITY, в которой сохранит объект со следующими полями:
| Поле | Тип | Описание |
|---|---|---|
name | Строка | Назван ие города |
lat | Число | Широта |
lon | Число | Долгота |
country | Строка | Код страны в формате ISO 3166-1 alpha-2 |
timezone | Строка | Часовой пояс в формате спецификации Java |
population | Число | Численность населения на 2017 г. |
capital | Строка | "true", если город является столицей, иначе "false" |
continent | Строка | Название части света |
Если клиент скажет Я живу в Москве, то бот создаст переменную $CITY со значением:
{
"name": "Москва",
"lat": 55.75222,
"lon": 37.61556,
"country": "RU",
"timezone": "Europe/Moscow",
"population": 10381222,
"capital": "true",
"continent": "Europe"
}
$CAPITAL
Если во фразе клиента есть столица, бот создаст переменную $CAPITAL,
в которой сохранит объект со следующими полями:
| Поле | Тип | Описание |
|---|---|---|
name | Строка | Название города |
country | Строка | Название страны |
genCountry | Строка | Название страны в родительном падеже |
continent | Строка | Название континента |
continent_part | Строка | Название части света |
duplicateName | Строка | "true", если название столицы совпадает с названием страны, иначе "false" |
facts | Массив строк | Факт или набор фактов о стране, массив может быть пустым |
complexity | Строка | Уровень сложности (от "1" до "5"), который определяет, насколько легко отгадать столицу |
Если клиент скажет Я живу в Афинах, то бот создаст переменную $CAPITAL со значением:
{
"name": "Афины",
"country": "Греция",
"genCountry": "Греции",
"continent": "Евразия",
"continent_part": "Европа",
"duplicateName": "false",
"facts": ["Именно Афины считаются родиной театра."],
"complexity": "1"
}
$COUNTRY
Все страны мира. Если во фразе клиента есть страна, то бот создаст переменную $COUNTRY со следующими полями:
name— название страны в именительном падеже;currency— валюта страны.
$NAME
Эта сущность позволяет извлечь из фразы клиента самые популярные имена. Если во фразе клиента есть имя, то бот создаст переменную $NAME с полями:
| Поле | Тип | Описание |
|---|---|---|
name | Строка | Нормативный вариант имени |
full | Строка | Полное имя или пустая строка (для нейтральных имен) |
diminutive | Строка | Уменьшительно-ласкательная форма имени или пустая строка |
sex | Строка | Пол: "м", "ж", "н" (для нейтральных имен) |
$DATETIME
Системная сущность, которая принимает значения даты и времени.