from telethon.tl.functions.messages import GetDialogsRequest from telethon.tl.types import InputPeerEmpty from telethon import TelegramClient from telethon.tl.functions.messages import AddChatUserRequest from telethon.tl.functions.messages import ForwardMessagesRequest from telethon.tl.functions.messages import GetChatsRequest from telethon.tl.functions.contacts import GetContactsRequest from telethon.tl.functions.contacts import SearchRequest from telethon.tl.functions.channels import InviteToChannelRequest from telethon.tl.functions.channels import GetMessagesRequest from telethon.tl.functions.users import GetFullUserRequest from telethon.tl.types import InputChannel from telethon.tl.types import InputUser from telethon.tl.types import InputPeerChannel from telethon.tl.types import InputPeerUser from telethon.tl.types import UpdateNewChannelMessage from telethon.tl.types import PeerUser, PeerChat, PeerChannel from telethon.utils import get_input_peer import re import time import sys #Put your params here: #! api_id = api_hash = '' phone_number = '' #! client = TelegramClient('r0mkTelephone', api_id, api_hash, update_workers=0) channel_from = sys.argv[1] channel_to_send = sys.argv[2] if client.connect(): print('Connected') if not client.is_user_authorized(): client.send_code_request(phone_number) myself = client.sign_in(phone_number, input('Enter code: ')) client.updates.polling = True channel_manual = client.get_entity('t.me/' + channel_from) print("Channel to: " + str(channel_manual.title)) print("Channel to ID: " + str(channel_manual.id)) print("Channel to Hash: " + str(channel_manual.access_hash)) channel_from_input_peer = InputPeerChannel(channel_manual.id, channel_manual.access_hash) channel_to = client.get_entity('t.me/' + channel_to_send) print("Channel to: " + str(channel_to.title)) print("Channel to ID: " + str(channel_to.id)) print("Channel to Hash: " + str(channel_to.access_hash)) channel_to_input_peer = InputPeerChannel(channel_to.id, channel_to.access_hash) while True: update = client.updates.poll() if type(update) == UpdateNewChannelMessage and update.message.to_id.channel_id == channel_manual.id: print('message id ' + str(update.message.id)) print('channel id ' + str(update.message.to_id.channel_id)) #print(update) #print(dir(update)) client.invoke(ForwardMessagesRequest(from_peer=channel_from_input_peer, id=[update.message.id], to_peer=channel_to_input_peer)) #print(client.invoke(GetMessagesRequest(channel=my_channel_to, id=[update.message.id]))) #client.invoke(ForwardMessagesRequest(from_peer=my_channel_from, id=[update.message.id], to_peer=my_channel_to)) else: continue client.add_update_handler(forward)