twilio-ruby 7.3.4 → 7.3.6

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c17c4017594906a17467a382870d6f3b4ebc14e5
4
- data.tar.gz: bf14e44d5574b9ea18d6ffaa60aca311bd41699f
3
+ metadata.gz: a1a3f1f4fdfb7df299967f9d9e23239badb1fc25
4
+ data.tar.gz: 47201096d6dab5ec943fe866d7cb23f12e47a7e7
5
5
  SHA512:
6
- metadata.gz: ed0f369c49bf7a0cda210498762bd1e3ec8452064300d1b0a5bc29c3d7973b046969bb0cb6ce119dc7278aede7d6dc7250dad602f2aff96e3406a1a9d81d17ee
7
- data.tar.gz: 1ba9881cce4af6f63fc2fa8721d0e9428fe650824d595e2fa72b33db31c68eb26956951ecf63746c39ae233c590ed5fe8c393fe5dac7aaf58b37c2ef69f499f1
6
+ metadata.gz: 7976e0014b7ca31a1fa613e36e0d9c8f52f1bdaad39e6b1f70d9bdd669ae6569177119b396aea80bf175a13f6eefeec093ad289b7d2d5c2f208be09a8b4da09c
7
+ data.tar.gz: f90432f3b93eaee69f089c565f42285df1c68d0d235159d3aaf46dc1e1b1de2b36c7a8b8b79676d94e171d58683bbbed0907531d5b9371bc15c80c585832ddc8
data/CHANGES.md CHANGED
@@ -1,6 +1,26 @@
1
1
  twilio-ruby changelog
2
2
  =====================
3
3
 
4
+ [2024-11-15] Version 7.3.6
5
+ --------------------------
6
+ **Library - Chore**
7
+ - [PR #732](https://github.com/twilio/twilio-ruby/pull/732): removed preview sync api. Thanks to [@sbansla](https://github.com/sbansla)!
8
+
9
+ **Api**
10
+ - Added `ivr-virtual-agent-custom-voices` and `ivr-virtual-agent-genai` to `usage_record` API.
11
+ - Add open-api file tag to realtime_transcriptions
12
+
13
+ **Taskrouter**
14
+ - Add `api-tag` property to workers reservation
15
+ - Add `api-tag` property to task reservation
16
+
17
+
18
+ [2024-10-24] Version 7.3.5
19
+ --------------------------
20
+ **Conversations**
21
+ - Expose ConversationWithParticipants resource that allows creating a conversation with participants
22
+
23
+
4
24
  [2024-10-17] Version 7.3.4
5
25
  --------------------------
6
26
  **Api**
data/README.md CHANGED
@@ -39,13 +39,13 @@ This library supports the following Ruby implementations:
39
39
  To install using [Bundler][bundler] grab the latest stable version:
40
40
 
41
41
  ```ruby
42
- gem 'twilio-ruby', '~> 7.3.4'
42
+ gem 'twilio-ruby', '~> 7.3.6'
43
43
  ```
44
44
 
45
45
  To manually install `twilio-ruby` via [Rubygems][rubygems] simply gem install:
46
46
 
47
47
  ```bash
48
- gem install twilio-ruby -v 7.3.4
48
+ gem install twilio-ruby -v 7.3.6
49
49
  ```
50
50
 
51
51
  To build and install the development branch yourself from the latest source:
@@ -209,9 +209,9 @@ module Twilio
209
209
  @uri = "/Conversations/#{@solution[:sid]}"
210
210
 
211
211
  # Dependents
212
- @webhooks = nil
213
212
  @messages = nil
214
213
  @participants = nil
214
+ @webhooks = nil
215
215
  end
216
216
  ##
217
217
  # Delete the ConversationInstance
@@ -295,25 +295,6 @@ module Twilio
295
295
  )
296
296
  end
297
297
 
298
- ##
299
- # Access the webhooks
300
- # @return [WebhookList]
301
- # @return [WebhookContext] if sid was passed.
302
- def webhooks(sid=:unset)
303
-
304
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
305
-
306
- if sid != :unset
307
- return WebhookContext.new(@version, @solution[:sid],sid )
308
- end
309
-
310
- unless @webhooks
311
- @webhooks = WebhookList.new(
312
- @version, conversation_sid: @solution[:sid], )
313
- end
314
-
315
- @webhooks
316
- end
317
298
  ##
318
299
  # Access the messages
319
300
  # @return [MessageList]
@@ -352,6 +333,25 @@ module Twilio
352
333
 
353
334
  @participants
354
335
  end
336
+ ##
337
+ # Access the webhooks
338
+ # @return [WebhookList]
339
+ # @return [WebhookContext] if sid was passed.
340
+ def webhooks(sid=:unset)
341
+
342
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
343
+
344
+ if sid != :unset
345
+ return WebhookContext.new(@version, @solution[:sid],sid )
346
+ end
347
+
348
+ unless @webhooks
349
+ @webhooks = WebhookList.new(
350
+ @version, conversation_sid: @solution[:sid], )
351
+ end
352
+
353
+ @webhooks
354
+ end
355
355
 
