Telegram Media Relay Bot: New Horizons of Group and Media Management ✨
— Represents a significant step forward in the development of Telegram Media Relay Bot. This release introduces new features for group management, improves media distribution logic, and brings numerous stability and usability enhancements.
Completed Tasks from the Previous Release 🎯
In this release, all previously set tasks have been successfully completed:
- Group Support: The bot now fully supports working in group chats.
- Improved Contact Management: New functions have been added for more flexible contact management.
- Access Filters: Filters have been implemented to restrict bot access based on specific criteria.
What’s Next? 🚀
Main Tasks
-
Batch Video Sending
Add the ability to send multiple videos at once (in one message) for user convenience. -
Auto-Send Videos
Implement an automatic video sending feature. This means users can set the bot to send videos without waiting for manual input. The bot will automatically select the appropriate recipients after a specified time. This feature will be configurable in the settings. -
Documentation
Create detailed and user-friendly documentation for both users and developers, including setup and usage instructions for the bot. -
Privacy Settings
Add the ability to configure privacy settings:- Who can add you to their contacts.
- Who can search for you through the bot.
- Possibly other privacy-related parameters.
Additional Tasks
-
Updating Contact Links
Implement the ability to update your personal contact link with options:- Preserve existing contacts.
- Delete all connections and start fresh.
-
Reload Configurations Without Restarting the Bot
Add the ability to update language settings and other configurations without needing to restart the bot.
Changelog
v0.2.0-beta Galactic Griffin (2025-01-20)
Features
- AccessPolicy: add a message about the restriction (90e6a0b)
- add the video distribution logic (3fdd6a8)
- config: add new parameters to the config (8974866)
- ContactGroups: add new logic for ContactGroups (d255ce6)
- Database.cs: add a new function (0baffb1)
- Database: add a new function (4ac701e)
- Database: add a new functions (e5ca66e)
- Database: add GetAllUsersIdsInGroup (13c450b)
- GetSelfLink: improve your work with a personal link inside the bot (361f244)
- Getters.cs: add a new GetTelegramIdByLink function (59d76a1)
- Group.cs: add a new keyboard display (984af12)
- Group.cs: add logic to manage groups (ae99700)
- Group: add a state and a keyboard submenu (499ee05)
- Group: add the first implementation of the groups menu (3abe53b)
- Groups.cs: add new logic (a91d7fb)
- Groups.cs: add the CheckGroupOwnership function (5b60c6f)
- HandleStateBreakCommand: add a new attribute (86eeefb)
- KeyboardUtils.cs: add a new keyboard (f1c0f91)
- KeyboardUtils.cs: add new buttons (1829286)
- locales: improve the text for working with links (03f93b0)
- MediaDownloader.cs: add logic for checking access conditions (113e952)
- Menu: add a new function (6ff95f2)
- PrivateUpdateHandler.cs: added a register for groups (062e086)
- States: add a new state (bc2f732)
- texts: add new translation lines (58f7592)
- Utils.cs: extend the HandleStateBreakCommand function (7fbb4ad)
- Utils: add GetUserGroupInfoByUserId (eab8a03)
- VideoDistributionConfigurator.cs: expand the functionality (48d8e43)
- VideoDistributionConfigurator.cs: expand the options (6eb8a8b)
Bug Fixes
- locales: correct typos in localization files (893747a)
Documentation
- readme: change license name to New License (3bd3604)
- README: cross out one of the tasks (b78823c)
- README: cross out one of the tasks (6a307ce)
Refactoring
- ContactGroup: correct the name to a unique one (22bf90f)
- Contact: improve the visual design (d79b4de)
- Database.cs: fix the typo in the request (04dcfc9)
- Database: add a new attribute (09afd5b)
- Database: improve the code (608428c)
- Database: migrate the functions of creating tables/DB (e57f07f)
- Database: rename the field inside the DB (9664115)
- Database: rename the function (2d42d9d)
- fix the inaccuracies and improve the logic of the code (54b0197)
- fix two bugs (d9586ef)
- Group.cs: removed unnecessary imports (2cdf1ca)
- Groups.cs: extract messages from the code to localization files (f25a632)
- Groups.cs: extract text from the code to localization files (9e3a1cf)
- Groups.cs: fix the bug (5dca4e4)
- Groups.cs: make the function name more clear (95eea0d)
- Keyboard: replace the old function access with new ones (a713d61)
- Keyboard: transfer the functions to separate files (c964cf7)
- Menu: correct the name to the updated one (0e0e394)
- Menu: put the code in the function (293fc02)
- ontacts.cs: specify the type of variables (bb64c26)
- PrivateUpdateHandler.cs: make the callbacks clearer (9ef2d2f)
- PrivateUpdateHandler.cs: standardize the code block (29c9ea8)
- States: change the 'UsersGroupState' to a more universal one (0ff4fbf)
- texts: remove text from the code into locales files (8dcbf4f)
- Utils: put 'GetUserGroupInfoByGroupId' in the utilities (3436c9c)