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
A Telegram Bot to Extract Various Types Of Archives

IDN Unzip Bot A Telegram Bot to Extract Various Types Of Archives Features Extract various types of archives like rar, zip, tar, 7z, tar.xz etc. Passw

IDNCoderX 8 Jul 25, 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
Reverse engineering the dengue virus (under development construction)

Reverse engineering the dengue virus (under development 🚧 ) What is dengue? Dengue is a viral infection transmitted to humans through the bite of inf

kjain 4 Feb 09, 2022
Instant messaging client in tkinter

Concord_client_tk Instant messaging client in tkinter Contributors : Ilade-s [https://github.com/Ilade-s] Doku [https://github.com/D0kuhebi] Descripti

Raphaël Merlet 2 Jun 15, 2022
A bot for Large Fry Larrys

GroupMe Bot Driver This driver is written entirely in Python, and with easy configuration in mind. Using this driver, you'll be able to monitor multip

1 Oct 25, 2021
⚡️ Get notified as soon as your next CPU, GPU, or game console is in stock

Inventory Hunter This bot helped me snag an RTX 3070... hopefully it will help you get your hands on your next CPU, GPU, or game console. Requirements

Eric Marti 1.1k Dec 26, 2022
The Official Twilio SendGrid Led, Community Driven Python API Library

The default branch name for this repository has been changed to main as of 07/27/2020. This library allows you to quickly and easily use the SendGrid

Twilio SendGrid 1.4k Jan 07, 2023
ВКонтакте бот для управления Sugar кошельком

Sugarchain VK ВКонтакте бот для управления Sugar кошельком Установка Установить зависимости можно командой: pip install -r requirements.txt Запуск (из

Vladimir 4 Jun 06, 2021
A telegram bot that messages you available vaccine appointments in the Veneto region

Serenissimo, domande frequenti Chi sei? Sono Alberto Granzotto, libero professionista a Berlino. Mi occupo di servizi software, privacy, decentralizza

vrde 31 Sep 30, 2022
Flask-SQLAlchemy API for daisuki-web

💟 Anime Daisuki! API API de animes com cadastro de usuários. O usuário autenticado pode avaliar e favoritar animes, comentar episódios e verificar o

Paulo Thor 1 Nov 04, 2021
twitter bot tha uses tweepy library class to connect to TWITTER API

TWITTER-BOT-tweepy- twitter bot that uses tweepy library class to connect to TWITTER API replies to mentions automatically and follows the tweet.autho

Muziwandile Nkomo 2 Jan 08, 2022
Python functions to run WASS stereo wave processing executables, and load and post process WASS output files.

wass-pyfuns Python functions to run the WASS stereo wave processing executables, and load and post process the WASS output files. General WASS (Waves

Mika Malila 3 May 13, 2022
This discord bot will help you to control your target through PickleC2

PickleC2-Bot This discord bot will help you to control your target through PickleC2 WHAT's a PickleC2? PickleC2 is a simple C2 framework written in py

4 Jun 25, 2022
Python binding for Terraform.

Python libterraform Python binding for Terraform. Installation $ pip install libterraform NOTE Please install version 0.3.1 or above, which solves the

Prodesire 28 Dec 29, 2022
Telegram music & video bot direct play music

⚡ NOINOI MUSIC PLAYER 🎵 SUPERFAST MUSIC BOT WHO CAN DIRECT PLAY SONG ON TELEGRAM VOICE CHAT ALSO CAN PLAY VIDEO ON VOICE CHATS ✨ Heroku Deploy YOU CA

noinoi-X 1 Dec 28, 2021
Most Powerful Chatbot On Telegram Bot

About Hello, I am Lycia [リュキア], An Intelligent ChatBot. If You Are Feeling Lonely, You can Always Come to me and Chat With Me! How To Host The easiest

RedAura 8 May 26, 2021
CSUL Discord Bot

Cruzeiro This is the same old bot running on the Discord Server of CSUL, but i've changed the code. It's better now. Discord.py Heroku How i did The b

Operaho 6 Jan 31, 2022
Uma API pública contendo informações sobre o unvierso de Roberto Gomez Bolaños.

Chespirito API Objetivo Esta API tem como objetivo ser um ponto de referência para a procura sobre todo o universo do grande Roberto Gomez Bolaños, ta

Pery Lemke 6 Feb 02, 2022
Telegram Bot to Connect Strangers

Telegram Bot to Connect Strangers How to Run Set your telegram bot token as environment variable TELEGRAM_BOT_TOKEN: export TELEGRAM_BOT_TOKEN=your_t

PyTopia 12 Dec 24, 2022
Instagram bot for promoting ROKA trainee soldier(just like me)'s consolation letters.

Instagram_bot (필자를 포함한) 모든 대한민국 훈련병들을 위한 인스타그램 인편지기입니다. Instagram bot for promoting ROKA trainee soldier(just like me)'s consolation letters. 들어가기 (Ge

Lee, Jongjun 2 Nov 21, 2021