messenger-bot 0.1.7 → 0.1.8

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
  SHA1:
3
- metadata.gz: 2dae409cac62b02db760b3c3b2161e265c1f2317
4
- data.tar.gz: 82cf4b2c1eab2d920f28e28688f05530fdf320e2
3
+ metadata.gz: 7c68cee7d69c9b8cbcc6c1ada67602ba1908f29c
4
+ data.tar.gz: ba9fdeaba6c1a33a2a37b841e87c230d5fb72abb
5
5
  SHA512:
6
- metadata.gz: 101c19b84ef3defe666a130bccc4a1740c97c9c2e3fc35fd326aadff8b6fba1db4eb3e4fe009e5abdb9a8d7ea89c2bc675f4f86be6929dad7d0d8bce07196222
7
- data.tar.gz: f9a9850ba37409f32197b63447065fb03bbebb455b2099ff88d15d4cb3f3079dde04e295a33522133d20a49fda41197ea675bcb4252299392da47eef28887378
6
+ metadata.gz: a6301bdc17ada3b7bb41541a9b4e5566092d6da3f59513b5feb5b6ace375a54e25ee56db145e9b6e5de5001f68d0a67a1366b6d2ec63409246268cfa70543564
7
+ data.tar.gz: 97c9f5cff2496a5a41c0b1afd7972f0f51e67efe976c6f23fb12b3d0321ad080a951ea52a23aedbc79d259ef87448f30834bd0faced6b6975b728ddd4b776311
data/README.md CHANGED
@@ -10,42 +10,49 @@ Requires Rails >= 4
10
10
 
11
11
  Bundler in your Gemfile.
12
12
 
13
- gem 'messenger-bot'
13
+ ```ruby
14
+ gem 'messenger-bot'
15
+ ```
14
16
 
15
17
  ##Quickstart
16
18
 
17
- #config/initializers/messenger_bot.rb
18
-
19
- Messenger::Bot.config do |config|
20
- config.access_token = <ACCESS_TOKEN>
21
- config.validation_token = <VERIFY_TOKEN>
22
- end
23
-
24
- #config/routes.rb
25
-
26
- mount Messenger::Bot::Space => "/webhook"
27
-
19
+ ```ruby
20
+ #config/initializers/messenger_bot.rb
21
+
22
+ Messenger::Bot.config do |config|
23
+ config.access_token = <ACCESS_TOKEN>
24
+ config.validation_token = <VERIFY_TOKEN>
25
+ config.secret_token = <SECRET_TOKEN>
26
+ end
27
+
28
+ #config/routes.rb
29
+
30
+ mount Messenger::Bot::Space => "/webhook"
31
+ ```
28
32
 
33
+
29
34
  ##Example
30
35
 
31
36
  [Example](https://github.com/jun85664396/messenger-bot-rails/blob/master/example/messenger_bot_controller.rb)
32
37
 
33
- # app/controllers/messenger_bot_controller.rb
34
-
35
- class MessengerBotController < ActionController::Base
36
- def message(event, sender)
37
- # profile = sender.get_profile
38
- sender.reply({ text: "Reply: #{event['message']['text']}" })
39
- end
40
-
41
- def delivery(event, sender)
42
- #BlahBlah
43
- end
44
-
45
- def postback(event, sender)
46
- #BlahBlah
47
- end
48
- end
38
+ ```ruby
39
+ # app/controllers/messenger_bot_controller.rb
40
+
41
+ class MessengerBotController < ActionController::Base
42
+ def message(event, sender)
43
+ # profile = sender.get_profile
44
+ sender.reply({ text: "Reply: #{event['message']['text']}" })
45
+ end
46
+
47
+ def delivery(event, sender)
48
+ #BlahBlah
49
+ end
50
+
51
+ def postback(event, sender)
52
+ #BlahBlah
53
+ end
54
+ end
55
+ ```
49
56
 
50
57
  ##Usage
51
58
 
@@ -4,6 +4,8 @@ module Messenger
4
4
  class << self
5
5
  attr_accessor :access_token
6
6
 
7
+ attr_accessor :secret_token
8
+
7
9
  attr_accessor :validation_token
8
10
  end
9
11
  end
@@ -1,6 +1,8 @@
1
1
  module Messenger
2
2
  module Bot
3
3
  class Space::StationController < ::MessengerBotController
4
+ before_action :authenticate, only: [:receive]
5
+
4
6
  def validation
5
7
  if params["hub.verify_token"] === Messenger::Bot::Config.validation_token
6
8
  return render json: params["hub.challenge"]
@@ -23,6 +25,12 @@ module Messenger
23
25
  end
24
26
  render body: "ok"
25
27
  end
28
+
29
+ def authenticate
30
+ return true if Messenger::Bot::Config.secret_token.nil?
31
+ signature = "sha1=" + OpenSSL::HMAC.hexdigest(OpenSSL::Digest.new('sha1'), Messenger::Bot::Config.secret_token, request.body.read)
32
+ return render(body: "Error, Signatures didn't match", status: 500) unless Rack::Utils.secure_compare(signature, request.env['HTTP_X_HUB_SIGNATURE'])
33
+ end
26
34
  end
27
35
  end
28
36
  end
@@ -1,5 +1,5 @@
1
1
  module Messenger
2
2
  module Bot
3
- VERSION = "0.1.7"
3
+ VERSION = "0.1.8"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: messenger-bot
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - JunSangPil
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-04-19 00:00:00.000000000 Z
11
+ date: 2016-04-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler