qismo 0.13.0 → 0.15.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/lib/qismo/api.rb +556 -324
  3. data/lib/qismo/client.rb +31 -19
  4. data/lib/qismo/collection.rb +21 -0
  5. data/lib/qismo/object.rb +21 -0
  6. data/lib/qismo/objectified_hash.rb +30 -0
  7. data/lib/qismo/objects/agent_service.rb +53 -0
  8. data/lib/qismo/objects/broadcast_job.rb +99 -0
  9. data/lib/qismo/objects/broadcast_log.rb +59 -0
  10. data/lib/qismo/objects/custom_channel.rb +35 -0
  11. data/lib/qismo/objects/custom_channel_message_response.rb +19 -0
  12. data/lib/qismo/objects/customer_room.rb +85 -0
  13. data/lib/qismo/objects/fb_channel.rb +31 -0
  14. data/lib/qismo/objects/hsm_template.rb +111 -0
  15. data/lib/qismo/objects/ig_channel.rb +43 -0
  16. data/lib/qismo/objects/line_channel.rb +27 -0
  17. data/lib/qismo/objects/list_channels_response.rb +39 -0
  18. data/lib/qismo/objects/office_hour.rb +67 -0
  19. data/lib/qismo/objects/qiscus_channel.rb +27 -0
  20. data/lib/qismo/objects/room_additional_info.rb +15 -0
  21. data/lib/qismo/objects/tag.rb +27 -0
  22. data/lib/qismo/objects/telegram_channel.rb +31 -0
  23. data/lib/qismo/objects/user.rb +99 -0
  24. data/lib/qismo/objects/wa_channel.rb +111 -0
  25. data/lib/qismo/objects/wa_credit_info.rb +71 -0
  26. data/lib/qismo/objects/waca_channel.rb +55 -0
  27. data/lib/qismo/objects/webhook.rb +15 -0
  28. data/lib/qismo/types.rb +10 -1
  29. data/lib/qismo/version.rb +1 -1
  30. data/lib/qismo/webhook_requests/on_agent_allocation_needed.rb +8 -2
  31. data/lib/qismo/webhook_requests/on_custom_button_clicked.rb +15 -7
  32. data/lib/qismo/webhook_requests/on_custom_channel_message_sent.rb +18 -6
  33. data/lib/qismo/webhook_requests/on_message_for_bot_sent.rb +18 -6
  34. data/lib/qismo/webhook_requests/on_new_session_initiated.rb +30 -10
  35. data/lib/qismo/webhook_requests/on_room_resolved.rb +15 -5
  36. data/lib/qismo.rb +28 -34
  37. data/qismo.gemspec +1 -0
  38. metadata +40 -6
  39. data/lib/qismo/model.rb +0 -102
  40. data/lib/qismo/models/base.rb +0 -13
  41. data/lib/qismo/models/customer_room.rb +0 -6
  42. data/lib/qismo/util.rb +0 -31
@@ -1,5 +1,7 @@
1
1
  module Qismo
2
2
  module WebhookRequests
3
+ # Custom button webhook object
4
+ #
3
5
  # @!attribute [r] additional_info
4
6
  # @return [Array<AdditionalInfo>]
5
7
  # @!attribute [r] agent
@@ -18,42 +20,48 @@ module Qismo
18
20
  # @return [Integer]
19
21
  # @!attribute [r] tag
20
22
  # @return [Array<Tag>]
21
- class OnCustomButtonClicked < Qismo::Models::Base
22
- # @!parse include Qismo::Models
23
-
23
+ class OnCustomButtonClicked < Qismo::Object
24
+ # Custom button webhook additional info object
25
+ #
24
26
  # @!attribute [r] key
25
27
  # @return [String]
26
28
  # @!attribute [r] value
27
29
  # @return [String,Integer,TrueClass,FalseClass]
28
- class AdditionalInfo < Qismo::Models::Base
30
+ class AdditionalInfo < Qismo::Object
29
31
  attribute? :key, Types::String.optional
