Skip to content

About

Telegram-бот для трекинга задач и времени с экспортом в Excel и редактированием вручную.

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TimeRecorder Bot

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

Возможности

  • 📝 Начало и завершение задач через обычные текстовые сообщения
  • ⏱ Точный подсчет времени, затраченного на каждую задачу
  • 📊 Отчеты за день, выбранную дату или по всем задачам
  • 📋 Экспорт всех задач в Excel-файл
  • ✏️ Редактирование названий задач и времени
  • 🗑 Удаление задач
  • 🔐 Ограничение доступа только для одного пользователя

Установка

  1. Клонируйте репозиторий:

    git clone https://github.com/yourusername/TimeRecorder.git
    cd TimeRecorder
    
  2. Установите зависимости:

    npm install
    
  3. Создайте файл .env на основе env.example:

    cp env.example .env
    
  4. Отредактируйте файл .env, добавив токен вашего Telegram-бота и ID вашего чата:

    BOT_TOKEN=your_telegram_bot_token_here
    ALLOWED_CHAT_ID=your_chat_id_here
    

    Для получения токена создайте нового бота через @BotFather. Для получения вашего Chat ID отправьте сообщение боту @userinfobot.

Запуск

node index.js

Для запуска в фоновом режиме можно использовать PM2:

npm install -g pm2
pm2 start index.js --name time-recorder

Использование

Начало задачи

Просто напишите боту сообщение, содержащее слово "начал" или "начинаю" и название задачи:

  • "Начал работу над проектом"
  • "Начинаю готовить ужин"
  • "Приступил к чтению книги"

Завершение задачи

Отправьте сообщение, содержащее "закончил", "завершил" или "готово":

  • "Закончил работу"
  • "Задача завершена"
  • "Готово"

Команды

  • /status - Показать текущую активную задачу
  • /report - Отчёт за сегодня
  • /report all - Суммарный отчёт по всем задачам
  • /report YYYY-MM-DD - Отчёт за указанную дату
  • /export - Выгрузка всех задач в Excel
  • /edit ID task:Новое название - Изменить название задачи
  • /edit ID start:10:00 end:14:30 - Изменить время начала/окончания
  • /delete ID - Удалить задачу
  • /help - Показать справку

Примеры редактирования задач

  • /edit 5 task:Встреча с клиентом - Изменить название задачи с ID 5
  • /edit 5 start:09:30 end:10:45 - Изменить время начала и окончания задачи с ID 5
  • /edit 5 start:09:30 - Изменить только время начала
  • /edit 5 end:10:45 - Изменить только время окончания

Технические детали

  • Бот работает по часовому поясу Хабаровска (Asia/Vladivostok)
  • Все данные хранятся локально в SQLite базе данных
  • Excel-отчеты содержат разбивку по дням и общий сводный лист

Зависимости

  • node-telegram-bot-api - API для работы с Telegram
  • sqlite3 - База данных SQLite
  • exceljs - Генерация Excel-отчетов
  • moment-timezone - Работа с датами и временными зонами
  • dotenv - Управление переменными окружения

Лицензия

MIT

About

Telegram-бот для трекинга задач и времени с экспортом в Excel и редактированием вручную.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages