Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Telegram channel- how to get access_hash?

I try really hard to understand howto use Telegram api with telethon. I have some Channels in Telegram, where i want to delete older Messages. Using inputpeerchannel() i need channel_id (No Problem) and channel_hash. I cant findout howto get this channel_hash by channel_id. Thank you from germany

like image 348
Fritz Maier Avatar asked Oct 13 '17 19:10

Fritz Maier


1 Answers

In order to find channel access_hash, you should resolve channel username. Original MTProto method contacts.resolveUsername#f93ccba3 gets @username and returns channel info including access_hash.

In telethon you need to invoke ResolveUsernameRequest to call the above original MTProto method. You may use this code to resolve username to access_hash:

client = TelegramClient(session_file, api_id=00000, api_hash='XXXXX')
client.connect()
response = client.invoke(ResolveUsernameRequest("your_channel_id"))
print(response.chats[0].access_hash)
client.disconnect()
like image 58
Ali Hashemi Avatar answered Sep 17 '22 18:09

Ali Hashemi