Pure Python 3 MTProto API Telegram client library, for bots too!
Go to file
Lonami Exo 151e1623d3 Stop saving the session ID, sequence and time offset
After some discussion, storing the session ID is not needed at all.
It can always start off as a new random 8-byte-long number, also
restarting the sequence number at 0. This should prevent some seqno
too low errors.

Also, saving the time offset could cause more trouble than fixing
them, so that has also been removed.
2017-09-14 11:44:42 +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 Stop saving the session ID, sequence and time offset 2017-09-14 11:44:42 +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.