356
356
  ##
357
357
  # Provide a user friendly representation
@@ -594,13 +594,6 @@ module Twilio
594
594
  )
595
595
  end
596
596
 
597
- ##
598
- # Access the webhooks
599
- # @return [webhooks] webhooks
600
- def webhooks
601
- context.webhooks
602
- end
603
-
604
597
  ##
605
598
  # Access the messages
606
599
  # @return [messages] messages
@@ -615,6 +608,13 @@ module Twilio
615
608
  context.participants
616
609
  end
617
610
 
611
+ ##
612
+ # Access the webhooks
613
+ # @return [webhooks] webhooks
614
+ def webhooks
615
+ context.webhooks
616
+ end
617
+
618
618
  ##
619
619
  # Provide a user friendly representation
620
620
  def to_s
@@ -0,0 +1,259 @@
1
+ ##
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio - Conversations
8
+ # This is the public Twilio REST API.
9
+ #
10
+ # NOTE: This class is auto generated by OpenAPI Generator.
11
+ # https://openapi-generator.tech
12
+ # Do not edit the class manually.
13
+ #
14
+
15
+
16
+ module Twilio
17
+ module REST
18
+ class Conversations < ConversationsBase
19
+ class V1 < Version
20
+ class ConversationWithParticipantsList < ListResource
21
+
22
+ ##
23
+ # Initialize the ConversationWithParticipantsList
24
+ # @param [Version] version Version that contains the resource
25
+ # @return [ConversationWithParticipantsList] ConversationWithParticipantsList
26
+ def initialize(version)
27
+ super(version)
28
+ # Path Solution
29
+ @solution = { }
30
+ @uri = "/ConversationWithParticipants"
31
+
32
+ end
33
+ ##
34
+ # Create the ConversationWithParticipantsInstance
35
+ # @param [String] friendly_name The human-readable name of this conversation, limited to 256 characters. Optional.
36
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL.
37
+ # @param [Time] date_created The date that this resource was created.
38
+ # @param [Time] date_updated The date that this resource was last updated.
39
+ # @param [String] messaging_service_sid The unique ID of the [Messaging Service](https://www.twilio.com/docs/messaging/api/service-resource) this conversation belongs to.
40
+ # @param [String] attributes An optional string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \\\"{}\\\" will be returned.
41
+ # @param [State] state
42
+ # @param [String] timers_inactive ISO8601 duration when conversation will be switched to `inactive` state. Minimum value for this timer is 1 minute.
43
+ # @param [String] timers_closed ISO8601 duration when conversation will be switched to `closed` state. Minimum value for this timer is 10 minutes.
44
+ # @param [String] bindings_email_address The default email address that will be used when sending outbound emails in this conversation.
45
+ # @param [String] bindings_email_name The default name that will be used when sending outbound emails in this conversation.
46
+ # @param [Array[String]] participant The participant to be added to the conversation in JSON format. The JSON object attributes are as parameters in [Participant Resource](https://www.twilio.com/docs/conversations/api/conversation-participant-resource). The maximum number of participants that can be added in a single request is 10.
47
+ # @param [ConversationWithParticipantsEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
48
+ # @return [ConversationWithParticipantsInstance] Created ConversationWithParticipantsInstance
49
+ def create(
50
+ friendly_name: :unset,
51
+ unique_name: :unset,
52
+ date_created: :unset,
53
+ date_updated: :unset,
54
+ messaging_service_sid: :unset,
55
+ attributes: :unset,
56
+ state: :unset,
57
+ timers_inactive: :unset,
58
+ timers_closed: :unset,
59
+ bindings_email_address: :unset,
60
+ bindings_email_name: :unset,
61
+ participant: :unset,
62
+ x_twilio_webhook_enabled: :unset
63
+ )
64
+
65
+ data = Twilio::Values.of({
66
+ 'FriendlyName' => friendly_name,
67
+ 'UniqueName' => unique_name,
68
+ 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
69
+ 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
70
+ 'MessagingServiceSid' => messaging_service_sid,
71
+ 'Attributes' => attributes,
72
+ 'State' => state,
73
+ 'Timers.Inactive' => timers_inactive,
74
+ 'Timers.Closed' => timers_closed,
75
+ 'Bindings.Email.Address' => bindings_email_address,
76
+ 'Bindings.Email.Name' => bindings_email_name,
77
+ 'Participant' => Twilio.serialize_list(participant) { |e| e },
78
+ })
79
+
80
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
81
+
82
+ payload = @version.create('POST', @uri, data: data, headers: headers)
83
+ ConversationWithParticipantsInstance.new(
84
+ @version,
85
+ payload,
86
+ )
87
+ end
88
+
89
+
90
+
91
+
92
+ # Provide a user friendly representation
93
+ def to_s
94
+ '#<Twilio.Conversations.V1.ConversationWithParticipantsList>'
95
+ end
96
+ end
97
+
98
+ class ConversationWithParticipantsPage < Page
99
+ ##
100
+ # Initialize the ConversationWithParticipantsPage
101
+ # @param [Version] version Version that contains the resource
102
+ # @param [Response] response Response from the API
103
+ # @param [Hash] solution Path solution for the resource
104
+ # @return [ConversationWithParticipantsPage] ConversationWithParticipantsPage
105
+ def initialize(version, response, solution)
106
+ super(version, response)
107
+
108
+ # Path Solution
109
+ @solution = solution
110
+ end
111
+
112
+ ##
113
+ # Build an instance of ConversationWithParticipantsInstance
114
+ # @param [Hash] payload Payload response from the API
115
+ # @return [ConversationWithParticipantsInstance] ConversationWithParticipantsInstance
116
+ def get_instance(payload)
117
+ ConversationWithParticipantsInstance.new(@version, payload)
118
+ end
119
+
120
+ ##
121
+ # Provide a user friendly representation
122
+ def to_s
123
+ '<Twilio.Conversations.V1.ConversationWithParticipantsPage>'
124
+ end
125
+ end
126
+ class ConversationWithParticipantsInstance < InstanceResource
127
+ ##
128
+ # Initialize the ConversationWithParticipantsInstance
129
+ # @param [Version] version Version that contains the resource
130
+ # @param [Hash] payload payload that contains response from Twilio
131
+ # @param [String] account_sid The SID of the
132
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this ConversationWithParticipants
133
+ # resource.
134
+ # @param [String] sid The SID of the Call resource to fetch.
135
+ # @return [ConversationWithParticipantsInstance] ConversationWithParticipantsInstance
136
+ def initialize(version, payload )
137
+ super(version)
138
+
139
+ # Marshaled Properties
140
+ @properties = {
141
+ 'account_sid' => payload['account_sid'],
142
+ 'chat_service_sid' => payload['chat_service_sid'],
143
+ 'messaging_service_sid' => payload['messaging_service_sid'],
144
+ 'sid' => payload['sid'],
145
+ 'friendly_name' => payload['friendly_name'],
146
+ 'unique_name' => payload['unique_name'],
147
+ 'attributes' => payload['attributes'],
148
+ 'state' => payload['state'],
149
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
150
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
151
+ 'timers' => payload['timers'],
152
+ 'links' => payload['links'],
153
+ 'bindings' => payload['bindings'],
154
+ 'url' => payload['url'],
155
+ }
156
+ end
157
+
158
+
159
+ ##
160
+ # @return [String] The unique ID of the [Account](https://www.twilio.com/docs/iam/api/account) responsible for this conversation.
161
+ def account_sid
162
+ @properties['account_sid']
163
+ end
164
+
165
+ ##
166
+ # @return [String] The unique ID of the [Conversation Service](https://www.twilio.com/docs/conversations/api/service-resource) this conversation belongs to.
167
+ def chat_service_sid
168
+ @properties['chat_service_sid']
169
+ end
170
+
171
+ ##
172
+ # @return [String] The unique ID of the [Messaging Service](https://www.twilio.com/docs/messaging/api/service-resource) this conversation belongs to.
173
+ def messaging_service_sid
174
+ @properties['messaging_service_sid']
175
+ end
176
+
177
+ ##
178
+ # @return [String] A 34 character string that uniquely identifies this resource.
179
+ def sid
180
+ @properties['sid']
181
+ end
182
+
183
+ ##
184
+ # @return [String] The human-readable name of this conversation, limited to 256 characters. Optional.
185
+ def friendly_name
186
+ @properties['friendly_name']
187
+ end
188
+
189
+ ##
190
+ # @return [String] An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL.
191
+ def unique_name
192
+ @properties['unique_name']
193
+ end
194
+
195
+ ##
196
+ # @return [String] An optional string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \"{}\" will be returned.
197
+ def attributes
198
+ @properties['attributes']
199
+ end
200
+
201
+ ##
202
+ # @return [State]
203
+ def state
204
+ @properties['state']
205
+ end
206
+
207
+ ##
208
+ # @return [Time] The date that this resource was created.
209
+ def date_created
210
+ @properties['date_created']
211
+ end
212
+
213
+ ##
214
+ # @return [Time] The date that this resource was last updated.
215
+ def date_updated
216
+ @properties['date_updated']
217
+ end
218
+
219
+ ##
220
+ # @return [Hash] Timer date values representing state update for this conversation.
221
+ def timers
222
+ @properties['timers']
223
+ end
224
+
225
+ ##
226
+ # @return [Hash] Contains absolute URLs to access the [participants](https://www.twilio.com/docs/conversations/api/conversation-participant-resource), [messages](https://www.twilio.com/docs/conversations/api/conversation-message-resource) and [webhooks](https://www.twilio.com/docs/conversations/api/conversation-scoped-webhook-resource) of this conversation.
227
+ def links
228
+ @properties['links']
229
+ end
230
+
231
+ ##
232
+ # @return [Hash]
233
+ def bindings
234
+ @properties['bindings']
235
+ end
236
+
237
+ ##
238
+ # @return [String] An absolute API resource URL for this conversation.
239
+ def url
240
+ @properties['url']
241
+ end
242
+
243
+ ##
244
+ # Provide a user friendly representation
245
+ def to_s
246
+ "<Twilio.Conversations.V1.ConversationWithParticipantsInstance>"
247
+ end
248
+
249
+ ##
250
+ # Provide a detailed, user friendly representation
251
+ def inspect
252
+ "<Twilio.Conversations.V1.ConversationWithParticipantsInstance>"
253
+ end
254
+ end
255
+
256
+ end
257
+ end
258
+ end
259
+ end
@@ -56,8 +56,8 @@ module Twilio
56
56
  @uri = "/Services/#{@solution[:chat_service_sid]}/Configuration"