30
32
  attribute? :value, (Types::String.optional | Types::Int.optional | Types::Params::Bool.optional)
31
33
  end
32
34
 
35
+ # Custom button webhook agent object
36
+ #
33
37
  # @!attribute [r] email
34
38
  # @return [String]
35
39
  # @!attribute [r] name
36
40
  # @return [String]
37
41
  # @!attribute [r] type
38
42
  # @return [String]
39
- class Agent < Qismo::Models::Base
43
+ class Agent < Qismo::Object
40
44
  attribute? :email, Types::String.optional
41
45
  attribute? :name, Types::String.optional
42
46
  attribute? :type, Types::String.optional
43
47
  end
44
48
 
49
+ # Custom webhook customer object
50
+ #
45
51
  # @!attribute [r] avatar
46
52
  # @return [String]
47
53
  # @!attribute [r] name
48
54
  # @return [String]
49
55
  # @!attribute [r] user_id
50
56
  # @return [String]
51
- class Customer < Qismo::Models::Base
57
+ class Customer < Qismo::Object
52
58
  attribute? :avatar, Types::String.optional
53
59
  attribute? :name, Types::String.optional
54
60
  attribute? :user_id, Types::String.optional
55
61
  end
56
62
 
63
+ # Custom button webhook tag object
64
+ #
57
65
  # @!attribute [r] id
58
66
  # @return [Integer]
59
67
  # @!attribute [r] name
@@ -64,7 +72,7 @@ module Qismo
64
72
  # @return [String]
65
73
  # @!attribute [r] room_tag_created_at
66
74
  # @return [String]
67
- class Tag < Qismo::Models::Base
75
+ class Tag < Qismo::Object
68
76
  attribute? :id, Types::Int.optional
69
77
  attribute? :name, Types::String.optional
70
78
  attribute? :created_at, Types::String.optional
@@ -1,8 +1,12 @@
1
1
  module Qismo
2
2
  module WebhookRequests
3
+ # Custom channel webhook object
4
+ #
3
5
  # @!attribute [r] payload
4
6
  # @return [Payload]
5
- class OnCustomChannelMessageSent < Qismo::Models::Base
7
+ class OnCustomChannelMessageSent < Qismo::Object
8
+ # Custom channel webhook from object
9
+ #
6
10
  # @!attribute [r] avatar_url
7
11
  # @return [String]
8
12
  # @!attribute [r] email
@@ -11,13 +15,15 @@ module Qismo
11
15
  # @return [Integer]
12
16
  # @!attribute [r] name
13
17
  # @return [String]
14
- class From < Qismo::Models::Base
18
+ class From < Qismo::Object
15
19
  attribute? :avatar_url, Types::String.optional
16
20
  attribute? :email, Types::String.optional
17
21
  attribute? :id, Types::Int.optional
18
22
  attribute? :name, Types::String.optional
19
23
  end
20
24
 
25
+ # Custom channel webhook message object
26
+ #
21
27
  # @!attribute [r] comment_before_id
22
28
  # @return [Integer]
23
29
  # @!attribute [r] created_at
@@ -38,7 +44,7 @@ module Qismo
38
44
  # @return [String]
39
45
  # @!attribute [r] unix_timestamp
40
46
  # @return [String]
41
- class Message < Qismo::Models::Base
47
+ class Message < Qismo::Object
42
48
  attribute? :comment_before_id, Types::Int.optional
43
49
  attribute? :created_at, Types::String.optional
44
50
  attribute? :id, Types::Int.optional
@@ -51,12 +57,16 @@ module Qismo
51
57
  attribute? :unix_timestamp, Types::String.optional
52
58
  end
53
59
 
60
+ # Custom channel webhook participant object
61
+ #
54
62
  # @!attribute [r] email
55
63
  # @return [String]
