qismo 0.13.0 → 0.15.0
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 +4 -4
- data/lib/qismo/api.rb +556 -324
- data/lib/qismo/client.rb +31 -19
- data/lib/qismo/collection.rb +21 -0
- data/lib/qismo/object.rb +21 -0
- data/lib/qismo/objectified_hash.rb +30 -0
- data/lib/qismo/objects/agent_service.rb +53 -0
- data/lib/qismo/objects/broadcast_job.rb +99 -0
- data/lib/qismo/objects/broadcast_log.rb +59 -0
- data/lib/qismo/objects/custom_channel.rb +35 -0
- data/lib/qismo/objects/custom_channel_message_response.rb +19 -0
- data/lib/qismo/objects/customer_room.rb +85 -0
- data/lib/qismo/objects/fb_channel.rb +31 -0
- data/lib/qismo/objects/hsm_template.rb +111 -0
- data/lib/qismo/objects/ig_channel.rb +43 -0
- data/lib/qismo/objects/line_channel.rb +27 -0
- data/lib/qismo/objects/list_channels_response.rb +39 -0
- data/lib/qismo/objects/office_hour.rb +67 -0
- data/lib/qismo/objects/qiscus_channel.rb +27 -0
- data/lib/qismo/objects/room_additional_info.rb +15 -0
- data/lib/qismo/objects/tag.rb +27 -0
- data/lib/qismo/objects/telegram_channel.rb +31 -0
- data/lib/qismo/objects/user.rb +99 -0
- data/lib/qismo/objects/wa_channel.rb +111 -0
- data/lib/qismo/objects/wa_credit_info.rb +71 -0
- data/lib/qismo/objects/waca_channel.rb +55 -0
- data/lib/qismo/objects/webhook.rb +15 -0
- data/lib/qismo/types.rb +10 -1
- data/lib/qismo/version.rb +1 -1
- data/lib/qismo/webhook_requests/on_agent_allocation_needed.rb +8 -2
- data/lib/qismo/webhook_requests/on_custom_button_clicked.rb +15 -7
- data/lib/qismo/webhook_requests/on_custom_channel_message_sent.rb +18 -6
- data/lib/qismo/webhook_requests/on_message_for_bot_sent.rb +18 -6
- data/lib/qismo/webhook_requests/on_new_session_initiated.rb +30 -10
- data/lib/qismo/webhook_requests/on_room_resolved.rb +15 -5
- data/lib/qismo.rb +28 -34
- data/qismo.gemspec +1 -0
- metadata +40 -6
- data/lib/qismo/model.rb +0 -102
- data/lib/qismo/models/base.rb +0 -13
- data/lib/qismo/models/customer_room.rb +0 -6
- 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::
|
22
|
-
#
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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
|
-
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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::
|
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/
|
9
|
+
require "qismo/error"
|
10
10
|
|
11
|
-
require "qismo/
|
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
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.
|
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-
|
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/
|
70
|
-
- lib/qismo/
|
71
|
-
- lib/qismo/
|
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
|