zavudev 0.12.0 → 0.14.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/CHANGELOG.md +22 -0
- data/README.md +1 -1
- data/lib/zavudev/internal/transport/base_client.rb +4 -1
- data/lib/zavudev/models/broadcast_channel.rb +1 -0
- data/lib/zavudev/models/channel.rb +1 -0
- data/lib/zavudev/models/contact.rb +1 -0
- data/lib/zavudev/models/contact_channel.rb +1 -0
- data/lib/zavudev/models/contact_create_params.rb +1 -0
- data/lib/zavudev/models/contact_update_params.rb +1 -0
- data/lib/zavudev/models/contacts/channel_add_params.rb +1 -0
- data/lib/zavudev/models/message_content.rb +46 -1
- data/lib/zavudev/models/message_send_params.rb +1 -1
- data/lib/zavudev/models/webhook_event.rb +9 -1
- data/lib/zavudev/version.rb +1 -1
- data/rbi/zavudev/models/broadcast_channel.rbi +1 -0
- data/rbi/zavudev/models/channel.rbi +1 -0
- data/rbi/zavudev/models/contact.rbi +2 -0
- data/rbi/zavudev/models/contact_channel.rbi +2 -0
- data/rbi/zavudev/models/contact_create_params.rbi +5 -0
- data/rbi/zavudev/models/contact_update_params.rbi +5 -0
- data/rbi/zavudev/models/contacts/channel_add_params.rbi +5 -0
- data/rbi/zavudev/models/message_content.rbi +65 -0
- data/rbi/zavudev/models/message_send_params.rbi +2 -2
- data/rbi/zavudev/models/webhook_event.rbi +9 -1
- data/rbi/zavudev/resources/messages.rbi +1 -1
- data/sig/zavudev/models/broadcast_channel.rbs +2 -0
- data/sig/zavudev/models/channel.rbs +2 -0
- data/sig/zavudev/models/contact.rbs +2 -1
- data/sig/zavudev/models/contact_channel.rbs +2 -1
- data/sig/zavudev/models/contact_create_params.rbs +3 -1
- data/sig/zavudev/models/contact_update_params.rbs +2 -1
- data/sig/zavudev/models/contacts/channel_add_params.rbs +3 -1
- data/sig/zavudev/models/message_content.rbs +35 -0
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 63ea4333bf7d9cacb1962cce25ca702e648e38d19a6fb59374748677cf06afc9
|
|
4
|
+
data.tar.gz: 52f27580e65daf098c06f8fa38aa923b5c5b7345eea19c083737f5732e346c11
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 4dd0ec176a9dbedc41566fe2cdfd5525019579c545e8f89e4d4b57b9d47f75c09d0adcd61446f1f8eb55cc94f4f423386f3687adf7ee6235e041682380d78a77
|
|
7
|
+
data.tar.gz: d6c282c7e7c92577e8a5738666e263ea567622602a3eba177219129b1dbec1540431b7fb69419971a6727d7409be17a8221871179dbd86fb2f439b5ff9814541
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.14.0 (2026-06-24)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.13.0...v0.14.0](https://github.com/zavudev/sdk-ruby/compare/v0.13.0...v0.14.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **api:** api update ([6a691cd](https://github.com/zavudev/sdk-ruby/commit/6a691cd596deb8fa5cb32118684e8f811798cc50))
|
|
10
|
+
* **api:** api update ([91a78af](https://github.com/zavudev/sdk-ruby/commit/91a78af6beed7c6a17abb0928965532976d5eac5))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Bug Fixes
|
|
14
|
+
|
|
15
|
+
* **client:** send content-type header for requests with an omitted optional body ([73b6654](https://github.com/zavudev/sdk-ruby/commit/73b66544a2756aaf64f189c9eb47ba66cd09f305))
|
|
16
|
+
|
|
17
|
+
## 0.13.0 (2026-06-07)
|
|
18
|
+
|
|
19
|
+
Full Changelog: [v0.12.0...v0.13.0](https://github.com/zavudev/sdk-ruby/compare/v0.12.0...v0.13.0)
|
|
20
|
+
|
|
21
|
+
### Features
|
|
22
|
+
|
|
23
|
+
* **api:** api update ([b59db6f](https://github.com/zavudev/sdk-ruby/commit/b59db6f514301863861cc3e0e782ef39e476dbd6))
|
|
24
|
+
|
|
3
25
|
## 0.12.0 (2026-05-28)
|
|
4
26
|
|
|
5
27
|
Full Changelog: [v0.11.0...v0.12.0](https://github.com/zavudev/sdk-ruby/compare/v0.11.0...v0.12.0)
|
data/README.md
CHANGED
|
@@ -306,7 +306,10 @@ module Zavudev
|
|
|
306
306
|
Zavudev::Internal::Util.deep_merge(*[req[:body], opts[:extra_body]].compact)
|
|
307
307
|
end
|
|
308
308
|
|
|
309
|
-
|
|
309
|
+
# Generated methods always pass `req[:body]` for operations that define a
|
|
310
|
+
# request body, so only elide the content-type header when the operation
|
|
311
|
+
# has no body at all, not when an optional body param was omitted.
|
|
312
|
+
headers.delete("content-type") if body.nil? && !req.key?(:body)
|
|
310
313
|
|
|
311
314
|
url = Zavudev::Internal::Util.join_parsed_uri(
|
|
312
315
|
@base_url_components,
|
|
@@ -120,6 +120,41 @@ module Zavudev
|
|
|
120
120
|
# @return [String, nil]
|
|
121
121
|
optional :react_to_message_id, String, api_name: :reactToMessageId
|
|
122
122
|
|
|
123
|
+
# @!attribute reply_to_from
|
|
124
|
+
# Sender of the quoted message (phone number in E.164 format).
|
|
125
|
+
#
|
|
126
|
+
# @return [String, nil]
|
|
127
|
+
optional :reply_to_from, String, api_name: :replyToFrom
|
|
128
|
+
|
|
129
|
+
# @!attribute reply_to_message_id
|
|
130
|
+
# Zavu message ID of the quoted message this message replies to. Present on
|
|
131
|
+
# inbound messages that quote an earlier message. Omitted when the quoted message
|
|
132
|
+
# is not found in Zavu (e.g. an old or unknown message) — use
|
|
133
|
+
# replyToProviderMessageId in that case.
|
|
134
|
+
#
|
|
135
|
+
# @return [String, nil]
|
|
136
|
+
optional :reply_to_message_id, String, api_name: :replyToMessageId
|
|
137
|
+
|
|
138
|
+
# @!attribute reply_to_message_type
|
|
139
|
+
# Type of the quoted message (text, image, video, etc.).
|
|
140
|
+
#
|
|
141
|
+
# @return [String, nil]
|
|
142
|
+
optional :reply_to_message_type, String, api_name: :replyToMessageType
|
|
143
|
+
|
|
144
|
+
# @!attribute reply_to_provider_message_id
|
|
145
|
+
# Provider message ID (WhatsApp WAMID) of the quoted message. Present whenever an
|
|
146
|
+
# inbound message is a reply, even if the quoted message is not stored in Zavu.
|
|
147
|
+
#
|
|
148
|
+
# @return [String, nil]
|
|
149
|
+
optional :reply_to_provider_message_id, String, api_name: :replyToProviderMessageId
|
|
150
|
+
|
|
151
|
+
# @!attribute reply_to_text
|
|
152
|
+
# Truncated snippet of the quoted message's text, for display. Empty when the
|
|
153
|
+
# quoted message has no text (e.g. media).
|
|
154
|
+
#
|
|
155
|
+
# @return [String, nil]
|
|
156
|
+
optional :reply_to_text, String, api_name: :replyToText
|
|
157
|
+
|
|
123
158
|
# @!attribute sections
|
|
124
159
|
# Sections for list messages.
|
|
125
160
|
#
|
|
@@ -174,7 +209,7 @@ module Zavudev
|
|
|
174
209
|
# @return [Hash{Symbol=>String}, nil]
|
|
175
210
|
optional :template_variables, Zavudev::Internal::Type::HashOf[String], api_name: :templateVariables
|
|
176
211
|
|
|
177
|
-
# @!method initialize(buttons: nil, contacts: nil, cta_display_text: nil, cta_header_media_url: nil, cta_header_text: nil, cta_header_type: nil, cta_url: nil, emoji: nil, filename: nil, footer_text: nil, latitude: nil, list_button: nil, location_address: nil, location_name: nil, longitude: nil, media_id: nil, media_url: nil, mime_type: nil, react_to_message_id: nil, sections: nil, template_button_variables: nil, template_header_variables: nil, template_id: nil, template_variables: nil)
|
|
212
|
+
# @!method initialize(buttons: nil, contacts: nil, cta_display_text: nil, cta_header_media_url: nil, cta_header_text: nil, cta_header_type: nil, cta_url: nil, emoji: nil, filename: nil, footer_text: nil, latitude: nil, list_button: nil, location_address: nil, location_name: nil, longitude: nil, media_id: nil, media_url: nil, mime_type: nil, react_to_message_id: nil, reply_to_from: nil, reply_to_message_id: nil, reply_to_message_type: nil, reply_to_provider_message_id: nil, reply_to_text: nil, sections: nil, template_button_variables: nil, template_header_variables: nil, template_id: nil, template_variables: nil)
|
|
178
213
|
# Some parameter documentations has been truncated, see
|
|
179
214
|
# {Zavudev::Models::MessageContent} for more details.
|
|
180
215
|
#
|
|
@@ -218,6 +253,16 @@ module Zavudev
|
|
|
218
253
|
#
|
|
219
254
|
# @param react_to_message_id [String] Message ID to react to.
|
|
220
255
|
#
|
|
256
|
+
# @param reply_to_from [String] Sender of the quoted message (phone number in E.164 format).
|
|
257
|
+
#
|
|
258
|
+
# @param reply_to_message_id [String] Zavu message ID of the quoted message this message replies to. Present on inboun
|
|
259
|
+
#
|
|
260
|
+
# @param reply_to_message_type [String] Type of the quoted message (text, image, video, etc.).
|
|
261
|
+
#
|
|
262
|
+
# @param reply_to_provider_message_id [String] Provider message ID (WhatsApp WAMID) of the quoted message. Present whenever an
|
|
263
|
+
#
|
|
264
|
+
# @param reply_to_text [String] Truncated snippet of the quoted message's text, for display. Empty when the quot
|
|
265
|
+
#
|
|
221
266
|
# @param sections [Array<Zavudev::Models::MessageContent::Section>] Sections for list messages.
|
|
222
267
|
#
|
|
223
268
|
# @param template_button_variables [Hash{Symbol=>String}] Variables for dynamic button placeholders (URL buttons and OTP buttons). Keys ar
|
|
@@ -18,7 +18,15 @@ module Zavudev
|
|
|
18
18
|
# **Inbound events:**
|
|
19
19
|
#
|
|
20
20
|
# - `message.inbound`: New message received from a contact. Reactions are
|
|
21
|
-
# delivered as `message.inbound` with `messageType='reaction'
|
|
21
|
+
# delivered as `message.inbound` with `messageType='reaction'`. When the contact
|
|
22
|
+
# replied to (quoted) an earlier message, `data.content` carries the reply
|
|
23
|
+
# context: `replyToMessageId`, `replyToProviderMessageId`, `replyToFrom`,
|
|
24
|
+
# `replyToText`, and `replyToMessageType`. `data.providerTimestamp` is the
|
|
25
|
+
# provider's original receive time in Unix milliseconds (the moment the channel
|
|
26
|
+
# received the message from the contact — WhatsApp, Telegram, Instagram,
|
|
27
|
+
# Messenger; `null` for SMS and email). Compare it against the top-level
|
|
28
|
+
# `timestamp` (when Zavu dispatched the webhook) to detect and ignore delayed
|
|
29
|
+
# deliveries.
|
|
22
30
|
# - `message.unsupported`: Received a message type that is not supported
|
|
23
31
|
#
|
|
24
32
|
# **Broadcast events:**
|
data/lib/zavudev/version.rb
CHANGED
|
@@ -16,6 +16,7 @@ module Zavudev
|
|
|
16
16
|
TELEGRAM = T.let(:telegram, Zavudev::BroadcastChannel::TaggedSymbol)
|
|
17
17
|
EMAIL = T.let(:email, Zavudev::BroadcastChannel::TaggedSymbol)
|
|
18
18
|
INSTAGRAM = T.let(:instagram, Zavudev::BroadcastChannel::TaggedSymbol)
|
|
19
|
+
MESSENGER = T.let(:messenger, Zavudev::BroadcastChannel::TaggedSymbol)
|
|
19
20
|
VOICE = T.let(:voice, Zavudev::BroadcastChannel::TaggedSymbol)
|
|
20
21
|
|
|
21
22
|
sig do
|
|
@@ -16,6 +16,7 @@ module Zavudev
|
|
|
16
16
|
TELEGRAM = T.let(:telegram, Zavudev::Channel::TaggedSymbol)
|
|
17
17
|
EMAIL = T.let(:email, Zavudev::Channel::TaggedSymbol)
|
|
18
18
|
INSTAGRAM = T.let(:instagram, Zavudev::Channel::TaggedSymbol)
|
|
19
|
+
MESSENGER = T.let(:messenger, Zavudev::Channel::TaggedSymbol)
|
|
19
20
|
VOICE = T.let(:voice, Zavudev::Channel::TaggedSymbol)
|
|
20
21
|
|
|
21
22
|
sig { override.returns(T::Array[Zavudev::Channel::TaggedSymbol]) }
|
|
@@ -178,6 +178,8 @@ module Zavudev
|
|
|
178
178
|
EMAIL = T.let(:email, Zavudev::Contact::DefaultChannel::TaggedSymbol)
|
|
179
179
|
INSTAGRAM =
|
|
180
180
|
T.let(:instagram, Zavudev::Contact::DefaultChannel::TaggedSymbol)
|
|
181
|
+
MESSENGER =
|
|
182
|
+
T.let(:messenger, Zavudev::Contact::DefaultChannel::TaggedSymbol)
|
|
181
183
|
VOICE = T.let(:voice, Zavudev::Contact::DefaultChannel::TaggedSymbol)
|
|
182
184
|
|
|
183
185
|
sig do
|
|
@@ -146,6 +146,8 @@ module Zavudev
|
|
|
146
146
|
EMAIL = T.let(:email, Zavudev::ContactChannel::Channel::TaggedSymbol)
|
|
147
147
|
TELEGRAM =
|
|
148
148
|
T.let(:telegram, Zavudev::ContactChannel::Channel::TaggedSymbol)
|
|
149
|
+
MESSENGER =
|
|
150
|
+
T.let(:messenger, Zavudev::ContactChannel::Channel::TaggedSymbol)
|
|
149
151
|
VOICE = T.let(:voice, Zavudev::ContactChannel::Channel::TaggedSymbol)
|
|
150
152
|
|
|
151
153
|
sig do
|
|
@@ -169,6 +169,11 @@ module Zavudev
|
|
|
169
169
|
:telegram,
|
|
170
170
|
Zavudev::ContactCreateParams::Channel::Channel::TaggedSymbol
|
|
171
171
|
)
|
|
172
|
+
MESSENGER =
|
|
173
|
+
T.let(
|
|
174
|
+
:messenger,
|
|
175
|
+
Zavudev::ContactCreateParams::Channel::Channel::TaggedSymbol
|
|
176
|
+
)
|
|
172
177
|
VOICE =
|
|
173
178
|
T.let(
|
|
174
179
|
:voice,
|
|
@@ -120,6 +120,11 @@ module Zavudev
|
|
|
120
120
|
:telegram,
|
|
121
121
|
Zavudev::Contacts::ChannelAddParams::Channel::TaggedSymbol
|
|
122
122
|
)
|
|
123
|
+
MESSENGER =
|
|
124
|
+
T.let(
|
|
125
|
+
:messenger,
|
|
126
|
+
Zavudev::Contacts::ChannelAddParams::Channel::TaggedSymbol
|
|
127
|
+
)
|
|
123
128
|
VOICE =
|
|
124
129
|
T.let(
|
|
125
130
|
:voice,
|
|
@@ -156,6 +156,46 @@ module Zavudev
|
|
|
156
156
|
sig { params(react_to_message_id: String).void }
|
|
157
157
|
attr_writer :react_to_message_id
|
|
158
158
|
|
|
159
|
+
# Sender of the quoted message (phone number in E.164 format).
|
|
160
|
+
sig { returns(T.nilable(String)) }
|
|
161
|
+
attr_reader :reply_to_from
|
|
162
|
+
|
|
163
|
+
sig { params(reply_to_from: String).void }
|
|
164
|
+
attr_writer :reply_to_from
|
|
165
|
+
|
|
166
|
+
# Zavu message ID of the quoted message this message replies to. Present on
|
|
167
|
+
# inbound messages that quote an earlier message. Omitted when the quoted message
|
|
168
|
+
# is not found in Zavu (e.g. an old or unknown message) — use
|
|
169
|
+
# replyToProviderMessageId in that case.
|
|
170
|
+
sig { returns(T.nilable(String)) }
|
|
171
|
+
attr_reader :reply_to_message_id
|
|
172
|
+
|
|
173
|
+
sig { params(reply_to_message_id: String).void }
|
|
174
|
+
attr_writer :reply_to_message_id
|
|
175
|
+
|
|
176
|
+
# Type of the quoted message (text, image, video, etc.).
|
|
177
|
+
sig { returns(T.nilable(String)) }
|
|
178
|
+
attr_reader :reply_to_message_type
|
|
179
|
+
|
|
180
|
+
sig { params(reply_to_message_type: String).void }
|
|
181
|
+
attr_writer :reply_to_message_type
|
|
182
|
+
|
|
183
|
+
# Provider message ID (WhatsApp WAMID) of the quoted message. Present whenever an
|
|
184
|
+
# inbound message is a reply, even if the quoted message is not stored in Zavu.
|
|
185
|
+
sig { returns(T.nilable(String)) }
|
|
186
|
+
attr_reader :reply_to_provider_message_id
|
|
187
|
+
|
|
188
|
+
sig { params(reply_to_provider_message_id: String).void }
|
|
189
|
+
attr_writer :reply_to_provider_message_id
|
|
190
|
+
|
|
191
|
+
# Truncated snippet of the quoted message's text, for display. Empty when the
|
|
192
|
+
# quoted message has no text (e.g. media).
|
|
193
|
+
sig { returns(T.nilable(String)) }
|
|
194
|
+
attr_reader :reply_to_text
|
|
195
|
+
|
|
196
|
+
sig { params(reply_to_text: String).void }
|
|
197
|
+
attr_writer :reply_to_text
|
|
198
|
+
|
|
159
199
|
# Sections for list messages.
|
|
160
200
|
sig { returns(T.nilable(T::Array[Zavudev::MessageContent::Section])) }
|
|
161
201
|
attr_reader :sections
|
|
@@ -237,6 +277,11 @@ module Zavudev
|
|
|
237
277
|
media_url: String,
|
|
238
278
|
mime_type: String,
|
|
239
279
|
react_to_message_id: String,
|
|
280
|
+
reply_to_from: String,
|
|
281
|
+
reply_to_message_id: String,
|
|
282
|
+
reply_to_message_type: String,
|
|
283
|
+
reply_to_provider_message_id: String,
|
|
284
|
+
reply_to_text: String,
|
|
240
285
|
sections: T::Array[Zavudev::MessageContent::Section::OrHash],
|
|
241
286
|
template_button_variables: T::Hash[Symbol, String],
|
|
242
287
|
template_header_variables: T::Hash[Symbol, String],
|
|
@@ -286,6 +331,21 @@ module Zavudev
|
|
|
286
331
|
mime_type: nil,
|
|
287
332
|
# Message ID to react to.
|
|
288
333
|
react_to_message_id: nil,
|
|
334
|
+
# Sender of the quoted message (phone number in E.164 format).
|
|
335
|
+
reply_to_from: nil,
|
|
336
|
+
# Zavu message ID of the quoted message this message replies to. Present on
|
|
337
|
+
# inbound messages that quote an earlier message. Omitted when the quoted message
|
|
338
|
+
# is not found in Zavu (e.g. an old or unknown message) — use
|
|
339
|
+
# replyToProviderMessageId in that case.
|
|
340
|
+
reply_to_message_id: nil,
|
|
341
|
+
# Type of the quoted message (text, image, video, etc.).
|
|
342
|
+
reply_to_message_type: nil,
|
|
343
|
+
# Provider message ID (WhatsApp WAMID) of the quoted message. Present whenever an
|
|
344
|
+
# inbound message is a reply, even if the quoted message is not stored in Zavu.
|
|
345
|
+
reply_to_provider_message_id: nil,
|
|
346
|
+
# Truncated snippet of the quoted message's text, for display. Empty when the
|
|
347
|
+
# quoted message has no text (e.g. media).
|
|
348
|
+
reply_to_text: nil,
|
|
289
349
|
# Sections for list messages.
|
|
290
350
|
sections: nil,
|
|
291
351
|
# Variables for dynamic button placeholders (URL buttons and OTP buttons). Keys
|
|
@@ -341,6 +401,11 @@ module Zavudev
|
|
|
341
401
|
media_url: String,
|
|
342
402
|
mime_type: String,
|
|
343
403
|
react_to_message_id: String,
|
|
404
|
+
reply_to_from: String,
|
|
405
|
+
reply_to_message_id: String,
|
|
406
|
+
reply_to_message_type: String,
|
|
407
|
+
reply_to_provider_message_id: String,
|
|
408
|
+
reply_to_text: String,
|
|
344
409
|
sections: T::Array[Zavudev::MessageContent::Section],
|
|
345
410
|
template_button_variables: T::Hash[Symbol, String],
|
|
346
411
|
template_header_variables: T::Hash[Symbol, String],
|
|
@@ -12,7 +12,7 @@ module Zavudev
|
|
|
12
12
|
end
|
|
13
13
|
|
|
14
14
|
# Recipient phone number in E.164 format, email address, or numeric chat ID (for
|
|
15
|
-
# Telegram/Instagram).
|
|
15
|
+
# Telegram/Instagram/Messenger).
|
|
16
16
|
sig { returns(String) }
|
|
17
17
|
attr_accessor :to
|
|
18
18
|
|
|
@@ -139,7 +139,7 @@ module Zavudev
|
|
|
139
139
|
end
|
|
140
140
|
def self.new(
|
|
141
141
|
# Recipient phone number in E.164 format, email address, or numeric chat ID (for
|
|
142
|
-
# Telegram/Instagram).
|
|
142
|
+
# Telegram/Instagram/Messenger).
|
|
143
143
|
to:,
|
|
144
144
|
# Email attachments. Only supported when channel is 'email'. Maximum 40MB total
|
|
145
145
|
# size.
|
|
@@ -18,7 +18,15 @@ module Zavudev
|
|
|
18
18
|
# **Inbound events:**
|
|
19
19
|
#
|
|
20
20
|
# - `message.inbound`: New message received from a contact. Reactions are
|
|
21
|
-
# delivered as `message.inbound` with `messageType='reaction'
|
|
21
|
+
# delivered as `message.inbound` with `messageType='reaction'`. When the contact
|
|
22
|
+
# replied to (quoted) an earlier message, `data.content` carries the reply
|
|
23
|
+
# context: `replyToMessageId`, `replyToProviderMessageId`, `replyToFrom`,
|
|
24
|
+
# `replyToText`, and `replyToMessageType`. `data.providerTimestamp` is the
|
|
25
|
+
# provider's original receive time in Unix milliseconds (the moment the channel
|
|
26
|
+
# received the message from the contact — WhatsApp, Telegram, Instagram,
|
|
27
|
+
# Messenger; `null` for SMS and email). Compare it against the top-level
|
|
28
|
+
# `timestamp` (when Zavu dispatched the webhook) to detect and ignore delayed
|
|
29
|
+
# deliveries.
|
|
22
30
|
# - `message.unsupported`: Received a message type that is not supported
|
|
23
31
|
#
|
|
24
32
|
# **Broadcast events:**
|
|
@@ -95,7 +95,7 @@ module Zavudev
|
|
|
95
95
|
end
|
|
96
96
|
def send_(
|
|
97
97
|
# Body param: Recipient phone number in E.164 format, email address, or numeric
|
|
98
|
-
# chat ID (for Telegram/Instagram).
|
|
98
|
+
# chat ID (for Telegram/Instagram/Messenger).
|
|
99
99
|
to:,
|
|
100
100
|
# Body param: Email attachments. Only supported when channel is 'email'. Maximum
|
|
101
101
|
# 40MB total size.
|
|
@@ -8,6 +8,7 @@ module Zavudev
|
|
|
8
8
|
| :telegram
|
|
9
9
|
| :email
|
|
10
10
|
| :instagram
|
|
11
|
+
| :messenger
|
|
11
12
|
| :voice
|
|
12
13
|
|
|
13
14
|
module BroadcastChannel
|
|
@@ -20,6 +21,7 @@ module Zavudev
|
|
|
20
21
|
TELEGRAM: :telegram
|
|
21
22
|
EMAIL: :email
|
|
22
23
|
INSTAGRAM: :instagram
|
|
24
|
+
MESSENGER: :messenger
|
|
23
25
|
VOICE: :voice
|
|
24
26
|
|
|
25
27
|
def self?.values: -> ::Array[Zavudev::Models::broadcast_channel]
|
|
@@ -8,6 +8,7 @@ module Zavudev
|
|
|
8
8
|
| :telegram
|
|
9
9
|
| :email
|
|
10
10
|
| :instagram
|
|
11
|
+
| :messenger
|
|
11
12
|
| :voice
|
|
12
13
|
|
|
13
14
|
module Channel
|
|
@@ -20,6 +21,7 @@ module Zavudev
|
|
|
20
21
|
TELEGRAM: :telegram
|
|
21
22
|
EMAIL: :email
|
|
22
23
|
INSTAGRAM: :instagram
|
|
24
|
+
MESSENGER: :messenger
|
|
23
25
|
VOICE: :voice
|
|
24
26
|
|
|
25
27
|
def self?.values: -> ::Array[Zavudev::Models::channel]
|
|
@@ -109,7 +109,7 @@ module Zavudev
|
|
|
109
109
|
}
|
|
110
110
|
|
|
111
111
|
type default_channel =
|
|
112
|
-
:sms | :whatsapp | :telegram | :email | :instagram | :voice
|
|
112
|
+
:sms | :whatsapp | :telegram | :email | :instagram | :messenger | :voice
|
|
113
113
|
|
|
114
114
|
module DefaultChannel
|
|
115
115
|
extend Zavudev::Internal::Type::Enum
|
|
@@ -119,6 +119,7 @@ module Zavudev
|
|
|
119
119
|
TELEGRAM: :telegram
|
|
120
120
|
EMAIL: :email
|
|
121
121
|
INSTAGRAM: :instagram
|
|
122
|
+
MESSENGER: :messenger
|
|
122
123
|
VOICE: :voice
|
|
123
124
|
|
|
124
125
|
def self?.values: -> ::Array[Zavudev::Models::Contact::default_channel]
|
|
@@ -85,7 +85,7 @@ module Zavudev
|
|
|
85
85
|
updated_at: Time
|
|
86
86
|
}
|
|
87
87
|
|
|
88
|
-
type channel = :sms | :whatsapp | :email | :telegram | :voice
|
|
88
|
+
type channel = :sms | :whatsapp | :email | :telegram | :messenger | :voice
|
|
89
89
|
|
|
90
90
|
module Channel
|
|
91
91
|
extend Zavudev::Internal::Type::Enum
|
|
@@ -94,6 +94,7 @@ module Zavudev
|
|
|
94
94
|
WHATSAPP: :whatsapp
|
|
95
95
|
EMAIL: :email
|
|
96
96
|
TELEGRAM: :telegram
|
|
97
|
+
MESSENGER: :messenger
|
|
97
98
|
VOICE: :voice
|
|
98
99
|
|
|
99
100
|
def self?.values: -> ::Array[Zavudev::Models::ContactChannel::channel]
|
|
@@ -78,7 +78,8 @@ module Zavudev
|
|
|
78
78
|
label: String
|
|
79
79
|
}
|
|
80
80
|
|
|
81
|
-
type channel =
|
|
81
|
+
type channel =
|
|
82
|
+
:sms | :whatsapp | :email | :telegram | :messenger | :voice
|
|
82
83
|
|
|
83
84
|
module Channel
|
|
84
85
|
extend Zavudev::Internal::Type::Enum
|
|
@@ -87,6 +88,7 @@ module Zavudev
|
|
|
87
88
|
WHATSAPP: :whatsapp
|
|
88
89
|
EMAIL: :email
|
|
89
90
|
TELEGRAM: :telegram
|
|
91
|
+
MESSENGER: :messenger
|
|
90
92
|
VOICE: :voice
|
|
91
93
|
|
|
92
94
|
def self?.values: -> ::Array[Zavudev::Models::ContactCreateParams::Channel::channel]
|
|
@@ -35,7 +35,7 @@ module Zavudev
|
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
type default_channel =
|
|
38
|
-
:sms | :whatsapp | :telegram | :email | :instagram | :voice
|
|
38
|
+
:sms | :whatsapp | :telegram | :email | :instagram | :messenger | :voice
|
|
39
39
|
|
|
40
40
|
module DefaultChannel
|
|
41
41
|
extend Zavudev::Internal::Type::Enum
|
|
@@ -45,6 +45,7 @@ module Zavudev
|
|
|
45
45
|
TELEGRAM: :telegram
|
|
46
46
|
EMAIL: :email
|
|
47
47
|
INSTAGRAM: :instagram
|
|
48
|
+
MESSENGER: :messenger
|
|
48
49
|
VOICE: :voice
|
|
49
50
|
|
|
50
51
|
def self?.values: -> ::Array[Zavudev::Models::ContactUpdateParams::default_channel]
|
|
@@ -54,7 +54,8 @@ module Zavudev
|
|
|
54
54
|
request_options: Zavudev::RequestOptions
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
type channel =
|
|
57
|
+
type channel =
|
|
58
|
+
:sms | :whatsapp | :email | :telegram | :messenger | :voice
|
|
58
59
|
|
|
59
60
|
module Channel
|
|
60
61
|
extend Zavudev::Internal::Type::Enum
|
|
@@ -63,6 +64,7 @@ module Zavudev
|
|
|
63
64
|
WHATSAPP: :whatsapp
|
|
64
65
|
EMAIL: :email
|
|
65
66
|
TELEGRAM: :telegram
|
|
67
|
+
MESSENGER: :messenger
|
|
66
68
|
VOICE: :voice
|
|
67
69
|
|
|
68
70
|
def self?.values: -> ::Array[Zavudev::Models::Contacts::ChannelAddParams::channel]
|
|
@@ -21,6 +21,11 @@ module Zavudev
|
|
|
21
21
|
media_url: String,
|
|
22
22
|
mime_type: String,
|
|
23
23
|
react_to_message_id: String,
|
|
24
|
+
reply_to_from: String,
|
|
25
|
+
reply_to_message_id: String,
|
|
26
|
+
reply_to_message_type: String,
|
|
27
|
+
reply_to_provider_message_id: String,
|
|
28
|
+
reply_to_text: String,
|
|
24
29
|
sections: ::Array[Zavudev::MessageContent::Section],
|
|
25
30
|
template_button_variables: ::Hash[Symbol, String],
|
|
26
31
|
template_header_variables: ::Hash[Symbol, String],
|
|
@@ -111,6 +116,26 @@ module Zavudev
|
|
|
111
116
|
|
|
112
117
|
def react_to_message_id=: (String) -> String
|
|
113
118
|
|
|
119
|
+
attr_reader reply_to_from: String?
|
|
120
|
+
|
|
121
|
+
def reply_to_from=: (String) -> String
|
|
122
|
+
|
|
123
|
+
attr_reader reply_to_message_id: String?
|
|
124
|
+
|
|
125
|
+
def reply_to_message_id=: (String) -> String
|
|
126
|
+
|
|
127
|
+
attr_reader reply_to_message_type: String?
|
|
128
|
+
|
|
129
|
+
def reply_to_message_type=: (String) -> String
|
|
130
|
+
|
|
131
|
+
attr_reader reply_to_provider_message_id: String?
|
|
132
|
+
|
|
133
|
+
def reply_to_provider_message_id=: (String) -> String
|
|
134
|
+
|
|
135
|
+
attr_reader reply_to_text: String?
|
|
136
|
+
|
|
137
|
+
def reply_to_text=: (String) -> String
|
|
138
|
+
|
|
114
139
|
attr_reader sections: ::Array[Zavudev::MessageContent::Section]?
|
|
115
140
|
|
|
116
141
|
def sections=: (
|
|
@@ -159,6 +184,11 @@ module Zavudev
|
|
|
159
184
|
?media_url: String,
|
|
160
185
|
?mime_type: String,
|
|
161
186
|
?react_to_message_id: String,
|
|
187
|
+
?reply_to_from: String,
|
|
188
|
+
?reply_to_message_id: String,
|
|
189
|
+
?reply_to_message_type: String,
|
|
190
|
+
?reply_to_provider_message_id: String,
|
|
191
|
+
?reply_to_text: String,
|
|
162
192
|
?sections: ::Array[Zavudev::MessageContent::Section],
|
|
163
193
|
?template_button_variables: ::Hash[Symbol, String],
|
|
164
194
|
?template_header_variables: ::Hash[Symbol, String],
|
|
@@ -186,6 +216,11 @@ module Zavudev
|
|
|
186
216
|
media_url: String,
|
|
187
217
|
mime_type: String,
|
|
188
218
|
react_to_message_id: String,
|
|
219
|
+
reply_to_from: String,
|
|
220
|
+
reply_to_message_id: String,
|
|
221
|
+
reply_to_message_type: String,
|
|
222
|
+
reply_to_provider_message_id: String,
|
|
223
|
+
reply_to_text: String,
|
|
189
224
|
sections: ::Array[Zavudev::MessageContent::Section],
|
|
190
225
|
template_button_variables: ::Hash[Symbol, String],
|
|
191
226
|
template_header_variables: ::Hash[Symbol, String],
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: zavudev
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.14.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Zavudev
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-06-
|
|
11
|
+
date: 2026-06-24 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: cgi
|