{"id":48811241,"url":"https://github.com/chrisvdg/scrumtime","last_synced_at":"2026-04-14T07:33:34.756Z","repository":{"id":57504847,"uuid":"144003479","full_name":"chrisvdg/scrumtime","owner":"chrisvdg","description":"Simple bot announcing scrum time","archived":false,"fork":false,"pushed_at":"2020-06-05T07:27:25.000Z","size":288,"stargazers_count":1,"open_issues_count":9,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-14T23:47:30.568Z","etag":null,"topics":["bot","chatbot","cron","go","message","scrum","slack","slackbot","telegram","time"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chrisvdg.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-08-08T11:22:13.000Z","updated_at":"2020-06-05T07:27:27.000Z","dependencies_parsed_at":"2022-09-19T10:01:04.389Z","dependency_job_id":null,"html_url":"https://github.com/chrisvdg/scrumtime","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/chrisvdg/scrumtime","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisvdg%2Fscrumtime","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisvdg%2Fscrumtime/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisvdg%2Fscrumtime/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisvdg%2Fscrumtime/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chrisvdg","download_url":"https://codeload.github.com/chrisvdg/scrumtime/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisvdg%2Fscrumtime/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31786980,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T02:24:21.117Z","status":"ssl_error","status_checked_at":"2026-04-14T02:24:20.627Z","response_time":153,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bot","chatbot","cron","go","message","scrum","slack","slackbot","telegram","time"],"created_at":"2026-04-14T07:33:34.010Z","updated_at":"2026-04-14T07:33:34.743Z","avatar_url":"https://github.com/chrisvdg.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Scrumtime\n\nSimple chat bot that can be used to announce scrum time by sending a message to a chat room with a defined schedule.\n\nSupported chat platforms:\n - [Slack](https://slack.com/)\n - [Telegram](https://telegram.org/)\n\n## Usage\n\nCreate a yaml file called `config.yaml` and insert data according the the following structure\n\nConfig example:\n\n```yaml\nbots:\n  ex_slack:\n    platform: slack\n    api_key: 'xoxp-388...123'\n  ex_telegram:\n    platform: telegram\n    api_key: '123456789:AAF...E_Y'\n\nmessages:\n  example:\n    body: 'Hello world!'\n    messengers:\n      - bot: ex_slack\n        chat_ids: test_channel\n      - bot: ex_telegram\n        chat_ids: ['-123456789']\n    schedule: '0 0 0 * * 1-5' # The version of the cron lib used for scheduling uses the Quartz format (first field represents seconds)\n    expiretime: 10m # Optional time after which the message will be deleted. Format: https://golang.org/src/time/format.go?s=40541:40587#L1364\n    disable_link_preview: True # Optional flag for disabling link preview when sending url's\n```\n\n### Schedule\nSchedule is in a Quarts Scheduler format, [more info can he found here.](http://www.quartz-scheduler.org/documentation/quartz-2.3.0/tutorials/crontrigger.html)\n\nRun\n```sh\n# this will take `./config.yaml` as config file by default\ngo run main.go\n```\n\nAlternatively to explicitly add the config file:\n```sh\ngo run main.go -c \u003cpath/to/file\u003e/myconfig.yaml\n```\n\n## Docker\n### Build Docker image\n\nThis project has a Dockerfile to create a small docker image of this project.\n\nGenerate image:\n```sh\ndocker build -t scrumtime .\n```\n\nSpecify Go version (Go version to build with)\n```sh\ndocker build -t scrumtime . --build-arg go_version=1.11\n```\n\nSpecify Alpine version (Final image base into which the binary is copied)\n```sh\ndocker build -t scrumtime . --build-arg alpine_version=3.8.4\n```\n\n\nRun container with image:\n```\ndocker create --name scrumtime_helloworld scrumtime\ndocker cp config.yaml scrumtime_helloworld:/\ndocker start scrumtime_helloworld\n```\n\n### Pull docker image\n\nAlternatively, the image pushed on Docker Hub can be used.\nThis command also mounts (`-v`) the config file into the container instead of copying to it  \nand runs it in the background (`-d`).\n\n```sh\ndocker run --name scrumtime_helloworld -d -v $PWD/config.yaml:/config.yaml chrisvdg/scrumtime # Or with version tag: chrisvdg/scrumtime:0.0.1\n```\n\n### Setting timezone of container\n\nBy default the image uses the UTC timezone. To set the timezone of your container, set the `TZ` environmental variable.  \nUsing this, you can't set it with abbreviated, use the full name of the `TZ` Database. (Timezone may be changed but time will still be UTC)\n\n```sh\ndocker run -e \"TZ=Europe/Brussels\" -d -v $PWD/config.yaml:/config.yaml chrisvdg/scrumtime\n```\n\nThe timezone can also be configured in the Dockerfile so there won't be a need to set it when starting the container. For this the abbreviations can be used.\n\nReplace the line `RUN apk add tzdata` with:\nReplace `EST` (2x) with your timezone.\n```Dockerfile\nRUN apk add tzdata \u0026\u0026 cp /usr/share/zoneinfo/EST /etc/localtime \u0026\u0026 echo \"EST\" \u003e  /etc/timezone \u0026\u0026 apk del tzdata\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchrisvdg%2Fscrumtime","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchrisvdg%2Fscrumtime","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchrisvdg%2Fscrumtime/lists"}