Skip to content

Latest commit

 

History

History
106 lines (80 loc) · 3.41 KB

README.md

File metadata and controls

106 lines (80 loc) · 3.41 KB

Простой вк бот для беседы этажа.

Что может этот бот

Бот напоминает о дежурстве на этаже и еженедельной проверке комнат.

Как задеплоить бота

  • Создать файл .env в корне проекта с данным содержимым:
VK_API_TOKEN=YOUR_TOKEN
VK_ENDPOINT=https://api.vk.com/method/
VK_API_VERSION=5.154
  • YOUR_TOKEN заменить на токен бота.

Конфиг

chat-id: 2  # id чата, который должен слушать бот
rooms:      # список комнат на этаже  
    - number: "123"
      members:
        - name: Ваня
          id: id123456789
        - name: Петя
          id: id123456789
      swap-pending: false
      ...
      
duty-timings: # время для напоминания о дежурстве
    - "10:30"
    - "21:30"
 
clean-timings: # время для напоминания о проверке
    - "11:00"
    - "18:00"

frequency: 2 # частота дежурства в днях (2 значит напоминать каждые два дня)
current: "393" # комната, ответственная за дежурство в данный момент
clean-day: saturday # день проверки комнат
clean-hour: "21:00" # время проверки комнат
retries: 3 # количество попыток отправки http запросов к vk api в случае неудачи
retry-interval: 1 # сколько ждать между попытками в секундах
dad: 123456789 # id папы (тот, кто создал vk token), в принципе можно указать чей угодно id

admins: # id администраторов (тех, кто может управлять ботом с помощью команд)
    - 123456789
    - 134436345

Список команд

  • /queue:
    Показать текущий порядок дежурств

  • /reset:
    Восстановить порядок комнат по умолчанию

  • /swap <комната 1> <комната 2>:
    Поменять комнаты местами в порядке дежурств

  • /setcurrent <номер комнаты>:
    Назначить комнату дежурной

  • /accepted:
    Пометить, что текущее дежурство принято

  • /skip <число>:
    Пропустить n напоминаний дежурств

  • /setfreq <число>:
    Установить частоту дежурства

    число: от 1 до 7
  • /getcleanday:
    Вывести текущий день проверок комнат

  • /setcleanday <день недели>:
    Установить день проверки комнат

    день недели: понедельник - воскресенье, monday - sunday
  • /getcleanhour:
    Вывести текущее время проверки комнат

  • /setcleanhour <время> :
    Установить время проверки комнат

    время: час:минута