Pure Python 3 MTProto API Telegram client library, for bots too!
Go to file
Lonami Exo 2689b0750d Make DC options static
Some datacenters don't allow calling GetConfigRequest,
this way it can both be reused and such calls omitted.
2017-09-17 15:19:21 +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 Make DC options static 2017-09-17 15:19:21 +02:00
telethon_examples Simplify the workflow with UpdateState exposing a single flag param 2017-09-08 12:54:38 +02:00
telethon_generator Fix infering random_id lists failing for ForwardMessages 2017-09-12 10:32:11 +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 Favour rsa module over PyCrypto since the former is pure Python 2017-08-24 18:41:48 +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.