56
- class Participant < Qismo::Models::Base
64
+ class Participant < Qismo::Object
57
65
  attribute? :email, Types::String.optional
58
66
  end
59
67
 
68
+ # Custom channel webhook room object
69
+ #
60
70
  # @!attribute [r] id
61
71
  # @return [String]
62
72
  # @!attribute [r] name
@@ -67,7 +77,7 @@ module Qismo
67
77
  # @return [Array<Participant>]
68
78
  # @!attribute [r] room_avatar
69
79
  # @return [String]
70
- class Room < Qismo::Models::Base
80
+ class Room < Qismo::Object
71
81
  attribute? :id, Types::String.optional
72
82
  attribute? :name, Types::String.optional
73
83
  attribute? :options, Types::String.optional
@@ -75,6 +85,8 @@ module Qismo
75
85
  attribute? :room_avatar, Types::String.optional
76
86
  end
77
87
 
88
+ # Custom channel webhook payload object
89
+ #
78
90
  # @!attribute [r] from
79
91
  # @return [From]
80
92
  # @!attribute [r] message
@@ -83,7 +95,7 @@ module Qismo
83
95
  # @return [Room]
84
96
  # @!attribute [r] type
85
97
  # @return [String]
86
- class Payload < Qismo::Models::Base
98
+ class Payload < Qismo::Object
87
99
  attribute? :from, From.optional
88
100
  attribute? :message, Message.optional
89
101
  attribute? :room, Room.optional
@@ -1,6 +1,10 @@
1
1
  module Qismo
2
2
  module WebhookRequests
3
- class OnMessageForBotSent < Qismo::Models::Base
3
+ # Chatbot webhook object
4
+ #
5
+ class OnMessageForBotSent < Qismo::Object
6
+ # Chatbot webhook from object
7
+ #
4
8
  # @!attribute [r] avatar_url
5
9
  # @return [String]
6
10
  # @!attribute [r] email
@@ -9,13 +13,15 @@ module Qismo
9
13
  # @return [Integer]
10
14
  # @!attribute [r] name
11
15
  # @return [String]
12
- class From < Qismo::Models::Base
16
+ class From < Qismo::Object
13
17
  attribute? :avatar_url, Types::String.optional
14
18
  attribute? :email, Types::String.optional
15
19
  attribute? :id, Types::Int.optional
16
20
  attribute? :name, Types::String.optional
17
21
  end
18
22
 
23
+ # Chatbot webhook message object
24
+ #
19
25
  # @!attribute [r] comment_before_id
20
26
  # @return [Integer]
21
27
  # @!attribute [r] created_at
@@ -36,7 +42,7 @@ module Qismo
36
42
  # @return [String]
37
43
  # @!attribute [r] unix_timestamp
38
44
  # @return [String]
39
- class Message < Qismo::Models::Base
45
+ class Message < Qismo::Object
40
46
  attribute? :comment_before_id, Types::Int.optional
41
47
  attribute? :created_at, Types::String.optional
42
48
  attribute? :id, Types::Int.optional
@@ -49,12 +55,16 @@ module Qismo
49
55
  attribute? :unix_timestamp, Types::String.optional
50
56
  end
51
57
 
58
+ # Chatbot webhook participant object
59
+ #
52
60
  # @!attribute [r] email
53
61
  # @return [String]
54
- class Participant < Qismo::Models::Base
62
+ class Participant < Qismo::Object
55
63
  attribute? :email, Types::String.optional
56
64
  end
57
65
 
66
+ # Chatbot webhook room object
67
+ #
58
68
  # @!attribute [r] id
59
69
  # @return [String]
60
70
  # @!attribute [r] name
@@ -65,7 +75,7 @@ module Qismo
65
75
  # @return [Array<Participant>]
66
76
  # @!attribute [r] room_avatar
67
77
  # @return [String]
68
- class Room < Qismo::Models::Base
78
+ class Room < Qismo::Object
69
79
  attribute? :id, Types::String.optional
