wolf_core 0.1.96 → 0.1.98

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: 5b9b18f8f34d92108292a480d8cd324e6c7d5bb9877060b7ae28b3ff8137288f
4
- data.tar.gz: ae5dd7657424be4915d619b15da9a173f03ca949418fd6d6972f88cedc3aa112
3
+ metadata.gz: 0e3d081c4b356d9b3bee8084b26251a3540c6884dba594cedc404d5a346dff22
4
+ data.tar.gz: 8b9e86ead216520b002ebaaea42b621a188569e8a05c717ec3ad2e7df205290c
5
5
  SHA512:
6
- metadata.gz: 76cc484e08c4cb02a64d9cc9686d6020f932f9761f0d5db49c2409a4f022da869bd3ba75c7d2149e72e62a10085ca064352c7eac5819735dc153951e184818e4
7
- data.tar.gz: a1749eeb5c7dfb371ceb3c50023703eb77df6442f977870c97d921382ced04d6063005b6a51ce46412333d2001a0ee59cfa26bb5e87c02d7a90f9a6a77bd8c4d
6
+ metadata.gz: 613f563fdceb49519c12ce40d68e0a38f099d96f121ef63f71e305d8bce4b2f1bdab8057978dc8f2bbb305b13fb17c90b81d026971477bfb3517d8288763e8ba
7
+ data.tar.gz: e1e40740f03748298dcc6430237bae7c7d4e6d73e8acf32cd521aefd2e9e3e8fdf5c3418e1169c35fc45993afdf7ce93291b81782ae15c85d87224ab6067fee8
@@ -4,7 +4,7 @@ module WolfCore
4
4
  def get_payload(event_type:, params:)
5
5
  return if event_type == 'SubscriptionConfirmation'
6
6
  params = JSON.parse(params['Message'] || '{}')
7
- params['payload'] = JSON.parse(params['payload'] || '{}')
7
+ JSON.parse(params['payload'] || '{}')
8
8
  end
9
9
 
10
10
  def get_event_type(params:)
@@ -16,7 +16,8 @@ module WolfCore
16
16
  message['event_name']
17
17
  end
18
18
 
19
- def validate_user(event_type:, params:)
19
+ def validate_user(params:)
20
+ event_type = get_event_type(params: params)
20
21
  return if event_type == 'SubscriptionConfirmation'
21
22
 
22
23
  user_id = params.dig('invoker', 'user_id').to_s
@@ -33,10 +34,27 @@ module WolfCore
33
34
  response
34
35
  end
35
36
 
37
+ def process_webhook(params:)
38
+ event_type = get_event_type(params: params)
39
+ event_name = get_event_name(params: params)
40
+ # payload = get_payload(event_type: event_type, params: params)
41
+ if event_type == 'SubscriptionConfirmation'
42
+ url = params['SubscribeURL']
43
+ elsif event_type == 'Notification'
44
+ yield(event_name)
45
+ end
46
+ end
47
+
36
48
  def build_body_from_params(params:, id_key:)
37
- params.slice(
38
- 'event_name', 'payload'
39
- ).merge({ id_key => params['object_id'] })
49
+ {
50
+ event_name: get_event_name(params: params),
51
+ id_key => get_object_id(params: params)
52
+ }
53
+ end
54
+
55
+ def get_object_id(params:)
56
+ params = JSON.parse(params['Message'] || '{}')
57
+ params['object_id']
40
58
  end
41
59
  end
42
60
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module WolfCore
4
- VERSION = "0.1.96"
4
+ VERSION = "0.1.98"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wolf_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.96
4
+ version: 0.1.98
5
5
  platform: ruby
6
6
  authors:
7
7
  - Javier Roncallo
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-10-07 00:00:00.000000000 Z
11
+ date: 2024-10-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty