Skip to content
This repository was archived by the owner on Jun 20, 2025. It is now read-only.
Open
Show file tree
Hide file tree
Changes from 109 commits
Commits
Show all changes
115 commits
Select commit Hold shift + click to select a range
e8a7c89
Add 12factor for heroku
fatbelfegor Mar 21, 2017
88e0620
Add 12factor and pg for heroku
fatbelfegor Mar 21, 2017
b725dc6
Add some gems for heroku
fatbelfegor Mar 21, 2017
93ed327
Edit readme.md file
fatbelfegor Mar 21, 2017
0ee1f47
Delete .ruby-gemset
fatbelfegor Mar 21, 2017
0df2d57
Delete .ruby-version
fatbelfegor Mar 21, 2017
598a081
Edit readme.md file
fatbelfegor Mar 21, 2017
ac66dee
Merge branch 'master' of https://github.com/fatbelfegor/basecamp3-rai…
fatbelfegor Mar 21, 2017
686fa99
Edit readme.md file
fatbelfegor Mar 21, 2017
eca5d4b
Edit readme.md file
fatbelfegor Mar 21, 2017
d410360
Edit readme.md file
fatbelfegor Mar 21, 2017
5ddbf64
Edit readme.md file
fatbelfegor Mar 21, 2017
ac90a22
Edit readme.md file
fatbelfegor Mar 21, 2017
9c5a0a1
Fixed development.rb
fatbelfegor Mar 22, 2017
c26d3d6
Fix development.rb
fatbelfegor Mar 22, 2017
2901ffe
Merge branch 'master' of https://github.com/fatbelfegor/basecamp3-rai…
fatbelfegor Mar 22, 2017
7633e61
Add Rollbar controller
fatbelfegor Mar 23, 2017
5a3d70c
Add formar of request checking in the Rollbar controller
fatbelfegor Mar 23, 2017
26accfa
Add handling of request and sending messages about failing request t…
fatbelfegor Mar 23, 2017
6d98721
Edit readm file
fatbelfegor Mar 24, 2017
6d5bd71
Update development.rb
fatbelfegor Mar 24, 2017
da4dd7e
Update application_helper.rb
fatbelfegor Mar 24, 2017
dfc3430
Update messages_controller.rb
fatbelfegor Mar 24, 2017
0493532
Update messages_controller.rb
fatbelfegor Mar 24, 2017
55fab3b
Update application_helper.rb
fatbelfegor Mar 24, 2017
77e0c79
Update messages_controller.rb
fatbelfegor Mar 24, 2017
fbf2d1a
Update messages_controller.rb
fatbelfegor Mar 24, 2017
941834b
Update messages_controller.rb
fatbelfegor Mar 24, 2017
db60a02
Update messages_controller.rb
fatbelfegor Mar 24, 2017
f0d42da
Update messages_controller.rb
fatbelfegor Mar 24, 2017
e9a1039
Update messages_controller.rb
fatbelfegor Mar 24, 2017
3d0ef1c
Update messages_controller.rb
fatbelfegor Mar 24, 2017
f518d76
Update messages_controller.rb
fatbelfegor Mar 24, 2017
917dc8f
Update messages_controller.rb
fatbelfegor Mar 24, 2017
3002fc4
Update messages_controller.rb
fatbelfegor Mar 24, 2017
4dd08dc
Update messages_controller.rb
fatbelfegor Mar 24, 2017
dc09c8a
Update messages_controller.rb
fatbelfegor Mar 24, 2017
5c8d5e2
Update messages_controller.rb
fatbelfegor Mar 24, 2017
65b6e8d
Update messages_controller.rb
fatbelfegor Mar 24, 2017
90957fd
Update messages_controller.rb
fatbelfegor Mar 24, 2017
4d83de6
Update messages_controller.rb
fatbelfegor Mar 24, 2017
4658855
Update messages_controller.rb
fatbelfegor Mar 24, 2017
b73071e
Add Rollbar report url generation
fatbelfegor Mar 25, 2017
54084b1
fixed Rollbar report url generation
fatbelfegor Mar 25, 2017
78a06b8
Rollbar report url generation fixed config
fatbelfegor Mar 25, 2017
9638ad1
Update messages_controller.rb
fatbelfegor Mar 25, 2017
00f79cf
Update messages_controller.rb
fatbelfegor Mar 25, 2017
f8d2fec
Update messages_controller.rb
fatbelfegor Mar 25, 2017
e27683d
Update messages_controller.rb
fatbelfegor Mar 25, 2017
b713e9c
Update messages_controller.rb
fatbelfegor Mar 25, 2017
45365fe
Update messages_controller.rb
fatbelfegor Mar 25, 2017
35adb28
Add Rollbar instructions and fix controller
fatbelfegor Mar 26, 2017
5df7367
Add Rollbar instructions and fix controller
fatbelfegor Mar 26, 2017
dc61e47
Add Rollbar instructions and fix controller
fatbelfegor Mar 26, 2017
5c44fd3
Add Rollbar instructions and fix controller
fatbelfegor Mar 26, 2017
7340997
Add Rollbar instructions and fix controller
fatbelfegor Mar 26, 2017
813f3c7
Add Rollbar instructions and fix controller
fatbelfegor Mar 26, 2017
bf66a72
Update service.yml
fatbelfegor Mar 26, 2017
a409125
Update service.yml
fatbelfegor Mar 26, 2017
e2b2c59
Add Rollbar instructions and fix controller
fatbelfegor Mar 26, 2017
56d7e6b
Merge branch 'master' of https://github.com/fatbelfegor/basecamp3-rai…
fatbelfegor Mar 26, 2017
7a97e23
Add Rollbar instructions and fix controller
fatbelfegor Mar 26, 2017
d95463e
Edit Rollbar instructions
fatbelfegor Mar 26, 2017
6864064
begin Bugsnag integration
fatbelfegor Mar 28, 2017
a63d077
add some Gitlab integration
fatbelfegor Mar 28, 2017
a2cbe7e
Add wrong JSON field validation
fatbelfegor Mar 29, 2017
be04b3b
Add wrong JSON field validation
fatbelfegor Mar 30, 2017
acde3e9
Add Rollbar JSON exception
fatbelfegor Mar 30, 2017
0935e1e
Rewrite Aws sns controller
fatbelfegor Apr 1, 2017
f266470
Rewrite Aws sns controller. Add Giphy controller
fatbelfegor Apr 1, 2017
df2698f
Add Gitlab and Bugsnag controller
fatbelfegor Apr 1, 2017
f750b1c
Fix Giphy controller
fatbelfegor Apr 2, 2017
2f386a9
Add instructions to README
fatbelfegor Apr 2, 2017
c1ed872
Fixed amazon config
fatbelfegor Apr 2, 2017
d12ba75
Fixed Giphy controller style
fatbelfegor Apr 2, 2017
bac4ce8
Fixed Amazon controller
fatbelfegor Apr 2, 2017
808b062
Fixed Amazon controller
fatbelfegor Apr 2, 2017
9d0d7a2
remove sqlite
Apr 3, 2017
67d103f
Minor refactorings and better Giphy implementation
Apr 3, 2017
5b32716
Send gifs back to requester bot
Apr 3, 2017
49fab5a
Fix Aws controller. Moved Aws config to /initializers. Changed helpe…
fatbelfegor Apr 5, 2017
abfe42f
Update service.yml
fatbelfegor Apr 5, 2017
f8e0a3e
Update secrets.yml
fatbelfegor Apr 5, 2017
048c029
Fix Aws initializer
fatbelfegor Apr 5, 2017
93b92ac
Update service.yml
fatbelfegor Apr 5, 2017
952eb3c
Fix Aws initializer
fatbelfegor Apr 5, 2017
796e41f
Amazon SNS subscription by using Instance profile
fatbelfegor Apr 10, 2017
1afbbe2
Amazon SNS subscription by using Instance profile
fatbelfegor Apr 10, 2017
c39d76b
Amazon SNS subscription by using Instance profile
fatbelfegor Apr 10, 2017
3ec3256
Amazon SNS subscription by using Instance profile
fatbelfegor Apr 10, 2017
9003820
Amazon SNS subscription by using Instance profile
fatbelfegor Apr 10, 2017
0c6b0b1
Update aws_sdk.rb
fatbelfegor Apr 12, 2017
a174f3a
Merge branch 'master' of github.com:fatbelfegor/basecamp3-rails-chatbot
fatbelfegor Apr 12, 2017
38b71f7
Add Aws IAM roles manual
fatbelfegor Apr 12, 2017
d01b1db
Commands controller
fatbelfegor Apr 17, 2017
963e995
controller
fatbelfegor Apr 21, 2017
720acd5
AWS initializer fixed
fatbelfegor Apr 21, 2017
432bb92
AWS initializer fixed
fatbelfegor Apr 21, 2017
2b6c4a4
Update service.yml
fatbelfegor Apr 21, 2017
0ded82e
Update routes.rb
fatbelfegor Apr 21, 2017
743e1e0
Update aws_sdk.rb
fatbelfegor Apr 21, 2017
f4d11f0
Delete commands_controller.rb
fatbelfegor Apr 21, 2017
c38f782
Delete giphy.rb
fatbelfegor Apr 21, 2017
149f2d7
Update aws_sdk.rb
fatbelfegor Apr 21, 2017
f9b63c7
Add Chatbot model. DRY-ed some methods
fatbelfegor Apr 28, 2017
295c791
Update service.yml
fatbelfegor Apr 28, 2017
ad3f246
Update chatbot.rb
fatbelfegor Apr 28, 2017
90f0a29
Update application_controller.rb
fatbelfegor Apr 28, 2017
deae4ec
Update messages_controller.rb
fatbelfegor Apr 28, 2017
f5ce2d1
Update messages_controller.rb
fatbelfegor Apr 28, 2017
c8363ed
Update messages_controller.rb
fatbelfegor Apr 28, 2017
db86b21
Update messages_controller.rb
fatbelfegor Apr 28, 2017
586dc04
Update chatbot.rb
fatbelfegor Apr 28, 2017
71fa344
Update messages_controller.rb
fatbelfegor Apr 28, 2017
46c7728
Update service.yml
fatbelfegor Apr 28, 2017
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@
/.bundle
/.idea
/config/database.yml
/config/secrets.yml
/config/service.yml
/config/secret.yml


