https://github.com/jonasknobloch/gomedo
Trigger webhooks based on medical appointment availability.
https://github.com/jonasknobloch/gomedo
covid-19 monitoring self-hosted vaccine-appointments webhooks
Last synced: about 2 months ago
JSON representation
Trigger webhooks based on medical appointment availability.
- Host: GitHub
- URL: https://github.com/jonasknobloch/gomedo
- Owner: jonasknobloch
- License: mit
- Created: 2021-05-17T15:38:38.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2021-09-03T16:50:00.000Z (over 3 years ago)
- Last Synced: 2025-02-04T19:13:51.223Z (3 months ago)
- Topics: covid-19, monitoring, self-hosted, vaccine-appointments, webhooks
- Language: Go
- Homepage:
- Size: 8.79 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Gomedo
[](https://goreportcard.com/report/github.com/jonasknobloch/gomedo)
Gomedo allows for easy monitoring of a [tomedo](https://tomedo.de) medical appointment calendar.
*This project is not affiliated, associated, authorized, endorsed by, or in any way officially connected with
zollsoft GmbH or any of its subsidiaries or its affiliates.*## Usage
Using the [docker-compose configuration](deployments/docker-compose.yaml) is probably the fastest way to get started.
Directly running the binary works just as well, provided all required environment variables are set.
See the [Dockerfile](build/docker/go/Dockerfile) for detailed build instructions.### docker-compose
```shell
docker-compose -f ./deployments/docker-compose.yaml up -d
```## Configuration
The following environment variables should be used to monitor a specific calendar.
| Environment | Description | Required |
| -------------------- | ----------------------------------- | -------- |
| UNIQUE_IDENTIFIER | Location specific unique identifier | Yes |
| SCRAPE_ENDPOINT | HTTP endpoint used for scraping | Yes |
| SCRAPE_INTERVAL | Interval used for scraping | Yes |
| APPOINTMENT_KEYWORDS | Comma separated list of keywords | No |
| NOTIFICATION_HOOKS | Comma separated list of webhooks | No |### Example
```dotenv
UNIQUE_IDENTIFIER=610befd11b2f8
SCRAPE_ENDPOINT=https://onlinetermine.zollsoft.de/includes/searchTermine_app_feature.php
SCRAPE_INTERVAL=30s
APPOINTMENT_KEYWORDS=impftermin,covid-19,biontech,astrazeneca
NOTIFICATION_HOOKS=https://example.org/webhook/68e11060-89dc-4031-9a63-a7a2d7e29927
```## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.