Notify if configured planes have taken off or landed using Python with OpenSky(free) or ADSBExchange Data(paid, declining data, and run by clowns), outputs location of takeoff location of landing and takeoff by reverse lookup of coordinates.
I made this program so I could track Elon Musk's Jet and share his whereabouts with others orginally on Twitter (but now suspended, but now also on other platforms). I have now expanded and run multiple accounts for multiple planes, a list of the accounts can be found here https://grndcntrl.net/links
I'm open to any help or suggestions, I realize there are many better ways to improve this program and better ways to get this program to work properly, I'm only a noob. I'll accept pull requests. If you'd like to discuss join https://discord.gg/groundcontrol
apt update
apt install python3
apt install python3-pip
pip install pipenv
pipenv install
Selenium/ChromeDriver is used to take a screenshot of the plane on globe.theairtraffic.com. Or use Google Static Maps, which can cost money if overused(No tutorial use https://developers.google.com/maps/documentation/maps-static/get-api-key to get to a key).
curl -sSL https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add
echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" > /etc/apt/sources.list.d/google.list
apt update
apt install google-chrome-stable
These output methods once installed can be configured in the planes config you create, using the example plane1.ini
apt install screen
apt install git
git clone -b multi --single-branch https://github.com/Jxck-S/plane-notify.git
cd plane-notify
mainconf.ini.example
to mainconf.ini
andCopy plane1.ini.example
to plane1.ini
. plane1.ini
can change names as long as it ends with the ini extensionscreen -R <name screen whatever you want>
pipenv run python __main__.py
Install docker from their website. Run the following command from the root of the project.
docker-compose up -d
After running this command, due to the -d
flag the container will be running in the background. To see the logs of the docker container use docker logs CONTAINER
(add -f
to continue streaming the containers output)
Data obtained can be sent through Telegram to a chat (contact), channel or groups.
Creating a Telegram Bot
Getting channel or chat (contact) ID
{...
"forward_from_chat": {
"id": xxxxxxxxx,
...}
Getting a group ID
https://web.telegram.org/z/#-xxxxxxxxx