70
80
  attribute? :name, Types::String.optional
71
81
  attribute? :options, Types::String.optional
@@ -73,6 +83,8 @@ module Qismo
73
83
  attribute? :room_avatar, Types::String.optional
74
84
  end
75
85
 
86
+ # Chatbot webhook payload object
87
+ #
76
88
  # @!attribute [r] from
77
89
  # @return [From]
78
90
  # @!attribute [r] message
@@ -81,7 +93,7 @@ module Qismo
81
93
  # @return [Room]
82
94
  # @!attribute [r] type
83
95
  # @return [String]
84
- class Payload < Qismo::Models::Base
96
+ class Payload < Qismo::Object
85
97
  attribute? :from, From.optional
86
98
  attribute? :message, Message.optional
87
99
  attribute? :room, Room.optional
@@ -1,12 +1,16 @@
1
1
  module Qismo
2
2
  module WebhookRequests
3
+ # New session webhook object
4
+ #
3
5
  # @!attribute [r] is_new_session
4
6
  # @return [TrueClass,FalseClass]
5
7
  # @!attribute [r] payload
6
8
  # @return [Payload]
7
9
  # @!attribute [r] room_log
8
10
  # @return [RoomLog]
9
- class OnNewSessionInitiated < Qismo::Models::Base
11
+ class OnNewSessionInitiated < Qismo::Object
12
+ # New session webhook from object
13
+ #
10
14
  # @!attribute [r] avatar_url
11
15
  # @return [String]
12
16
  # @!attribute [r] email
@@ -15,13 +19,15 @@ module Qismo
15
19
  # @return [Integer]
16
20
  # @!attribute [r] name
17
21
  # @return [String]
18
- class From < Qismo::Models::Base
22
+ class From < Qismo::Object
19
23
  attribute? :avatar_url, Types::String.optional
20
24
  attribute? :email, Types::String.optional
21
25
  attribute? :id, Types::Int.optional
22
26
  attribute? :name, Types::String.optional
23
27
  end
24
28
 
29
+ # New session webhook message object
30
+ #
25
31
  # @!attribute [r] comment_before_id
26
32
  # @return [Integer]
27
33
  # @!attribute [r] created_at
@@ -42,7 +48,7 @@ module Qismo
42
48
  # @return [String]
43
49
  # @!attribute [r] unix_timestamp
44
50
  # @return [String]
45
- class Message < Qismo::Models::Base
51
+ class Message < Qismo::Object
46
52
  attribute? :comment_before_id, Types::Int.optional
47
53
  attribute? :created_at, Types::String.optional
48
54
  attribute? :id, Types::Int.optional
@@ -55,12 +61,16 @@ module Qismo
55
61
  attribute? :unix_timestamp, Types::String.optional
56
62
  end
57
63
 
64
+ # New session webhook participant object
65
+ #
58
66
  # @!attribute [r] email
59
67
  # @return [String]
60
- class Participant < Qismo::Models::Base
68
+ class Participant < Qismo::Object
61
69
  attribute? :email, Types::String.optional
62
70
  end
63
71
 
72
+ # New session webhook room object
73
+ #
64
74
  # @!attribute [r] id
65
75
  # @return [String]
66
76
  # @!attribute [r] name
@@ -71,7 +81,7 @@ module Qismo
71
81
  # @return [Array<Participant>]
72
82
  # @!attribute [r] room_avatar
73
83
  # @return [String]
74
- class Room < Qismo::Models::Base
84
+ class Room < Qismo::Object
75
85
  attribute? :id, Types::String.optional
76
86
  attribute? :name, Types::String.optional
77
87
  attribute? :options, Types::String.optional
@@ -79,6 +89,8 @@ module Qismo
79
89
  attribute? :room_avatar, Types::String.optional
80
90
  end
81
91
 
92
+ # New session webhook message payload object
93
+ #
82
94
  # @!attribute [r] from
