Skip to content

Latest commit

 

History

History
105 lines (67 loc) · 2.74 KB

README_en.md

File metadata and controls

105 lines (67 loc) · 2.74 KB

Timesheet bot - Miyamoto-san

This is a Slack-bot timesheet app written as Google Apps Script.

We forked Original version to use it for Georepublic.

You can say like below for tracking your working times in Slack.

demo1

Chatting Examples

  • morning ← Start working from the current time
  • hi 12:00 12:00 ← Start working with the specified time
  • morning 10/2 12:00 ← You can set start working time with past date and time
  • see you ← Stop working with current time
  • bye 20:00 ← Stop working with the specified time
  • 明日はお休みです ← Declare a day off
  • 10/1はお休みです ← Declare a day off
  • 明日のお休みを取り消します ← Cancel a day off
  • 明日はやっぱり出勤します ← Cancel a day off
  • whois ← List of working people
  • who is 休み ← List of people who is having a day off
  • 9/21は誰がお休み? ← 指定日の休暇リスト

How to use

If you say commands in the #_timesheet channel on the Slack, the record will be logged on your handle name's sheet in Slack Timesheet spreadsheet.

You can specify which day is holidays on the sheet.

Change messages

If you want to change messages from the bot, please change text in _メッセージ sheet in the Slack Timesheet
If you create multiple rows, the bot will pick one randomly. Feel free to add/modify it!

仕様/Limitation

  • Slack user name must not contain .(dot). Mentioning will fail.

開発/Development

If you push your code to the master branch, the script will automatically deploy as Google App Script.

Please don't modify main.gs directory. It will be created by make upload command during the deployment process.

Please see DEVELOPMENT.md for the development details.

Todo

See issues

Test

npm install
make test

Files

  • main.js

    • HTTP handler
  • timesheets.js

    • Read inputs and call methods
  • slack.js

    • Input/Output from/to Slack
  • gs_template.js

    • Message template handler using Google Spreadsheet
  • gs_properties.js

    • Key/Value store of settings using Google Spreadsheet
  • gs_timesheets.js

    • Save timesheet data on the Google Spreadsheet
  • gas_properties.js

    • Key/Value store of settings using Google Apps Script
  • gas_utils.js

    • Utilities for Google Apps Script
  • utils.js

    • Utilities of global
  • date_utils.js

    • Date time utilities
  • underscore.js

License