A Telegram robot can clone medias from any chat to your own chat.

Overview

Clonebot

A Telegram robot can clone medias from any chat to your own chat.

Read the documentation to know how to use the bot


Deploy

Developer

GPL3
 

Documentation

Support this project

Buy me a coffee for my work !



License

Credits

GPL3

Comments
  • String

    String

    2021-09-20T07:56:14.131070+00:00 app[worker.1]: [20-Sep-21 07:56:14 - INFO] - bot - @Oloclon_bot started! 2021-09-20T07:56:15.864823+00:00 app[worker.1]: [20-Sep-21 07:56:15 - INFO] - user - @None started! 2021-09-20T07:56:16.106626+00:00 app[worker.1]: Bot is blocked by the session user ! 2021-09-20T07:56:16.378755+00:00 heroku[worker.1]: Process exited with status 0 2021-09-20T07:56:16.556946+00:00 heroku[worker.1]: State changed from up to crashed

    I think this issue is due to Telegram latest update where Telegram migrated from 32 to 64 bit if no is there any solution ? ๐Ÿ˜…

    opened by chiefgamer 6
  • Filters

    Filters

    This project is really amazing. Only thing that is missing is filters. Like message filtering with specific keywords ,either whitelist keyword or blacklist keyword. So we can control copying messages ,files including those keyword. Thank you for awesome bot.

    opened by iamLiquidX 6
  • Option to forword text messages as well.

    Option to forword text messages as well.

    First of all this is very nice bot... A bot I always was looking for... Thanks for building it and I would really appreciate if you can add option to forword text messages as well

    opened by ScriptBuddy16 5
  • Bug i guess ?

    Bug i guess ?

    So I have generated pyrogram V2 string session from your repl link but still got this error here But when I use old string session it's working fine :( And yes I am using latest code . Help please

    opened by prono69 4
  • Error shown after recent update

    Error shown after recent update

    2022-07-25T11:55:49.332878+00:00 app[api]: Scaled to [email protected]:Free by user [email protected] 2022-07-25T11:55:53.013978+00:00 heroku[worker.1]: Starting process with command python3 main.py 2022-07-25T11:55:53.604937+00:00 heroku[worker.1]: State changed from starting to up 2022-07-25T11:55:55.309463+00:00 app[worker.1]: Traceback (most recent call last): 2022-07-25T11:55:55.309478+00:00 app[worker.1]: File "main.py", line 1, in 2022-07-25T11:55:55.309568+00:00 app[worker.1]: from bot import Bot 2022-07-25T11:55:55.309576+00:00 app[worker.1]: File "/app/bot.py", line 4, in 2022-07-25T11:55:55.309644+00:00 app[worker.1]: from user import User 2022-07-25T11:55:55.309652+00:00 app[worker.1]: File "/app/user.py", line 4, in 2022-07-25T11:55:55.309712+00:00 app[worker.1]: from pyrogram.enums import ParseMode 2022-07-25T11:55:55.309738+00:00 app[worker.1]: ModuleNotFoundError: No module named 'pyrogram.enums' 2022-07-25T11:55:55.505290+00:00 heroku[worker.1]: Process exited with status 1 2022-07-25T11:55:55.575429+00:00 heroku[worker.1]: State changed from up to crashed 2022-07-25T11:55:55.579355+00:00 heroku[worker.1]: State changed from crashed to starting 2022-07-25T11:55:58.677351+00:00 heroku[worker.1]: Starting process with command python3 main.py 2022-07-25T11:55:59.272310+00:00 heroku[worker.1]: State changed from starting to up 2022-07-25T11:56:01.209885+00:00 heroku[worker.1]: Process exited with status 1 2022-07-25T11:56:01.003330+00:00 app[worker.1]: Traceback (most recent call last): 2022-07-25T11:56:01.003346+00:00 app[worker.1]: File "main.py", line 1, in 2022-07-25T11:56:01.003416+00:00 app[worker.1]: from bot import Bot 2022-07-25T11:56:01.003425+00:00 app[worker.1]: File "/app/bot.py", line 4, in 2022-07-25T11:56:01.003484+00:00 app[worker.1]: from user import User 2022-07-25T11:56:01.003493+00:00 app[worker.1]: File "/app/user.py", line 4, in 2022-07-25T11:56:01.003552+00:00 app[worker.1]: from pyrogram.enums import ParseMode 2022-07-25T11:56:01.003571+00:00 app[worker.1]: ModuleNotFoundError: No module named 'pyrogram.enums' 2022-07-25T11:56:01.278457+00:00 heroku[worker.1]: State changed from up to crashed

    opened by HithaishiDesai 2
  • state changed from up to crashed

    state changed from up to crashed

    2022-05-27T19:45:18.076038+00:00 app[worker.1]: is_authorized = await self.connect()

    2022-05-27T19:45:18.076048+00:00 app[worker.1]: File "/app/.heroku/python/lib/python3.8/site-packages/pyrogram/methods/auth/connect.py", line 39, in connect

    2022-05-27T19:45:18.076109+00:00 app[worker.1]: await self.load_session()

    2022-05-27T19:45:18.076119+00:00 app[worker.1]: File "/app/.heroku/python/lib/python3.8/site-packages/pyrogram/client.py", line 677, in load_session

    2022-05-27T19:45:18.076320+00:00 app[worker.1]: await self.storage.open()

    2022-05-27T19:45:18.076330+00:00 app[worker.1]: File "/app/.heroku/python/lib/python3.8/site-packages/pyrogram/storage/memory_storage.py", line 38, in open

    2022-05-27T19:45:18.076397+00:00 app[worker.1]: dc_id, test_mode, auth_key, user_id, is_bot = struct.unpack(

    2022-05-27T19:45:18.076425+00:00 app[worker.1]: struct.error: unpack requires a buffer of 267 bytes

    2022-05-27T19:45:18.304373+00:00 heroku[worker.1]: Process exited with status 1

    2022-05-27T19:45:18.368186+00:00 heroku[worker.1]: State changed from up to crashed

    I deployed this bot but it always shows this error. If anybody knows then please help.

    opened by Littletonar 2
  • Sir please add support to deploy to railway because the app doesn't restart every 24 hrs

    Sir please add support to deploy to railway because the app doesn't restart every 24 hrs

    Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

    Describe the solution you'd like A clear and concise description of what you want to happen.

    Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered.

    Additional context Add any other context or screenshots about the feature request here.

    opened by HithaishiDesai 2
  • Feature request

    Feature request

    Hello Developer. Thanks for such a wonderful Bot. It helped me a lots. Please add a feature that can forward Link - Bold - italic in a caption. https://docs.pyrogram.org/api/types/MessageEntity.html#pyrogram.types.MessageEntity

    opened by Magneto-noob 2
  • Caption which is a great feature that will save much time

    Caption which is a great feature that will save much time

    Clone bot I am using it always for forwarding files The caption feature is also awesome /setcaption {filename} โ–ฑโ–ฐโ–ฑโ–ฐโ–ฑโ–ฐโ–ฑโ–ฐโ–ฑโ–ฐโ–ฑโ–ฐ Size: {filesize}

    ๐— ๐—ผ๐—ฟ๐—ฒ ๐— ๐—ผ๐˜ƒ๐—ถ๐—ฒ๐˜€ โž–@ownerchannelโž– ๐— ๐—ฎ๐—ถ๐—ป ๐—ฐ๐—ต๐—ฎ๐—ป๐—ป๐—ฒ๐—น โž–@ownerchannel2โž– Is there any way to add custom caption like this.... It's very useful..... Please bro Then i could save hours editing captions.... โ˜บ๏ธ

    opened by mujuaj 2
  • Please consider these features

    Please consider these features

    Hello! Thank you for developing this bot. Is very useful and has some nice features built-in. I have some suggestions for further improvements.

    1. Please add the possibility to forward text messages. In some channels, the files have gibberish names, no captions and the only way to know what is all about is from a text message that is put before them.

    2. Most files in TG have multiple underscores in names, is possible to remove them and replace them with a space when forwarding? Maybe with regex, useful for removal or replacement of other undesired things from names or captions.

    3. For videos and audios uploaded as files in the source channel, is possible to forward them as videos and audios (streamable) to the destination?

    4. The way the caption feature is working right now is causing some problems. If I let the caption setting on, the files captioned are forwarding as such but the ones uncaptioned remain uncaptioned. If I choose filename as the caption, all files are forwarded captioned but the ones already captioned lose their original caption and instead are captioned with the filename, which is bad in the case of gibberish names.

    Is possible to combine the two options? Let the files captioned pass as such and only caption with the filename the files without captions.

    1. When a user chooses the source and target chats there is a message that informs about chat names and time window to complete. Please add an option to disable that message. After a time the user has learned how to use the bot.

    2. It would be useful that the bot remembers the source-target pairs so the users choose from a list. Also an option for friendly names in the case of private chats so the user could rapidly choose from a list of already used chats for source and target.

    opened by tissole 2
  • unable to add target id, please add a bit more detailed example. Thank you in advance.

    unable to add target id, please add a bit more detailed example. Thank you in advance.

    unable to add source id, please add a bit more detailed example. Thank you in advance. Here is message, but not succeed yet.

    ๐™Ž๐™š๐™จ๐™จ๐™ž๐™ค๐™ฃ ๐™ช๐™จ๐™š๐™ง ๐™ž๐™จ ๐™ฃ๐™ค๐™ฉ ๐™ž๐™ฃ ๐™ฉ๐™๐™š ๐™ฉ๐™–๐™ง๐™œ๐™š๐™ฉ ๐™˜๐™๐™–๐™ฉ ๐™œ๐™ž๐™ซ๐™š๐™ฃ

    opened by heitumo 1
  • Bot doesn't prevent duplicates (files with same content but different names)

    Bot doesn't prevent duplicates (files with same content but different names)

    Normally, people consider duplicates when 2 or more files have the same content. I assumed that this bot will do the same, but this is not the case. The bot will only prevent duplicates that have the same name and same content, but will let pass the files with different names and same content.

    The file_unique_id is not suitable for preventing duplicates (same content), only prevents duplicates with same file names and same content. You can check for yourself. Create 2 identical text files (same name and same content, check md5 hashes to be sure).

    Upload them to @RawDataBot and check file_unique_id. It will be the same because files have the same name and the same content.

    Now keep the same content, only rename files differently. Upload them to @RawDataBot and check their file_unique_id. It will be different, even if the files have the same content.

    So the bot can only prevent duplicates in a limited case, when files have the same name and content. It will not prevent duplicates that have same content and different names. This should be made clear, so the users understand the limits of this bot.

    I'm wonder if there is another method to prevent duplicates. You know if Telegram stores the md5 hashes for files? It will be useful to use them to prevent duplicates.

    opened by art435 2
  • Option for custom delay !

    Option for custom delay !

    Discussed in https://github.com/m4mallu/clonebot/discussions/86

    Originally posted by HithaishiDesai August 17, 2022 Good Afternoon Sir, please add custom seconds option in delayed forwarding...

    Thanks Sir ๐Ÿ™๐Ÿปโค๏ธ

    opened by m4mallu 0
Releases(1.6)
  • 1.6(Sep 18, 2022)

    This will be a last stable release in this bot version 1.x and pyrogram version 2.x

    Important specifications in this release will be...

    • Bot required a PostgreSQL database.
    • Bot can only be used by its session user.
    • User session is performed for cloning from private and public chats.
    • All the variable inputs will be validated by the message id of a force reply.
    • Indexing & purging functions are performed before cloning (option to skip).
    • Clone function will be initiated from first to last message id of the target chat.
    • File type selection will be done with callback buttons.
    • Set custom caption by sending a formatted text to the bot chat.
    • Find source - target chat id and message id by forwarding any message from the concerned chat.
    • Terminate session facility.

    Next release shall be an initial commit with version 2.x and pyrogram version 2.x with the following specifications

    • Database less design.
    • Variable inputs by optimised method.
    • Single user (session user) operated design.
    • Bot session for private chat cloning.
    • Custom caption with different layouts.
    • Indexing and purging functions will be removed as another bot is already there for the same.
    • Duplicate filter can be configured in settings.

    Thanks for the suggestions and reports. Subscribe my channel to get updates of my works.

    Source code(tar.gz)
    Source code(zip)
  • 1.5(Jul 16, 2022)

  • 1.4(Jul 25, 2021)

    Bot Won't clone duplicate files:

    New Features:-

    • Target chat indexing
    • Target chat duplicate purging
    • Save target chat index config.

    Bot will:-

    • Index files in target chat.
    • Save index config. fore future.
    • Ask for purge after indexing.
    • Check the index while cloning.
    • Update the index after cloning.

    Read the documentation for more.

    N'Joy Cloning.

    Source code(tar.gz)
    Source code(zip)
  • 1.3(Jul 24, 2021)

  • 1.2(Jun 8, 2021)

    Accepted all chat links Added more file types Clone from message-ids Session string protection Clone percentage & process graph, Auto calculation od message-ids Delayed cloning Caption on-off or file name as a caption. and a lot more features Detailed documentation can be seen HERE

    Source code(tar.gz)
    Source code(zip)
  • 1.1(Jun 6, 2021)

    This telegram bot can copy media from public and private chats to your personal chat[use username as source incase of public chat, session user doesn't need to be in the source chat]. Presently, real-time checking of the chat ids is added to the bot. Code updated to avoid bot restarting when in completion or cancellation of the main operation that a public bot with this repo can run in multiple sessions parallelly. Future updates will be pushed in the next release. Limitations: Clone from message-ids is not available now. The same will be added with lots of more updates on the next release.

    Source code(tar.gz)
    Source code(zip)
Owner
Renjith Mangal
๐Ÿ•ด๐ŸผAlways quest for ma Kick ๐Ÿ•ด๐ŸผKeeping my demon dormant๐Ÿ•ด๐Ÿผ
Renjith Mangal
GG Dorking is a tool to generate GitHub and Google dorking for pentesters and bug bounty hunters.

GG-Dorking GG Dorking is a python tool to generate GitHub and Google dorking links for pentesters and bug bounty hunters. It will help you to find imp

Eslam Akl 80 Nov 24, 2022
Python interface to the LinkedIn API

Python LinkedIn Python interface to the LinkedIn API This library provides a pure Python interface to the LinkedIn Profile, Group, Company, Jobs, Sear

ozgur 844 Dec 27, 2022
Automatically compile an AWS Service Control Policy that ONLY allows AWS services that are compliant with your preferred compliance frameworks.

aws-allowlister Automatically compile an AWS Service Control Policy that ONLY allows AWS services that are compliant with your preferred compliance fr

Salesforce 189 Dec 08, 2022
A python library built on the API of the coderHub.sa, which helps you to fetch the challenges and more

coderHub A python library built on the API of the coderHub.sa, which helps you to fetch the challenges and more Installation โ€ข Features โ€ข Usage โ€ข Lice

TheAwiteb 5 Nov 04, 2022
The official command-line client for spyse.com

Spyse CLI The official command-line client for spyse.com. NOTE: This tool is currently in the early stage beta and shouldn't be used in production. Yo

Spyse 43 Dec 08, 2022
Use PyTgCalls easier than before.

PyTgCalls wrapper Making it easier for you to use pytgcalls. Features No need to care about audio convertion. Play directly from URLs, YouTube and loc

Calls Music 12 Jul 21, 2022
Tickergram is a Telegram bot to look up quotes, charts, general market sentiment and more.

Tickergram is a Telegram bot to look up quotes, charts, general market sentiment and more.

Alberto Ortega 25 Nov 26, 2022
Deepl - DeepL Free API For Python

DeepL DeepL Free API Notice Since I don't want to make my AuthKey public, if you

Vincent Young 4 Apr 11, 2022
This is a Python package to create a snowflake identifier similar to Discord's or Twitter's.

snowflake2 Based on falcondai and fenhl's Python snowflake tool, but with documentation and simliarities to Discord. Installation instructions Install

Learnloot 2 Mar 19, 2022
Ig-Crackv2 - Crack Instagram Version 2.9

โ˜…โ˜… Information โ˜…โ˜… โ˜…โ˜…Menu Special Crack Melalui Pengikut Crack Melalui Mengikuti

Risky [ Zero Tow ] 11 Aug 30, 2022
An opensource chat service that cares about your privacy.

An opensource chat service that cares about your privacy. Instructions to set up a local testing environment: 1) Clone this repository and navigate to

Aiman Al Masoud 2 Dec 03, 2022
hydrotoolbox is a Python script for hydrologic calculations and analysis or by function calls within Python.

hydrotoolbox is a Python script for hydrologic calculations and analysis or by function calls within Python.

Tim Cera 4 Aug 20, 2022
Basic query to access Traindex API

traindex-api-query Basic query to access Traindex API Please make sure to provide your Traindex API key to the line 8 in the script file. There are tw

Foretheta 1 Nov 11, 2021
IdeasBot - Funny telegram bot to generate ideas for a project

Repository of PIdeas_bot About Funny telegram bot for generating projects ideas.

Just Koala 5 Oct 16, 2022
L3DAS22 challenge supporting API

L3DAS22 challenge supporting API This repository supports the L3DAS22 IEEE ICASSP Grand Challenge and it is aimed at downloading the dataset, pre-proc

L3DAS 38 Dec 25, 2022
A script to forward mass number of media to another group/channel. Heroku deploy

Telegram Forward Script ๐Ÿ˜‡ This is a Script to Forward Large Number of Files to Another Telegram Channel. Star เถ‘เถšเถšเทŠ เถฏเทเถฝ fork เถ‘เถšเถšเทŠ เถœเท„เถดเท’เถบเท€เทŠ ๐Ÿฅด If You Tr

Anjana Madu 17 Oct 21, 2022
A Code that can make your Discord Account 24/7 on Voice Channels!

Voicecord Make your Discord Account Online 24/7 on Voice Channels! A Code written in Python that helps you to keep your account 24/7 on Voice Channels

Phantom 229 Jan 07, 2023
This is a very easy to use tool developed in python that will search for free courses from multiple sites including youtube and enroll in the ones in which it can.

Free-Course-Hunter-and-Enroller This is a very easy to use tool developed in python that will search for free courses from multiple sites including yo

Zain 12 Nov 12, 2022
Powerful Telegram bot to countdown to your important events in any group chat.

Powerful Telegram bot to countdown to your important events in any group chat. Live countdown timer.

118 Dec 30, 2022
This script will detect changes in your session using Discords built in Gateway.

Detect Session Gateway This script will detect changes in your session using Discords built in Gateway. What does this log? Discord build version Oper

Omega 5 Dec 18, 2021