viberroo 0.2.2 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f382a40dcde3858d3fec54b00754e6d5fac1f8b103b4fad83cc0b8794809f584
4
- data.tar.gz: 43aa2d14d95200e451dbf9c4b601555266f4651a5390475525aff951fd7a78f3
3
+ metadata.gz: 7fe4c409ad9d9ae8053ef0e40c5cc84c65c72336ced11df2840c056ff7742994
4
+ data.tar.gz: eba48d877205587c10ca5f839efaf007f4486ca51f9ac80c47583ccd3087af37
5
5
  SHA512:
6
- metadata.gz: 52ca07c022c33dbbddde9cba3ae26d1ca0daa9ee530611e6ebdf3b392caef9a3ab94aa63e2b805a33295a3311443907524abd32b81bf278a755e9509c6d8d95c
7
- data.tar.gz: f799269c2b83b105167a59503bd711a27774bfdc0e2aab0bec8e1dc274fe5f3ca9bd5dbd67461d47139752318083485d56e9080bfdbd89493a289dafad2abd7d
6
+ metadata.gz: 11a9ddf29a2e0f66dd4c4d155c03e22535734c3ee5df4d70f16f806da7be0f1382f2b29df5502dd112638e3a4f14b7994ddda9fea17ffd5ccce8314384c21322
7
+ data.tar.gz: 493428110e0fe5961fa02fbd3e9369b777c8ed013e447722a91701978a60691717ff7896c3f4300be1beb09db478053e07da7ac48b97b378fff8fffef346111e
data/lib/viberroo/bot.rb CHANGED
@@ -1,12 +1,15 @@
1
1
  module Viberroo
2
2
  class Bot
3
- def initialize(token: nil, callback: nil)
3
+ def initialize(token: nil, response: nil, callback: nil)
4
+ warn 'DEPRECATION WARNING: callback Viberroo::Bot.new `callback:` parameter will be renamed to `response:` in next minor release.' if callback
5
+
4
6
  Viberroo.configure
5
7
 
6
8
  @headers = {
7
9
  'X-Viber-Auth-Token': token || Viberroo.config.auth_token,
8
10
  'Content-Type': 'application/json'
9
11
  }
12
+ @response = response
10
13
  @callback = callback
11
14
  end
12
15
 
@@ -30,7 +33,7 @@ module Viberroo
30
33
 
31
34
  def send(message:, keyboard: {})
32
35
  request(URL::MESSAGE,
33
- { receiver: @callback&.user_id }.merge(message).merge(keyboard))
36
+ { receiver: @response&.user_id || @callback&.user_id }.merge(message).merge(keyboard))
34
37
  end
35
38
 
36
39
  def send!(message:, keyboard: {})
@@ -4,6 +4,28 @@ module Viberroo
4
4
  class Callback
5
5
  attr_reader :params
6
6
 
7
+ def initialize(params)
8
+ warn 'DEPRECATION WARNING: Callback class will be renamed to Response in next minor release.'
9
+ @params = RecursiveOpenStruct.new params.to_h
10
+ end
11
+
12
+ def user_id
13
+ case @params.event
14
+ when 'conversation_started', 'subscribed'
15
+ @params.user.id
16
+ when 'unsubscribed', 'delivered', 'seen', 'failed'
17
+ @params.user_id
18
+ when 'message'
19
+ @params.sender.id
20
+ else
21
+ @params.dig(:user, :id)
22
+ end
23
+ end
24
+ end
25
+
26
+ class Response
27
+ attr_reader :params
28
+
7
29
  def initialize(params)
8
30
  @params = RecursiveOpenStruct.new params.to_h
9
31
  end
@@ -1,3 +1,3 @@
1
1
  module Viberroo
2
- VERSION = '0.2.2'.freeze
2
+ VERSION = '0.2.3'.freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: viberroo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Viktor Habchak