Оформление
Первый бот за десять минут
Пройдём путь от нуля до сообщения, которое бот написал в комнату.
Понадобится:
- аккаунт Emotify (не гостевой);
- канал, где вы администратор — или знакомый администратор, готовый установить бота.
Шаг 1. Создайте приложение
Откройте портал → Настройки → Приложения → Новое приложение. Придумайте имя — его будут видеть участники канала рядом с сообщениями бота.
Ниже отмечается, что откроет ключ. Для этого руководства достаточно «Писать, править и удалять свои сообщения» — остальное можно снять и добавить позже, перевыпустив ключ. Чем меньше отмечено, тем меньше цена утечки: подробности — ключи и лимиты.
После создания появится ключ приложения:
emb_2878fed6c91a4b7e8f3d05a1…Скопируйте его сразу и сохраните в надёжном месте.
Ключ показывается один раз
Повторно посмотреть его нельзя. Если потеряли — нажмите «Перевыпустить ключ», получите новый (старый перестанет работать).
Шаг 2. Скопируйте идентификатор приложения
В карточке приложения есть строка «Идентификатор» с кнопкой копирования:
16c6e6b1-2b8d-4665-ba47-3d197a4a6029Это не секрет — по нему администратор канала находит ваше приложение, чтобы установить его.
Шаг 3. Установите бота на канал
Настройки канала → Доступ → Приложения → Добавить приложение.
- Своё приложение выбирается из списка одним нажатием.
- Чужое — вставьте его идентификатор в поле и нажмите «Найти».
Откроется карточка с перечнем того, что бот сможет делать на канале. Права, до которых ключ приложения не дотягивается, помечены там отдельно — так видно не только что разрешает роль, но и чем приложение действительно пользуется. Нажмите «Добавить на канал» — бот появится в списке участников с меткой «БОТ».
Шаг 4. Проверьте, что ключ работает
bash
curl https://emotify.ru/api/v1/me \
-H "Authorization: Bot emb_ваш_ключ"Ответ:
json
{
"application": {
"id": "16c6e6b1-2b8d-4665-ba47-3d197a4a6029",
"name": "Мой первый бот",
"owner": { "id": "…", "name": "Ваш ник" }
},
"bot": {
"id": "a2d78dd9-b9e0-4636-aca6-d3185de686b8",
"name": "Мой первый бот",
"avatar": "default_avatar.jpg",
"avatarVersion": 1
},
"channels": [
{
"id": "4facb875-a03f-406e-ad47-3d8515eb69de",
"name": "Мой канал",
"role": { "systemName": "CHANNEL_BOT", "name": "Бот" }
}
]
}Запомните channels[0].id — это идентификатор канала, он понадобится дальше.
Если пришёл 401 — проверьте ключ: он скопирован не полностью, отозван или приложение удалено.
Шаг 5. Узнайте идентификатор комнаты
Откройте нужную текстовую комнату в портале — идентификатор виден в адресной строке:
https://emotify.ru/app/channel/4facb875-…/room/a0d4cc29-04e9-4567-9a7a-4b2668d3af30
└────────── это id комнаты ─────────┘Шаг 6. Отправьте сообщение
bash
curl -X POST https://emotify.ru/api/v1/rooms/a0d4cc29-04e9-4567-9a7a-4b2668d3af30/messages \
-H "Authorization: Bot emb_ваш_ключ" \
-H "Content-Type: application/json" \
-d '{
"channelId": "4facb875-a03f-406e-ad47-3d8515eb69de",
"text": "Привет! Я бот."
}'То же самое на JavaScript:
js
const res = await fetch(
'https://emotify.ru/api/v1/rooms/a0d4cc29-…/messages',
{
method: 'POST',
headers: {
Authorization: `Bot ${process.env.BOT_TOKEN}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
channelId: '4facb875-…',
text: 'Привет! Я бот.'
})
}
)
console.log(res.status) // 201
console.log(await res.json()) // созданное сообщениеГотово: сообщение появилось в комнате, участники видят его сразу.
Что дальше
- События — чтобы бот отвечал людям, а не только писал сам.
- Команды — если бот реагирует на
/что-то, объявите список: портал покажет его у поля ввода, и люди найдут бота сами. Не объявили — команды не существует ни для кого, кроме вас. - Эхо-бот целиком — готовая программа, которая повторяет за людьми.
- Справочник маршрутов — всё, что бот умеет: история, реакции, участники, голос.