Skip to content

dmkononenko/Taro-bot

 
 

Repository files navigation

Telegram taro cards bot

Change language: English


Телеграмм бот для автоматизированного сбора заявок на предоставление услуг - переносит данные заполненные пользователем в google таблицу, присылает менеджеру уведомление об оставленных заявках.

Функционал:

  1. Собирает информацию о пользователе
  2. Проверяет впервые ли оставлена заявка
  3. Переносит заполненные пользователем данные в google таблицы
  4. Уведомляет менеджера об оставленных заявках, закрепляет в диалоге необработанные заявки
  5. Окрашивает зеленым цветом обработанные менеджером заявки
  6. Принимает подтверждение платежа, а также запрос клиента в текстовом или аудио формате и пересылает его менеджеру

Команды:

Для удобства рекомендуется добавить данные команды в боковое меню бота, используя BotFather.

  • menu - вызывает меню (добавить через BotFather для удобного отображения)
  • taro - запросить услугу по расшифровке даты рождения
  • help - помощь

Установка и использование:

  • Логирование при ошибке ведется в файл py_log.log
  • Установить зависимости:
pip install -r requirements.txt
  • в файле .env указать:
    • Токен телеграмм бота: TELEGRAM_TOKEN=ТОКЕН
    • ID бота: BOT_ID=ID (первые цифры из токена бота, до :)
    • ID менеджера: MANAGER_ID=MANAGER_ID; будет иметь право на выполнение команды /update, ему будут приходить уведомления - для получения уведомлений менеджеру необходимо активировать бота со своего аккаунта (нажать кнопку "начать")

    Для определения ID пользователя нужно отправить следующему боту любое сообщение с соответствующего аккаунта. Значение, содержащееся в Your user ID - ID пользователя

    • Ссылки на telegram канал и instagram TELEGRAM_CHANNEL_LINK, INSTAGRAM_LINK
    • Username менеджера - на указанный профиль введет кнопка "менеджер" в меню: MANAGER_USERNAME=example (указывается без @)
  • получить файл c credentials (параметрами для подключения):
    https://console.cloud.google.com/
    https://www.youtube.com/watch?v=bu5wXjz2KvU - инструкция с 00:00 по 02:35
    Полученный файл сохранить в корне проекта, с именем service_account.json
  • предоставить сервисному e-mail доступ к таблице (инструкция в видео по ссылке выше)
  • в файле config.py задать следующие переменные:
    IMAGE_ID - ID приветственного изображения, отправляемого ботом (к которому он имеет доступ)
    SPREAD_NAME - имя таблицы в google sheets, куда записываются данные о новых заявках
    LIST_NAME - имя листа в таблице
  • запустить проект:
python3 main.py

Рекомендации по использованию:

  • перед активацией бота обязательно задать имена столбцов для удобной навигации и корректной работы:
    • порядок выводимой информации на листе с заявками:
      1. уникальный ID пользователя
      2. ник пользователя в Telegram
      3. имя пользователя
      4. фамилия пользователя
      5. ссылка на instagram пользователя
      6. дата рождения пользователя
      7. время отправления заявки (Московское)

About

Telegram bot for automated collection of applications for the provision of services - transfers data filled in by the user to a google spreadsheet, sends a notification to the manager about the applications left.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%