qbert_bot 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- ZDNiYWFhNTFhMDEwYzVkNGI4OTc0ODI0Zjc4N2MwNDhkNTQzODQ3Nw==
5
- data.tar.gz: !binary |-
6
- YTk5OWI0YTcyODFjNmYzZDVkMmI5OWI0N2E4NjM0YjFlNjdjNTY5NA==
2
+ SHA1:
3
+ metadata.gz: 406f2836b0919c120195a09b9cca3bd83f8325d0
4
+ data.tar.gz: fc64297bf023c7a7a5254ce87592b36ec16c74ce
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- MmE0NjY5YjMzMzYwYjkwZWJmMDUxNjRlNmEzZDdkZTgxYzUxYTllYjBjN2Y2
10
- OTU2ZjU2MTFjNWI1NzZmOTE5MmUxYzU1OWViYzJlNWEyMzZiOWNkOGI3YmZl
11
- MDAyYjk2OWVhOTk2MmM1ODkyZTg3NDg5M2VmZjA5MGFkM2QxN2Y=
12
- data.tar.gz: !binary |-
13
- NjdmY2E5ODgwYzliZjAxYmMyM2FmMmIzNmZmOGM5MDY2YzZjZmIzNWY0Yzgx
14
- MjMzM2YxMzRiYmYzMGE5NjQwNmM5NWYzYTA4N2MzZGI5ODg2YTYwYzQwY2Zi
15
- Nzc0ZDg4M2Q4MGYzODZhNTJhZmM0ZjI5MGY4Y2VmMDRhMmRkMzc=
6
+ metadata.gz: 274b858f8a178126b746da115af10e5cc49a03a26ac0de602d8e8eb7f5cbb6bd9d348cb9638f270e70500bf3092ba2ddfde90a100f7d4dc9469dfdfeca289ef9
7
+ data.tar.gz: 34ff925203095299bcd699e2c2f405508ea83b6f340320ac2d6e49ac5db46dc99fbff59722198ae44ed0c2a74e0f2c7e9e6af0cbc3f7752c2f803e709d7fbf8d
@@ -0,0 +1,23 @@
1
+ module QbertBot::Core
2
+
3
+ class Help
4
+ include QbertBot::Plugin
5
+
6
+ def help
7
+ [
8
+ ['help', 'Display all commands']
9
+ ]
10
+ end
11
+
12
+ def register
13
+ bot.hear(/^help$/) do |msg|
14
+ commands = []
15
+ bot.plugins.each do |plug|
16
+ commands.concat plug.help.map{|i| i.join(' ')}
17
+ end
18
+
19
+ msg.reply "Available commands:\n#{commands.join("\n")}"
20
+ end
21
+ end
22
+ end
23
+ end
@@ -3,7 +3,6 @@ module QbertBot
3
3
  def self.included(klass)
4
4
  @plugins ||= []
5
5
  @plugins << klass
6
- puts "Loading plugin #{klass}"
7
6
  end
8
7
 
9
8
  def self.plugins
@@ -21,7 +21,7 @@ module QbertBot
21
21
 
22
22
  class Robot
23
23
  include Singleton
24
- attr_reader :config, :slack, :router, :scheduler
24
+ attr_reader :config, :slack, :router, :scheduler, :plugins, :listeners
25
25
 
26
26
  def initialize
27
27
  @plugins = []
@@ -39,7 +39,6 @@ module QbertBot
39
39
  end
40
40
 
41
41
  def hear(pattern, &block)
42
- puts("Adding #{pattern.source}")
43
42
  @listeners << Listener.new(pattern, block)
44
43
  end
45
44
 
@@ -72,6 +71,7 @@ module QbertBot
72
71
 
73
72
  def load_plugins
74
73
  Plugin.plugins.each do |klass|
74
+ puts("Loading #{klass}")
75
75
  p = klass.new
76
76
  p.bot = self
77
77
  p.router = router
@@ -90,10 +90,8 @@ module QbertBot
90
90
  end
91
91
 
92
92
  def find_listener(msg)
93
- puts("Checking '#{msg.text}'")
94
93
  @listeners.each do |l|
95
94
  if match = msg.text.match(l.pattern)
96
- puts("Found '#{l.pattern.source}'")
97
95
  return Match.new(l, match)
98
96
  end
99
97
  end
@@ -40,7 +40,6 @@ module QbertBot
40
40
  clean_path = "#{clean_path}$" unless clean_path[-1, 1] == '$'
41
41
  end
42
42
 
43
- puts("Adding route for #{method} #{clean_path}")
44
43
  @routes << Route.new(method, Regexp.new(clean_path), block)
45
44
  end
46
45
  end
@@ -1,3 +1,3 @@
1
1
  module QbertBot
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
data/lib/qbert_bot.rb CHANGED
@@ -4,6 +4,7 @@ require "qbert_bot/message"
4
4
  require "qbert_bot/router"
5
5
  require "qbert_bot/slack"
6
6
  require "qbert_bot/robot"
7
+ require "qbert_bot/core/help"
7
8
 
8
9
 
9
10
 
@@ -12,7 +13,7 @@ module QbertBot
12
13
  bot = Robot.instance
13
14
  bot.load_config
14
15
 
15
- Dir['plugins/*.rb'].each do |f|
16
+ Dir['plugin/*.rb'].each do |f|
16
17
  load f
17
18
  end
18
19
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qbert_bot
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - lxfontes
@@ -89,13 +89,14 @@ extensions: []
89
89
  extra_rdoc_files: []
90
90
  files:
91
91
  - bin/qbert_bot
92
- - lib/qbert_bot.rb
92
+ - lib/qbert_bot/core/help.rb
93
93
  - lib/qbert_bot/message.rb
94
94
  - lib/qbert_bot/plugin.rb
95
95
  - lib/qbert_bot/robot.rb
96
96
  - lib/qbert_bot/router.rb
97
97
  - lib/qbert_bot/slack.rb
98
98
  - lib/qbert_bot/version.rb
99
+ - lib/qbert_bot.rb
99
100
  homepage: http://github.com/lxfontes/qbert_bot
100
101
  licenses:
101
102
  - MIT
@@ -106,17 +107,17 @@ require_paths:
106
107
  - lib
107
108
  required_ruby_version: !ruby/object:Gem::Requirement
108
109
  requirements:
109
- - - ! '>='
110
+ - - '>='
110
111
  - !ruby/object:Gem::Version
111
112
  version: '0'
112
113
  required_rubygems_version: !ruby/object:Gem::Requirement
113
114
  requirements:
114
- - - ! '>='
115
+ - - '>='
115
116
  - !ruby/object:Gem::Version
116
117
  version: '0'
117
118
  requirements: []
118
119
  rubyforge_project:
119
- rubygems_version: 2.4.4
120
+ rubygems_version: 2.0.14
120
121
  signing_key:
121
122
  specification_version: 4
122
123
  summary: The no frills ruby bot for Slack