Бот телеграмм службы поддержки

fc-user 57602eed00 Update docker-compose to make restart hai 1 mes
.dockerignore d44209d57e First bytes hai 11 meses
.gitignore d44209d57e First bytes hai 11 meses
Dockerfile d44209d57e First bytes hai 11 meses
README.md 0c0c02e6d7 Spelling fix hai 11 meses
bun.lockb d44209d57e First bytes hai 11 meses
docker-compose.yml 57602eed00 Update docker-compose to make restart hai 1 mes
index.ts d44209d57e First bytes hai 11 meses
package.json d44209d57e First bytes hai 11 meses
tsconfig.json d44209d57e First bytes hai 11 meses

README.md

Бот службы поддержки

Как работает бот. Есть сам бот, и есть приватная группа. В бот пишет клиент. В группе сидят сотрудники поддержки. Когда клиент пишет в бот сообщение, ему выдается номер и оно передается в группу. Сотрудники могут ответить на обращение, решить проблему и закрыть тикет. Раз в сутки запускается очистка базы от закрытых тикетов. В качестве идентификатора используется порядковый номер строки в базе на момент добавления, поэтому коды тикетов получаются короткими и удобными.

Как запустить

  1. Вам нужен docker compose на сервере. Установите его подходящим для вашей системы способом и следуйте дальнейшей инструкции.
  2. Создайте в папке с приложением пустую папку с именем db и пустой файл с именем .env
  3. Запишите в файл .env следующие строки и не забудьте сохранить изменения

    TELEGRAM_SUPPORT_CHAT_ID=-1234567 # ID приватного чата, где сидят сотрудники
    TELEGRAM_TOKEN=00000000:AaaaaaAaaaaaaaAa-bBBBBbbbbb # Токен бота из BotFather
    APP_NAME=Моё приложение # название вашего приложения
    
  4. Выполните в консоли сервера следующую команду

    docker compose up -d --build
    
  5. Все готово, можете закрывать консоль

Команды

Клиент в чате с ботом может писать только одну команду /start. Все остальные команды предназначены для приватного чата.

В чате сотрудники могут вызывать следующие команды

  • /help - показать подсказку по командам
  • /tickets - вывести список из 10 самых новых открытых тикетов. Если открытых тикетов больше - будет показан знак ...
  • /closed - вывести количество закрытых тикетов. Эти тикеты будут удалены через какое-то время
  • /answer - ответить на тикет. Сообщение будет переслано клиенту
  • /close - закрыть тикет. Он будет помечен для удаления, а клиенту придет благодарность за обращение