2015-03-11 16:42:20 +01:00
# About this repo
This is Telegram API for python.
Main aim is to implement MTProto protocol Telegram API on pure Python (not wrapped CLI)
We'll try to make it work on Python 2 as well as 3.
2015-03-11 17:05:34 +01:00
Detailed description of API and protocol can be found here:
2015-03-11 16:42:20 +01:00
https://core.telegram.org/api
https://core.telegram.org/mtproto
2015-03-11 17:05:34 +01:00
# Structure
- mtproto.py
- testing.py
- prime.py
- credentials
- rsa.pub
## Credentials
2015-03-11 16:42:20 +01:00
Repo doesn't contain any credentials to connect Telegram servers.
2015-03-11 17:05:34 +01:00
You can get yours from http://my.telegram.org
2015-03-11 16:42:20 +01:00
2015-03-11 17:05:34 +01:00
You should place 2 files in the root of your repo:
2015-03-11 16:42:20 +01:00
- credentials
- rsa.pub
Config example for "credentials" file:
```
[App data]
api_id: 12345
api_hash: 1234567890abcdef1234567890abcdef
ip_adress: 112.134.156.178
port: 443
```
rsa.pub contains your RSA key.
2015-03-11 17:05:34 +01:00
## mtproto.py
Contains functions to work with MTproto protocol:
- TL schema parsing
- serializing and deserializing
- manage connections to server
- send and receive messages
2015-03-11 16:42:20 +01:00
2015-03-11 17:05:34 +01:00
## testing.py
2015-03-11 16:42:20 +01:00
testing.py is used to test functionality of modules.
Now it makes steps from https://core.telegram.org/mtproto/samples-auth_key:
- sends PQ request to server
- parses the result
- factorizes PQ
2015-03-11 17:05:34 +01:00
## prime.py
prime.py is used in PQ factorization. It has been copied from https://stackoverflow.com/questions/4643647/fast-prime-factorization-module
## TL schema
We use JSON format TL Shema. TL Schema file contains information about objects and methods, it is located in TL_schema.JSON file in the root of repo. It is fully equivalent to JSON TL Schema from
https://core.telegram.org/schema/mtproto-json