reddit-to-telegram 0.7.2 → 0.8.0
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/README.md +6 -4
- data/lib/reddit-to-telegram.rb +6 -3
- data/lib/reddit_to_telegram/{variables.rb → configuration.rb} +24 -16
- data/lib/reddit_to_telegram/errors.rb +16 -1
- data/lib/reddit_to_telegram/post.rb +23 -8
- data/lib/reddit_to_telegram/reddit/auth.rb +1 -2
- data/lib/reddit_to_telegram/reddit/fetch.rb +3 -5
- data/lib/reddit_to_telegram/reddit/output/imgur.rb +1 -1
- data/lib/reddit_to_telegram/reddit/output.rb +7 -2
- data/lib/reddit_to_telegram/services/translate.rb +3 -4
- data/lib/reddit_to_telegram/store/aws_simple_db.rb +14 -14
- data/lib/reddit_to_telegram/store/temp_file.rb +1 -2
- data/lib/reddit_to_telegram/store.rb +3 -9
- data/lib/reddit_to_telegram/telegram/post/gallery.rb +1 -3
- data/lib/reddit_to_telegram/telegram/post.rb +3 -7
- data/lib/reddit_to_telegram/telegram/prepare_request.rb +0 -3
- data/lib/reddit_to_telegram/telegram/video.rb +1 -2
- data/lib/reddit_to_telegram/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 141226c6670a9b95e6ec4f7a9e74da982ed135ac22d57173c39625d4c1acfb11
|
4
|
+
data.tar.gz: 05c3a7b11a49162ed3742abfa3b2ea38a39048393133f9e1b16130b6c8c747ec
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bca6427e5ab1fe8fd76f2e11f0b0101f624f37874915b056731385ba74f4b584aed9b7180b7ae380227db1745b15538ecdd2df4cdbf0c8b0f0ecabed17e571d5
|
7
|
+
data.tar.gz: bd53e70c0a7587af11fc27016e236205b4966ba5c4cd2bdfad1eedc72170abe035ad21945dc2c9933198608e8517053f7e467733cb36acf8c36c4efdcf198879
|
data/README.md
CHANGED
@@ -7,6 +7,8 @@
|
|
7
7
|
Beware, this is remotely not production-ready, API will change, you'll see lots of bugs and it may break at any time.
|
8
8
|
Be sure to check for gem updates.
|
9
9
|
|
10
|
+
You can set this bot up absolutely for free [via AWS Lambda](https://gist.github.com/dersnek/851c32a6b45eab19f1c8748095b2a481#file-free-rtt-bot-in-aws-lambda).
|
11
|
+
|
10
12
|
## Installation
|
11
13
|
In your `Gemfile` add:
|
12
14
|
```
|
@@ -40,10 +42,10 @@ To run it, you'll need some env variables set.
|
|
40
42
|
|
41
43
|
You can also set them dynamically:
|
42
44
|
```
|
43
|
-
RedditToTelegram
|
44
|
-
RedditToTelegram
|
45
|
+
RedditToTelegram.config.aws.access_key_id =
|
46
|
+
RedditToTelegram.config.telegram.bot_token =
|
45
47
|
```
|
46
|
-
Check out `lib/
|
48
|
+
Check out `lib/configuration` for full configuration.
|
47
49
|
|
48
50
|
## Usage
|
49
51
|
|
@@ -57,7 +59,7 @@ RedditToTelegram.hot(
|
|
57
59
|
```
|
58
60
|
Or to push one specific post (the only thing you need to set up for this is your telegram bot token):
|
59
61
|
```
|
60
|
-
RedditToTelegram.
|
62
|
+
RedditToTelegram.from_link("regular_link_to_post", :telegram_channel_id)
|
61
63
|
```
|
62
64
|
Use `:telegram_channel_id` without the `@`.
|
63
65
|
|
data/lib/reddit-to-telegram.rb
CHANGED
@@ -1,18 +1,21 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
4
|
-
require_relative "reddit_to_telegram/version"
|
3
|
+
Dir["#{File.dirname(__FILE__)}/reddit_to_telegram/**/*.rb"].each { |file| require file }
|
5
4
|
|
6
5
|
module RedditToTelegram
|
7
6
|
class << self
|
8
7
|
extend Forwardable
|
9
8
|
|
10
|
-
def_delegators :post, :hot, :
|
9
|
+
def_delegators :post, :hot, :from_link
|
11
10
|
|
12
11
|
def post
|
13
12
|
Post
|
14
13
|
end
|
15
14
|
|
15
|
+
def config
|
16
|
+
Configuration
|
17
|
+
end
|
18
|
+
|
16
19
|
def version
|
17
20
|
VERSION
|
18
21
|
end
|
@@ -1,26 +1,20 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require "logger"
|
4
|
+
|
3
5
|
module RedditToTelegram
|
4
|
-
module
|
6
|
+
module Configuration
|
5
7
|
class << self
|
6
|
-
|
7
|
-
RedditToTelegram::Variables::AWS
|
8
|
-
end
|
9
|
-
|
10
|
-
def google
|
11
|
-
RedditToTelegram::Variables::Google
|
12
|
-
end
|
13
|
-
|
14
|
-
def reddit
|
15
|
-
RedditToTelegram::Variables::Reddit
|
16
|
-
end
|
8
|
+
attr_writer :logger, :on_error
|
17
9
|
|
18
|
-
def
|
19
|
-
|
10
|
+
def logger
|
11
|
+
@logger ||= Logger.new($stdout).tap do |log|
|
12
|
+
log.progname = "RedditToTelegram"
|
13
|
+
end
|
20
14
|
end
|
21
15
|
|
22
|
-
def
|
23
|
-
|
16
|
+
def on_error
|
17
|
+
@on_error ||= :log
|
24
18
|
end
|
25
19
|
end
|
26
20
|
|
@@ -115,5 +109,19 @@ module RedditToTelegram
|
|
115
109
|
end
|
116
110
|
end
|
117
111
|
end
|
112
|
+
|
113
|
+
class << self
|
114
|
+
NESTED_CONFIG = {
|
115
|
+
aws: AWS,
|
116
|
+
google: Google,
|
117
|
+
reddit: Reddit,
|
118
|
+
store: Store,
|
119
|
+
telegram: Telegram
|
120
|
+
}.freeze
|
121
|
+
|
122
|
+
NESTED_CONFIG.each do |key, value|
|
123
|
+
define_method(key) { value }
|
124
|
+
end
|
125
|
+
end
|
118
126
|
end
|
119
127
|
end
|
@@ -2,6 +2,21 @@
|
|
2
2
|
|
3
3
|
module RedditToTelegram
|
4
4
|
class RedditToTelegramError < StandardError; end
|
5
|
+
|
5
6
|
class InvalidStoreType < RedditToTelegramError; end
|
6
|
-
class
|
7
|
+
class MissingConfiguration < RedditToTelegramError; end
|
8
|
+
|
9
|
+
class Errors
|
10
|
+
class << self
|
11
|
+
def new(error, message = nil)
|
12
|
+
if Configuration.on_error == :raise
|
13
|
+
raise(error.new(message))
|
14
|
+
elsif Configuration.on_error == :log
|
15
|
+
log_message = error.to_s
|
16
|
+
log_message += ": #{message}" unless message.nil?
|
17
|
+
Configuration.logger.error(log_message)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
7
22
|
end
|
@@ -1,14 +1,10 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require_relative "reddit/fetch"
|
4
|
-
require_relative "store"
|
5
|
-
require_relative "telegram/post"
|
6
|
-
require_relative "variables"
|
7
|
-
|
8
3
|
module RedditToTelegram
|
9
4
|
class Post
|
10
5
|
class << self
|
11
6
|
def hot(sources, opts = {})
|
7
|
+
check_config
|
12
8
|
return if sources.empty?
|
13
9
|
|
14
10
|
Store.setup
|
@@ -19,21 +15,28 @@ module RedditToTelegram
|
|
19
15
|
end
|
20
16
|
end
|
21
17
|
|
22
|
-
def
|
18
|
+
def from_link(link, telegram_chat_id, opts = {})
|
19
|
+
check_config
|
23
20
|
return if link.empty?
|
24
21
|
|
25
|
-
|
22
|
+
Configuration.store.type = :memory
|
26
23
|
Store.setup
|
27
24
|
|
28
25
|
res = Reddit::Fetch.post(link)
|
26
|
+
return unless res_ok?(res)
|
27
|
+
|
29
28
|
Telegram::Post.push(res, telegram_chat_id, opts)
|
30
29
|
res
|
31
30
|
end
|
32
31
|
|
33
32
|
private
|
34
33
|
|
34
|
+
def check_config
|
35
|
+
Errors.new(MissingConfiguration, "Missing Telegram bot token") if Configuration.telegram.bot_token.to_s.empty?
|
36
|
+
end
|
37
|
+
|
35
38
|
def handle_res(res, subreddit, telegram_chat_id, opts = {})
|
36
|
-
return
|
39
|
+
return unless res_ok?(res)
|
37
40
|
|
38
41
|
post = find_new_post(subreddit, res)
|
39
42
|
return if post.nil?
|
@@ -43,6 +46,18 @@ module RedditToTelegram
|
|
43
46
|
res
|
44
47
|
end
|
45
48
|
|
49
|
+
def res_ok?(res)
|
50
|
+
if res.nil?
|
51
|
+
Configuration.logger.warn("Could not fetch Reddit post")
|
52
|
+
false
|
53
|
+
elsif res[:type].nil?
|
54
|
+
Configuration.logger.warn("Could not determine Reddit post type")
|
55
|
+
false
|
56
|
+
else
|
57
|
+
true
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
46
61
|
def find_new_post(subreddit, posts)
|
47
62
|
posts.find { |post| !Store::Posts.dup?(subreddit, post[:id]) }
|
48
63
|
end
|
@@ -1,7 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require "httparty"
|
4
|
-
require_relative "../variables"
|
5
4
|
|
6
5
|
module RedditToTelegram
|
7
6
|
module Reddit
|
@@ -18,7 +17,7 @@ module RedditToTelegram
|
|
18
17
|
URI,
|
19
18
|
body: PARAMS,
|
20
19
|
headers: HEADERS,
|
21
|
-
basic_auth: { username:
|
20
|
+
basic_auth: { username: Configuration.reddit.client_id, password: Configuration.reddit.client_secret }
|
22
21
|
)["access_token"]
|
23
22
|
end
|
24
23
|
end
|
@@ -1,10 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require "httparty"
|
4
|
-
require_relative "auth"
|
5
|
-
require_relative "output"
|
6
|
-
require_relative "../store"
|
7
|
-
require_relative "../variables"
|
8
4
|
|
9
5
|
module RedditToTelegram
|
10
6
|
module Reddit
|
@@ -14,7 +10,7 @@ module RedditToTelegram
|
|
14
10
|
BASE_URI = "https://oauth.reddit.com/r"
|
15
11
|
WEBSITE_URI = "https://www.reddit.com/r"
|
16
12
|
QUERY_FOR_POST = { g: "GLOBAL" }.freeze
|
17
|
-
QUERY_FOR_SUBREDDIT = QUERY_FOR_POST.merge(limit:
|
13
|
+
QUERY_FOR_SUBREDDIT = QUERY_FOR_POST.merge(limit: Configuration.store.max_stored_posts).freeze
|
18
14
|
BASE_HEADERS = {
|
19
15
|
"Content-Type" => "application/json",
|
20
16
|
"Accept" => "application/json"
|
@@ -28,6 +24,7 @@ module RedditToTelegram
|
|
28
24
|
query: QUERY_FOR_SUBREDDIT,
|
29
25
|
headers:
|
30
26
|
)
|
27
|
+
|
31
28
|
handle_response(res, hot: [subreddit, retries_left])
|
32
29
|
end
|
33
30
|
|
@@ -41,6 +38,7 @@ module RedditToTelegram
|
|
41
38
|
query: QUERY_FOR_POST,
|
42
39
|
headers:
|
43
40
|
)
|
41
|
+
|
44
42
|
handle_response(res, post: [link, retries_left])
|
45
43
|
end
|
46
44
|
|
@@ -1,7 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require "cgi"
|
4
|
-
require_relative "output/imgur"
|
5
4
|
|
6
5
|
module RedditToTelegram
|
7
6
|
module Reddit
|
@@ -23,6 +22,12 @@ module RedditToTelegram
|
|
23
22
|
|
24
23
|
def format_post(post)
|
25
24
|
data = post["data"]
|
25
|
+
|
26
|
+
unless data["removed_by_category"].nil?
|
27
|
+
Configuration.logger.warn("Reddit post was removed")
|
28
|
+
return
|
29
|
+
end
|
30
|
+
|
26
31
|
if data["post_hint"] == "image"
|
27
32
|
format_image_post(data)
|
28
33
|
elsif data["post_hint"] == "link"
|
@@ -49,7 +54,7 @@ module RedditToTelegram
|
|
49
54
|
|
50
55
|
base_post_format_attrs(data).merge(
|
51
56
|
{ type: :text,
|
52
|
-
text: "#{data['title']}\n\n#{data['url']}" }
|
57
|
+
text: "#{CGI.unescapeHTML(data['title'])}\n\n#{data['url']}" }
|
53
58
|
)
|
54
59
|
end
|
55
60
|
|
@@ -1,7 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require "httparty"
|
4
|
-
require_relative "../store"
|
5
4
|
|
6
5
|
module RedditToTelegram
|
7
6
|
module Services
|
@@ -19,7 +18,7 @@ module RedditToTelegram
|
|
19
18
|
BASE_URI,
|
20
19
|
body: body(string, target_language),
|
21
20
|
headers: HEADERS.merge(
|
22
|
-
"X-goog-api-key" =>
|
21
|
+
"X-goog-api-key" => Configuration.google.api_key
|
23
22
|
)
|
24
23
|
)
|
25
24
|
res.dig("data", "translations")&.first&.dig("translatedText")
|
@@ -28,9 +27,9 @@ module RedditToTelegram
|
|
28
27
|
private
|
29
28
|
|
30
29
|
def check
|
31
|
-
return if
|
30
|
+
return if Configuration.google.set_up?
|
32
31
|
|
33
|
-
|
32
|
+
Errors.new(MissingConfiguration, "Missing Google credentials. Set them up or disable translation")
|
34
33
|
end
|
35
34
|
|
36
35
|
def body(string, target_language)
|
@@ -2,8 +2,6 @@
|
|
2
2
|
|
3
3
|
require "aws-sdk-simpledb"
|
4
4
|
require "json"
|
5
|
-
require_relative "../errors"
|
6
|
-
require_relative "../variables"
|
7
5
|
|
8
6
|
module RedditToTelegram
|
9
7
|
module Store
|
@@ -13,9 +11,9 @@ module RedditToTelegram
|
|
13
11
|
class << self
|
14
12
|
def client
|
15
13
|
@client ||= Aws::SimpleDB::Client.new(
|
16
|
-
access_key_id:
|
17
|
-
secret_access_key:
|
18
|
-
region:
|
14
|
+
access_key_id: Configuration.aws.access_key_id,
|
15
|
+
secret_access_key: Configuration.aws.secret_access_key,
|
16
|
+
region: Configuration.aws.region
|
19
17
|
)
|
20
18
|
end
|
21
19
|
|
@@ -25,17 +23,19 @@ module RedditToTelegram
|
|
25
23
|
|
26
24
|
def setup
|
27
25
|
check_credentials
|
28
|
-
create_domain unless client.list_domains.domain_names.include?(
|
26
|
+
create_domain unless client.list_domains.domain_names.include?(Configuration.aws.domain_name)
|
29
27
|
read_db
|
30
28
|
end
|
31
29
|
|
32
30
|
def check_credentials
|
33
|
-
return unless
|
31
|
+
return unless Configuration.store.type == :aws_simple_db
|
34
32
|
|
35
|
-
return if
|
33
|
+
return if Configuration.aws.set_up?
|
36
34
|
|
37
|
-
|
38
|
-
|
35
|
+
Errors.new(
|
36
|
+
MissingConfiguration,
|
37
|
+
"Missing AWS credentials. Set them up or change store type to anything other than aws_simple_db"
|
38
|
+
)
|
39
39
|
end
|
40
40
|
|
41
41
|
def reddit_token=(val)
|
@@ -59,7 +59,7 @@ module RedditToTelegram
|
|
59
59
|
def read_db
|
60
60
|
res = client.get_attributes(
|
61
61
|
{
|
62
|
-
domain_name:
|
62
|
+
domain_name: Configuration.aws.domain_name,
|
63
63
|
item_name: "cached_data",
|
64
64
|
consistent_read: true
|
65
65
|
}
|
@@ -81,7 +81,7 @@ module RedditToTelegram
|
|
81
81
|
def write_db
|
82
82
|
client.put_attributes(
|
83
83
|
{
|
84
|
-
domain_name:
|
84
|
+
domain_name: Configuration.aws.domain_name,
|
85
85
|
item_name: ITEM_NAME,
|
86
86
|
attributes: prepare_db_attrs
|
87
87
|
}
|
@@ -113,9 +113,9 @@ module RedditToTelegram
|
|
113
113
|
res = client.list_domains
|
114
114
|
return unless res.successful?
|
115
115
|
|
116
|
-
return if res.domain_names.include?(
|
116
|
+
return if res.domain_names.include?(Configuration.aws.domain_name)
|
117
117
|
|
118
|
-
client.create_domain({ domain_name:
|
118
|
+
client.create_domain({ domain_name: Configuration.aws.domain_name })
|
119
119
|
end
|
120
120
|
end
|
121
121
|
end
|
@@ -1,7 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require "json"
|
4
|
-
require_relative "../variables"
|
5
4
|
|
6
5
|
module RedditToTelegram
|
7
6
|
module Store
|
@@ -62,7 +61,7 @@ module RedditToTelegram
|
|
62
61
|
end
|
63
62
|
|
64
63
|
def temp_file_path
|
65
|
-
"#{
|
64
|
+
"#{Configuration.store.tmp_dir}/store.json"
|
66
65
|
end
|
67
66
|
end
|
68
67
|
end
|
@@ -1,14 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require_relative "errors"
|
4
|
-
require_relative "store/aws_simple_db"
|
5
|
-
require_relative "store/memory"
|
6
|
-
require_relative "store/temp_file"
|
7
|
-
require_relative "variables"
|
8
|
-
|
9
3
|
module RedditToTelegram
|
10
4
|
module Store
|
11
|
-
MAX_STORED_POSTS =
|
5
|
+
MAX_STORED_POSTS = Configuration.store.max_stored_posts - 1
|
12
6
|
CLASS_MAP = {
|
13
7
|
aws_simple_db: "RedditToTelegram::Store::AWSSimpleDB",
|
14
8
|
memory: "RedditToTelegram::Store::Memory",
|
@@ -21,9 +15,9 @@ module RedditToTelegram
|
|
21
15
|
attr_accessor :active
|
22
16
|
|
23
17
|
def setup
|
24
|
-
|
18
|
+
Errors.new(InvalidStoreType) unless CLASS_MAP.keys.include?(Configuration.store.type)
|
25
19
|
|
26
|
-
self.active = Object.const_get(CLASS_MAP[
|
20
|
+
self.active = Object.const_get(CLASS_MAP[Configuration.store.type])
|
27
21
|
active.send(:setup)
|
28
22
|
end
|
29
23
|
end
|
@@ -1,7 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require_relative "../post"
|
4
|
-
|
5
3
|
module RedditToTelegram
|
6
4
|
module Telegram
|
7
5
|
class Post
|
@@ -25,7 +23,7 @@ module RedditToTelegram
|
|
25
23
|
end
|
26
24
|
|
27
25
|
def push_gallery_caption(post, channel, res, opts = {})
|
28
|
-
Post.push(
|
26
|
+
Telegram::Post.push(
|
29
27
|
{ type: :text,
|
30
28
|
id: post[:id],
|
31
29
|
text: post[:text] },
|
@@ -1,10 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require "httparty"
|
4
|
-
require_relative "post/gallery"
|
5
|
-
require_relative "prepare_request"
|
6
|
-
require_relative "video"
|
7
|
-
require_relative "../variables"
|
8
4
|
|
9
5
|
module RedditToTelegram
|
10
6
|
module Telegram
|
@@ -25,7 +21,7 @@ module RedditToTelegram
|
|
25
21
|
class << self
|
26
22
|
def push(post, channel, opts = {})
|
27
23
|
res = HTTParty.post(
|
28
|
-
"#{BASE_URI}#{
|
24
|
+
"#{BASE_URI}#{Configuration.telegram.bot_token}/send#{METHOD_MAP[post[:type]]}",
|
29
25
|
**params(post, channel, opts)
|
30
26
|
)
|
31
27
|
|
@@ -54,7 +50,7 @@ module RedditToTelegram
|
|
54
50
|
end
|
55
51
|
|
56
52
|
def push_error(post, channel, res, opts = {})
|
57
|
-
return if
|
53
|
+
return if Configuration.telegram.error_channel_id.to_s.empty?
|
58
54
|
|
59
55
|
push(
|
60
56
|
{
|
@@ -62,7 +58,7 @@ module RedditToTelegram
|
|
62
58
|
id: post[:id],
|
63
59
|
text: "Channel: @#{channel}\n\nResponse: #{res}"
|
64
60
|
},
|
65
|
-
|
61
|
+
Configuration.telegram.error_channel_id,
|
66
62
|
opts.merge(
|
67
63
|
add_reddit_link: true,
|
68
64
|
disable_link_preview: true,
|
@@ -1,7 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require "open-uri"
|
4
|
-
require_relative "../variables"
|
5
4
|
|
6
5
|
module RedditToTelegram
|
7
6
|
module Telegram
|
@@ -23,7 +22,7 @@ module RedditToTelegram
|
|
23
22
|
end
|
24
23
|
|
25
24
|
def temp_video_path
|
26
|
-
"#{
|
25
|
+
"#{Configuration.store.tmp_dir}/video.mp4"
|
27
26
|
end
|
28
27
|
end
|
29
28
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: reddit-to-telegram
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mark Tityuk
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-04-
|
11
|
+
date: 2024-04-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-simpledb
|
@@ -66,6 +66,7 @@ files:
|
|
66
66
|
- LICENSE
|
67
67
|
- README.md
|
68
68
|
- lib/reddit-to-telegram.rb
|
69
|
+
- lib/reddit_to_telegram/configuration.rb
|
69
70
|
- lib/reddit_to_telegram/errors.rb
|
70
71
|
- lib/reddit_to_telegram/post.rb
|
71
72
|
- lib/reddit_to_telegram/reddit/auth.rb
|
@@ -81,7 +82,6 @@ files:
|
|
81
82
|
- lib/reddit_to_telegram/telegram/post/gallery.rb
|
82
83
|
- lib/reddit_to_telegram/telegram/prepare_request.rb
|
83
84
|
- lib/reddit_to_telegram/telegram/video.rb
|
84
|
-
- lib/reddit_to_telegram/variables.rb
|
85
85
|
- lib/reddit_to_telegram/version.rb
|
86
86
|
- reddit-to-telegram.gemspec
|
87
87
|
- tmp/.keep
|