# Ignore the default SQLite database.
/db/*.sqlite3
Expand All @@ -19,6 +21,11 @@
/tmp/*
!/log/.keep
!/tmp/.keep
/README.html

# Ignore Byebug command history file.
.byebug_history

# Ignore RVM files.
/.ruby-gemset
/.ruby-version
3 changes: 2 additions & 1 deletion Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,15 @@ source 'https://rubygems.org'
ruby '2.3.1'

gem 'rails', '~> 5.0.0', '>= 5.0.0.1'
gem 'sqlite3'
# Use Puma as the app server
gem 'puma', '~> 3.0'

gem 'httparty'
gem 'sass-rails', '~> 5.0'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.2'
gem 'aws-sdk', '~> 2'
gem 'giphy'

group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
Expand Down
147 changes: 88 additions & 59 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -1,63 +1,89 @@
GEM
remote: https://rubygems.org/
specs:
actioncable (5.0.0.1)
actionpack (= 5.0.0.1)
nio4r (~> 1.2)
actioncable (5.0.2)
actionpack (= 5.0.2)
nio4r (>= 1.2, < 3.0)
websocket-driver (~> 0.6.1)
actionmailer (5.0.0.1)
actionpack (= 5.0.0.1)
actionview (= 5.0.0.1)
activejob (= 5.0.0.1)
actionmailer (5.0.2)
actionpack (= 5.0.2)
actionview (= 5.0.2)
activejob (= 5.0.2)
mail (~> 2.5, >= 2.5.4)
rails-dom-testing (~> 2.0)
actionpack (5.0.0.1)
actionview (= 5.0.0.1)
activesupport (= 5.0.0.1)
actionpack (5.0.2)
actionview (= 5.0.2)
activesupport (= 5.0.2)
rack (~> 2.0)
rack-test (~> 0.6.3)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.0.2)
actionview (5.0.0.1)
activesupport (= 5.0.0.1)
actionview (5.0.2)
activesupport (= 5.0.2)
builder (~> 3.1)
erubis (~> 2.7.0)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.0.2)
activejob (5.0.0.1)
activesupport (= 5.0.0.1)
rails-html-sanitizer (~> 1.0, >= 1.0.3)
activejob (5.0.2)
activesupport (= 5.0.2)
globalid (>= 0.3.6)
activemodel (5.0.0.1)
activesupport (= 5.0.0.1)
activerecord (5.0.0.1)
activemodel (= 5.0.0.1)
activesupport (= 5.0.0.1)
activemodel (5.0.2)
activesupport (= 5.0.2)
activerecord (5.0.2)
activemodel (= 5.0.2)
activesupport (= 5.0.2)
arel (~> 7.0)
activesupport (5.0.0.1)
activesupport (5.0.2)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (~> 0.7)
minitest (~> 5.1)
tzinfo (~> 1.1)
addressable (2.5.1)
public_suffix (~> 2.0, >= 2.0.2)
arel (7.1.4)
builder (3.2.2)
aws-sdk (2.9.0)
aws-sdk-resources (= 2.9.0)
aws-sdk-core (2.9.0)
aws-sigv4 (~> 1.0)
jmespath (~> 1.0)
aws-sdk-resources (2.9.0)
aws-sdk-core (= 2.9.0)
aws-sigv4 (1.0.0)
builder (3.2.3)
byebug (9.0.6)
coffee-rails (4.2.1)
coffee-script (>= 2.2.0)
railties (>= 4.0.0, < 5.2.x)
coffee-script (2.4.1)
coffee-script-source
execjs
coffee-script-source (1.10.0)
concurrent-ruby (1.0.2)
coffee-script-source (1.12.2)
concurrent-ruby (1.0.5)
debug_inspector (0.0.2)
erubis (2.7.0)
execjs (2.7.0)
ffi (1.9.14)
faraday (0.12.0.1)
multipart-post (>= 1.2, < 3)
faraday_middleware (0.11.0.1)
faraday (>= 0.7.4, < 1.0)
faraday_middleware-parse_oj (0.3.1)
faraday (~> 0.9)
faraday_middleware (>= 0.9.1, < 1.0)
oj (~> 2.0)
ffi (1.9.18)
giphy (3.0.0)
faraday (~> 0.9)
faraday_middleware (~> 0.9)
faraday_middleware-parse_oj (~> 0.3)
launchy (~> 2.4)
globalid (0.3.7)
activesupport (>= 4.1.0)
httparty (0.14.0)
multi_xml (>= 0.5.2)
i18n (0.7.0)
i18n (0.8.1)
jmespath (1.3.1)
launchy (2.4.3)
addressable (~> 2.3)
listen (3.0.8)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
Expand All @@ -70,97 +96,100 @@ GEM
mime-types-data (~> 3.2015)
mime-types-data (3.2016.0521)
mini_portile2 (2.1.0)
minitest (5.9.1)
multi_xml (0.5.5)
nio4r (1.2.1)
nokogiri (1.6.8.1)
minitest (5.10.1)
multi_xml (0.6.0)
multipart-post (2.0.0)
nio4r (2.0.0)
nokogiri (1.7.1)
mini_portile2 (~> 2.1.0)
puma (3.6.1)
oj (2.18.5)
public_suffix (2.0.5)
puma (3.8.2)
rack (2.0.1)
rack-test (0.6.3)
rack (>= 1.0)
rails (5.0.0.1)
actioncable (= 5.0.0.1)
actionmailer (= 5.0.0.1)
actionpack (= 5.0.0.1)
actionview (= 5.0.0.1)
activejob (= 5.0.0.1)
activemodel (= 5.0.0.1)
activerecord (= 5.0.0.1)
activesupport (= 5.0.0.1)
rails (5.0.2)
actioncable (= 5.0.2)
actionmailer (= 5.0.2)
actionpack (= 5.0.2)
actionview (= 5.0.2)
activejob (= 5.0.2)
activemodel (= 5.0.2)
activerecord (= 5.0.2)
activesupport (= 5.0.2)
bundler (>= 1.3.0, < 2.0)
railties (= 5.0.0.1)
railties (= 5.0.2)
sprockets-rails (>= 2.0.0)
rails-dom-testing (2.0.1)
rails-dom-testing (2.0.2)
activesupport (>= 4.2.0, < 6.0)
nokogiri (~> 1.6.0)
nokogiri (~> 1.6)
rails-html-sanitizer (1.0.3)
loofah (~> 2.0)
railties (5.0.0.1)
actionpack (= 5.0.0.1)
activesupport (= 5.0.0.1)
railties (5.0.2)
actionpack (= 5.0.2)
activesupport (= 5.0.2)
method_source
rake (>= 0.8.7)
thor (>= 0.18.1, < 2.0)
rake (11.3.0)
rake (12.0.0)
rb-fsevent (0.9.8)
rb-inotify (0.9.7)
rb-inotify (0.9.8)
ffi (>= 0.5.0)
sass (3.4.22)
sass (3.4.23)
sass-rails (5.0.6)
railties (>= 4.0.0, < 6)
sass (~> 3.1)
sprockets (>= 2.8, < 4.0)
sprockets-rails (>= 2.0, < 4.0)
tilt (>= 1.1, < 3)
spring (2.0.0)
spring (2.0.1)
activesupport (>= 4.2)
spring-watcher-listen (2.0.1)
listen (>= 2.7, < 4.0)
spring (>= 1.2, < 3.0)
sprockets (3.7.0)
sprockets (3.7.1)
concurrent-ruby (~> 1.0)
rack (> 1, < 3)
sprockets-rails (3.2.0)
actionpack (>= 4.0)
activesupport (>= 4.0)
sprockets (>= 3.0.0)
sqlite3 (1.3.12)
thor (0.19.1)
thread_safe (0.3.5)
tilt (2.0.5)
thor (0.19.4)
thread_safe (0.3.6)
tilt (2.0.7)
tzinfo (1.2.2)
thread_safe (~> 0.1)
uglifier (3.0.3)
uglifier (3.1.9)
execjs (>= 0.3.0, < 3)
web-console (3.4.0)
actionview (>= 5.0)
activemodel (>= 5.0)
debug_inspector
railties (>= 5.0)
websocket-driver (0.6.4)
websocket-driver (0.6.5)
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.2)

PLATFORMS
ruby

DEPENDENCIES
aws-sdk (~> 2)
byebug
coffee-rails (~> 4.2)
giphy
httparty
listen (~> 3.0.5)
puma (~> 3.0)
rails (~> 5.0.0, >= 5.0.0.1)
sass-rails (~> 5.0)
spring
spring-watcher-listen (~> 2.0.0)
sqlite3
uglifier (>= 1.3.0)
web-console

RUBY VERSION
ruby 2.3.1p112

BUNDLED WITH
1.12.5
1.14.6
90 changes: 76 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,84 @@

Rails application to transfer messages to your basecamp3 HQ.

## Supported services
### Supported services
1. [AWS SNS](https://aws.amazon.com/sns/)
2. [Bugsnag](https://www.bugsnag.com/)
3. [GitLab](https://gitlab.com)
4. [Rollbar](https://rollbar.com)
5. [Giphy](https://giphy.com)

## Usage
### Instruction

1. Register AWS and [create SNS topic](http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html). Remember Topic ARN!
2. Register Basecamp and [create bot](https://m.signalvnoise.com/new-in-basecamp-3-chatbots-8526618c0c7d#.kabo3hgs1). There
you need a bot long link. Like this: `https://3.basecamp.com/195539477/integrations/2uH9aHLEVhhaXKPaqrj8yw8P/buckets/2085958501/chats/9007199254741775/lines`
3. Clone this repo && bundle install && rails db:migrate
4. Write your SNS **Topic ARN** and Basecamp **bot url** to /config/service.yml
5. rails s
6. [Create subscription](http://docs.aws.amazon.com/sns/latest/dg/SubscribeTopic.html). Use HTTP **Protocol** and
`http://your-external-host/api/v1/messages` as **Endpoint**
7. At first time SNS send confirmation request. After subscription you can
[publish messages to a topic](http://docs.aws.amazon.com/sns/latest/dg/PublishTopic.html)
* [Create a Chatbot](#create-chatbot )
* [AWS integration](#aws-integration)
* [Bugsnag integration](#bugsnag-integration)
* [Gitlab integration](#gitlab-integration)
* [Rollbar integration](#rollbar-integration)
* [Giphy integration](#giphy-integration)
* [References](#references)

## References
#### Create a Chatbot

* Most controller logic based on [Creating SNS subscription endpoints with Ruby on Rails](http://blog.eng.xogrp.com/post/79166302844/creating-sns-subscription-endpoints-with-ruby-on#disqus_thread)
1. Register Basecamp and [create bot](https://m.signalvnoise.com/new-in-basecamp-3-chatbots-8526618c0c7d#.kabo3hgs1). There
you need a bot long link. Like this:
`https://3.basecamp.com/195539477/integrations/2uH9aHLEVhhaXKPaqrj8yw8P/buckets/2085958501/chats/9007199254741775/lines`
2. Clone this repo from GitHub.
1. Run __`bundle install`__ in your project directory.
2. Create a ```secrets.yml``` file in your config folder as described [here](http://guides.rubyonrails.org/upgrading_ruby_on_rails.html#config-secrets-yml).
3. Add your Basecamp __bot url__ to `/config/service.yml`
4. You will probably want to try running your app locally to test it and make sure it’s working as expected. To do that you will need a service that allows you to expose a web server running on your local machine to the Internet. We recommend to try [Ngrok](http://ngrok.com).
1. If you see this message on rails console:
``Cannot render console from XXX.XXX.XXX.XXX! Allowed networks: 127.0.0.1,...``
You need to whitelist the XXX.XXX.XXX.XXX network space in the Web console config.
Open ``config/environments/development.rb`` and type IP address of remote server:

``` config.web_console.whitelisted_ips = 'XXX.XXX.XXX.XXX' ```

Read more about IP's whitelisting [here](https://github.com/rails/web-console#configweb_consolewhitelisted_ips).

#### AWS integration

1. Register AWS and [create SNS topic](http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html). Remember Topic ARN! It looks like this:
`arn:aws:sns:us-east-6:23730808936387:topick_name`
2. Add your SNS __Topic ARN__ to `/config/service.yml`
3. [Aws-sdk gem](https://github.com/aws/aws-sdk-ruby), which used in this App, needs 'aws_access_key' and 'aws_secret_key' to work. To find them navigate to "My Security Credentials" category in your asw.amazon account. Always load your credentials from outside your application! Look at `/config/service.yml` for example. Avoid configuring credentials statically and never commit them to source control!
1) If you're running on AWS EC2 you able to assign AWS keys dynamically with IAM roles.
2. Create an IAM role.
3. Define which AWS services can assume the role (AmazonSNSFullAccess etc.)
4. Specify the role when you launch your instance, or attach the role to a running or stopped instance.
4. Start rails server by typing `rails s` command.
5. [Create subscription](http://docs.aws.amazon.com/sns/latest/dg/SubscribeTopic.html). Use HTTP **Protocol** and `http://your-external-host/api/sns/messages` as __Endpoint__
6. At first time SNS send confirmation request which will be automatically accepted. After subscription you can [publish messages to the topic](http://docs.aws.amazon.com/sns/latest/dg/PublishTopic.html)

#### Bugsnag integration

1. Create [Bugsnag account](https://www.bugsnag.com/) and create new project.
2. Navigate to 'Integrations' menu.
3. Select the 'Webhook', enter the full URL where webhooks should be posted (http://your-external-host/api/bugsnag/messages`), choice notification events and enable the integration.
4. For more instructions, please visit [Bugsnag docs](https://docs.bugsnag.com/api/) and [Ruby on Rails integration](https://docs.bugsnag.com/platforms/ruby/rails/)

#### Gitlab integration

1. Create [Gitlab account](https://gitlab.com) and start the New project.
2. Navigate to the project's 'Settings/Integrations' menu.
3. Select the 'Webhook', enter the full URL where webhooks should be posted (http://your-external-host/api/gitlab/messages`). Mark event checkboxes and click the 'Add Webhook' button.
4. For more instructions, please visit [GitLab Webhooks docs](https://gitlab.com/help/user/project/integrations/webhooks).

#### Rollbar integration

1. Create [Rollbar account](https://rollbar.com) and start the New project.
2. Navigate to the project, click 'Settings', then click 'Notifications' in the left menu.
3. Select the 'Webhook', enter the full URL where webhooks should be posted (this App server) and enable the integration.
4. Once set up, you can add, edit, or remove rules. For more instructions, please visit [Rollbar docs](https://rollbar.com/docs/webhooks) and [Ruby Integration](https://rollbar.com/docs/notifier/rollbar-gem)

#### Giphy integration

1. Add Gipy API 'search query' to `/config/service.yml`. Look at `/config/service.yml` for example.
2. If you'll send some POST request to `http://your-external-host/api/giphy/messages` Chatbot will post to your Basecamp chat a random funny gif from [Giphy](http://giphy.com/).
3. Just for fun!

#### References

* AWS-SDK [documentation](http://docs.aws.amazon.com/sdkforruby/api/Aws/SNS/Client.html)
* Giphy [Api docs](https://github.com/Giphy/GiphyAPI)
3 changes: 0 additions & 3 deletions app/assets/javascripts/application.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,4 @@
// Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
// about supported directives.
//
//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require_tree .
Loading