57
57
 
58
58
  # Dependents
59
- @notifications = nil
60
59
  @webhooks = nil
60
+ @notifications = nil
61
61
  end
62
62
  ##
63
63
  # Fetch the ConfigurationInstance
@@ -105,16 +105,6 @@ module Twilio
105
105
  )
106
106
  end
107
107
 
108
- ##
109
- # Access the notifications
110
- # @return [NotificationList]
111
- # @return [NotificationContext]
112
- def notifications
113
- NotificationContext.new(
114
- @version,
115
- @solution[:chat_service_sid]
116
- )
117
- end
118
108
  ##
119
109
  # Access the webhooks
120
110
  # @return [WebhookList]
@@ -125,6 +115,16 @@ module Twilio
125
115
  @solution[:chat_service_sid]
126
116
  )
127
117
  end
118
+ ##
119
+ # Access the notifications
120
+ # @return [NotificationList]
121
+ # @return [NotificationContext]
122
+ def notifications
123
+ NotificationContext.new(
124
+ @version,
125
+ @solution[:chat_service_sid]
126
+ )
127
+ end
128
128
 
129
129
  ##
130
130
  # Provide a user friendly representation
@@ -281,13 +281,6 @@ module Twilio
281
281
  )
282
282
  end
283
283
 
284
- ##
285
- # Access the notifications
286
- # @return [notifications] notifications
287
- def notifications
288
- context.notifications
289
- end
290
-
291
284
  ##
