baez_slack 0.0.1 → 0.0.6

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f2e8f3b4069bcd877f749545679cb5f71707d257cd80312f8cf9ef8ffee344f7
4
- data.tar.gz: 0db262c0d34c2b3b48b139e99eb0c25a9ef8578ba0f8c4bac7f452cd726fd65c
3
+ metadata.gz: 23b6d454e756aacf20d13590ce87c40bfcae3037d841f715140e3c7915bd6387
4
+ data.tar.gz: ad492a31a9d5e31d12a4e10c3c641a2e1411853c6b82d0d340ef0a962c327282
5
5
  SHA512:
6
- metadata.gz: 417e3e0820b09e413d8bd8d7085aee521457e3125ed1ad75738de35290872189026d280e7491acc6b93fc187425dd8fbf16e88749b67e92a2198067c5aa59e59
7
- data.tar.gz: efde9e3488a9c7eae119ba80b808aebb20619ca424757c95662cc7ee56cc9cf6a5a93ac8c72b86809e82c27b308a5616cdd8536cab9426773d7712d0e2b84a22
6
+ metadata.gz: 62397ffb5de0dc05070fe572b9e78d347689fa05709d4eaeaedc6a3dd8b99850b3a0443b34ac97fb4e0e6b3e29264990d0acdc02d9ae31b51822f5f22037c4e4
7
+ data.tar.gz: 4503e15d7b5e2e582ff08bf6d25434765b0852d2781605960c9dbf295551a0e2c89770413a0719072c56943d43e6b72c011073e0c081675a7b46d5b4dc4a405d
@@ -2,15 +2,18 @@ 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 SearchOnSlack
12
13
 
13
14
  def initialize(name = '', image = '', token = nil)
15
+ set_credentials
16
+
14
17
  Slack.configure do |config|
15
18
  config.token = token.nil? ? @bot_token : token
16
19
  config.raise 'Missing token' unless config.token
@@ -0,0 +1,10 @@
1
+
2
+ class Credentials
3
+ def set_credentials
4
+ @bot_token = ENV['SLACK_TOKEN']
5
+ @bot_name = ENV['SLACK_NAME']
6
+ @bot_icon = ENV['SLACK_ICON']
7
+ @bot_channel = ENV['SLACK_DEFAULT_CHANNEL']
8
+ @bot_default_output = ENV['SLACK_DEFAULT_OUTPUT']
9
+ end
10
+ end
@@ -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)
@@ -1,14 +1,14 @@
1
1
  require_relative 'message_slack'
2
2
  require_relative 'console_slack'
3
- # require './actions/modes'
3
+ require './actions/modes'
4
4
 
5
5
  # Module for reading chat incoming messages
6
6
  module ReadSlack
7
7
  include ConsoleSlack
8
- # include DirectiveLookup
8
+ include DirectiveLookup
9
9
 
10
- def share_message(data)
11
- case @output
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 = 'console')
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.1
4
+ version: 0.0.6
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: