tdlib-ruby 3.0.2 → 3.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ChangeLog.md +8 -0
- data/README.md +11 -4
- data/lib/tdlib/client.rb +4 -7
- data/lib/tdlib/version.rb +1 -1
- data/lib/tdlib-ruby.rb +12 -14
- data/tdlib-ruby.gemspec +2 -2
- metadata +7 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3eb88ee0c6fafc92210e78a2d038cbbec3c09db2ba001574ff1af21436fc41d6
|
4
|
+
data.tar.gz: 590a4c52abcaf3b775d2f8b1e32a91a06e1911a3d46e282d8fc2a3700dfa4364
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fb2ab9095d979bc32bd4ad15927e723cb77e30a4ecdc10d53485f3c153eab5afdc3cec3f831a5d1cfafadf19cbea170169bc9a813921fd3930a5d47339de786e
|
7
|
+
data.tar.gz: b1b85a70c2a08aa1d1894bf96eb8bd7dfd10e80624537b916812e0b2b0c949ed1ae7cc2bdaafbf9a0f3d689ea4def7c0cd66ab6abc0ca5934cece6f8b4b2080b
|
data/ChangeLog.md
CHANGED
data/README.md
CHANGED
@@ -32,6 +32,13 @@ http://rpms.southbridge.ru/rhel6/stable/SRPMS/
|
|
32
32
|
| 2.1 | → | 1.5 |
|
33
33
|
| 2.2 | → | 1.6 |
|
34
34
|
|
35
|
+
IMPORTANT: From version 3.0 types schema is extracted to a separate gem: https://github.com/southbridgeio/tdlib-schema
|
36
|
+
If you want to support specific tdlib version, just set a dependency in your Gemfile:
|
37
|
+
|
38
|
+
```ruby
|
39
|
+
gem 'tdlib-schema', '~> 1.7.0'
|
40
|
+
```
|
41
|
+
|
35
42
|
## Install
|
36
43
|
|
37
44
|
Add to your gemfile:
|
@@ -85,15 +92,15 @@ begin
|
|
85
92
|
when :wait_phone_number
|
86
93
|
puts 'Please, enter your phone number:'
|
87
94
|
phone = STDIN.gets.strip
|
88
|
-
client.set_authentication_phone_number(phone, nil).wait
|
95
|
+
client.set_authentication_phone_number(phone_number: phone, settings: nil).wait
|
89
96
|
when :wait_code
|
90
97
|
puts 'Please, enter code from SMS:'
|
91
98
|
code = STDIN.gets.strip
|
92
|
-
client.check_authentication_code(code).wait
|
99
|
+
client.check_authentication_code(code: code).wait
|
93
100
|
when :wait_password
|
94
101
|
puts 'Please, enter 2FA password:'
|
95
102
|
password = STDIN.gets.strip
|
96
|
-
client.check_authentication_password(password).wait
|
103
|
+
client.check_authentication_password(password: password).wait
|
97
104
|
when :ready
|
98
105
|
client.get_me.then { |user| @me = user }.rescue { |err| puts "error: #{err}" }.wait
|
99
106
|
break
|
@@ -114,7 +121,7 @@ Client methods are being executed asynchronously and return Concurrent::Promises
|
|
114
121
|
|
115
122
|
```ruby
|
116
123
|
TD.configure do |config|
|
117
|
-
config.lib_path = 'path/to/dir_containing_libtdjson' #
|
124
|
+
config.lib_path = 'path/to/dir_containing_libtdjson' # libtdjson will be searched in this directory (*.so, *.dylib, *.dll are valid extensions). For Rails projects, if not set, will be considered as project_root_path/vendor. If not set and file doesn't exist in vendor, it will try to find lib by ldconfig (only on Linux).
|
118
125
|
config.encryption_key = 'your_encryption_key' # it's not required
|
119
126
|
|
120
127
|
config.client.api_id = 12345
|
data/lib/tdlib/client.rb
CHANGED
@@ -36,13 +36,10 @@ class TD::Client
|
|
36
36
|
on TD::Types::Update::AuthorizationState do |update|
|
37
37
|
case update.authorization_state
|
38
38
|
when TD::Types::AuthorizationState::WaitTdlibParameters
|
39
|
-
set_tdlib_parameters(
|
40
|
-
|
41
|
-
|
42
|
-
@
|
43
|
-
@ready = true
|
44
|
-
@ready_condition.broadcast
|
45
|
-
end
|
39
|
+
set_tdlib_parameters(**@config)
|
40
|
+
@ready_condition_mutex.synchronize do
|
41
|
+
@ready = true
|
42
|
+
@ready_condition.broadcast
|
46
43
|
end
|
47
44
|
else
|
48
45
|
# do nothing
|
data/lib/tdlib/version.rb
CHANGED
data/lib/tdlib-ruby.rb
CHANGED
@@ -16,21 +16,19 @@ module TD
|
|
16
16
|
setting :encryption_key
|
17
17
|
|
18
18
|
setting :client do
|
19
|
-
setting :api_id,
|
19
|
+
setting :api_id, constructor: ->(id) { id&.to_i }
|
20
20
|
setting :api_hash
|
21
|
-
setting :use_test_dc, false
|
22
|
-
setting :database_directory, "#{Dir.home}/.tdlib-ruby/db"
|
23
|
-
setting :files_directory, "#{Dir.home}/.tdlib-ruby/data"
|
24
|
-
setting :use_file_database, true
|
25
|
-
setting :use_chat_info_database, true
|
26
|
-
setting :use_secret_chats, true
|
27
|
-
setting :use_message_database, true
|
28
|
-
setting :system_language_code, 'en'
|
29
|
-
setting :device_model, 'Ruby TD client'
|
30
|
-
setting :system_version, 'Unknown'
|
31
|
-
setting :application_version, '1.0'
|
32
|
-
setting :enable_storage_optimizer, true
|
33
|
-
setting :ignore_file_names, false
|
21
|
+
setting :use_test_dc, default: false
|
22
|
+
setting :database_directory, default: "#{Dir.home}/.tdlib-ruby/db"
|
23
|
+
setting :files_directory, default: "#{Dir.home}/.tdlib-ruby/data"
|
24
|
+
setting :use_file_database, default: true
|
25
|
+
setting :use_chat_info_database, default: true
|
26
|
+
setting :use_secret_chats, default: true
|
27
|
+
setting :use_message_database, default: true
|
28
|
+
setting :system_language_code, default: 'en'
|
29
|
+
setting :device_model, default: 'Ruby TD client'
|
30
|
+
setting :system_version, default: 'Unknown'
|
31
|
+
setting :application_version, default: '1.0'
|
34
32
|
end
|
35
33
|
end
|
36
34
|
|
data/tdlib-ruby.gemspec
CHANGED
@@ -20,9 +20,9 @@ Gem::Specification.new do |gem|
|
|
20
20
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
21
21
|
gem.require_paths = ['lib']
|
22
22
|
|
23
|
-
gem.add_runtime_dependency 'dry-configurable', '~> 0.
|
23
|
+
gem.add_runtime_dependency 'dry-configurable', '~> 0.13'
|
24
24
|
gem.add_runtime_dependency 'concurrent-ruby', '~> 1.1'
|
25
|
-
gem.add_runtime_dependency 'ffi', '~> 1.0'
|
25
|
+
gem.add_runtime_dependency 'ffi', '~> 1.15.0'
|
26
26
|
gem.add_runtime_dependency 'tdlib-schema'
|
27
27
|
|
28
28
|
gem.add_development_dependency 'bundler', '~> 2.0'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tdlib-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0
|
4
|
+
version: 3.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Southbridge
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-12-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: dry-configurable
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '0.
|
19
|
+
version: '0.13'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '0.
|
26
|
+
version: '0.13'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: concurrent-ruby
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -44,14 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
47
|
+
version: 1.15.0
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
54
|
+
version: 1.15.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: tdlib-schema
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -201,7 +201,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
201
201
|
- !ruby/object:Gem::Version
|
202
202
|
version: '0'
|
203
203
|
requirements: []
|
204
|
-
rubygems_version: 3.
|
204
|
+
rubygems_version: 3.5.23
|
205
205
|
signing_key:
|
206
206
|
specification_version: 4
|
207
207
|
summary: Ruby bindings and client for TDlib
|