/SlackTogglReminders

Slack Toggl Bot Integration for Reminders, Reporting, etc.

Primary LanguageJavaScriptGNU General Public License v3.0GPL-3.0

SlackTogglReminders

Build Status Coverage Status

This is a simple bot for slack that runs on Beep Boop HQ (Slack's bot hosting platform) integrating with Toggl to run some simple reporting and monitoring tasks:

  • Reminds user that they have failed to meet the minumum hours in a period.
  • Provide a rolling period summary for any user in slack connected to toggl

Required Environment Variables

You will need the following environment variables for this bot to run.

SLACK_TOKEN= 
SLACK_CHANNEL_NAME=  
SLACK_NOTIFICATION_LIMIT_PERIOD= 
SLACK_TOGGLE_BOT_TEST=false
TOGGL_API_TOKEN=
TOGGL_WORKSPACE_NAME= 
USER_MIN_HOURS= 
USER_MIN_HOURS_IN_DAYS= 
USER_MIN_HOURS_CHECK_FREQUENCY= 

SLACK_TOKEN Slack API Token Provided Here: https://[YOUR_SLACK_TEAM].slack.com/apps/new/

SLACK_CHANNEL_NAME Default slack channel for which the bot will post notifications (e.g. time-management)

SLACK_NOTIFICATION_LIMIT_PERIOD How often the bot can send a notification for a particular user in hours (e.g. 24)

SLACK_TOGGLE_BOT_TEST=false set to false unless executing unit tests

TOGGL_API_TOKEN Toggl API Token Provided Here: https://www.toggl.com/app/profile

TOGGL_WORKSPACE_NAME Toggl Workspace Name to use (e.g. SlackTogglRemindersWorkspace)

USER_MIN_HOURS Minimum number hours needed to be recorded in a period (e.g. 40)

USER_MIN_HOURS_IN_DAYS Number of days in the rolling period (e.g. 7)

USER_MIN_HOURS_CHECK_FREQUENCY How often to check toggl for time tracking in miliseconds (e.g. 60000)