Releases: ZenonEl/TelegramMediaRelayBot
v0.3.0-beta Cosmic Cuckoo
Telegram Media Relay Bot: Unleashing Automation, Power, and User Control ✨
Completed Tasks from the Previous Release 🎯
In this release, I successfully implemented all the ambitious features planned on my roadmap:
-
Parallel Video Processing: The bot now processes multiple links simultaneously. No more waiting in line—your media downloads run in parallel, dramatically speeding up the workflow for active users.
-
Scheduled Auto-Sending: Introducing a powerful automation feature! You can now configure the bot to automatically send downloaded media after a specified delay, without manual intervention. Set it up once and let the bot handle the rest.
-
Comprehensive Documentation: I've launched a detailed and user-friendly documentation site. It covers everything from initial setup for users to in-depth guides for developers, ensuring everyone can get the most out of the bot.
-
Granular Privacy & Security Controls: You are now in full control of your privacy. The new settings allow you to:
- Generate a new personal link at any time.
- Control who can find you through the bot.
- Create a personalized "stop-list" of sites to ignore.
- Define custom rules for how content is forwarded.
-
Expanded Platform Support with gallery-dl: By integrating
gallery-dl, the bot's media sourcing capabilities have been massively expanded, adding native support for hundreds of new imageboards and social media sites.
What’s Next? 🚀
My focus for the next development cycle is on architectural improvements, deeper intelligence, and even more powerful configuration options. Here is my roadmap:
-
Modular Downloader Architecture:
Refactor the media downloading system to be modular and interface-based to simplify adding new services in the future. -
Transition DB to an Asynchronous Model:
Fully convert all database operations to async/await to improve performance and responsiveness under load. -
Smart Text Cleanup + Message Merging
Implement automatic cleanup of junk text placed before the link by various services. Automatically merge text sent in separate messages shortly after a link into a single caption attached to the media. -
Inbox (Incoming media)
Add an Inbox mode where incoming media is saved to the database instead of being immediately sent to the recipient. Provide a list view, detailed item view (sender, time, hashtags, original caption), and delete option. -
Downloader Authorization Support:
Integrate the ability to use authorization for yt-dlp and gallery-dl to download private or login-required content. -
Detailed Downloader Parameter Configuration:
Add the ability to the config to pass specific parameters and use custom configuration files for yt-dlp and gallery-dl. Design a configuration system for each site individually. -
Built-in Database Backup:
Create a function for backing up the entire bot database. -
Download Cancellation:
Implement the ability to cancel a media download that has started but not yet completed. -
Add "Help" Button:
Integrate a "Help" button or a link to the documentation into the main settings section of the bot.
Changelog
v0.3.0-beta Cosmic Cuckoo (2025-07-27)
✨ Features
- generate-changelog.sh: auto generate changelog (7b476cc)
- main.yaml: add new parametr (bec0aed)
- main.yaml: update parametrs (87db240)
- DomainLists: add default hosts file (8943879)
- MediaGet.cs: add try catch (cc8c5ae)
- workflows: create main.yaml (d0cc24d)
- SqLite: add PrivacySettingsTargets.cs (d31b859)
- Config.cs: add env support (38d4cb0)
- Users.cs: add new kb (64746b9)
- Users.cs: add new menu (8f10412)
- AddContact.cs: add new filter (bfb56db)
- Contacts.cs: add new getter (50a56a0)
- MediaDownloader.cs: add temporary plug (2d7ff0c)
- IContactsCallbackQuery.cs: add new getter (699cb16)
- ISettingsCallbackQuery.cs: add new callbacks (6a2496f)
- Repositories: add new func (52f4405)
- Interfaces: update IContactRepository.cs and IPrivacySettings.cs (9b43cc3)
- Types.cs: add new types (3a3b56a)
- Resources: add new texts (d76d227)
- DBInit.cs: add new singletons (24dd4a5)
- MySql: add new func (10d371e)
- Interfaces: add new func (5debf23)
- Database: add new table (08c0905)
- Utils: add new func (cca8322)
- ICallBackQuery: add new CallbackQueryHandlers (7eb8db4)
- MediaDownloader.cs: add using _userFilter and _categorizer (d4ac08a)
- States: add new state (4311a17)
- Users.cs: add new menu (858c22d)
- SiteFilter: add new content filter (6cd50a0)
- Types.cs: add new types (4cd62e7)
- Repositories: add SqLite func (31a9363)
- Interfaces: add new interfaces (4795579)
- IUserRepository.cs: add new func (409419b)
- Repositories: add new func (184875a)
- BInit.Cs: add new singletons (05e599b)
- MySql: add new classes (ec26cef)
- Interfaces: add new interfaces (c029211)
- feat(DBInit.Cs) add new singletons (3ec8934)
- DBInit.Cs: add new builder (9e4b508)
- Config.cs: add new attr (2314612)
- States: rename func (6afbfea)
- Database: add new func (61f8347)
- Database: add new Repositories (367d1cd)
- Database: add new interfaces (0aebbda)
- Database: add FluentMigrator ([7549541...
v0.2.0-beta Galactic Griffin
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 in parallel to each other (now processing one link will not block others) for the convenience of users. -
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 and Security Settings
Add the ability to customize privacy and security settings:- Create a new personal link.
- Who can search for you through the bot.
- Stop list of sites.
- Content forwarding rule
Additional Tasks
- Add support for gallery-dl
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](https://github.com/ZenonEl...
v0.1.0-beta Starborn Phoenix
🎉 First release of TelegramMediaRelayBot! 🎉
What’s implemented? ✅
- Video download & relay: The bot downloads videos and sends them to users.
- Basic contact management: Initial functionality for handling user contacts.
What’s next? 🚀
- 1. Group chat support: Improve the bot’s functionality in group chats.
- 2. Improved contact management: Add more flexibility and control over contacts.
- 3. Access filters: Implement filters to restrict bot access based on specific criteria.