Skip to content

This bot controlls your public promises, remind you dead-lines and remember if you didn't do what you promise.

Notifications You must be signed in to change notification settings

fshmidt/telegram-commitment-bot

Repository files navigation

Тестовое задание avitoTech

Содержание

  1. Описание задачи
  2. Реализация
  3. Endpoints
  4. Запуск
  5. Примеры

Описание бота

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

Реализация

  • Подход "Чистой Архитектуры" и техника внедрения зависимости.
  • Работа с NoSQL базой данных bolt.
  • Конфигурация приложения - библиотека viper.
  • Запуск из Docker.
  • CI/CD Github-DigitalOcean Структура проекта:
.
├── pkg
│   ├── config      // парсинг конфигурации
│   ├── telegram    // логика бота
│   └── repository  // взаимодействие с БД
├── cmd             // точка входа в приложение

Адрес бота

https://t.me/obeshyalkin_bot

Запуск

make build-image
make start-container

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

Примеры

1. /start

start-obeshyalkin.png

2. /promise

promise-obeshyalkin.png

4. /mypromises

mypromises-obeshyalkin.png

5. /delete

delete-obeshyalkin.png

5. Напоминания

remider-obeshyalkin-1.png remider-obeshyalkin-2.png remider-obeshyalkin-3.png

6. Реакция на фразы-триггеры

proposition-obeshyalkin.png

About

This bot controlls your public promises, remind you dead-lines and remember if you didn't do what you promise.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published