83
95
  # @return [From]
84
96
  # @!attribute [r] message
@@ -87,27 +99,33 @@ module Qismo
87
99
  # @return [Room]
88
100
  # @!attribute [r] type
89
101
  # @return [String]
90
- class Payload < Qismo::Models::Base
102
+ class Payload < Qismo::Object
91
103
  attribute? :from, From.optional
92
104
  attribute? :message, Message.optional
93
105
  attribute? :room, Room.optional
94
106
  end
95
107
 
108
+ # New session webhook user property object
109
+ #
96
110
  # @!attribute [r] key
97
111
  # @return [String]
98
112
  # @!attribute [r] value
99
113
  # @return [String,Integer,TrueClass,FalseClass]
100
- class UserProperty < Qismo::Models::Base
114
+ class UserProperty < Qismo::Object
101
115
  attribute? :key, Types::String.optional
102
116
  attribute? :value, (Types::String.optional | Types::Int.optional | Types::Params::Bool.optional)
103
117
  end
104
118
 
119
+ # New session webhook additional extras object
120
+ #
105
121
  # @!attribute [r] timezone_offset
106
122
  # @return [String]
107
- class AdditionalExtras < Qismo::Models::Base
123
+ class AdditionalExtras < Qismo::Object
108
124
  attribute? :timezone_offset, Types::String
109
125
  end
110
126
 
127
+ # New session webhook extras object
128
+ #
111
129
  # @!attribute [r] additional_extras
112
130
  # @return [AdditionalExtras]
113
131
  # @!attribute [r] notes
@@ -116,13 +134,15 @@ module Qismo
116
134
  # @return [String]
117
135
  # @!attribute [r] user_properties
118
136
  # @return [Array<UserProperty>]
119
- class Extras < Qismo::Models::Base
137
+ class Extras < Qismo::Object
120
138
  attribute? :additional_extras, AdditionalExtras.optional
121
139
  attribute? :notes, Types::String
122
140
  attribute? :timezone_offset, Types::String
123
141
  attribute? :user_properties, Types.Array(UserProperty.optional).optional
124
142
  end
125
143
 
144
+ # New session webhook room log object
145
+ #
126
146
  # @!attribute [r] channel_id
127
147
  # @return [Integer]
128
148
  # @!attribute [r] created_at
@@ -147,7 +167,7 @@ module Qismo
147
167
  # @return [String]
148
168
  # @!attribute [r] user_id
149
169
  # @return [String]
150
- class RoomLog < Qismo::Models::Base
170
+ class RoomLog < Qismo::Object
151
171
  attribute? :channel_id, Types::Int
152
172
  attribute? :created_at, Types::String
153
173
  attribute? :extras, Extras
@@ -1,21 +1,27 @@
1
1
  module Qismo
2
2
  module WebhookRequests
3
+ # Room resolve webhook object
4
+ #
3
5
  # @!attribute [r] customer
4
6
  # @return [Customer]
5
7
  # @!attribute [r] resolved_by
6
8
  # @return [ResolvedBy]
7
9
  # @!attribute [r] service
8
10
  # @return [Service]
9
- class OnRoomResolved < Qismo::Models::Base
11
+ class OnRoomResolved < Qismo::Object
12
+ # Room resolve webhook additional info object
13
+ #
10
14
  # @!attribute [r] key
11
15
  # @return [String]
12
16
  # @!attribute [r] value
13
17
  # @return [String,Integer,TrueClass,FalseClass]
14
- class AdditionalInfo < Qismo::Models::Base
18
+ class AdditionalInfo < Qismo::Object
15
19
  attribute? :key, Types::String.optional
16
20
  attribute? :value, (Types::String.optional | Types::Int.optional | Types::Params::Bool.optional)
17
21
  end
18
22
 
23
+ # Room resolve webhook customer object
24
+ #
19
25
  # @!attribute [r] additional_info
