mirror of
				https://github.com/LonamiWebs/Telethon.git
				synced 2025-11-04 01:47:27 +03:00 
			
		
		
		
	Feature 'with client:' syntax in the examples
This commit is contained in:
		
							parent
							
								
									e604960a1d
								
							
						
					
					
						commit
						b834b6c16c
					
				| 
						 | 
					@ -4,37 +4,33 @@
 | 
				
			||||||
# NOTE: To run this script you MUST have 'TG_API_ID' and 'TG_API_HASH' in
 | 
					# NOTE: To run this script you MUST have 'TG_API_ID' and 'TG_API_HASH' in
 | 
				
			||||||
#       your environment variables. This is a good way to use these private
 | 
					#       your environment variables. This is a good way to use these private
 | 
				
			||||||
#       values. See https://superuser.com/q/284342.
 | 
					#       values. See https://superuser.com/q/284342.
 | 
				
			||||||
 | 
					 | 
				
			||||||
import asyncio
 | 
					 | 
				
			||||||
from os import environ
 | 
					from os import environ
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# environ is used to get API information from environment variables
 | 
					 | 
				
			||||||
# You could also use a config file, pass them as arguments,
 | 
					 | 
				
			||||||
# or even hardcode them (not recommended)
 | 
					 | 
				
			||||||
from telethon import TelegramClient
 | 
					from telethon import TelegramClient
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
async def main():
 | 
					client = TelegramClient(
 | 
				
			||||||
    session_name = environ.get('TG_SESSION', 'session')
 | 
					    environ.get('TG_SESSION', 'session'),
 | 
				
			||||||
    client = TelegramClient(session_name,
 | 
					    environ['TG_API_ID'],
 | 
				
			||||||
                            int(environ['TG_API_ID']),
 | 
					 | 
				
			||||||
    environ['TG_API_HASH'],
 | 
					    environ['TG_API_HASH'],
 | 
				
			||||||
                            proxy=None)
 | 
					    proxy=None
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
    if 'TG_PHONE' in environ:
 | 
					 | 
				
			||||||
        await client.start(phone=environ['TG_PHONE'])
 | 
					 | 
				
			||||||
    else:
 | 
					 | 
				
			||||||
        await client.start()
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    client.add_event_handler(update_handler)
 | 
					 | 
				
			||||||
    print('(Press Ctrl+C to stop this)')
 | 
					 | 
				
			||||||
    await client.disconnected
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
async def update_handler(update):
 | 
					async def update_handler(update):
 | 
				
			||||||
    print(update)
 | 
					    print(update)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if __name__ == '__main__':
 | 
					client.add_event_handler(update_handler)
 | 
				
			||||||
    loop = asyncio.get_event_loop()
 | 
					
 | 
				
			||||||
    loop.run_until_complete(main())
 | 
					'''You could also have used the @client.on(...) syntax:
 | 
				
			||||||
 | 
					from telethon import events
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@client.on(events.Raw)
 | 
				
			||||||
 | 
					async def update_handler(update):
 | 
				
			||||||
 | 
					    print(update)
 | 
				
			||||||
 | 
					'''
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					with client.start():
 | 
				
			||||||
 | 
					    print('(Press Ctrl+C to stop this)')
 | 
				
			||||||
 | 
					    client.run_until_disconnected()
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -10,7 +10,6 @@ This script assumes that you have certain files on the working directory,
 | 
				
			||||||
such as "xfiles.m4a" or "anytime.png" for some of the automated replies.
 | 
					such as "xfiles.m4a" or "anytime.png" for some of the automated replies.
 | 
				
			||||||
"""
 | 
					"""
 | 
				
			||||||
import re
 | 
					import re
 | 
				
			||||||
import asyncio
 | 
					 | 
				
			||||||
from collections import defaultdict
 | 
					from collections import defaultdict
 | 
				
			||||||
from datetime import datetime, timedelta
 | 
					from datetime import datetime, timedelta
 | 
				
			||||||
from os import environ
 | 
					from os import environ
 | 
				
			||||||
| 
						 | 
					@ -77,8 +76,6 @@ async def my_handler(event: events.NewMessage.Event):
 | 
				
			||||||
            await event.edit(event.text.replace('.shrug', r'¯\_(ツ)_/¯'))
 | 
					            await event.edit(event.text.replace('.shrug', r'¯\_(ツ)_/¯'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if __name__ == '__main__':
 | 
					with client.start():
 | 
				
			||||||
    loop = asyncio.get_event_loop()
 | 
					 | 
				
			||||||
    loop.run_until_complete(client.start(phone=environ.get('TG_PHONE')))
 | 
					 | 
				
			||||||
    print('(Press Ctrl+C to stop this)')
 | 
					    print('(Press Ctrl+C to stop this)')
 | 
				
			||||||
    client.run_until_disconnected()
 | 
					    client.run_until_disconnected()
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user