mtproto 0.0.7 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.env.example +4 -0
- data/lib/mtproto/async/middleware/base.rb +17 -0
- data/lib/mtproto/async/middleware/flood_wait.rb +42 -0
- data/lib/mtproto/async/request.rb +18 -0
- data/lib/mtproto/async/request_queue.rb +63 -0
- data/lib/mtproto/async_client.rb +201 -0
- data/lib/mtproto/auth_key_generator.rb +21 -21
- data/lib/mtproto/client/rpc.rb +44 -20
- data/lib/mtproto/client.rb +49 -15
- data/lib/mtproto/rpc/get_config.rb +19 -22
- data/lib/mtproto/rpc/get_contacts.rb +12 -5
- data/lib/mtproto/rpc/get_updates_difference.rb +23 -5
- data/lib/mtproto/rpc/get_updates_state.rb +12 -5
- data/lib/mtproto/rpc/get_users.rb +12 -5
- data/lib/mtproto/rpc/ping.rb +12 -5
- data/lib/mtproto/rpc/send_code.rb +19 -22
- data/lib/mtproto/rpc/send_message.rb +21 -5
- data/lib/mtproto/rpc/sign_in.rb +23 -27
- data/lib/mtproto/{tl → type}/auth_key/dh_gen_response.rb +1 -1
- data/lib/mtproto/{tl → type}/auth_key/req_dh_params.rb +1 -1
- data/lib/mtproto/{tl → type}/auth_key/req_pq_multi.rb +1 -1
- data/lib/mtproto/{tl → type}/auth_key/res_pq.rb +1 -1
- data/lib/mtproto/{tl → type}/auth_key/server_dh_params.rb +1 -1
- data/lib/mtproto/{tl → type}/auth_key/set_client_dh_params.rb +1 -1
- data/lib/mtproto/{tl → type}/bad_msg_notification.rb +1 -1
- data/lib/mtproto/{tl → type}/client_dh_inner_data.rb +1 -1
- data/lib/mtproto/{tl → type}/code_settings.rb +1 -1
- data/lib/mtproto/{tl → type}/config.rb +1 -1
- data/lib/mtproto/{tl → type}/gzip_packed.rb +1 -1
- data/lib/mtproto/{tl → type}/message.rb +1 -1
- data/lib/mtproto/{tl → type}/msg_container.rb +1 -1
- data/lib/mtproto/{tl → type}/new_session_created.rb +1 -1
- data/lib/mtproto/{tl/p_q_inner_data.rb → type/pq_inner_data.rb} +1 -1
- data/lib/mtproto/{tl → type}/rpc/auth/authorization.rb +5 -5
- data/lib/mtproto/{tl → type}/rpc/auth/send_code.rb +1 -1
- data/lib/mtproto/{tl → type}/rpc/auth/sent_code.rb +7 -7
- data/lib/mtproto/{tl → type}/rpc/auth/sign_in.rb +1 -1
- data/lib/mtproto/{tl → type}/rpc/contacts/contacts.rb +5 -5
- data/lib/mtproto/{tl → type}/rpc/contacts/get_contacts.rb +1 -1
- data/lib/mtproto/{tl → type}/rpc/help/config.rb +7 -7
- data/lib/mtproto/{tl → type}/rpc/help/get_config.rb +1 -1
- data/lib/mtproto/type/rpc/init_connection.rb +28 -0
- data/lib/mtproto/type/rpc/invoke_with_layer.rb +19 -0
- data/lib/mtproto/{tl → type}/rpc/messages/send_message.rb +1 -1
- data/lib/mtproto/{tl → type}/rpc/messages/updates.rb +5 -5
- data/lib/mtproto/{tl → type}/rpc/ping.rb +1 -1
- data/lib/mtproto/{tl → type}/rpc/pong.rb +1 -1
- data/lib/mtproto/{tl → type}/rpc/updates/difference.rb +5 -5
- data/lib/mtproto/{tl → type}/rpc/updates/get_difference.rb +1 -1
- data/lib/mtproto/{tl → type}/rpc/updates/get_state.rb +1 -1
- data/lib/mtproto/{tl → type}/rpc/updates/state.rb +5 -5
- data/lib/mtproto/{tl → type}/rpc/users/get_users.rb +1 -1
- data/lib/mtproto/{tl → type}/rpc/users/users.rb +5 -5
- data/lib/mtproto/{tl → type}/rpc_error.rb +1 -1
- data/lib/mtproto/{tl → type}/sent_code.rb +1 -1
- data/lib/mtproto/{tl → type}/serializer.rb +1 -1
- data/lib/mtproto/{tl → type}/server_dh_inner_data.rb +1 -1
- data/lib/mtproto/updates_poller.rb +3 -3
- data/lib/mtproto/version.rb +1 -1
- data/lib/mtproto.rb +18 -13
- metadata +59 -39
- data/lib/mtproto/tl/method_builder.rb +0 -29
|
@@ -4,7 +4,7 @@ require_relative '../../gzip_packed'
|
|
|
4
4
|
require_relative '../../rpc_error'
|
|
5
5
|
|
|
6
6
|
module MTProto
|
|
7
|
-
module
|
|
7
|
+
module Type
|
|
8
8
|
module RPC
|
|
9
9
|
module Auth
|
|
10
10
|
class Authorization
|
|
@@ -14,13 +14,13 @@ module MTProto
|
|
|
14
14
|
def self.parse(response)
|
|
15
15
|
constructor = response[0, 4].unpack1('L<')
|
|
16
16
|
|
|
17
|
-
if constructor ==
|
|
18
|
-
response =
|
|
17
|
+
if constructor == Type::GzipPacked::CONSTRUCTOR
|
|
18
|
+
response = Type::GzipPacked.unpack(response)
|
|
19
19
|
constructor = response[0, 4].unpack1('L<')
|
|
20
20
|
end
|
|
21
21
|
|
|
22
|
-
if constructor ==
|
|
23
|
-
error =
|
|
22
|
+
if constructor == Type::RpcError::CONSTRUCTOR
|
|
23
|
+
error = Type::RpcError.deserialize(response)
|
|
24
24
|
raise MTProto::RpcError.new(error.error_code, error.error_message)
|
|
25
25
|
end
|
|
26
26
|
|
|
@@ -5,25 +5,25 @@ require_relative '../../rpc_error'
|
|
|
5
5
|
require_relative '../../sent_code'
|
|
6
6
|
|
|
7
7
|
module MTProto
|
|
8
|
-
module
|
|
8
|
+
module Type
|
|
9
9
|
module RPC
|
|
10
10
|
module Auth
|
|
11
11
|
class SentCode
|
|
12
12
|
def self.parse(response)
|
|
13
13
|
constructor = response[0, 4].unpack1('L<')
|
|
14
14
|
|
|
15
|
-
if constructor ==
|
|
16
|
-
response =
|
|
15
|
+
if constructor == Type::GzipPacked::CONSTRUCTOR
|
|
16
|
+
response = Type::GzipPacked.unpack(response)
|
|
17
17
|
constructor = response[0, 4].unpack1('L<')
|
|
18
18
|
end
|
|
19
19
|
|
|
20
|
-
if constructor ==
|
|
21
|
-
error =
|
|
20
|
+
if constructor == Type::RpcError::CONSTRUCTOR
|
|
21
|
+
error = Type::RpcError.deserialize(response)
|
|
22
22
|
raise MTProto::RpcError.new(error.error_code, error.error_message)
|
|
23
23
|
end
|
|
24
24
|
|
|
25
|
-
if constructor ==
|
|
26
|
-
sent_code =
|
|
25
|
+
if constructor == Type::SentCode::CONSTRUCTOR
|
|
26
|
+
sent_code = Type::SentCode.deserialize(response)
|
|
27
27
|
sent_code.to_h
|
|
28
28
|
else
|
|
29
29
|
raise UnexpectedConstructorError.new(constructor)
|
|
@@ -4,7 +4,7 @@ require_relative '../../gzip_packed'
|
|
|
4
4
|
require_relative '../../rpc_error'
|
|
5
5
|
|
|
6
6
|
module MTProto
|
|
7
|
-
module
|
|
7
|
+
module Type
|
|
8
8
|
module RPC
|
|
9
9
|
module Contacts
|
|
10
10
|
class Contacts
|
|
@@ -18,14 +18,14 @@ module MTProto
|
|
|
18
18
|
constructor = response[offset, 4].unpack1('L<')
|
|
19
19
|
offset += 4
|
|
20
20
|
|
|
21
|
-
if constructor ==
|
|
22
|
-
response =
|
|
21
|
+
if constructor == Type::GzipPacked::CONSTRUCTOR
|
|
22
|
+
response = Type::GzipPacked.unpack(response)
|
|
23
23
|
constructor = response[0, 4].unpack1('L<')
|
|
24
24
|
offset = 4
|
|
25
25
|
end
|
|
26
26
|
|
|
27
|
-
if constructor ==
|
|
28
|
-
error =
|
|
27
|
+
if constructor == Type::RpcError::CONSTRUCTOR
|
|
28
|
+
error = Type::RpcError.deserialize(response)
|
|
29
29
|
raise MTProto::RpcError.new(error.error_code, error.error_message)
|
|
30
30
|
end
|
|
31
31
|
|
|
@@ -5,25 +5,25 @@ require_relative '../../rpc_error'
|
|
|
5
5
|
require_relative '../../config'
|
|
6
6
|
|
|
7
7
|
module MTProto
|
|
8
|
-
module
|
|
8
|
+
module Type
|
|
9
9
|
module RPC
|
|
10
10
|
module Help
|
|
11
11
|
class Config
|
|
12
12
|
def self.parse(response)
|
|
13
13
|
constructor = response[0, 4].unpack1('L<')
|
|
14
14
|
|
|
15
|
-
if constructor ==
|
|
16
|
-
response =
|
|
15
|
+
if constructor == Type::GzipPacked::CONSTRUCTOR
|
|
16
|
+
response = Type::GzipPacked.unpack(response)
|
|
17
17
|
constructor = response[0, 4].unpack1('L<')
|
|
18
18
|
end
|
|
19
19
|
|
|
20
|
-
if constructor ==
|
|
21
|
-
error =
|
|
20
|
+
if constructor == Type::RpcError::CONSTRUCTOR
|
|
21
|
+
error = Type::RpcError.deserialize(response)
|
|
22
22
|
raise MTProto::RpcError.new(error.error_code, error.error_message)
|
|
23
23
|
end
|
|
24
24
|
|
|
25
|
-
if constructor ==
|
|
26
|
-
|
|
25
|
+
if constructor == Type::Config::CONSTRUCTOR || constructor == Type::Config::CONSTRUCTOR_ALT
|
|
26
|
+
Type::Config.deserialize(response)
|
|
27
27
|
else
|
|
28
28
|
raise UnexpectedConstructorError.new(constructor)
|
|
29
29
|
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../serializer'
|
|
4
|
+
|
|
5
|
+
module MTProto
|
|
6
|
+
module Type
|
|
7
|
+
module RPC
|
|
8
|
+
class InitConnection
|
|
9
|
+
CONSTRUCTOR = 0xc1cd5ea9
|
|
10
|
+
|
|
11
|
+
def self.build(api_id:, device_model:, system_version:, app_version:, system_lang_code:, lang_pack:, lang_code:, query:)
|
|
12
|
+
flags = 0
|
|
13
|
+
|
|
14
|
+
body = [CONSTRUCTOR].pack('L<')
|
|
15
|
+
body += Serializer.serialize_int(flags)
|
|
16
|
+
body += Serializer.serialize_int(api_id)
|
|
17
|
+
body += Serializer.serialize_string(device_model)
|
|
18
|
+
body += Serializer.serialize_string(system_version)
|
|
19
|
+
body += Serializer.serialize_string(app_version)
|
|
20
|
+
body += Serializer.serialize_string(system_lang_code)
|
|
21
|
+
body += Serializer.serialize_string(lang_pack)
|
|
22
|
+
body += Serializer.serialize_string(lang_code)
|
|
23
|
+
body + query
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../serializer'
|
|
4
|
+
|
|
5
|
+
module MTProto
|
|
6
|
+
module Type
|
|
7
|
+
module RPC
|
|
8
|
+
class InvokeWithLayer
|
|
9
|
+
CONSTRUCTOR = 0xda9b0d0d
|
|
10
|
+
|
|
11
|
+
def self.build(layer:, query:)
|
|
12
|
+
body = [CONSTRUCTOR].pack('L<')
|
|
13
|
+
body += Serializer.serialize_int(layer)
|
|
14
|
+
body + query
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -4,7 +4,7 @@ require_relative '../../gzip_packed'
|
|
|
4
4
|
require_relative '../../rpc_error'
|
|
5
5
|
|
|
6
6
|
module MTProto
|
|
7
|
-
module
|
|
7
|
+
module Type
|
|
8
8
|
module RPC
|
|
9
9
|
module Messages
|
|
10
10
|
class Updates
|
|
@@ -20,14 +20,14 @@ module MTProto
|
|
|
20
20
|
constructor = response[offset, 4].unpack1('L<')
|
|
21
21
|
offset += 4
|
|
22
22
|
|
|
23
|
-
if constructor ==
|
|
24
|
-
response =
|
|
23
|
+
if constructor == Type::GzipPacked::CONSTRUCTOR
|
|
24
|
+
response = Type::GzipPacked.unpack(response)
|
|
25
25
|
constructor = response[0, 4].unpack1('L<')
|
|
26
26
|
offset = 4
|
|
27
27
|
end
|
|
28
28
|
|
|
29
|
-
if constructor ==
|
|
30
|
-
error =
|
|
29
|
+
if constructor == Type::RpcError::CONSTRUCTOR
|
|
30
|
+
error = Type::RpcError.deserialize(response)
|
|
31
31
|
raise MTProto::RpcError.new(error.error_code, error.error_message)
|
|
32
32
|
end
|
|
33
33
|
|
|
@@ -4,7 +4,7 @@ require_relative '../../gzip_packed'
|
|
|
4
4
|
require_relative '../../rpc_error'
|
|
5
5
|
|
|
6
6
|
module MTProto
|
|
7
|
-
module
|
|
7
|
+
module Type
|
|
8
8
|
module RPC
|
|
9
9
|
module Updates
|
|
10
10
|
class Difference
|
|
@@ -30,14 +30,14 @@ module MTProto
|
|
|
30
30
|
constructor = response[offset, 4].unpack1('L<')
|
|
31
31
|
offset += 4
|
|
32
32
|
|
|
33
|
-
if constructor ==
|
|
34
|
-
response =
|
|
33
|
+
if constructor == Type::GzipPacked::CONSTRUCTOR
|
|
34
|
+
response = Type::GzipPacked.unpack(response)
|
|
35
35
|
constructor = response[0, 4].unpack1('L<')
|
|
36
36
|
offset = 4
|
|
37
37
|
end
|
|
38
38
|
|
|
39
|
-
if constructor ==
|
|
40
|
-
error =
|
|
39
|
+
if constructor == Type::RpcError::CONSTRUCTOR
|
|
40
|
+
error = Type::RpcError.deserialize(response)
|
|
41
41
|
raise MTProto::RpcError.new(error.error_code, error.error_message)
|
|
42
42
|
end
|
|
43
43
|
|
|
@@ -4,7 +4,7 @@ require_relative '../../gzip_packed'
|
|
|
4
4
|
require_relative '../../rpc_error'
|
|
5
5
|
|
|
6
6
|
module MTProto
|
|
7
|
-
module
|
|
7
|
+
module Type
|
|
8
8
|
module RPC
|
|
9
9
|
module Updates
|
|
10
10
|
class State
|
|
@@ -16,14 +16,14 @@ module MTProto
|
|
|
16
16
|
constructor = response[offset, 4].unpack1('L<')
|
|
17
17
|
offset += 4
|
|
18
18
|
|
|
19
|
-
if constructor ==
|
|
20
|
-
response =
|
|
19
|
+
if constructor == Type::GzipPacked::CONSTRUCTOR
|
|
20
|
+
response = Type::GzipPacked.unpack(response)
|
|
21
21
|
constructor = response[0, 4].unpack1('L<')
|
|
22
22
|
offset = 4
|
|
23
23
|
end
|
|
24
24
|
|
|
25
|
-
if constructor ==
|
|
26
|
-
error =
|
|
25
|
+
if constructor == Type::RpcError::CONSTRUCTOR
|
|
26
|
+
error = Type::RpcError.deserialize(response)
|
|
27
27
|
raise MTProto::RpcError.new(error.error_code, error.error_message)
|
|
28
28
|
end
|
|
29
29
|
|
|
@@ -4,7 +4,7 @@ require_relative '../../gzip_packed'
|
|
|
4
4
|
require_relative '../../rpc_error'
|
|
5
5
|
|
|
6
6
|
module MTProto
|
|
7
|
-
module
|
|
7
|
+
module Type
|
|
8
8
|
module RPC
|
|
9
9
|
module Users
|
|
10
10
|
class Users
|
|
@@ -17,14 +17,14 @@ module MTProto
|
|
|
17
17
|
constructor = response[offset, 4].unpack1('L<')
|
|
18
18
|
offset += 4
|
|
19
19
|
|
|
20
|
-
if constructor ==
|
|
21
|
-
response =
|
|
20
|
+
if constructor == Type::GzipPacked::CONSTRUCTOR
|
|
21
|
+
response = Type::GzipPacked.unpack(response)
|
|
22
22
|
constructor = response[0, 4].unpack1('L<')
|
|
23
23
|
offset = 4
|
|
24
24
|
end
|
|
25
25
|
|
|
26
|
-
if constructor ==
|
|
27
|
-
error =
|
|
26
|
+
if constructor == Type::RpcError::CONSTRUCTOR
|
|
27
|
+
error = Type::RpcError.deserialize(response)
|
|
28
28
|
raise MTProto::RpcError.new(error.error_code, error.error_message)
|
|
29
29
|
end
|
|
30
30
|
|
|
@@ -31,7 +31,7 @@ module MTProto
|
|
|
31
31
|
|
|
32
32
|
@running = true
|
|
33
33
|
|
|
34
|
-
@state = RPC::GetUpdatesState.new(@client).
|
|
34
|
+
@state = RPC::GetUpdatesState.new(@client).call_sync
|
|
35
35
|
|
|
36
36
|
poll_loop
|
|
37
37
|
end
|
|
@@ -45,7 +45,7 @@ module MTProto
|
|
|
45
45
|
def poll_loop
|
|
46
46
|
while @running
|
|
47
47
|
begin
|
|
48
|
-
difference = RPC::GetUpdatesDifference.new(@client).
|
|
48
|
+
difference = RPC::GetUpdatesDifference.new(@client).call_sync(
|
|
49
49
|
pts: @state[:pts],
|
|
50
50
|
date: @state[:date],
|
|
51
51
|
qts: @state[:qts]
|
|
@@ -56,7 +56,7 @@ module MTProto
|
|
|
56
56
|
if difference[:state]
|
|
57
57
|
@state = @state.merge(difference[:state])
|
|
58
58
|
elsif difference[:type] == :too_long
|
|
59
|
-
@state = RPC::GetUpdatesState.new(@client).
|
|
59
|
+
@state = RPC::GetUpdatesState.new(@client).call_sync
|
|
60
60
|
elsif difference[:date]
|
|
61
61
|
@state[:date] = difference[:date]
|
|
62
62
|
end
|
data/lib/mtproto/version.rb
CHANGED
data/lib/mtproto.rb
CHANGED
|
@@ -4,19 +4,19 @@ require_relative 'mtproto/version'
|
|
|
4
4
|
require_relative 'mtproto/errors'
|
|
5
5
|
require_relative 'mtproto/transport/abridged_packet_codec'
|
|
6
6
|
require_relative 'mtproto/transport/tcp_connection'
|
|
7
|
-
require_relative 'mtproto/
|
|
8
|
-
require_relative 'mtproto/
|
|
9
|
-
require_relative 'mtproto/
|
|
10
|
-
require_relative 'mtproto/
|
|
11
|
-
require_relative 'mtproto/
|
|
12
|
-
require_relative 'mtproto/
|
|
13
|
-
require_relative 'mtproto/
|
|
14
|
-
require_relative 'mtproto/
|
|
15
|
-
require_relative 'mtproto/
|
|
16
|
-
require_relative 'mtproto/
|
|
17
|
-
require_relative 'mtproto/
|
|
18
|
-
require_relative 'mtproto/
|
|
19
|
-
require_relative 'mtproto/
|
|
7
|
+
require_relative 'mtproto/type/message'
|
|
8
|
+
require_relative 'mtproto/type/serializer'
|
|
9
|
+
require_relative 'mtproto/type/pq_inner_data'
|
|
10
|
+
require_relative 'mtproto/type/server_dh_inner_data'
|
|
11
|
+
require_relative 'mtproto/type/client_dh_inner_data'
|
|
12
|
+
require_relative 'mtproto/type/bad_msg_notification'
|
|
13
|
+
require_relative 'mtproto/type/msg_container'
|
|
14
|
+
require_relative 'mtproto/type/new_session_created'
|
|
15
|
+
require_relative 'mtproto/type/rpc_error'
|
|
16
|
+
require_relative 'mtproto/type/gzip_packed'
|
|
17
|
+
require_relative 'mtproto/type/config'
|
|
18
|
+
require_relative 'mtproto/type/code_settings'
|
|
19
|
+
require_relative 'mtproto/type/sent_code'
|
|
20
20
|
require_relative 'mtproto/crypto/rsa_key'
|
|
21
21
|
require_relative 'mtproto/crypto/factorization'
|
|
22
22
|
require_relative 'mtproto/crypto/aes_ige'
|
|
@@ -39,6 +39,11 @@ require_relative 'mtproto/rpc/get_updates_state'
|
|
|
39
39
|
require_relative 'mtproto/rpc/get_updates_difference'
|
|
40
40
|
require_relative 'mtproto/rpc/get_contacts'
|
|
41
41
|
require_relative 'mtproto/updates_poller'
|
|
42
|
+
require_relative 'mtproto/async/request'
|
|
43
|
+
require_relative 'mtproto/async/request_queue'
|
|
44
|
+
require_relative 'mtproto/async/middleware/base'
|
|
45
|
+
require_relative 'mtproto/async/middleware/flood_wait'
|
|
46
|
+
require_relative 'mtproto/async_client'
|
|
42
47
|
|
|
43
48
|
module MTProto
|
|
44
49
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: mtproto
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.8
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Artem Levenkov
|
|
@@ -23,6 +23,20 @@ dependencies:
|
|
|
23
23
|
- - "~>"
|
|
24
24
|
- !ruby/object:Gem::Version
|
|
25
25
|
version: '0.2'
|
|
26
|
+
- !ruby/object:Gem::Dependency
|
|
27
|
+
name: concurrent-ruby
|
|
28
|
+
requirement: !ruby/object:Gem::Requirement
|
|
29
|
+
requirements:
|
|
30
|
+
- - "~>"
|
|
31
|
+
- !ruby/object:Gem::Version
|
|
32
|
+
version: '1.3'
|
|
33
|
+
type: :runtime
|
|
34
|
+
prerelease: false
|
|
35
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
36
|
+
requirements:
|
|
37
|
+
- - "~>"
|
|
38
|
+
- !ruby/object:Gem::Version
|
|
39
|
+
version: '1.3'
|
|
26
40
|
description: A Ruby library for Telegram MTProto protocol with TCP abridged transport
|
|
27
41
|
support
|
|
28
42
|
email:
|
|
@@ -39,6 +53,11 @@ files:
|
|
|
39
53
|
- ext/factorization/extconf.rb
|
|
40
54
|
- ext/factorization/factorization.c
|
|
41
55
|
- lib/mtproto.rb
|
|
56
|
+
- lib/mtproto/async/middleware/base.rb
|
|
57
|
+
- lib/mtproto/async/middleware/flood_wait.rb
|
|
58
|
+
- lib/mtproto/async/request.rb
|
|
59
|
+
- lib/mtproto/async/request_queue.rb
|
|
60
|
+
- lib/mtproto/async_client.rb
|
|
42
61
|
- lib/mtproto/auth_key_generator.rb
|
|
43
62
|
- lib/mtproto/client.rb
|
|
44
63
|
- lib/mtproto/client/rpc.rb
|
|
@@ -63,46 +82,47 @@ files:
|
|
|
63
82
|
- lib/mtproto/rpc/send_message.rb
|
|
64
83
|
- lib/mtproto/rpc/sign_in.rb
|
|
65
84
|
- lib/mtproto/session.rb
|
|
66
|
-
- lib/mtproto/tl/auth_key/dh_gen_response.rb
|
|
67
|
-
- lib/mtproto/tl/auth_key/req_dh_params.rb
|
|
68
|
-
- lib/mtproto/tl/auth_key/req_pq_multi.rb
|
|
69
|
-
- lib/mtproto/tl/auth_key/res_pq.rb
|
|
70
|
-
- lib/mtproto/tl/auth_key/server_dh_params.rb
|
|
71
|
-
- lib/mtproto/tl/auth_key/set_client_dh_params.rb
|
|
72
|
-
- lib/mtproto/tl/bad_msg_notification.rb
|
|
73
|
-
- lib/mtproto/tl/client_dh_inner_data.rb
|
|
74
|
-
- lib/mtproto/tl/code_settings.rb
|
|
75
|
-
- lib/mtproto/tl/config.rb
|
|
76
|
-
- lib/mtproto/tl/gzip_packed.rb
|
|
77
|
-
- lib/mtproto/tl/message.rb
|
|
78
|
-
- lib/mtproto/tl/method_builder.rb
|
|
79
|
-
- lib/mtproto/tl/msg_container.rb
|
|
80
|
-
- lib/mtproto/tl/new_session_created.rb
|
|
81
|
-
- lib/mtproto/tl/p_q_inner_data.rb
|
|
82
|
-
- lib/mtproto/tl/rpc/auth/authorization.rb
|
|
83
|
-
- lib/mtproto/tl/rpc/auth/send_code.rb
|
|
84
|
-
- lib/mtproto/tl/rpc/auth/sent_code.rb
|
|
85
|
-
- lib/mtproto/tl/rpc/auth/sign_in.rb
|
|
86
|
-
- lib/mtproto/tl/rpc/contacts/contacts.rb
|
|
87
|
-
- lib/mtproto/tl/rpc/contacts/get_contacts.rb
|
|
88
|
-
- lib/mtproto/tl/rpc/help/config.rb
|
|
89
|
-
- lib/mtproto/tl/rpc/help/get_config.rb
|
|
90
|
-
- lib/mtproto/tl/rpc/messages/send_message.rb
|
|
91
|
-
- lib/mtproto/tl/rpc/messages/updates.rb
|
|
92
|
-
- lib/mtproto/tl/rpc/ping.rb
|
|
93
|
-
- lib/mtproto/tl/rpc/pong.rb
|
|
94
|
-
- lib/mtproto/tl/rpc/updates/difference.rb
|
|
95
|
-
- lib/mtproto/tl/rpc/updates/get_difference.rb
|
|
96
|
-
- lib/mtproto/tl/rpc/updates/get_state.rb
|
|
97
|
-
- lib/mtproto/tl/rpc/updates/state.rb
|
|
98
|
-
- lib/mtproto/tl/rpc/users/get_users.rb
|
|
99
|
-
- lib/mtproto/tl/rpc/users/users.rb
|
|
100
|
-
- lib/mtproto/tl/rpc_error.rb
|
|
101
|
-
- lib/mtproto/tl/sent_code.rb
|
|
102
|
-
- lib/mtproto/tl/serializer.rb
|
|
103
|
-
- lib/mtproto/tl/server_dh_inner_data.rb
|
|
104
85
|
- lib/mtproto/transport/abridged_packet_codec.rb
|
|
105
86
|
- lib/mtproto/transport/tcp_connection.rb
|
|
87
|
+
- lib/mtproto/type/auth_key/dh_gen_response.rb
|
|
88
|
+
- lib/mtproto/type/auth_key/req_dh_params.rb
|
|
89
|
+
- lib/mtproto/type/auth_key/req_pq_multi.rb
|
|
90
|
+
- lib/mtproto/type/auth_key/res_pq.rb
|
|
91
|
+
- lib/mtproto/type/auth_key/server_dh_params.rb
|
|
92
|
+
- lib/mtproto/type/auth_key/set_client_dh_params.rb
|
|
93
|
+
- lib/mtproto/type/bad_msg_notification.rb
|
|
94
|
+
- lib/mtproto/type/client_dh_inner_data.rb
|
|
95
|
+
- lib/mtproto/type/code_settings.rb
|
|
96
|
+
- lib/mtproto/type/config.rb
|
|
97
|
+
- lib/mtproto/type/gzip_packed.rb
|
|
98
|
+
- lib/mtproto/type/message.rb
|
|
99
|
+
- lib/mtproto/type/msg_container.rb
|
|
100
|
+
- lib/mtproto/type/new_session_created.rb
|
|
101
|
+
- lib/mtproto/type/pq_inner_data.rb
|
|
102
|
+
- lib/mtproto/type/rpc/auth/authorization.rb
|
|
103
|
+
- lib/mtproto/type/rpc/auth/send_code.rb
|
|
104
|
+
- lib/mtproto/type/rpc/auth/sent_code.rb
|
|
105
|
+
- lib/mtproto/type/rpc/auth/sign_in.rb
|
|
106
|
+
- lib/mtproto/type/rpc/contacts/contacts.rb
|
|
107
|
+
- lib/mtproto/type/rpc/contacts/get_contacts.rb
|
|
108
|
+
- lib/mtproto/type/rpc/help/config.rb
|
|
109
|
+
- lib/mtproto/type/rpc/help/get_config.rb
|
|
110
|
+
- lib/mtproto/type/rpc/init_connection.rb
|
|
111
|
+
- lib/mtproto/type/rpc/invoke_with_layer.rb
|
|
112
|
+
- lib/mtproto/type/rpc/messages/send_message.rb
|
|
113
|
+
- lib/mtproto/type/rpc/messages/updates.rb
|
|
114
|
+
- lib/mtproto/type/rpc/ping.rb
|
|
115
|
+
- lib/mtproto/type/rpc/pong.rb
|
|
116
|
+
- lib/mtproto/type/rpc/updates/difference.rb
|
|
117
|
+
- lib/mtproto/type/rpc/updates/get_difference.rb
|
|
118
|
+
- lib/mtproto/type/rpc/updates/get_state.rb
|
|
119
|
+
- lib/mtproto/type/rpc/updates/state.rb
|
|
120
|
+
- lib/mtproto/type/rpc/users/get_users.rb
|
|
121
|
+
- lib/mtproto/type/rpc/users/users.rb
|
|
122
|
+
- lib/mtproto/type/rpc_error.rb
|
|
123
|
+
- lib/mtproto/type/sent_code.rb
|
|
124
|
+
- lib/mtproto/type/serializer.rb
|
|
125
|
+
- lib/mtproto/type/server_dh_inner_data.rb
|
|
106
126
|
- lib/mtproto/updates_poller.rb
|
|
107
127
|
- lib/mtproto/version.rb
|
|
108
128
|
- tmp/.keep
|