GithubHelp home page GithubHelp logo

kvr-appointment-finder's Introduction

KVR appointment finder

Have you ever found yourself in the situation where you wanted to book an appointment at the KVR and no slot was available?

Well you could check the website every hour and hope that someone has canceled their appointment or you could automate that shit for you ;)

How to use

Configuration

Before searching for appointments you need to configure which type of appointment you are looking for. This is done in the config.yaml.

Additionally, you need to configure a Telegram bot that notifies you about the latest search results. First, you need to create a bot. This is done by sending the BotFather a message containing the command /newbot. It will then prompt you to enter a name and username for the bot. After that you will receive a token which you have to set in the config.yaml.

Secondly, you need your personal ChatID. This can be received by the IDBot first sending /start followed by the /getid command. Your ChatID has to be set in the config.yaml as well.

Running the application

You can choose to either run the application in a docker container or directly on your system

Docker

Simply replace your-config.yaml with the name of your configuration file and run the commands below.

docker build -t kvr .
docker run -v ./your-config.yaml:/app/config.yaml -it kvr

Note that non-Headless mode requires further configuration of the Dockerfile and your system.

System

yarn install
node index.js

Known issues

It has recently been discovered that the dialogue is sometimes guarded by a (fairly simple) captcha. This seems to be dependending on the concrete endpoint with only the "Bürgerbüro" being affected so far. For now the program will simply skip the appointment search and wait for the configured interval.

kvr-appointment-finder's People

Contributors

botastic avatar gosticks avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.