20
26
  # @return [Array<AdditionalInfo>]
21
27
  # @!attribute [r] avatar
@@ -24,13 +30,15 @@ module Qismo
24
30
  # @return [String]
25
31
  # @!attribute [r] user_id
26
32
  # @return [String]
27
- class Customer < Qismo::Models::Base
33
+ class Customer < Qismo::Object
28
34
  attribute? :additional_info, Types.Array(AdditionalInfo.optional).optional
29
35
  attribute? :avatar, Types::String.optional
30
36
  attribute? :name, Types::String.optional
31
37
  attribute? :user_id, Types::String.optional
32
38
  end
33
39
 
40
+ # Room resolve webhook resolved by object
41
+ #
34
42
  # @!attribute [r] email
35
43
  # @return [String]
36
44
  # @!attribute [r] id
@@ -41,7 +49,7 @@ module Qismo
41
49
  # @return [String]
42
50
  # @!attribute [r] type
43
51
  # @return [String]
44
- class ResolvedBy < Qismo::Models::Base
52
+ class ResolvedBy < Qismo::Object
45
53
  attribute? :email, Types::String.optional
46
54
  attribute? :id, Types::Int.optional
47
55
  attribute? :is_available, Types::Bool.optional
@@ -49,6 +57,8 @@ module Qismo
49
57
  attribute? :type, Types::String.optional
50
58
  end
51
59
 
60
+ # Room resolve webhook service object
61
+ #
52
62
  # @!attribute [r] first_comment_id
53
63
  # @return [String]
54
64
  # @!attribute [r] last_comment_id
@@ -63,7 +73,7 @@ module Qismo
63
73
  # @return [String]
64
74
  # @!attribute [r] source
65
75
  # @return [String]
66
- class Service < Qismo::Models::Base
76
+ class Service < Qismo::Object
67
77
  attribute? :first_comment_id, Types::String.optional
68
78
  attribute? :last_comment_id, Types::String.optional
69
79
  attribute? :id, Types::Int.optional
data/lib/qismo.rb CHANGED
@@ -6,9 +6,33 @@ require "http"
6
6
 
7
7
  require "qismo/version"
8
8
  require "qismo/types"
9
- require "qismo/util"
9
+ require "qismo/error"
10
10
 
11
- require "qismo/models/base"
11
+ require "qismo/object"
12
+ require "qismo/objectified_hash"
13
+ require "qismo/collection"
14
+
15
+ require "qismo/objects/customer_room"
16
+ require "qismo/objects/tag"
17
+ require "qismo/objects/room_additional_info"
18
+ require "qismo/objects/broadcast_log"
19
+ require "qismo/objects/user"
20
+ require "qismo/objects/agent_service"
21
+ require "qismo/objects/webhook"
22
+ require "qismo/objects/office_hour"
23
+ require "qismo/objects/hsm_template"
24
+ require "qismo/objects/wa_credit_info"
25
+ require "qismo/objects/broadcast_job"
26
+ require "qismo/objects/custom_channel_message_response"
27
+ require "qismo/objects/custom_channel"
28
+ require "qismo/objects/fb_channel"
29
+ require "qismo/objects/ig_channel"
30
+ require "qismo/objects/line_channel"
31
+ require "qismo/objects/qiscus_channel"
32
+ require "qismo/objects/telegram_channel"
33
+ require "qismo/objects/wa_channel"
34
+ require "qismo/objects/waca_channel"
35
+ require "qismo/objects/list_channels_response"
12
36
 
13
37
  require "qismo/webhook_requests/on_agent_allocation_needed"
14
38
  require "qismo/webhook_requests/on_custom_button_clicked"
@@ -17,40 +41,10 @@ require "qismo/webhook_requests/on_message_for_bot_sent"
17
41
  require "qismo/webhook_requests/on_new_session_initiated"
18
42
  require "qismo/webhook_requests/on_room_resolved"
19
43
 
