Хабар принёс?
Бот Telegram, сохраняющий голосовые сообщения, заданные администратором, и отправляющий их по инлайн запросам с сортировкой по числу использований.
- Создай и настрой бота через @BotFather
- Установи Docker, если не стоит
- Скачай репозиторий
- Установи переменные окружения в
.env
BOT_TOKEN
– токен бота от @BotFatherBOT_ADMINS
– Telegram ID-ы админов бота через пробел, они будут иметь доступ к редактированию базы реплик; может состоять всего из одного ID
docker-compose up -d
- Кидай своему боту голосовые и отвечай на них одиночными сообщениями в таком формате:
/add
<ТЕКСТ РЕПЛИКИ> - Для удаления добавленной реплики ответь на голосовое с ней командой
/remove
- Создай бота через @BotFather, все инструкции он выдаёт сам, получи токен
- Бот использует СУБД PostgreSQL. Установи, если у тебя её нет
- Создай базу данных в PSQL для своего бота
- Бот работает на node.js, используя менеджер пакетов npm. Установи их
- Узнай свой Telegram ID с помощью любого специального бота, например, этого
npm i stalkee
Для запуска бота нужны переменные окружения,
их можно задать через оболочку или прописать в файле .env
.
Вот их список:
BOT_TOKEN
– токен бота от @BotFatherBOT_ADMINS
– Telegram ID-ы админов бота через пробел, они будут иметь доступ к редактированию базы реплик; может состоять всего из одного IDDB_URI
– URI-строка для подключения к PSQL в форматеpostgres://<USER>:<PASSWORD>@<HOST>:<PORT>/<DATABASE>
Вместо задания параметров через переменные окружения
можно прописать их в файле node_modules/stalkee/config.toml
.
Но тогда следи за сохранностью своих секретов.
После задания окружения выполни
npx stalkee
Если всё прошло успешно, ты увидишь в консоли что то вроде этого:
> [email protected] start
> node index.js
Bot @stalkeeBot started.
> _
После запуска в консоли доступны команды
stop
и reload
для безопасных остановки и перезагрузки соответственно, а также
mode edit
для включения команд /add
и /remove
в список подсказок для удобного редактирования реплик, и
mode regular
для выключения.
Редактирование осуществляется через общение с ботом в Telegram. Админам (тем, чьи ID прописаны в окружении) доступны следующие команды:
Добавление голосового сообщения в результаты инлайна
/add <РЕПЛИКА>
Удаление голосового сообщения из результатов
/remove
Командами необходимо отвечать на голосовое сообщение, которое и будет добавлено/удалено.
Если у тебя что то не получается, или ты просто хочешь поговорить с создателем бота или его мамой, пиши @arelive. Сюда же принимаются пинки от добровольных проект-менеджеров.