Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yilmaznaslan/berlin-auslaenderbehorde-termin-bot
A simple way to automate booking an appointment at Berlin Ausländerbehörde using java and selenium framework
https://github.com/yilmaznaslan/berlin-auslaenderbehorde-termin-bot
automated-appointment-search docker java selenium
Last synced: 2 months ago
JSON representation
A simple way to automate booking an appointment at Berlin Ausländerbehörde using java and selenium framework
- Host: GitHub
- URL: https://github.com/yilmaznaslan/berlin-auslaenderbehorde-termin-bot
- Owner: yilmaznaslan
- License: agpl-3.0
- Created: 2022-11-02T11:48:37.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2023-12-26T10:16:46.000Z (11 months ago)
- Last Synced: 2024-01-08T09:06:47.328Z (11 months ago)
- Topics: automated-appointment-search, docker, java, selenium
- Language: Java
- Homepage: https://yilmaznaslan.github.io/berlin-auslaenderbehorde-termin-bot/
- Size: 56.1 MB
- Stars: 108
- Watchers: 4
- Forks: 49
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Berlin Auslaenderbehorde Termin Bot
This application uses Selenium library to automatically detect when an appointment is available at
Ausländerbehörde Berlin for the selected visa service. Whenever an available day is found, it beeps.## Prerequisites
1. In order to run selenium server you will need to install docker first. See [Get Docker](https://docs.docker.com/get-docker/) for more info. After installing the docker run the selenium server as below```shell
docker run \
-d \
--name selenium \
-p 4444:4444 -p 7900:7900\
--shm-size="2g" \
-e SE_NODE_MAX_SESSIONS=5 \
-e SE_NODE_OVERRIDE_MAX_SESSIONS=true \
-e SE_NODE_SESSION_TIMEOUT=120 \
-t selenium/standalone-chrome:latest
```**For MacOS with M1 chip**
```
docker run \
-d \
--name selenium \
-p 4444:4444 -p 7900:7900\
--shm-size="2g" \
-e SE_NODE_MAX_SESSIONS=5 \
-e SE_NODE_OVERRIDE_MAX_SESSIONS=true \
-e SE_NODE_SESSION_TIMEOUT=120 \
-t seleniarm/standalone-chromium:latest
```2. Make sure that JDK version in your machine is **17** or higher.
- Check the java version: `java --version`.
- If it is below 17, [install](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html) a newer version of java.
- After installation, check again the version with `java --version`## How to run
- Fill the [personInfoDTO.json](src/main/resources/DEFAULT_PERSONAL_INFO_FORM.json) file with **your** personal information.
- Set the value of the `"Country"` matching the value of your country in the [](src/main/resources/countries.json)
- If you are single, set the value of `"isThereFamilyMember"`: to `"2"`.
- If you are married, set the value of `"isThereFamilyMember"`: to `"1"`
- There is also an [example file](src/main/resources/example_DEFAULT_PERSONAL_INFO_FORM_with_family.json) if you have family.
- Fill the [visaFormTO.json](src/main/resources/DEFAULT_VISA_APPLICATION_FORM.json) with your visa request.
- You can also copy-paste from a [template](src/main/resources/) that matches your request.- Run the application in terminal by `./gradlew run`.
- You will get a sound notification once the bot found available dates.- To see what is happening inside the container, head to http://localhost:7900/?autoconnect=1&resize=scale&password=secret.
## License
Copyright © since 2022 Yilmaz Naci Aslan and other contributors.
_(For the full contributors' list, run `git shortlog --summary --numbered --email` from the root directory of this project.)_This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
You should have received a copy of the GNU Affero General Public License along with this program.
If not, see .