# Telethon **Telethon** is Telegram client implementation in Python. This project's _core_ is **completely based** on [TLSharp](https://github.com/sochix/TLSharp), so please, also have a look to the original project! Other parts, such as the request themselves, the .tl tokenizer and code generator, or some ported C# utilities such as `BinaryWriter`, `BinaryReader`, `TCPClient` and so on, are no longer part of TLSharp itself. ### Requirements This project requires the following Python modules, which can be installed by issuing `sudo -H pip install ` on a Linux terminal: - `pyaes` ([GitHub](https://github.com/ricmoo/pyaes), [package index](https://pypi.python.org/pypi/pyaes)) ### We need your help! As of now, the project is fully **untested** and with many pending things to do. If you know both Python and C#, please don't think it twice and help us (me)! ### Code generator limitations The current code generator is not complete, yet adding the missing features would only over-complicate an already hard-to-read code. Some parts of the .tl file _should_ be omitted, because they're "built-in" in the generated code (such as writing booleans, etc.). In order to make sure that all the generated files will work, please make sure to **always** comment out these lines in `scheme.tl` (the latest version can always be found [here](https://github.com/telegramdesktop/tdesktop/blob/master/Telegram/SourceFiles/mtproto/scheme.tl)): ```tl // boolFalse#bc799737 = Bool; // boolTrue#997275b5 = Bool; // true#3fedd339 = True; // vector#1cb5c415 {t:Type} # [ t ] = Vector t; ``` Also please make sure to rename `updates#74ae4240 ...` to `updates_tg#74ae4240 ...` or similar to avoid confusion between the updates folder and the updates.py file!