from telethon import TelegramClient, events from telethon.tl.custom import Dialog from telethon.tl.types import Channel, User, Chat # Use your own values from my.telegram.org api_id = 1234567 api_hash = '1234567890abcdef' client = TelegramClient('ubot', api_id, api_hash) @client.on(events.NewMessage) async def edit(event): msg = event.raw_text if '.alive' in msg: rpl = "Userbot alive and well!" msg = event.text.replace(msg, rpl) await event.edit(msg) if '.shg' in msg: rpl = f"¯\_(ツ)_/¯" msg = event.text.replace('.shg', rpl) await event.edit(msg) if '.stats' in msg: pms = bots = 0 groups = gadmin = gcreator = 0 chans = cadmin = ccreator = 0 unread = mentions = 0 dialog: Dialog async for dialog in event.client.iter_dialogs(): entity = dialog.entity if isinstance(entity, Channel): if entity.broadcast: chans += 1 if entity.creator or entity.admin_rights: cadmin += 1 if entity.creator: ccreator += 1 elif entity.megagroup: groups += 1 if entity.creator or entity.admin_rights: gadmin += 1 if entity.creator: gcreator += 1 elif isinstance(entity, Chat): groups += 1 if entity.creator or entity.admin_rights: gadmin += 1 if entity.creator: gcreator += 1 elif isinstance(entity, User): pms += 1 if entity.bot: bots +=1 mentions += dialog.unread_mentions_count unread += dialog.unread_count rpl = f'Private chats: {pms} ({pms - bots} users / {bots} bots)\n' rpl += f'Groups: {groups} ({gadmin} admin / {gcreator} creator)\n' rpl += f'Channels: {chans} ({cadmin} admin / {ccreator} creator)\n' rpl += f'Unread: {unread} ({mentions} mentions)\n' await event.edit(rpl) if '.fire' in msg: rpl = 'IMA FIRING MAH LAZER' msg = event.text.replace(msg, rpl) await event.edit(msg) client.start() client.run_until_disconnected()