Technical task for creating a Telegram bot
General information
The Telegram bot is designed for managing accounts and automating the process of sending messages to users, which will simplify interaction with clients and increase the effectiveness of marketing campaigns. The main tasks of the bot include registering new users and managing their access, as well as importing a user database for quick addition of clients. The bot will provide the ability to add, edit, and delete accounts used for sending messages, as well as enabling and disabling accounts at the user's request.
Additionally, the bot will configure and launch broadcasts with the ability to select accounts and parameters such as greetings, message text, and delay between messages. Users will be able to stop the broadcast at any time and manage the chats from which the bot will take users for sending messages. An important feature will be displaying information about the user's current subscription, including start and end dates, as well as sending messages about the upcoming end of the subscription and about the end of the subscription.
Administrators will have access to a special menu for managing users and their subscriptions, including viewing statistics regarding users, the ability to extend subscriptions, and change prices. The bot will also address clients by their account name, creating a more personalized experience. The programmer will need to implement all these functions, ensuring a user-friendly and intuitive interface.
Functional requirements
Main menu
Buttons:
Account management
Broadcast management
Subscription
Admin panel (for admin only)
Account management
Buttons:
Account list
Add new account
Functions:
Enable/disable accounts.
Edit data.
Delete account.
Import/Export account database
Broadcast management
Buttons:
Manage chats
Manage spam
Functions:
Chat list.
Add new chat.
Start/stop broadcast with parameters (greeting, text, account selection, delay).
Import/Export user database.
Subscription
Subscription information (start and end dates, admin account).
Admin menu
Buttons:
User list
Add user
Statistics
Functions:
View user statistics.
Extend subscription, change price, delete user.
Add user via user_id specifying price and subscription term.
Messages
Messages about the upcoming end of the subscription (in a week, in a day) and about the end of the subscription.
Additional features
The bot should address the client by their account name.