baez_slack 0.0.2 → 0.0.7
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/lib/baez_slack.rb +7 -3
- data/lib/credentials.rb +10 -0
- data/lib/modules/message_slack.rb +2 -4
- data/lib/modules/read_slack.rb +4 -5
- data/lib/modules/regex_slack.rb +25 -0
- metadata +3 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6c0f567a815dcf65d4fc8492c74145f4aa35464e9ed040db8d131b558fee85a7
|
4
|
+
data.tar.gz: 95ef404f318b38632446d0ce3591c8d2ad8bd15487a43980d90fcc0c90cbda1b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a4a5989716a97cdcc1ae95cf91e099f25cb2ca55bbae5a44b5d6aeb1785832f3e649fffc5423f88525a4025e8a66480836cb1b7df300331ed52d3e6a75038d37
|
7
|
+
data.tar.gz: f327a264c389ae752c28416cdc563370a9b39e09e465b94510a87a98c2d232032e0d521435a9e7eddbddadbcc4bcf116a5d69b8ca5a89b024dd1e2b63cd07b84
|
data/lib/baez_slack.rb
CHANGED
@@ -2,15 +2,19 @@ require 'slack-ruby-client'
|
|
2
2
|
require_relative "modules/message_slack"
|
3
3
|
require_relative "modules/search_slack"
|
4
4
|
require_relative 'modules/read_slack'
|
5
|
-
|
5
|
+
require_relative 'modules/regex_slack'
|
6
|
+
require_relative "credentials"
|
6
7
|
|
7
8
|
# Groups client initialization with instance parameters
|
8
|
-
class BaezSlack
|
9
|
+
class BaezSlack < Credentials
|
9
10
|
include MessageSlack
|
10
|
-
include SearchOnSlack
|
11
11
|
include ReadSlack
|
12
|
+
include RegexpSlack
|
13
|
+
include SearchOnSlack
|
12
14
|
|
13
15
|
def initialize(name = '', image = '', token = nil)
|
16
|
+
set_credentials
|
17
|
+
|
14
18
|
Slack.configure do |config|
|
15
19
|
config.token = token.nil? ? @bot_token : token
|
16
20
|
config.raise 'Missing token' unless config.token
|
data/lib/credentials.rb
ADDED
@@ -33,8 +33,7 @@ module MessageSlack
|
|
33
33
|
text: text,
|
34
34
|
icon_url: @bot_icon,
|
35
35
|
username: @bot_name,
|
36
|
-
thread_ts: @thread
|
37
|
-
as_user: true
|
36
|
+
thread_ts: @thread
|
38
37
|
rescue Slack::Web::Api::Errors::SlackError => e
|
39
38
|
print e.message
|
40
39
|
false
|
@@ -51,8 +50,7 @@ module MessageSlack
|
|
51
50
|
attachments: attachment,
|
52
51
|
icon_url: @bot_icon,
|
53
52
|
username: @bot_name,
|
54
|
-
thread_ts: @thread
|
55
|
-
as_user: true
|
53
|
+
thread_ts: @thread
|
56
54
|
end
|
57
55
|
|
58
56
|
def add_reaction(icon, channel, thread)
|
data/lib/modules/read_slack.rb
CHANGED
@@ -7,8 +7,8 @@ module ReadSlack
|
|
7
7
|
include ConsoleSlack
|
8
8
|
include DirectiveLookup
|
9
9
|
|
10
|
-
def share_message(data)
|
11
|
-
case
|
10
|
+
def share_message(data, output)
|
11
|
+
case output
|
12
12
|
when 'slack'
|
13
13
|
check_type(data)
|
14
14
|
when 'console'
|
@@ -19,10 +19,9 @@ module ReadSlack
|
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
22
|
-
def single_client(output = '
|
23
|
-
@output = output
|
22
|
+
def single_client(output = ENV['SLACK_DEFAULT_OUTPUT'])
|
24
23
|
@time_client.on :message do |data|
|
25
|
-
share_message(data)
|
24
|
+
share_message(data, output)
|
26
25
|
end
|
27
26
|
@time_client.start!
|
28
27
|
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# Module for regular expressions that are common
|
2
|
+
module RegexpSlack
|
3
|
+
def get_values_from(text, type = 'user')
|
4
|
+
pattern = case type
|
5
|
+
when 'user'
|
6
|
+
/<@(.*)>/
|
7
|
+
when 'channel'
|
8
|
+
/<#(.*)\|(.*)>/
|
9
|
+
end
|
10
|
+
text.match(pattern)
|
11
|
+
end
|
12
|
+
|
13
|
+
def echo(data, _pattern = '\echo')
|
14
|
+
match = data.match(/^\\echo\s(\<[#@])?((.*)\|)?(.*?)(\>)? (.*?)$/i)
|
15
|
+
unless match.nil?
|
16
|
+
channel = match.captures[2] || match.captures[3]
|
17
|
+
text = match.captures[5]
|
18
|
+
check_ts = channel.match(/(.*)-(\d*\.\d*)/)
|
19
|
+
# Useless... until someone find something
|
20
|
+
channel = check_ts.captures[0] unless check_ts.nil?
|
21
|
+
thread = check_ts.captures[1] unless check_ts.nil?
|
22
|
+
end
|
23
|
+
[text, channel, thread]
|
24
|
+
end
|
25
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: baez_slack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Luciano Adonis
|
@@ -60,9 +60,11 @@ extensions: []
|
|
60
60
|
extra_rdoc_files: []
|
61
61
|
files:
|
62
62
|
- lib/baez_slack.rb
|
63
|
+
- lib/credentials.rb
|
63
64
|
- lib/modules/console_slack.rb
|
64
65
|
- lib/modules/message_slack.rb
|
65
66
|
- lib/modules/read_slack.rb
|
67
|
+
- lib/modules/regex_slack.rb
|
66
68
|
- lib/modules/search_slack.rb
|
67
69
|
homepage: https://rubygems.org/gems/core_slack
|
68
70
|
licenses:
|