Table of Contents
VATSIM Bot aka VATEye Developed by Marko Tomicic (VATSIM ID: 1359931). Bring nice features to your Discord server and let your member get to know your vACC/ARTCC better! With modern Discord features, integration alongiside VATSIM bot we make your life easier!
Here are features of this bot:
- ATC & Bookings Annoucements
- Arrivals & Departures
- Load, unload & reload entire bot without the need to restart the bot
- Decoded METAR & TAF
- Easy customatization of bot
- Automatically assign Local Member roles to your members if they are part of your Subdivision
- VATSIM Events API to post events reminders 2 hours before events
- If user DM's your bot it will reply to it (if we have an answer for it) - Still in active development
I spent a lot of time going over Nextcord, Pycord and now when Discord.py is back in development it was time to update this bot.
Big thanks to VATSIM-Scandinavia team for introducing me to Slash commands, Events posting and role assignement for users.
This bot was built with:
This bot was built to be used by VATSIM vACC/ARTCC but I can't provide 1 bot you could invite to your server due to my current programming knowledge so you will need to host it on your own. I made sure you don't need to touch code at all but there will be some edditing needed in order to get this bot working.
- Visual Studio Code
- VPS (To host the bot, you can get DigitalOcean Droplet for around 5$ a motnh or host it on your own machine, Raspberry Pi, etc)
In order to make this bot work you follow instructions step by step!!
If you wish to use feature where bot will send few messages when it joins the server make sure to edit cogs/on_server_join.py
with all your info and messages!
If you wish to disable any of the features of the bot locate helpers/config.py
and remove any cogs you don't want to use from COGS array!
- Create your bot on Discord Developer Portal
- Get a free CheckWX API Key
- Clone the repo
git clone https://github.com/Markanito/VATSIM-Discord-Bot.git
- Install required packages (Make sure you have Python and Pip installed beofre installing packages!)
Or if you are on Linux based system
pip install -r requirements.txt #Windows
sudo pip install -r requirements.txt #Linux
- Create .env file and fill in all data from example .env
- Enter airports ICAO code in
bot_config/airports.json
[ "LJLJ", "LJMB", }
- Enter ATC Callsigns in
bot_config/callsign_prefix.json
[ "LDZO", "LYBA", }
- Run your bot by runing
python3.10 bot.py
- Invite your bot to your server and have grant it APPLICATION.COMMANDS scope or slash commands won't work. Once bot joins the server run
[prefix]sync
command in order to sync all your commands with the server. If commands are not shown when you type / in any channel go to Server Settings -> Integrations -> VATEye and click on any command and disable the permissions, save it and re-enable it. Do this for all commands and Slash command should work now. This is Discord bug and not issue with the code and for now this has to be done if you have an issue with Slash commands not showing up.
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
If you need any help setting up this bot you can always reach out to me via VATSIM Adria Discord Server (Username: Marko Tomicic - 1359931)
There are some planned updates coming in the future which will happen soon or sometimes in future. It all depends on how much time I have on my hand to keep working on this project and ideas I have and all suggestions comming in from the rest of VATSIM community.
Here is list of planned updates for now:
- Put all arrivals & all departures into single embed
- Put all bookings into single embed
- Add support for Slash commands
- Switch to Discord.py v2
- Implement VATSIM API usage
- Implement automatic events posting
- Implement Auto Reponses for bot (few of them only working in DM)
- Completely remove bot_config folder and switch to .env