20
- require "qismo/error"
21
- require "qismo/model"
22
44
  require "qismo/api"
23
45
  require "qismo/client"
24
46
 
47
+ # Qismo ruby root module
48
+ #
25
49
  module Qismo
26
- class << self
27
- # @!parse extend Qismo::Api
28
-
29
- def configure
30
- yield client
31
-
32
- client
33
- end
34
-
35
- private
36
-
37
- # @return [Qismo::Client]
38
- def client
39
- @client ||= Client.new
40
- end
41
-
42
- def method_missing(method, *args, &block)
43
- return super unless client.respond_to?(method)
44
-
45
- client.send(method, *args, &block)
46
- end
47
-
48
- def respond_to?(method_name, include_private = false)
49
- client.respond_to?(method_name, include_private) || super(method_name, include_private)
50
- end
51
-
52
- def respond_to_missing?(method_name, include_private = false)
53
- client.respond_to?(method_name, include_private) || super(method_name, include_private)
54
- end
55
- end
56
50
  end
data/qismo.gemspec CHANGED
@@ -44,4 +44,5 @@ Gem::Specification.new do |spec|
44
44
  spec.add_runtime_dependency("activesupport")
45
45
  spec.add_runtime_dependency("http")
46
46
  spec.add_runtime_dependency("dry-struct", "~> 1.6")
47
+ spec.add_runtime_dependency("dry-validation", "~> 1.10")
47
48
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qismo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.0
4
+ version: 0.15.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Qiscus Integration
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-12-09 00:00:00.000000000 Z
11
+ date: 2022-12-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '1.6'
55
+ - !ruby/object:Gem::Dependency
56
+ name: dry-validation
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '1.10'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '1.10'
55
69
  description: Ruby wrapper for Qiscus Omnichannel public API
56
70
  email:
57
71
  - developer@qiscus.net
@@ -65,12 +79,32 @@ files:
65
79
  - lib/qismo.rb
66
80
  - lib/qismo/api.rb
67
81
  - lib/qismo/client.rb
82
+ - lib/qismo/collection.rb
68
83
  - lib/qismo/error.rb
69
- - lib/qismo/model.rb
70
- - lib/qismo/models/base.rb
71
- - lib/qismo/models/customer_room.rb
84
+ - lib/qismo/object.rb
85
+ - lib/qismo/objectified_hash.rb
86
+ - lib/qismo/objects/agent_service.rb
87
+ - lib/qismo/objects/broadcast_job.rb
88
+ - lib/qismo/objects/broadcast_log.rb
89
+ - lib/qismo/objects/custom_channel.rb
90
+ - lib/qismo/objects/custom_channel_message_response.rb
91
+ - lib/qismo/objects/customer_room.rb
92
+ - lib/qismo/objects/fb_channel.rb
93
+ - lib/qismo/objects/hsm_template.rb
94
+ - lib/qismo/objects/ig_channel.rb
95
+ - lib/qismo/objects/line_channel.rb
96
+ - lib/qismo/objects/list_channels_response.rb
97
+ - lib/qismo/objects/office_hour.rb
98
+ - lib/qismo/objects/qiscus_channel.rb
99
+ - lib/qismo/objects/room_additional_info.rb
100
+ - lib/qismo/objects/tag.rb
101
+ - lib/qismo/objects/telegram_channel.rb
102
+ - lib/qismo/objects/user.rb
103
+ - lib/qismo/objects/wa_channel.rb
104
+ - lib/qismo/objects/wa_credit_info.rb
105
+ - lib/qismo/objects/waca_channel.rb
106
+ - lib/qismo/objects/webhook.rb
72
107
  - lib/qismo/types.rb
73
- - lib/qismo/util.rb
74
108
  - lib/qismo/version.rb
75
109
  - lib/qismo/webhook_requests/on_agent_allocation_needed.rb
76
110
  - lib/qismo/webhook_requests/on_custom_button_clicked.rb