Pure Python 3 MTProto API Telegram client library, for bots too!
Go to file
Lonami Exo bfa3001f87 Fix MainThread would lock when reconnecting
This is because it was thinking that the ReadThread would be
ready to read the result, but actually, this thread is also
locked trying to reconnect at the same time
2017-09-22 16:02:10 +02:00
.github Remove confussion on issue template suggesting to remove last block 2017-09-09 10:41:41 +02:00
api Added custom errors, fixes to code generator 2016-09-05 18:35:12 +02:00
docs Make lint happier 2017-09-04 17:10:04 +02:00
telethon Fix MainThread would lock when reconnecting 2017-09-22 16:02:10 +02:00
telethon_examples Add new example usage code for auto-replies (#249) 2017-09-18 20:09:58 +02:00
telethon_generator Fix generated code showing the incorrent type hint for datetime 2017-09-19 13:20:34 +02:00
telethon_tests Make lint happier 2017-09-04 17:10:04 +02:00
.gitignore Allow creating a new parallel connection (closes #102) 2017-06-15 15:50:44 +02:00
.pre-commit-config.yaml Add pre-commit hooks configuration 2016-11-30 00:29:05 +03:00
LICENSE Updated README.md 2016-09-10 14:10:47 +02:00
MANIFEST.in Changed README.md to README.rst 2016-11-13 15:39:47 +01:00
README.rst Move README-long.rst to the wiki hosted on GitHub 2017-09-10 16:01:58 +02:00
run_tests.py Make lint happier 2017-09-04 17:10:04 +02:00
setup.py Fix setup.py import subprocess.run (not supported on < py3.5) 2017-09-19 10:16:41 +02:00
try_telethon.py Support configuring SOCKS proxy in the example 2017-06-17 00:17:51 +02:00

Telethon
========
.. epigraph::

  ⭐️ Thanks **everyone** who has starred the project, it means a lot!

**Telethon** is Telegram client implementation in **Python 3** which uses
the latest available API of Telegram. Remember to use **pip3** to install!

Installing
----------

.. code:: sh

  pip install telethon


Creating a client
-----------------

.. code:: python

  from telethon import TelegramClient

  # 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'
  phone = '+34600000000'

  client = TelegramClient('session_name', api_id, api_hash)
  client.connect()

  # If you already have a previous 'session_name.session' file, skip this.
  client.sign_in(phone=phone)
  me = client.sign_in(code=77777)  # Put whatever code you received here.


Doing stuff
-----------

.. code:: python

  print(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)
  total, messages, senders = client.get_message_history('username')
  client.download_media(messages[0])


Next steps
----------

Do you like how Telethon looks? Check the
`wiki over GitHub <https://github.com/LonamiWebs/Telethon/wiki>`_ for a
more in-depth explanation, with examples, troubleshooting issues, and more
useful information.