292
285
  # Access the webhooks
293
286
  # @return [webhooks] webhooks
@@ -295,6 +288,13 @@ module Twilio
295
288
  context.webhooks
296
289
  end
297
290
 
291
+ ##
292
+ # Access the notifications
293
+ # @return [notifications] notifications
294
+ def notifications
295
+ context.notifications
296
+ end
297
+
298
298
  ##
299
299
  # Provide a user friendly representation
300
300
  def to_s
@@ -214,8 +214,8 @@ module Twilio
214
214
 
215
215
  # Dependents
216
216
  @participants = nil
217
- @messages = nil
218
217
  @webhooks = nil
218
+ @messages = nil
219
219
  end
220
220
  ##
221
221
  # Delete the ConversationInstance
@@ -321,42 +321,42 @@ module Twilio
321
321
  @participants
322
322
  end
323
323
  ##
324
- # Access the messages
325
- # @return [MessageList]
326
- # @return [MessageContext] if sid was passed.
327
- def messages(sid=:unset)
324
+ # Access the webhooks
325
+ # @return [WebhookList]
326
+ # @return [WebhookContext] if sid was passed.
327
+ def webhooks(sid=:unset)
328
328
 
329
329
  raise ArgumentError, 'sid cannot be nil' if sid.nil?
330
330
 
331
331
  if sid != :unset
332
- return MessageContext.new(@version, @solution[:chat_service_sid], @solution[:sid],sid )
332
+ return WebhookContext.new(@version, @solution[:chat_service_sid], @solution[:sid],sid )
333
333
  end
334
334
 
