Bot essence in brief: the bot sends tasks and checks if the user has completed them. The main tasks are to subscribe to social networks (the bot should monitor whether the user has subscribed at the moment. Note: it doesn't matter if the same user unsubscribes after a day or a month, what matters is at the moment). The bot should also be able to receive screenshots (up to 3-5 MB in size) in tasks like "Has the user installed the launcher or not," the screenshot serves as proof because no other way to prove the installation of the launcher by the user has been found yet.
Bot logic:
1. Post on our social networks containing a link to the Discord channel
2. Separate channel (or group of channels) on our Discord server (Note: NOT a separate server for drops, but within our server: discord.gg/invite/ggem)
3. Button (Start) and button for information on the current airdrop (Info)
4. After clicking the "Start" button, a message about privacy, additional terms, etc., appears, followed by a "Confirm" button
5. After clicking the "Confirm" button, the first task appears
6. Tasks follow one after the other, checking the user's subscription status
Order: Twitter > Telegram > Instagram > Twitch > YouTube
The logic of each task is the same: check for subscription
7. After subscribing to social networks, a custom task follows (install our launcher and upload a screenshot to the bot as confirmation, also write your nickname as a simple message)
The bot sends an informational message (Where to download the launcher, how to download and install it, how to register on it, how to upload a screenshot, etc.), followed by the "Upload Screenshot" button
The screenshot is uploaded to our database, where screenshots can be manually sorted by each user
8. Text task (the user needs to provide their wallet address, essentially just copy and paste it into the message), followed by the "Send" button. This is to send the user a reward in case of winning.
9. After the "Send" button, there is the "Finish" button, clicking which displays the message "You have successfully completed all the tasks," "Thank you for your contribution!" and "Stay tuned for updates! We will announce winners soon!"
Tools needed within the bot:
1. Admin panel: ability to edit each task (text sent by the bot), ability to change links within each task
I have highlighted 3 main types of tasks:
- Clicking on a link and checking the "subscribe" button click (APIs of various social networks)
- Custom task: the bot sends a message, and the user must upload an image and send a message
- Text task: the bot sends a message, and the user must respond with a message as well (character limit needs to be set)
2. Analytics and database: ability to sort all information received from the bot into an excel table (Google Sheets), indicating information from the custom task (i.e., images - to be manually checked), and text task (to be manually checked), as well as the completion of all other tasks. The document should display:
- Discord username of the user
- Date and time of completion
- User's IP address (if possible to determine the country - would be great to help understand the audience and ban cheaters)
- User's wallet (this is the text task mentioned above)
- Role within our Discord
3. Login attempt checker: 1 Discord user = 1 attempt at the airdrop (seeing the IP address is necessary so that if a user creates another account to increase chances of winning, we can manually check and take appropriate measures). After completing the airdrop, one user no longer has access to it, a message can be left ("You have already participated in this airdrop. We will announce the winner-list soon.")
https://docs.google.com/document/d/1JbhUFimnA-LVP8rAYw5KR4bu4Cq8B8wZCg1Owu9z6pQ/edit