#!/usr/bin/python3 from telethon import TelegramClient, events, functions, types from config import * client = TelegramClient('telelog', api_id, api_hash) @client.on(events.NewMessage) async def log(event): if event.is_private: if event.sender_id != myid: #Incoming message try: f = open(str(event.chat_id)) except IOError: chat = await event.get_input_chat() rpl = "This account does not accept private messages. " rpl += "My userbot will block you now. " rpl += "Please reach out to me in a common group if applicable. " await event.respond(rpl) await client(functions.contacts.BlockRequest(chat)) f = open(str(event.chat_id), "a") f.write("← ") else: #Outgoing message f = open(str(event.chat_id), "a") f.write("→ ") f.write(event.raw_text + "\n") f.close() # Interactive commands msg = event.raw_text if event.sender_id != myid: return if msg.startswith('.tl.alive'): rpl = "Telelog alive and well!" await event.edit(rpl) if msg.startswith('.tl.log'): chat = str(msg.split()[1]) f = open(chat) await event.edit(f.read()) client.start() client.run_until_disconnected()