335
- unless @messages
336
- @messages = MessageList.new(
335
+ unless @webhooks
336
+ @webhooks = WebhookList.new(
337
337
  @version, chat_service_sid: @solution[:chat_service_sid], conversation_sid: @solution[:sid], )
338
338
  end
339
339
 
340
- @messages
340
+ @webhooks
341
341
  end
342
342
  ##
343
- # Access the webhooks
344
- # @return [WebhookList]
345
- # @return [WebhookContext] if sid was passed.
346
- def webhooks(sid=:unset)
343
+ # Access the messages
344
+ # @return [MessageList]
345
+ # @return [MessageContext] if sid was passed.
346
+ def messages(sid=:unset)
347
347
 
348
348
  raise ArgumentError, 'sid cannot be nil' if sid.nil?
349
349
 
350
350
  if sid != :unset
351
- return WebhookContext.new(@version, @solution[:chat_service_sid], @solution[:sid],sid )
351
+ return MessageContext.new(@version, @solution[:chat_service_sid], @solution[:sid],sid )
352
352
  end
353
353
 
354
- unless @webhooks
355
- @webhooks = WebhookList.new(
354
+ unless @messages
355
+ @messages = MessageList.new(
356
356
  @version, chat_service_sid: @solution[:chat_service_sid], conversation_sid: @solution[:sid], )
357
357
  end
358
358
 
359
- @webhooks
359
+ @messages
360
360
  end
361
361
 
362
362
  ##
@@ -607,13 +607,6 @@ module Twilio
607
607
  context.participants
608
608
  end
609
609
 
610
- ##
611
- # Access the messages
612
- # @return [messages] messages
613
- def messages
614
- context.messages
615
- end
616
-
617
610
  ##
618
611
  # Access the webhooks
619
612
  # @return [webhooks] webhooks
@@ -621,6 +614,13 @@ module Twilio
621
614
  context.webhooks
622
615
  end
623
616
 
617
+ ##
618
+ # Access the messages
619
+ # @return [messages] messages
620
+ def messages
621
+ context.messages
622
+ end
623
+
624
624
  ##
625
625
  # Provide a user friendly representation
626
626
  def to_s
@@ -0,0 +1,265 @@
1
+ ##
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio - Conversations
8
+ # This is the public Twilio REST API.
9
+ #
10
+ # NOTE: This class is auto generated by OpenAPI Generator.
11
+ # https://openapi-generator.tech
12
+ # Do not edit the class manually.
13
+ #
14
+
15
+
16
+ module Twilio
17
+ module REST
18
+ class Conversations < ConversationsBase
19
+ class V1 < Version
20
+ class ServiceContext < InstanceContext
21
+
22
+ class ConversationWithParticipantsList < ListResource
23
+
24
+ ##
25
+ # Initialize the ConversationWithParticipantsList
26
+ # @param [Version] version Version that contains the resource
27
+ # @return [ConversationWithParticipantsList] ConversationWithParticipantsList
28
+ def initialize(version, chat_service_sid: nil)
29
+ super(version)
30
+ # Path Solution
31
+ @solution = { chat_service_sid: chat_service_sid }
32
+ @uri = "/Services/#{@solution[:chat_service_sid]}/ConversationWithParticipants"
33
+
34
+ end
35
+ ##
36
+ # Create the ConversationWithParticipantsInstance
37
+ # @param [String] friendly_name The human-readable name of this conversation, limited to 256 characters. Optional.
38
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL.
39
+ # @param [Time] date_created The date that this resource was created.
40
+ # @param [Time] date_updated The date that this resource was last updated.
41
+ # @param [String] messaging_service_sid The unique ID of the [Messaging Service](https://www.twilio.com/docs/messaging/api/service-resource) this conversation belongs to.
42
+ # @param [String] attributes An optional string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \\\"{}\\\" will be returned.
43
+ # @param [State] state
44
+ # @param [String] timers_inactive ISO8601 duration when conversation will be switched to `inactive` state. Minimum value for this timer is 1 minute.
45
+ # @param [String] timers_closed ISO8601 duration when conversation will be switched to `closed` state. Minimum value for this timer is 10 minutes.
46
+ # @param [String] bindings_email_address The default email address that will be used when sending outbound emails in this conversation.
47
+ # @param [String] bindings_email_name The default name that will be used when sending outbound emails in this conversation.
48
+ # @param [Array[String]] participant The participant to be added to the conversation in JSON format. The JSON object attributes are as parameters in [Participant Resource](https://www.twilio.com/docs/conversations/api/conversation-participant-resource). The maximum number of participants that can be added in a single request is 10.
49
+ # @param [ServiceConversationWithParticipantsEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
50
+ # @return [ConversationWithParticipantsInstance] Created ConversationWithParticipantsInstance
51
+ def create(
52
+ friendly_name: :unset,
53
+ unique_name: :unset,
54
+ date_created: :unset,
55
+ date_updated: :unset,
56
+ messaging_service_sid: :unset,
57
+ attributes: :unset,
58
+ state: :unset,
59
+ timers_inactive: :unset,
60
+ timers_closed: :unset,
61
+ bindings_email_address: :unset,
62
+ bindings_email_name: :unset,
63
+ participant: :unset,
64
+ x_twilio_webhook_enabled: :unset
65
+ )
66
+
67
+ data = Twilio::Values.of({
68
+ 'FriendlyName' => friendly_name,
69
+ 'UniqueName' => unique_name,
70
+ 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
71
+ 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
72
+ 'MessagingServiceSid' => messaging_service_sid,
73
+ 'Attributes' => attributes,
74
+ 'State' => state,
75
+ 'Timers.Inactive' => timers_inactive,
76
+ 'Timers.Closed' => timers_closed,
77
+ 'Bindings.Email.Address' => bindings_email_address,
78
+ 'Bindings.Email.Name' => bindings_email_name,
79
+ 'Participant' => Twilio.serialize_list(participant) { |e| e },
80
+ })
81
+
82
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
83
+
84
+ payload = @version.create('POST', @uri, data: data, headers: headers)
85
+ ConversationWithParticipantsInstance.new(
86
+ @version,
87
+ payload,
88
+ chat_service_sid: @solution[:chat_service_sid],
89
+ )
90
+ end
91
+
92
+
93
+
94
+
95
+ # Provide a user friendly representation
96
+ def to_s
97
+ '#<Twilio.Conversations.V1.ConversationWithParticipantsList>'
98
+ end
99
+ end
100
+
101
+ class ConversationWithParticipantsPage < Page
102
+ ##
103
+ # Initialize the ConversationWithParticipantsPage
104
+ # @param [Version] version Version that contains the resource
105
+ # @param [Response] response Response from the API
106
+ # @param [Hash] solution Path solution for the resource
107
+ # @return [ConversationWithParticipantsPage] ConversationWithParticipantsPage
108
+ def initialize(version, response, solution)
109
+ super(version, response)
110
+
111
+ # Path Solution
112
+ @solution = solution
113
+ end
114
+
115
+ ##
116
+ # Build an instance of ConversationWithParticipantsInstance
117
+ # @param [Hash] payload Payload response from the API
118
+ # @return [ConversationWithParticipantsInstance] ConversationWithParticipantsInstance
119
+ def get_instance(payload)
120
+ ConversationWithParticipantsInstance.new(@version, payload, chat_service_sid: @solution[:chat_service_sid])
121
+ end
122
+
123
+ ##
124
+ # Provide a user friendly representation
125
+ def to_s
126
+ '<Twilio.Conversations.V1.ConversationWithParticipantsPage>'
127
+ end
128
+ end
129
+ class ConversationWithParticipantsInstance < InstanceResource
130
+ ##
131
+ # Initialize the ConversationWithParticipantsInstance
132
+ # @param [Version] version Version that contains the resource
133
+ # @param [Hash] payload payload that contains response from Twilio
134
+ # @param [String] account_sid The SID of the
135
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this ConversationWithParticipants
136
+ # resource.
137
+ # @param [String] sid The SID of the Call resource to fetch.
138
+ # @return [ConversationWithParticipantsInstance] ConversationWithParticipantsInstance
139
+ def initialize(version, payload , chat_service_sid: nil)
140
+ super(version)
141
+
142
+ # Marshaled Properties
143
+ @properties = {
144
+ 'account_sid' => payload['account_sid'],
145
+ 'chat_service_sid' => payload['chat_service_sid'],
146
+ 'messaging_service_sid' => payload['messaging_service_sid'],
147
+ 'sid' => payload['sid'],
148
+ 'friendly_name' => payload['friendly_name'],
149
+ 'unique_name' => payload['unique_name'],
150
+ 'attributes' => payload['attributes'],
151
+ 'state' => payload['state'],
152
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
153
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
154
+ 'timers' => payload['timers'],
155
+ 'links' => payload['links'],
156
+ 'bindings' => payload['bindings'],
157
+ 'url' => payload['url'],
158
+ }
159
+ end
160
+
161
+
162
+ ##
163
+ # @return [String] The unique ID of the [Account](https://www.twilio.com/docs/iam/api/account) responsible for this conversation.
164
+ def account_sid
165
+ @properties['account_sid']
166
+ end
167
+
168
+ ##
169
+ # @return [String] The unique ID of the [Conversation Service](https://www.twilio.com/docs/conversations/api/service-resource) this conversation belongs to.
170
+ def chat_service_sid
171
+ @properties['chat_service_sid']
172
+ end
173
+
174
+ ##
175
+ # @return [String] The unique ID of the [Messaging Service](https://www.twilio.com/docs/messaging/api/service-resource) this conversation belongs to.
176
+ def messaging_service_sid
177
+ @properties['messaging_service_sid']
178
+ end
179
+
180
+ ##
181
+ # @return [String] A 34 character string that uniquely identifies this resource.
182
+ def sid
183
+ @properties['sid']
184
+ end
185
+
186
+ ##
187
+ # @return [String] The human-readable name of this conversation, limited to 256 characters. Optional.
188
+ def friendly_name
189
+ @properties['friendly_name']
190
+ end
191
+
192
+ ##
193
+ # @return [String] An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL.
194
+ def unique_name
195
+ @properties['unique_name']
196
+ end
197
+
198
+ ##
199
+ # @return [String] An optional string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \"{}\" will be returned.
200
+ def attributes
201
+ @properties['attributes']
202
+ end
203
+
204
+ ##
205
+ # @return [State]
206
+ def state
207
+ @properties['state']
208
+ end
209
+
210
+ ##
211
+ # @return [Time] The date that this resource was created.
212
+ def date_created
213
+ @properties['date_created']
214
+ end
215
+
216
+ ##
217
+ # @return [Time] The date that this resource was last updated.
218
+ def date_updated
219
+ @properties['date_updated']
220
+ end
221
+
222
+ ##
223
+ # @return [Hash] Timer date values representing state update for this conversation.
224
+ def timers
225
+ @properties['timers']
226
+ end
227
+
228
+ ##
229
+ # @return [Hash] Contains absolute URLs to access the [participants](https://www.twilio.com/docs/conversations/api/conversation-participant-resource), [messages](https://www.twilio.com/docs/conversations/api/conversation-message-resource) and [webhooks](https://www.twilio.com/docs/conversations/api/conversation-scoped-webhook-resource) of this conversation.
230
+ def links
231
+ @properties['links']
232
+ end
233
+
234
+ ##
235
+ # @return [Hash]
236
+ def bindings
237
+ @properties['bindings']
238
+ end
239
+
240
+ ##
241
+ # @return [String] An absolute API resource URL for this conversation.
242
+ def url
243
+ @properties['url']
244
+ end
245
+
246
+ ##
247
+ # Provide a user friendly representation
248
+ def to_s
249
+ "<Twilio.Conversations.V1.ConversationWithParticipantsInstance>"
250
+ end
251
+
252
+ ##
253
+ # Provide a detailed, user friendly representation
254
+ def inspect
255
+ "<Twilio.Conversations.V1.ConversationWithParticipantsInstance>"
256
+ end
257
+ end
258
+
259
+ end
260
+ end
261
+ end
262
+ end
263
+ end
264
+
265
+
@@ -160,9 +160,10 @@ module Twilio
160
160
 
161
161
  # Dependents
162
162
  @participant_conversations = nil
163
+ @conversation_with_participants = nil
164
+ @configuration = nil
163
165
  @users = nil
164
166
  @roles = nil
165
- @configuration = nil
166
167
  @bindings = nil
167
168
  @conversations = nil
168
169
  end
@@ -203,6 +204,27 @@ module Twilio
203
204
  @participant_conversations
204
205
  end
205
206
  ##
207
+ # Access the conversation_with_participants
208
+ # @return [ConversationWithParticipantsList]
209
+ # @return [ConversationWithParticipantsContext]
210
+ def conversation_with_participants
211
+ unless @conversation_with_participants
212
+ @conversation_with_participants = ConversationWithParticipantsList.new(
213
+ @version, chat_service_sid: @solution[:sid], )
214
+ end
215
+ @conversation_with_participants
216
+ end
217
+ ##
218
+ # Access the configuration
219
+ # @return [ConfigurationList]
220
+ # @return [ConfigurationContext]
221
+ def configuration
222
+ ConfigurationContext.new(
223
+ @version,
224
+ @solution[:sid]
225
+ )
226
+ end
227
+ ##
206
228
  # Access the users
207
229
  # @return [UserList]
208
230
  # @return [UserContext] if sid was passed.
@@ -241,16 +263,6 @@ module Twilio
241
263
  @roles
242
264
  end
243
265
  ##
244
- # Access the configuration
245
- # @return [ConfigurationList]
246
- # @return [ConfigurationContext]
247
- def configuration
248
- ConfigurationContext.new(
249
- @version,
250
- @solution[:sid]
251
- )
252
- end
253
- ##
254
266
  # Access the bindings
255
267
  # @return [BindingList]
256
268
  # @return [BindingContext] if sid was passed.
@@ -437,6 +449,20 @@ module Twilio
437
449
  context.participant_conversations
438
450
  end
439
451
 
452
+ ##
453
+ # Access the conversation_with_participants
454
+ # @return [conversation_with_participants] conversation_with_participants
455
+ def conversation_with_participants
456
+ context.conversation_with_participants
457
+ end
458
+
459
+ ##
460
+ # Access the configuration
461
+ # @return [configuration] configuration
462
+ def configuration
463
+ context.configuration
464
+ end
465
+
440
466
  ##
441
467
  # Access the users
442
468
  # @return [users] users
@@ -451,13 +477,6 @@ module Twilio
451
477
  context.roles
452
478
  end
453
479
 
454
- ##
455
- # Access the configuration
456
- # @return [configuration] configuration
457
- def configuration
458
- context.configuration
459
- end
460
-
461
480
  ##
462
481
  # Access the bindings
463
482
  # @return [bindings] bindings
@@ -24,6 +24,7 @@ module Twilio
24
24
  @address_configurations = nil
25
25
  @configuration = nil
26
26
  @conversations = nil
27
+ @conversation_with_participants = nil
27
28
  @credentials = nil
28
29
  @participant_conversations = nil
29
30
  @roles = nil
@@ -65,6 +66,11 @@ module Twilio
65
66
  end
66
67
  end
67
68
  ##
69
+ # @return [Twilio::REST::Conversations::V1::ConversationWithParticipantsList]
70
+ def conversation_with_participants
71
+ @conversation_with_participants ||= ConversationWithParticipantsList.new self
72
+ end
73
+ ##
68
74
  # @param [String] sid A 34 character string that uniquely identifies this resource.
69
75
  # @return [Twilio::REST::Conversations::V1::CredentialContext] if sid was passed.
70
76
  # @return [Twilio::REST::Conversations::V1::CredentialList]
@@ -40,31 +40,7 @@ module Twilio
40
40
  super(version)
41
41
  # Path Solution
42
42
  @solution = { }
43
-
44
-
45
- end
46
-
47
-
48
-
49
- # Provide a user friendly representation
50
- def to_s
51
- '#<Twilio.Marketplace.V1.ReferralConversionList>'
52
- end
53
- end
54
-
55
-
56
- class ReferralConversionContext < InstanceContext
57
- ##
58
- # Initialize the ReferralConversionContext
59
- # @param [Version] version Version that contains the resource
60
- # @return [ReferralConversionContext] ReferralConversionContext
61
- def initialize(version)
62
- super(version)
63
-
64
- # Path Solution
65
- @solution = { }
66
43
  @uri = "/ReferralConversion"
67
-
68
44
 
69
45
  end
70
46
  ##
@@ -83,19 +59,12 @@ module Twilio
83
59
  )
84
60
  end
85
61
 
62
+
63
+
86
64
 
87
- ##
88
65
  # Provide a user friendly representation
89
66
  def to_s
90
- context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
91
- "#<Twilio.Marketplace.V1.ReferralConversionContext #{context}>"
92
- end
93
-
94
- ##
95
- # Provide a detailed, user friendly representation
96
- def inspect
97
- context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
98
- "#<Twilio.Marketplace.V1.ReferralConversionContext #{context}>"
67
+ '#<Twilio.Marketplace.V1.ReferralConversionList>'
99
68
  end
100
69
  end
101
70
 
@@ -144,22 +113,8 @@ module Twilio
144
113
  @properties = {
145
114
  'converted_account_sid' => payload['converted_account_sid'],
146
115
  }
147
-
148
- # Context
149
- @instance_context = nil
150
- @params = { }
151
116
  end
152
117
 
153
- ##
154
- # Generate an instance context for the instance, the context is capable of
155
- # performing various actions. All instance actions are proxied to the context
156
- # @return [ReferralConversionContext] CallContext for this CallInstance
157
- def context
158
- unless @instance_context
159
- @instance_context = ReferralConversionContext.new(@version )
160
- end
161
- @instance_context
162
- end
163
118
 
164
119
  ##
165
120
  # @return [String]
@@ -167,29 +122,16 @@ module Twilio
167
122
  @properties['converted_account_sid']
168
123
  end
169
124
 
170
- ##
171
- # Create the ReferralConversionInstance
172
- # @param [CreateReferralConversionRequest] create_referral_conversion_request
173
- # @return [ReferralConversionInstance] Created ReferralConversionInstance
174
- def create(create_referral_conversion_request: nil
175
- )
176
-
177
- context.create(
178
- )
179
- end
180
-
181
125
  ##
182
126
  # Provide a user friendly representation
183
127
  def to_s
184
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
185
- "<Twilio.Marketplace.V1.ReferralConversionInstance #{values}>"
128
+ "<Twilio.Marketplace.V1.ReferralConversionInstance>"
186
129
  end
187
130
 
188
131
  ##
189
132
  # Provide a detailed, user friendly representation
190
133
  def inspect
191
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
192
- "<Twilio.Marketplace.V1.ReferralConversionInstance #{values}>"
134
+ "<Twilio.Marketplace.V1.ReferralConversionInstance>"
193
135
  end
194
136
  end
195
137
 
@@ -70,9 +70,9 @@ module Twilio
70
70
  end
71
71
  end
72
72
  ##
73
- # @return [Twilio::REST::Marketplace::V1::referralConversionContext]
73
+ # @return [Twilio::REST::Marketplace::V1::ReferralConversionList]
74
74
  def referral_conversion
75
- @referral_conversion ||= ReferralConversionContext.new self
75
+ @referral_conversion ||= ReferralConversionList.new self
76
76
  end
77
77
  ##
78
78
  # Provide a user friendly representation
@@ -52,15 +52,6 @@ module Twilio
52
52
  self.marketplace.installed_add_ons(sid)
53
53
  end
54
54
 
55
- ##
56
- # @param [String] sid The sid
57
- # @return [Twilio::REST::Preview::Sync::ServiceInstance] if sid was passed.
58
- # @return [Twilio::REST::Preview::Sync::ServiceList]
59
- def services(sid=:unset)
60
- warn "services is deprecated. Use sync.services instead."
61
- self.sync.services(sid)
62
- end
63
-
64
55
  ##
65
56
  # @param [String] sid The sid
66
57
  # @return [Twilio::REST::Preview::Wireless::CommandInstance] if sid was passed.
@@ -1,3 +1,3 @@
1
1
  module Twilio
2
- VERSION = '7.3.4'
2
+ VERSION = '7.3.6'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twilio-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.3.4
4
+ version: 7.3.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Twilio API Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-10-17 00:00:00.000000000 Z
11
+ date: 2024-11-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jwt
@@ -408,6 +408,7 @@ files:
408
408
  - lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb
409
409
  - lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb
410
410
  - lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb
411
+ - lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb
411
412
  - lib/twilio-ruby/rest/conversations/v1/credential.rb
412
413
  - lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb
413
414
  - lib/twilio-ruby/rest/conversations/v1/role.rb
@@ -421,6 +422,7 @@ files:
421
422
  - lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb
422
423
  - lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb
423
424
  - lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb
425
+ - lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb
424
426
  - lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb
425
427
  - lib/twilio-ruby/rest/conversations/v1/service/role.rb
426
428
  - lib/twilio-ruby/rest/conversations/v1/service/user.rb