Discover airdrops before the masses.
Airdroid is a tool that listens for new SSL certificates via CertStream websocket, and then checks if the domain names registered in the certificate are included in a list of specific keywords. If so, it will send a notification to a Telegram channel.
Official airdrops always come with a website page, which often has a new domain or subdomain. This tool will help you discover airdrops before teams announce them officially.
The primary flow is composed of three operations that are run concurrently:
- A CertStream websocket connection is opened to listen for new certificates. Each certificate is checked against a whitelist of tracked keywords, and the resulting domains are added to a "new domains" list.
- A thread is spawned to handle Telegram updates, periodically checking for new domains in the "new domains" list. If any are found, they are checked against the "already-known domains" list to avoid duplicates, and then returned as a Telegram message.
- The Teloxide dispatcher is run to handle incoming commands to manage the bot.
Airdroid also uses RocksDB to store the domains list and some Telegram-related data. A DB instance is opened at startup and shared through all the components of the bot.
To run airdroid, you need the Rust toolchain installed. You can install it by following the instructions here. Then, you can run the bot by following these steps:
-
Clone the repository and
cd
into it:git clone [email protected]:merklefruit/airdroid.git cd airdroid
-
Create a
.env
file and fill it with the env variables required:cp .env.example .env
-
Run the bot:
cargo run
-
Once installed, you can open the telegram chat with the bot and should be able to send the
/help
command to see all the available commands.
Lastly, thanks to Rain from the Flashbots discord for the idea!