mirror of
https://github.com/LonamiWebs/Telethon.git
synced 2025-07-21 21:39:46 +03:00
Pure Python 3 MTProto API Telegram client library, for bots too!
hacktoberfestlibrarymtprotopython-librarystarred-lonamiwebs-repostarred-repotelegramtelegram-apitelethon
LINE 88 LINE 90 causing event.message.from_id error: 2022-12-19 16:51:10,027 - telethon.client.updates - ERROR - Unhandled exception on payment_received_handler Traceback (most recent call last): File "C:\Users\User\PycharmProjects\borpayment\venv\Lib\site-packages\telethon\client\updates.py", line 497, in _dispatch_update await callback(event) File "C:\Users\User\PycharmProjects\borpayment\main.py", line 87, in payment_received_handler await bot.send_message(event.message.from_id, 'Thank you for buying product A!') File "C:\Users\User\PycharmProjects\borpayment\venv\Lib\site-packages\telethon\client\messages.py", line 827, in send_message entity = await self.get_input_entity(entity) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\User\PycharmProjects\borpayment\venv\Lib\site-packages\telethon\client\users.py", line 443, in get_input_entity peer = utils.get_peer(peer) ^^^^^^^^^^^^^^^^^^^^ File "C:\Users\User\PycharmProjects\borpayment\venv\Lib\site-packages\telethon\utils.py", line 997, in get_peer _raise_cast_fail(peer, 'Peer') File "C:\Users\User\PycharmProjects\borpayment\venv\Lib\site-packages\telethon\utils.py", line 138, in _raise_cast_fail raise TypeError('Cannot cast {} to any kind of {}.'.format( TypeError: Cannot cast NoneType to any kind of Peer. Changing from event.message.from_id to event.message.peer_id.user_id solves it |
||
---|---|---|
.github | ||
readthedocs | ||
telethon | ||
telethon_examples | ||
telethon_generator | ||
tests | ||
.coveragerc | ||
.gitignore | ||
.pre-commit-config.yaml | ||
dev-requirements.txt | ||
LICENSE | ||
logo.svg | ||
optional-requirements.txt | ||
pyproject.toml | ||
README.rst | ||
requirements.txt | ||
setup.py | ||
update-docs.sh |
Telethon ======== .. epigraph:: ⭐️ Thanks **everyone** who has starred the project, it means a lot! |logo| **Telethon** is an asyncio_ **Python 3** MTProto_ library to interact with Telegram_'s API as a user or through a bot account (bot API alternative). .. important:: If you have code using Telethon before its 1.0 version, you must read `Compatibility and Convenience`_ to learn how to migrate. What is this? ------------- Telegram is a popular messaging application. This library is meant to make it easy for you to write Python programs that can interact with Telegram. Think of it as a wrapper that has already done the heavy job for you, so you can focus on developing an application. Installing ---------- .. code-block:: sh pip3 install telethon Creating a client ----------------- .. code-block:: python from telethon import TelegramClient, events, sync # These example values won't work. You must get your own api_id and # api_hash from https://my.telegram.org, under API Development. api_id = 12345 api_hash = '0123456789abcdef0123456789abcdef' client = TelegramClient('session_name', api_id, api_hash) client.start() Doing stuff ----------- .. code-block:: python print(client.get_me().stringify()) client.send_message('username', 'Hello! Talking to you from Telethon') client.send_file('username', '/home/myself/Pictures/holidays.jpg') client.download_profile_photo('me') messages = client.get_messages('username') messages[0].download_media() @client.on(events.NewMessage(pattern='(?i)hi|hello')) async def handler(event): await event.respond('Hey!') Next steps ---------- Do you like how Telethon looks? Check out `Read The Docs`_ for a more in-depth explanation, with examples, troubleshooting issues, and more useful information. .. _asyncio: https://docs.python.org/3/library/asyncio.html .. _MTProto: https://core.telegram.org/mtproto .. _Telegram: https://telegram.org .. _Compatibility and Convenience: https://docs.telethon.dev/en/stable/misc/compatibility-and-convenience.html .. _Read The Docs: https://docs.telethon.dev .. |logo| image:: logo.svg :width: 24pt :height: 24pt