Skip to content

Kyle-krn/anonymous-psychological-chat

Repository files navigation

Анонимный чат психологической помощи


Бот работающий на вебхуках предоставляет возможность анонимного чата с рандомными собеседниками из противоположной категории.

В боте реализовано

  • Выбор между 2умя категориями (Те кто хочет помочь и те кто нуждается в помощи)

Alt Text

  • Верификация дипломированных специалистов Alt Text
  • Чат со случайным пользователем из противоположной категории Alt Text
  • Начать платную консультацию Alt Text
  • Отдельный рейтинг и отзывы для платных консультаций Alt Text
  • Рейтинг пользователей и жалобы Alt Text
  • Возможность добавлять психолога в избранные чаты и связываться с ним на прямую через бота Alt Text
  • Пополнение баланса и история счёта Alt Text

В админке бота реализовано

  • Поиск и сортировка юзеров Alt Text
  • Возможность отправлять персонализированное сообщение определенному пользователю Alt Text
  • Подвтреждение/отклонение верификации Alt Text
  • Блокировка/разблокировка пользователей Alt Text
  • Жалобы на пользователей Alt Text
  • История пополнений и запросы на вывод денег (Перевод денег осущеставляется в ручную) Alt Text
  • Статистика каждого пользователя
    • Дата и время первого запуска ботапоследнего действия
    • Общее время использования бота
    • Среднее времяВсего времени проведенного в диалогах с другими пользователями
    • Количество диалогов
    • Количество диалогов заверешнных пользователем Количество диалогов завершенных собеседниками
    • Среднее/Общее количество сообщений написанных собеседнику
  • Массовая рассылка сообщений с возможность прикрепить изображение Alt Text

Установка


  1. Клонируйте репозиторий с github
  2. Создайте виртуальное окружение
  3. Установите зависимости pip install -r requarements.txt
  4. Измените название файла settings.py.example, убрав из него .example и впишите в него собственные ключи от телеграм бота, QIWI токены и ссылку на MongoDB, а так же в параметре HOST указать IP вашего сервера
  5. Для работы через webhook неободимо создать SSL сертификат
    1. Перейдите в корневую папку проекта
    2. Выполните команды
    openssl genrsa -out webhook_pkey.pem 2048
    openssl req -new -x509 -days 3650 -key webhook_pkey.pem -out webhook_cert.pem
    
    1. В строке common name введите IP адрес сервера
  6. Перед первым запуском запустите файл который поможет вам создать базу данных и пользователя к адмике: python3 create_superuser
  7. Запустите бота командой python3 main_bot.py

Если что-то пошло не так, проверьте открыт ли порт 8443, по возможности откройте его или поменяйте настройки порта в файле webhhok_settings.py в переменной WEBHOOK_PORT. Так же на некоторых серверах необходимо в переменной WEBHOOK_LISTEN указать IP адрес сервера.

Фоновый запуск


Для нового запуска бота на сервере можно использовать конфигурацию для supervisord

[program:anon_chat]
command=PATH/venv/bin/python main_bot.py
directory=PATH/
autostart=true
autorestart=true
redirect_stderr=true

Пример бота


https://t.me/Veleshelpbot

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published