slack-ruby-bot-bhe 0.5.5.3
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 +17 -0
- data/.gitignore +3 -0
- data/.rspec +2 -0
- data/.rubocop.yml +6 -0
- data/.rubocop_todo.yml +58 -0
- data/.travis.yml +3 -0
- data/CHANGELOG.md +81 -0
- data/CONTRIBUTING.md +139 -0
- data/DEPLOYMENT.md +33 -0
- data/Gemfile +3 -0
- data/LICENSE.md +22 -0
- data/README.md +263 -0
- data/RELEASING.md +67 -0
- data/Rakefile +19 -0
- data/TUTORIAL.md +205 -0
- data/UPGRADING.md +64 -0
- data/examples/minimal/Gemfile +3 -0
- data/examples/minimal/Procfile +1 -0
- data/examples/minimal/pongbot.rb +9 -0
- data/examples/weather/Gemfile +3 -0
- data/examples/weather/Procfile +1 -0
- data/examples/weather/weatherbot.rb +9 -0
- data/lib/config/application.rb +14 -0
- data/lib/config/boot.rb +8 -0
- data/lib/config/environment.rb +3 -0
- data/lib/initializers/giphy.rb +5 -0
- data/lib/slack-ruby-bot.rb +25 -0
- data/lib/slack-ruby-bot/about.rb +7 -0
- data/lib/slack-ruby-bot/app.rb +46 -0
- data/lib/slack-ruby-bot/bot.rb +7 -0
- data/lib/slack-ruby-bot/client.rb +44 -0
- data/lib/slack-ruby-bot/commands.rb +5 -0
- data/lib/slack-ruby-bot/commands/about.rb +12 -0
- data/lib/slack-ruby-bot/commands/base.rb +121 -0
- data/lib/slack-ruby-bot/commands/help.rb +9 -0
- data/lib/slack-ruby-bot/commands/hi.rb +9 -0
- data/lib/slack-ruby-bot/commands/unknown.rb +11 -0
- data/lib/slack-ruby-bot/config.rb +40 -0
- data/lib/slack-ruby-bot/hooks.rb +3 -0
- data/lib/slack-ruby-bot/hooks/base.rb +10 -0
- data/lib/slack-ruby-bot/hooks/hello.rb +11 -0
- data/lib/slack-ruby-bot/hooks/message.rb +50 -0
- data/lib/slack-ruby-bot/rspec.rb +12 -0
- data/lib/slack-ruby-bot/rspec/support/fixtures/slack/auth_test.yml +16 -0
- data/lib/slack-ruby-bot/rspec/support/fixtures/slack/migration_in_progress.yml +30 -0
- data/lib/slack-ruby-bot/rspec/support/slack-ruby-bot/it_behaves_like_a_slack_bot.rb +27 -0
- data/lib/slack-ruby-bot/rspec/support/slack-ruby-bot/respond_with_error.rb +30 -0
- data/lib/slack-ruby-bot/rspec/support/slack-ruby-bot/respond_with_slack_message.rb +19 -0
- data/lib/slack-ruby-bot/rspec/support/slack_api_key.rb +5 -0
- data/lib/slack-ruby-bot/rspec/support/slack_ruby_bot_configure.rb +9 -0
- data/lib/slack-ruby-bot/rspec/support/vcr.rb +8 -0
- data/lib/slack-ruby-bot/server.rb +111 -0
- data/lib/slack-ruby-bot/version.rb +3 -0
- data/lib/slack_ruby_bot.rb +1 -0
- data/screenshots/aliases.gif +0 -0
- data/screenshots/demo.gif +0 -0
- data/screenshots/dms.gif +0 -0
- data/screenshots/register-bot.png +0 -0
- data/screenshots/weather.gif +0 -0
- data/slack-ruby-bot.gemspec +28 -0
- data/slack.png +0 -0
- data/spec/slack-ruby-bot/app_spec.rb +15 -0
- data/spec/slack-ruby-bot/commands/about_spec.rb +19 -0
- data/spec/slack-ruby-bot/commands/aliases_spec.rb +22 -0
- data/spec/slack-ruby-bot/commands/bot_spec.rb +19 -0
- data/spec/slack-ruby-bot/commands/commands_precedence_spec.rb +22 -0
- data/spec/slack-ruby-bot/commands/commands_regexp_escape_spec.rb +17 -0
- data/spec/slack-ruby-bot/commands/commands_spaces_spec.rb +20 -0
- data/spec/slack-ruby-bot/commands/commands_spec.rb +21 -0
- data/spec/slack-ruby-bot/commands/commands_with_block_spec.rb +23 -0
- data/spec/slack-ruby-bot/commands/direct_messages_spec.rb +38 -0
- data/spec/slack-ruby-bot/commands/empty_text_spec.rb +22 -0
- data/spec/slack-ruby-bot/commands/help_spec.rb +10 -0
- data/spec/slack-ruby-bot/commands/hi_spec.rb +19 -0
- data/spec/slack-ruby-bot/commands/match_spec.rb +17 -0
- data/spec/slack-ruby-bot/commands/message_loop_spec.rb +34 -0
- data/spec/slack-ruby-bot/commands/nil_message_spec.rb +22 -0
- data/spec/slack-ruby-bot/commands/not_implemented_spec.rb +15 -0
- data/spec/slack-ruby-bot/commands/operators_spec.rb +20 -0
- data/spec/slack-ruby-bot/commands/operators_with_block_spec.rb +23 -0
- data/spec/slack-ruby-bot/commands/send_gif_spec.rb +32 -0
- data/spec/slack-ruby-bot/commands/send_message_spec.rb +19 -0
- data/spec/slack-ruby-bot/commands/send_message_with_gif_spec.rb +73 -0
- data/spec/slack-ruby-bot/commands/unknown_spec.rb +18 -0
- data/spec/slack-ruby-bot/config_spec.rb +55 -0
- data/spec/slack-ruby-bot/rspec/respond_with_error_spec.rb +19 -0
- data/spec/slack-ruby-bot/server_spec.rb +73 -0
- data/spec/slack-ruby-bot/version_spec.rb +7 -0
- data/spec/spec_helper.rb +1 -0
- metadata +313 -0
data/RELEASING.md
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# Releasing Slack-Ruby-Bot
|
|
2
|
+
|
|
3
|
+
There're no particular rules about when to release slack-ruby-bot. Release bug fixes frequenty, features not so frequently and breaking API changes rarely.
|
|
4
|
+
|
|
5
|
+
### Release
|
|
6
|
+
|
|
7
|
+
Run tests, check that all tests succeed locally.
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
bundle install
|
|
11
|
+
rake
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
Check that the last build succeeded in [Travis CI](https://travis-ci.org/dblock/slack-ruby-bot) for all supported platforms.
|
|
15
|
+
|
|
16
|
+
Increment the version, modify [lib/slack-ruby-bot/version.rb](lib/slack-ruby-bot/version.rb).
|
|
17
|
+
|
|
18
|
+
* Increment the third number if the release has bug fixes and/or very minor features, only (eg. change `0.2.1` to `0.2.2`).
|
|
19
|
+
* Increment the second number if the release contains major features or breaking API changes (eg. change `0.2.1` to `0.3.0`).
|
|
20
|
+
|
|
21
|
+
Change "Next Release" in [CHANGELOG.md](CHANGELOG.md) to the new version.
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
### 0.2.2 (7/10/2015)
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Remove the line with "Your contribution here.", since there will be no more contributions to this release.
|
|
28
|
+
|
|
29
|
+
Commit your changes.
|
|
30
|
+
|
|
31
|
+
```
|
|
32
|
+
git add CHANGELOG.md lib/slack-ruby-bot/version.rb
|
|
33
|
+
git commit -m "Preparing for release, 0.2.2."
|
|
34
|
+
git push origin master
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Release.
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
$ rake release
|
|
41
|
+
|
|
42
|
+
slack-ruby-bot 0.2.2 built to pkg/slack-ruby-bot-0.2.2.gem.
|
|
43
|
+
Tagged v0.2.2.
|
|
44
|
+
Pushed git commits and tags.
|
|
45
|
+
Pushed slack-ruby-bot 0.2.2 to rubygems.org.
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### Prepare for the Next Version
|
|
49
|
+
|
|
50
|
+
Add the next release to [CHANGELOG.md](CHANGELOG.md).
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
Next Release
|
|
54
|
+
============
|
|
55
|
+
|
|
56
|
+
* Your contribution here.
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Increment the third version number in [lib/slack-ruby-bot/version.rb](lib/slack-ruby-bot/version.rb).
|
|
60
|
+
|
|
61
|
+
Comit your changes.
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
git add CHANGELOG.md lib/slack-ruby-bot/version.rb
|
|
65
|
+
git commit -m "Preparing for next development iteration, 0.2.3."
|
|
66
|
+
git push origin master
|
|
67
|
+
```
|
data/Rakefile
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
require 'rubygems'
|
|
2
|
+
require 'bundler'
|
|
3
|
+
require 'bundler/gem_tasks'
|
|
4
|
+
|
|
5
|
+
Bundler.setup :default, :development
|
|
6
|
+
|
|
7
|
+
unless ENV['RACK_ENV'] == 'production'
|
|
8
|
+
require 'rspec/core'
|
|
9
|
+
require 'rspec/core/rake_task'
|
|
10
|
+
|
|
11
|
+
RSpec::Core::RakeTask.new(:spec) do |spec|
|
|
12
|
+
spec.pattern = FileList['spec/**/*_spec.rb']
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
require 'rubocop/rake_task'
|
|
16
|
+
RuboCop::RakeTask.new
|
|
17
|
+
|
|
18
|
+
task default: [:rubocop, :spec]
|
|
19
|
+
end
|
data/TUTORIAL.md
ADDED
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
## Production Bot Tutorial
|
|
2
|
+
|
|
3
|
+
In this tutorial we'll implement [slack-mathbot](https://github.com/dblock/slack-mathbot).
|
|
4
|
+
|
|
5
|
+
### Introduction
|
|
6
|
+
|
|
7
|
+
A typical production Slack bot is a combination of a vanilla web server and a websocket application that talks to the [Slack Real Time Messaging API](https://api.slack.com/rtm). The web server is optional, but most people will run their Slack bots on [Heroku](https://dashboard.heroku.com) in which case a web server is required to prevent Heroku from shutting the bot down. It also makes it convenient to develop a bot and test using `foreman`.
|
|
8
|
+
|
|
9
|
+
### Getting Started
|
|
10
|
+
|
|
11
|
+
#### Gemfile
|
|
12
|
+
|
|
13
|
+
Create a `Gemfile` that uses [slack-ruby-bot](https://github.com/dblock/slack-ruby-bot), [sinatra](https://github.com/sinatra/sinatra) (a web framework) and [puma](https://github.com/puma/puma) (a web server). For development we'll also use [foreman](https://github.com/theforeman/foreman) and write tests with [rspec](https://github.com/rspec/rspec).
|
|
14
|
+
|
|
15
|
+
```ruby
|
|
16
|
+
source 'http://rubygems.org'
|
|
17
|
+
|
|
18
|
+
gem 'slack-ruby-bot'
|
|
19
|
+
gem 'puma'
|
|
20
|
+
gem 'sinatra'
|
|
21
|
+
|
|
22
|
+
group :development, :test do
|
|
23
|
+
gem 'rake'
|
|
24
|
+
gem 'foreman'
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
group :test do
|
|
28
|
+
gem 'rspec'
|
|
29
|
+
gem 'rack-test'
|
|
30
|
+
end
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Run `bundle install` to get all the gems.
|
|
34
|
+
|
|
35
|
+
#### Application
|
|
36
|
+
|
|
37
|
+
Create a folder called `slack-mathbot` and inside of it create `app.rb`.
|
|
38
|
+
|
|
39
|
+
```ruby
|
|
40
|
+
module SlackMathbot
|
|
41
|
+
class App < SlackRubyBot::App
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
#### Commands
|
|
47
|
+
|
|
48
|
+
Create a folder called `slack-mathbot/commands` and inside of it create `calculate.rb`. For now this calculator will always return 4.
|
|
49
|
+
|
|
50
|
+
```ruby
|
|
51
|
+
module SlackMathbot
|
|
52
|
+
module Commands
|
|
53
|
+
class Calculate < SlackRubyBot::Commands::Base
|
|
54
|
+
command 'calculate' do |client, data, _match|
|
|
55
|
+
send_message client, data.channel, '4'
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
#### Require Everything
|
|
63
|
+
|
|
64
|
+
Create a `slack-mathbot.rb` at the root and require the above files.
|
|
65
|
+
|
|
66
|
+
```ruby
|
|
67
|
+
require 'slack-ruby-bot'
|
|
68
|
+
require 'slack-mathbot/commands/calculate'
|
|
69
|
+
require 'slack-mathbot/app'
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
#### Web Server
|
|
73
|
+
|
|
74
|
+
We will need to keep the bot alive on Heroku, so create `web.rb`.
|
|
75
|
+
|
|
76
|
+
```ruby
|
|
77
|
+
require 'sinatra/base'
|
|
78
|
+
|
|
79
|
+
module SlackMathbot
|
|
80
|
+
class Web < Sinatra::Base
|
|
81
|
+
get '/' do
|
|
82
|
+
'Math is good for you.'
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
#### Config.ru
|
|
89
|
+
|
|
90
|
+
Tie all the pieces together in `config.ru` which creates a thread for the bot and runs the web server on the main thread.
|
|
91
|
+
|
|
92
|
+
```ruby
|
|
93
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
|
94
|
+
|
|
95
|
+
require 'slack-mathbot'
|
|
96
|
+
require 'web'
|
|
97
|
+
|
|
98
|
+
Thread.abort_on_exception = true
|
|
99
|
+
|
|
100
|
+
Thread.new do
|
|
101
|
+
begin
|
|
102
|
+
SlackMathbot::App.instance.run
|
|
103
|
+
rescue Exception => e
|
|
104
|
+
STDERR.puts "ERROR: #{e}"
|
|
105
|
+
STDERR.puts e.backtrace
|
|
106
|
+
raise e
|
|
107
|
+
end
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
run SlackMathbot::Web
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### Create a Bot User
|
|
114
|
+
|
|
115
|
+
In Slack administration create a new Bot Integration under [services/new/bot](http://slack.com/services/new/bot).
|
|
116
|
+
|
|
117
|
+

|
|
118
|
+
|
|
119
|
+
On the next screen, note the API token.
|
|
120
|
+
|
|
121
|
+
#### .env
|
|
122
|
+
|
|
123
|
+
Create a `.env` file with the API token from above and make sure to add it to `.gitignore`.
|
|
124
|
+
|
|
125
|
+
```
|
|
126
|
+
SLACK_API_TOKEN=...
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### Procfile
|
|
130
|
+
|
|
131
|
+
Create a `Procfile` which `foreman` will use when you run the `foreman start` command below.
|
|
132
|
+
|
|
133
|
+
```
|
|
134
|
+
web: bundle exec puma -p $PORT
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
### Run the Bot
|
|
138
|
+
|
|
139
|
+
Run `foreman start`. Your bot should be running.
|
|
140
|
+
|
|
141
|
+
```
|
|
142
|
+
14:32:32 web.1 | Puma starting in single mode...
|
|
143
|
+
14:32:32 web.1 | * Version 2.11.3 (ruby 2.1.6-p336), codename: Intrepid Squirrel
|
|
144
|
+
14:32:32 web.1 | * Min threads: 0, max threads: 16
|
|
145
|
+
14:32:32 web.1 | * Environment: development
|
|
146
|
+
14:32:35 web.1 | * Listening on tcp://0.0.0.0:5000
|
|
147
|
+
14:32:35 web.1 | Use Ctrl-C to stop
|
|
148
|
+
14:32:36 web.1 | I, [2015-07-10T14:32:36.216663 #98948] INFO -- : Welcome 'mathbot' to the 'xyz' team at https://xyz.slack.com/.
|
|
149
|
+
14:32:36 web.1 | I, [2015-07-10T14:32:36.766955 #98948] INFO -- : Successfully connected to https://xyz.slack.com/.
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### Try
|
|
153
|
+
|
|
154
|
+
Invite the bot to a channel via `/invite [bot name]` and send it a `calculate` command with `[bot name] calculate 2+2`. It will respond with `4` from the code above.
|
|
155
|
+
|
|
156
|
+
### Write Tests
|
|
157
|
+
|
|
158
|
+
#### Spec Helper
|
|
159
|
+
|
|
160
|
+
Create `spec/spec_helper.rb` that includes the bot files and shared RSpec support from slack-ruby-bot.
|
|
161
|
+
|
|
162
|
+
```ruby
|
|
163
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..'))
|
|
164
|
+
|
|
165
|
+
require 'slack-ruby-bot/rspec'
|
|
166
|
+
require 'slack-mathbot'
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
#### Test the Bot Application
|
|
170
|
+
|
|
171
|
+
Create a test for the bot application itself in `spec/slack-mathbot/app_spec.rb`.
|
|
172
|
+
|
|
173
|
+
```ruby
|
|
174
|
+
require 'spec_helper'
|
|
175
|
+
|
|
176
|
+
describe SlackMathbot::App do
|
|
177
|
+
def app
|
|
178
|
+
SlackMathbot::App.new
|
|
179
|
+
end
|
|
180
|
+
it_behaves_like 'a slack ruby bot'
|
|
181
|
+
end
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
#### Test a Command
|
|
185
|
+
|
|
186
|
+
Create a test for the `calculate` command in `spec/slack-mathbot/commands/calculate_spec.rb`. The bot is addressed by its user name.
|
|
187
|
+
|
|
188
|
+
```ruby
|
|
189
|
+
require 'spec_helper'
|
|
190
|
+
|
|
191
|
+
describe SlackMathbot::Commands::Calculate do
|
|
192
|
+
def app
|
|
193
|
+
SlackMathbot::App.new
|
|
194
|
+
end
|
|
195
|
+
it 'returns 4' do
|
|
196
|
+
expect(message: "#{SlackRubyBot.config.user} calculate 2+2", channel: 'channel').to respond_with_slack_message('4')
|
|
197
|
+
end
|
|
198
|
+
end
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
See [lib/slack-ruby-bot/rspec/support/slack-ruby-bot](lib/slack-ruby-bot/rspec/support/slack-ruby-bot) for other shared RSpec behaviors.
|
|
202
|
+
|
|
203
|
+
### Deploy
|
|
204
|
+
|
|
205
|
+
See [DEPLOYMENT](DEPLOYMENT.md) for how to deploy your bot to production.
|
data/UPGRADING.md
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
Upgrading SlackRubyBot
|
|
2
|
+
======================
|
|
3
|
+
|
|
4
|
+
### Upgrading to >= 0.4.0
|
|
5
|
+
|
|
6
|
+
This version uses [slack-ruby-client](https://github.com/dblock/slack-ruby-client) instead of [slack-ruby-gem](https://github.com/aki017/slack-ruby-gem).
|
|
7
|
+
|
|
8
|
+
The command interface now takes a `client` parameter, which is the RealTime Messaging API instance. Add the new parameter to all `call` calls in classes that inherit from `SlackRubyBot::Commands::Base`.
|
|
9
|
+
|
|
10
|
+
Before:
|
|
11
|
+
|
|
12
|
+
```ruby
|
|
13
|
+
def self.call(data, match)
|
|
14
|
+
...
|
|
15
|
+
end
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
After:
|
|
19
|
+
|
|
20
|
+
```ruby
|
|
21
|
+
def self.call(client, data, match)
|
|
22
|
+
...
|
|
23
|
+
end
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
This also applies to `command`, `operator` and `match` blocks.
|
|
27
|
+
|
|
28
|
+
Before:
|
|
29
|
+
|
|
30
|
+
```ruby
|
|
31
|
+
command 'ping' do |data, match|
|
|
32
|
+
...
|
|
33
|
+
end
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
After:
|
|
37
|
+
|
|
38
|
+
```ruby
|
|
39
|
+
command 'ping' do |client, data, match|
|
|
40
|
+
...
|
|
41
|
+
end
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
You can now send messages directly via the RealTime Messaging API.
|
|
45
|
+
|
|
46
|
+
```ruby
|
|
47
|
+
client.message text: 'text', channel: 'channel'
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Otherwise you must now pass the `client` parameter to `send_message` and `send_message_with_gif`.
|
|
51
|
+
|
|
52
|
+
```ruby
|
|
53
|
+
def self.call(client, data, match)
|
|
54
|
+
send_message client, data.channel, 'hello'
|
|
55
|
+
end
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
```ruby
|
|
59
|
+
def self.call(client, data, match)
|
|
60
|
+
send_message_with_gif client, data.channel, 'hello', 'hi'
|
|
61
|
+
end
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
console: bundle exec ruby pongbot.rb
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
console: bundle exec ruby weatherbot.rb
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..'))
|
|
2
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
|
3
|
+
|
|
4
|
+
require 'boot'
|
|
5
|
+
|
|
6
|
+
Bundler.require :default, ENV['RACK_ENV']
|
|
7
|
+
|
|
8
|
+
Dir[File.expand_path('../../initializers', __FILE__) + '/**/*.rb'].each do |file|
|
|
9
|
+
require file
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
require File.expand_path('../application', __FILE__)
|
|
13
|
+
|
|
14
|
+
require 'slack_ruby_bot'
|
data/lib/config/boot.rb
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
require File.expand_path('../config/environment', __FILE__)
|
|
2
|
+
|
|
3
|
+
require 'slack-ruby-bot/version'
|
|
4
|
+
require 'slack-ruby-bot/about'
|
|
5
|
+
require 'slack-ruby-bot/config'
|
|
6
|
+
require 'slack-ruby-bot/hooks'
|
|
7
|
+
|
|
8
|
+
module SlackRubyBot
|
|
9
|
+
class << self
|
|
10
|
+
def configure
|
|
11
|
+
block_given? ? yield(Config) : Config
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def config
|
|
15
|
+
Config
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
require 'slack-ruby-client'
|
|
21
|
+
require 'slack-ruby-bot/commands'
|
|
22
|
+
require 'slack-ruby-bot/client'
|
|
23
|
+
require 'slack-ruby-bot/server'
|
|
24
|
+
require 'slack-ruby-bot/app'
|
|
25
|
+
require 'slack-ruby-bot/bot'
|