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
Me and @nathanmargni did a small analysis on what are the best strategies to win more games of League of Legends.

Me and @nathanmargni did a small analysis on what are the best strategies to win more games of League of Legends.

Christian Berchtold 2 Jan 19, 2022
Python client for the Socrata Open Data API

sodapy sodapy is a python client for the Socrata Open Data API. Installation You can install with pip install sodapy. If you want to install from sour

Cristina 368 Dec 09, 2022
PR Changes Matrix Builder

Pr-changes-matrix-builder - A Github Action that will output a variable to be used in a matrix strategy job based on a PR&'s changes

Kyle James Walker (he/him) 21 Oct 04, 2022
Automation application was made by me using Google, Sheet and Slack APIs with Python.

README This application is used to transfer the data in the xlsx document we have to the Google Drive environment and calculate the "total budget" wit

3 Apr 12, 2022
OliviaV2: danger bot with python

🎶 OLIVIA V2 🎵 Requirements 📝 FFmpeg NodeJS nodesource.com Python 3.7 or higher PyTgCalls 🧪 Get SESSION_NAME from below: Pyrogram 🎖 History Featur

Alvaro Einstein 2 Nov 04, 2021
Instagram-follower-bot - An Instagram follower bot written in Python

Instagram Follower Bot An Instagram follower bot written in Python. The bot follows the follower of which account you want. e.g. (You want to follow @

Aytaç Kaşoğlu 1 Dec 31, 2021
A script to automate the process of downloading Markdown and CSV backups of Notion

Automatic-Notion-Backup A script to automate the process of downloading Markdown and CSV backups of Notion. In addition, the data is processed to remo

Jorge Manuel Lozano Gómez 2 Nov 02, 2022
Design and build a wrapper for the Open Weather API current weather data service

Design and build a wrapper for the Open Weather API current weather data service that returns a city's temperature, with caching, also allowing for the temperature of the latest queried cities that a

Duan Rafael Ribeiro 1 Jun 27, 2022
An API wrapper library for opensea api.

Opensea API An API wrapper library for opensea api. Installation pip3 install opensea Usage Retrieving assets: from opensea import get_assets # This

Ankush Singh 38 Jul 17, 2022
A pyrogram simple bot for Educational purpose.

A pyrogram simple bot for Educational purpose. To Learn More check at @PyrogramBot or on Documentation Mandatory variables API_ID - Get It From my.tel

SpamShield 10 Dec 06, 2022
Discord-Mass-Mention - Yup the title says it all

Protocol - Mass Mention (i havent tested this with any token other than my own t

Mallowies 14 Nov 06, 2022
VoiceMaster-Discord-Bot - Fork from original Discord bot with max channel limit, staff role and more

VoiceMaster VoiceMaster is a discord bot created to change the way servers work,

2 Feb 28, 2022
Python based Spotify account generator.

Spotify Account Generator Python based Spotify account generator. Installation Download the latest release, open command prompt in the folder, run pip

polo 5 Dec 27, 2022
A python library created to make life easier for Telegram API Developers.

opentele A python library created to make life easier for Telegram API Developers. Read the documentation Features Convert Telegram Desktop tdata sess

103 Jan 02, 2023
A simple tool that allows you to change your default AWS CLI profile.

Select AWS Profile Select AWS Profile (slapr) is a simple tool that lets you select which AWS Profile you want to use and sets it as the default AWS p

Antoni Yanev 2 Nov 09, 2022
AWS Lambda Fast API starter application

AWS Lambda Fast API Fast API starter application compatible with API Gateway and Lambda Function. How to deploy it? Terraform AWS Lambda API is a reus

OBytes 6 Apr 20, 2022
Definitive Guide to Creating a SQL Database on Cloud with AWS and Python

Definitive Guide to Creating a SQL Database on Cloud with AWS and Python An easy-to-follow comprehensive guide on integrating Amazon RDS, MySQL Workbe

Kenneth Leung 6 Aug 17, 2022
Trellox Tool is written in Python3 and designed to pull and list Trello boards.

TrelloX Trellox Tool is written in Python3 and designed to list and pull Trello boards. It can be used by penetration testers/bug bounty hunters to de

Ali Fathi Ali Sawehli 1 Dec 05, 2021
Just a simple discord bot a create for try

WAIFU MATERIAL DISCORD BOT! French ver. here HOW TO LAUNCH First, clone this rep

1 Jan 08, 2022
API RestFull web de pontos turisticos de certa região

##RESTful Web API para exposição de pontos turísticos de uma região## Propor um novo ponto turístico Moderação dos pontos turísticos cadastrados Lista

Lucas Silva 2 Jan 28, 2022