mirror of
https://github.com/LonamiWebs/Telethon.git
synced 2024-11-22 17:36:34 +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