twilio-ruby 5.46.1 → 5.47.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +31 -0
  3. data/README.md +2 -2
  4. data/lib/twilio-ruby/rest/events/v1/sink.rb +2 -1
  5. data/lib/twilio-ruby/rest/events/v1/subscription.rb +1 -0
  6. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +14 -0
  7. data/lib/twilio-ruby/rest/messaging.rb +22 -0
  8. data/lib/twilio-ruby/rest/messaging/v1.rb +37 -0
  9. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +328 -0
  10. data/lib/twilio-ruby/rest/messaging/v1/campaign.rb +387 -0
  11. data/lib/twilio-ruby/rest/messaging/v1/use_case.rb +198 -0
  12. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +4 -8
  13. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +11 -1
  14. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +13 -13
  15. data/lib/twilio-ruby/rest/sync/v1/service.rb +0 -8
  16. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +4 -16
  17. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +0 -8
  18. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +0 -8
  19. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +16 -12
  20. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +0 -8
  21. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +0 -8
  22. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +16 -12
  23. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +0 -8
  24. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +0 -8
  25. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +0 -6
  26. data/lib/twilio-ruby/twiml/voice_response.rb +4 -2
  27. data/lib/twilio-ruby/version.rb +1 -1
  28. data/spec/integration/api/v2010/account/conference_spec.rb +302 -44
  29. data/spec/integration/flex_api/v1/configuration_spec.rb +24 -0
  30. data/spec/integration/messaging/v1/brand_registration_spec.rb +143 -0
  31. data/spec/integration/messaging/v1/campaign_spec.rb +194 -0
  32. data/spec/integration/messaging/v1/use_case_spec.rb +55 -0
  33. data/spec/integration/preview/sync/service/document_spec.rb +1 -3
  34. data/spec/integration/serverless/v1/service/build_spec.rb +12 -2
  35. data/spec/integration/supersim/v1/fleet_spec.rb +8 -0
  36. data/spec/integration/sync/v1/service/document_spec.rb +1 -3
  37. metadata +11 -2
@@ -12,8 +12,6 @@ module Twilio
12
12
  class V1 < Version
13
13
  class ServiceContext < InstanceContext
14
14
  class SyncMapContext < InstanceContext
15
- ##
16
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
17
15
  class SyncMapPermissionList < ListResource
18
16
  ##
19
17
  # Initialize the SyncMapPermissionList
@@ -118,8 +116,6 @@ module Twilio
118
116
  end
119
117
  end
120
118
 
121
- ##
122
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
123
119
  class SyncMapPermissionPage < Page
124
120
  ##
125
121
  # Initialize the SyncMapPermissionPage
@@ -154,8 +150,6 @@ module Twilio
154
150
  end
155
151
  end
156
152
 
157
- ##
158
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
159
153
  class SyncMapPermissionContext < InstanceContext
160
154
  ##
161
155
  # Initialize the SyncMapPermissionContext
@@ -236,8 +230,6 @@ module Twilio
236
230
  end
237
231
  end
238
232
 
239
- ##
240
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
241
233
  class SyncMapPermissionInstance < InstanceResource
242
234
  ##
243
235
  # Initialize the SyncMapPermissionInstance
@@ -11,8 +11,6 @@ module Twilio
11
11
  class Sync < Domain
12
12
  class V1 < Version
13
13
  class ServiceContext < InstanceContext
14
- ##
15
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
16
14
  class SyncStreamList < ListResource
17
15
  ##
18
16
  # Initialize the SyncStreamList
@@ -136,8 +134,6 @@ module Twilio
136
134
  end
137
135
  end
138
136
 
139
- ##
140
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
141
137
  class SyncStreamPage < Page
142
138
  ##
143
139
  # Initialize the SyncStreamPage
@@ -167,8 +163,6 @@ module Twilio
167
163
  end
168
164
  end
169
165
 
170
- ##
171
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
172
166
  class SyncStreamContext < InstanceContext
173
167
  ##
174
168
  # Initialize the SyncStreamContext
@@ -262,8 +256,6 @@ module Twilio
262
256
  end
263
257
  end
264
258
 
265
- ##
266
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
267
259
  class SyncStreamInstance < InstanceResource
268
260
  ##
269
261
  # Initialize the SyncStreamInstance
@@ -12,8 +12,6 @@ module Twilio
12
12
  class V1 < Version
13
13
  class ServiceContext < InstanceContext
14
14
  class SyncStreamContext < InstanceContext
15
- ##
16
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
17
15
  class StreamMessageList < ListResource
18
16
  ##
19
17
  # Initialize the StreamMessageList
@@ -57,8 +55,6 @@ module Twilio
57
55
  end
58
56
  end
59
57
 
60
- ##
61
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
62
58
  class StreamMessagePage < Page
63
59
  ##
64
60
  # Initialize the StreamMessagePage
@@ -93,8 +89,6 @@ module Twilio
93
89
  end
94
90
  end
95
91
 
96
- ##
97
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
98
92
  class StreamMessageInstance < InstanceResource
99
93
  ##
100
94
  # Initialize the StreamMessageInstance
@@ -48,9 +48,11 @@ module Twilio
48
48
  # ring_tone:: Ringtone allows you to override the ringback tone that Twilio will play back to the caller while executing the Dial
49
49
  # recording_track:: To indicate which audio track should be recorded
50
50
  # sequential:: Used to determine if child TwiML nouns should be dialed in order, one after the other (sequential) or dial all at once (parallel). Default is false, parallel
51
+ # refer_url:: Webhook that will receive future SIP REFER requests
52
+ # refer_method:: The HTTP method to use for the refer Webhook
51
53
  # keyword_args:: additional attributes
52
- def dial(number: nil, action: nil, method: nil, timeout: nil, hangup_on_star: nil, time_limit: nil, caller_id: nil, record: nil, trim: nil, recording_status_callback: nil, recording_status_callback_method: nil, recording_status_callback_event: nil, answer_on_bridge: nil, ring_tone: nil, recording_track: nil, sequential: nil, **keyword_args)
53
- dial = Dial.new(number: number, action: action, method: method, timeout: timeout, hangup_on_star: hangup_on_star, time_limit: time_limit, caller_id: caller_id, record: record, trim: trim, recording_status_callback: recording_status_callback, recording_status_callback_method: recording_status_callback_method, recording_status_callback_event: recording_status_callback_event, answer_on_bridge: answer_on_bridge, ring_tone: ring_tone, recording_track: recording_track, sequential: sequential, **keyword_args)
54
+ def dial(number: nil, action: nil, method: nil, timeout: nil, hangup_on_star: nil, time_limit: nil, caller_id: nil, record: nil, trim: nil, recording_status_callback: nil, recording_status_callback_method: nil, recording_status_callback_event: nil, answer_on_bridge: nil, ring_tone: nil, recording_track: nil, sequential: nil, refer_url: nil, refer_method: nil, **keyword_args)
55
+ dial = Dial.new(number: number, action: action, method: method, timeout: timeout, hangup_on_star: hangup_on_star, time_limit: time_limit, caller_id: caller_id, record: record, trim: trim, recording_status_callback: recording_status_callback, recording_status_callback_method: recording_status_callback_method, recording_status_callback_event: recording_status_callback_event, answer_on_bridge: answer_on_bridge, ring_tone: ring_tone, recording_track: recording_track, sequential: sequential, refer_url: refer_url, refer_method: refer_method, **keyword_args)
54
56
 
55
57
  yield(dial) if block_given?
56
58
  append(dial)
@@ -1,3 +1,3 @@
1
1
  module Twilio
2
- VERSION = '5.46.1'
2
+ VERSION = '5.47.0'
3
3
  end
@@ -183,7 +183,83 @@ describe 'Conference' do
183
183
  expect(actual).to_not eq(nil)
184
184
  end
185
185
 
186
- it "receives read_full responses" do
186
+ it "receives read_next responses" do
187
+ @holodeck.mock(Twilio::Response.new(
188
+ 200,
189
+ %q[
190
+ {
191
+ "conferences": [
192
+ {
193
+ "status": "in-progress",
194
+ "region": "jp1",
195
+ "sid": "CFdddddddddddddddddddddddddddddddd",
196
+ "date_updated": "Thu, 01 Jan 2015 10:23:45 +0000",
197
+ "date_created": "Thu, 01 Jan 2015 10:23:45 +0000",
198
+ "subresource_uris": {
199
+ "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFdddddddddddddddddddddddddddddddd/Participants.json",
200
+ "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFdddddddddddddddddddddddddddddddd/Recordings.json"
201
+ },
202
+ "friendly_name": "friendly_name",
203
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFdddddddddddddddddddddddddddddddd.json",
204
+ "api_version": "2010-04-01",
205
+ "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
206
+ "reason_conference_ended": null,
207
+ "call_sid_ending_conference": null
208
+ },
209
+ {
210
+ "status": "in-progress",
211
+ "region": "unknown",
212
+ "sid": "CFeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
213
+ "date_updated": "Thu, 01 Jan 2015 09:23:45 +0000",
214
+ "date_created": "Thu, 01 Jan 2015 09:23:45 +0000",
215
+ "subresource_uris": {
216
+ "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee/Participants.json",
217
+ "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee/Recordings.json"
218
+ },
219
+ "friendly_name": "friendly_name",
220
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee.json",
221
+ "api_version": "2010-04-01",
222
+ "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
223
+ "reason_conference_ended": null,
224
+ "call_sid_ending_conference": null
225
+ },
226
+ {
227
+ "status": "in-progress",
228
+ "region": "us1",
229
+ "sid": "CFffffffffffffffffffffffffffffffff",
230
+ "date_updated": "Thu, 01 Jan 2015 08:23:45 +0000",
231
+ "date_created": "Thu, 01 Jan 2015 08:23:45 +0000",
232
+ "subresource_uris": {
233
+ "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFffffffffffffffffffffffffffffffff/Participants.json",
234
+ "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFffffffffffffffffffffffffffffffff/Recordings.json"
235
+ },
236
+ "friendly_name": "friendly_name",
237
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFffffffffffffffffffffffffffffffff.json",
238
+ "api_version": "2010-04-01",
239
+ "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
240
+ "reason_conference_ended": null,
241
+ "call_sid_ending_conference": null
242
+ }
243
+ ],
244
+ "first_page_uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?Status=in-progress&DateUpdated%3E=2018-11-12&DateUpdated%3C=2018-11-11&DateCreated=2008-01-03&FriendlyName=friendly_name&DateUpdated=2018-11-13&DateCreated%3C=2008-01-01&DateCreated%3E=2008-01-02&PageSize=3&Page=0",
245
+ "next_page_uri": null,
246
+ "previous_page_uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?Status=in-progress&DateUpdated%3E=2018-11-12&DateUpdated%3C=2018-11-11&DateCreated=2008-01-03&FriendlyName=friendly_name&DateUpdated=2018-11-13&DateCreated%3C=2008-01-01&DateCreated%3E=2008-01-02&PageSize=3&Page=0&PageToken=PBCFdddddddddddddddddddddddddddddddd",
247
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?Status=in-progress&DateUpdated%3E=2018-11-12&DateUpdated%3C=2018-11-11&DateCreated=2008-01-03&FriendlyName=friendly_name&DateUpdated=2018-11-13&DateCreated%3C=2008-01-01&DateCreated%3E=2008-01-02&PageSize=3&Page=1&PageToken=PACFcccccccccccccccccccccccccccccccc",
248
+ "page": 1,
249
+ "page_size": 3,
250
+ "start": 3,
251
+ "end": 5
252
+ }
253
+ ]
254
+ ))
255
+
256
+ actual = @client.api.v2010.accounts('ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
257
+ .conferences.list()
258
+
259
+ expect(actual).to_not eq(nil)
260
+ end
261
+
262
+ it "receives read_previous responses" do
187
263
  @holodeck.mock(Twilio::Response.new(
188
264
  200,
189
265
  %q[
@@ -244,7 +320,7 @@ describe 'Conference' do
244
320
  "first_page_uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?Status=in-progress&DateUpdated%3E=2018-11-12&DateUpdated%3C=2018-11-11&DateCreated=2008-01-03&FriendlyName=friendly_name&DateUpdated=2018-11-13&DateCreated%3C=2008-01-01&DateCreated%3E=2008-01-02&PageSize=3&Page=0",
245
321
  "next_page_uri": null,
246
322
  "previous_page_uri": null,
247
- "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?Status=in-progress&DateUpdated%3E=2018-11-12&DateUpdated%3C=2018-11-11&DateCreated=2008-01-03&FriendlyName=friendly_name&DateUpdated=2018-11-13&DateCreated%3C=2008-01-01&DateCreated%3E=2008-01-02&PageSize=3&Page=0",
323
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?Status=in-progress&DateUpdated%3E=2018-11-12&DateUpdated%3C=2018-11-11&DateCreated=2008-01-03&FriendlyName=friendly_name&DateUpdated=2018-11-13&DateCreated%3C=2008-01-01&DateCreated%3E=2008-01-02&PageSize=3&Page=0&PageToken=PBCFdddddddddddddddddddddddddddddddd",
248
324
  "page": 0,
249
325
  "page_size": 3,
250
326
  "start": 0,
@@ -259,7 +335,7 @@ describe 'Conference' do
259
335
  expect(actual).to_not eq(nil)
260
336
  end
261
337
 
262
- it "receives read_next responses" do
338
+ it "receives read_myroom_inprogress responses" do
263
339
  @holodeck.mock(Twilio::Response.new(
264
340
  200,
265
341
  %q[
@@ -268,15 +344,15 @@ describe 'Conference' do
268
344
  {
269
345
  "status": "in-progress",
270
346
  "region": "jp1",
271
- "sid": "CFdddddddddddddddddddddddddddddddd",
272
- "date_updated": "Thu, 01 Jan 2015 10:23:45 +0000",
273
- "date_created": "Thu, 01 Jan 2015 10:23:45 +0000",
347
+ "sid": "CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
348
+ "date_updated": "Sun, 03 Jan 2021 11:23:45 +0000",
349
+ "date_created": "Sun, 03 Jan 2021 11:23:45 +0000",
274
350
  "subresource_uris": {
275
- "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFdddddddddddddddddddddddddddddddd/Participants.json",
276
- "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFdddddddddddddddddddddddddddddddd/Recordings.json"
351
+ "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Participants.json",
352
+ "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json"
277
353
  },
278
- "friendly_name": "friendly_name",
279
- "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFdddddddddddddddddddddddddddddddd.json",
354
+ "friendly_name": "MyRoom",
355
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json",
280
356
  "api_version": "2010-04-01",
281
357
  "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
282
358
  "reason_conference_ended": null,
@@ -284,16 +360,16 @@ describe 'Conference' do
284
360
  },
285
361
  {
286
362
  "status": "in-progress",
287
- "region": "unknown",
288
- "sid": "CFeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
289
- "date_updated": "Thu, 01 Jan 2015 09:23:45 +0000",
290
- "date_created": "Thu, 01 Jan 2015 09:23:45 +0000",
363
+ "region": "us1",
364
+ "sid": "CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
365
+ "date_updated": "Sat, 02 Jan 2021 11:23:45 +0000",
366
+ "date_created": "Sat, 02 Jan 2021 11:23:45 +0000",
291
367
  "subresource_uris": {
292
- "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee/Participants.json",
293
- "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee/Recordings.json"
368
+ "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/Participants.json",
369
+ "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/Recordings.json"
294
370
  },
295
- "friendly_name": "friendly_name",
296
- "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee.json",
371
+ "friendly_name": "MyRoom",
372
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb.json",
297
373
  "api_version": "2010-04-01",
298
374
  "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
299
375
  "reason_conference_ended": null,
@@ -301,30 +377,106 @@ describe 'Conference' do
301
377
  },
302
378
  {
303
379
  "status": "in-progress",
304
- "region": "us1",
305
- "sid": "CFffffffffffffffffffffffffffffffff",
306
- "date_updated": "Thu, 01 Jan 2015 08:23:45 +0000",
307
- "date_created": "Thu, 01 Jan 2015 08:23:45 +0000",
380
+ "region": "ie1",
381
+ "sid": "CFcccccccccccccccccccccccccccccccc",
382
+ "date_updated": "Fri, 01 Jan 2021 11:23:45 +0000",
383
+ "date_created": "Fri, 01 Jan 2021 11:23:45 +0000",
308
384
  "subresource_uris": {
309
- "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFffffffffffffffffffffffffffffffff/Participants.json",
310
- "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFffffffffffffffffffffffffffffffff/Recordings.json"
385
+ "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFcccccccccccccccccccccccccccccccc/Participants.json",
386
+ "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFcccccccccccccccccccccccccccccccc/Recordings.json"
387
+ },
388
+ "friendly_name": "MyRoom",
389
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFcccccccccccccccccccccccccccccccc.json",
390
+ "api_version": "2010-04-01",
391
+ "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
392
+ "reason_conference_ended": null,
393
+ "call_sid_ending_conference": null
394
+ }
395
+ ],
396
+ "first_page_uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?FriendlyName=MyRoom&Status=in-progress&PageSize=20&Page=0",
397
+ "next_page_uri": null,
398
+ "previous_page_uri": null,
399
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?FriendlyName=MyRoom&Status=in-progress&PageSize=20&Page=0",
400
+ "page": 0,
401
+ "page_size": 20,
402
+ "start": 0,
403
+ "end": 2
404
+ }
405
+ ]
406
+ ))
407
+
408
+ actual = @client.api.v2010.accounts('ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
409
+ .conferences.list()
410
+
411
+ expect(actual).to_not eq(nil)
412
+ end
413
+
414
+ it "receives read_full responses" do
415
+ @holodeck.mock(Twilio::Response.new(
416
+ 200,
417
+ %q[
418
+ {
419
+ "conferences": [
420
+ {
421
+ "status": "in-progress",
422
+ "region": "jp1",
423
+ "sid": "CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
424
+ "date_updated": "Fri, 03 Jul 2020 11:23:45 +0000",
425
+ "date_created": "Fri, 03 Jul 2020 11:23:45 +0000",
426
+ "subresource_uris": {
427
+ "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Participants.json",
428
+ "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json"
311
429
  },
312
430
  "friendly_name": "friendly_name",
313
- "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFffffffffffffffffffffffffffffffff.json",
431
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json",
432
+ "api_version": "2010-04-01",
433
+ "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
434
+ "reason_conference_ended": null,
435
+ "call_sid_ending_conference": null
436
+ },
437
+ {
438
+ "status": "in-progress",
439
+ "region": "de1",
440
+ "sid": "CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
441
+ "date_updated": "Thu, 02 Jul 2020 11:23:45 +0000",
442
+ "date_created": "Thu, 02 Jul 2020 11:23:45 +0000",
443
+ "subresource_uris": {
444
+ "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/Participants.json",
445
+ "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/Recordings.json"
446
+ },
447
+ "friendly_name": "MyRoom",
448
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb.json",
314
449
  "api_version": "2010-04-01",
315
450
  "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
316
451
  "reason_conference_ended": null,
317
452
  "call_sid_ending_conference": null
453
+ },
454
+ {
455
+ "status": "completed",
456
+ "region": "br1",
457
+ "sid": "CFcccccccccccccccccccccccccccccccc",
458
+ "date_updated": "Wed, 01 Jul 2020 11:23:45 +0000",
459
+ "date_created": "Wed, 01 Jul 2020 11:23:45 +0000",
460
+ "subresource_uris": {
461
+ "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFcccccccccccccccccccccccccccccccc/Participants.json",
462
+ "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFcccccccccccccccccccccccccccccccc/Recordings.json"
463
+ },
464
+ "friendly_name": "FRIEND",
465
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFcccccccccccccccccccccccccccccccc.json",
466
+ "api_version": "2010-04-01",
467
+ "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
468
+ "reason_conference_ended": "participant-with-end-conference-on-exit-left",
469
+ "call_sid_ending_conference": "CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
318
470
  }
319
471
  ],
320
- "first_page_uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?Status=in-progress&DateUpdated%3E=2018-11-12&DateUpdated%3C=2018-11-11&DateCreated=2008-01-03&FriendlyName=friendly_name&DateUpdated=2018-11-13&DateCreated%3C=2008-01-01&DateCreated%3E=2008-01-02&PageSize=3&Page=0",
472
+ "first_page_uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?PageSize=3&Page=0",
321
473
  "next_page_uri": null,
322
- "previous_page_uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?Status=in-progress&DateUpdated%3E=2018-11-12&DateUpdated%3C=2018-11-11&DateCreated=2008-01-03&FriendlyName=friendly_name&DateUpdated=2018-11-13&DateCreated%3C=2008-01-01&DateCreated%3E=2008-01-02&PageSize=3&Page=0&PageToken=PBCFdddddddddddddddddddddddddddddddd",
323
- "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?Status=in-progress&DateUpdated%3E=2018-11-12&DateUpdated%3C=2018-11-11&DateCreated=2008-01-03&FriendlyName=friendly_name&DateUpdated=2018-11-13&DateCreated%3C=2008-01-01&DateCreated%3E=2008-01-02&PageSize=3&Page=1&PageToken=PACFcccccccccccccccccccccccccccccccc",
324
- "page": 1,
474
+ "previous_page_uri": null,
475
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?PageSize=3&Page=0",
476
+ "page": 0,
325
477
  "page_size": 3,
326
- "start": 3,
327
- "end": 5
478
+ "start": 0,
479
+ "end": 2
328
480
  }
329
481
  ]
330
482
  ))
@@ -335,7 +487,7 @@ describe 'Conference' do
335
487
  expect(actual).to_not eq(nil)
336
488
  end
337
489
 
338
- it "receives read_previous responses" do
490
+ it "receives read_date_created_equals responses" do
339
491
  @holodeck.mock(Twilio::Response.new(
340
492
  200,
341
493
  %q[
@@ -345,8 +497,8 @@ describe 'Conference' do
345
497
  "status": "in-progress",
346
498
  "region": "jp1",
347
499
  "sid": "CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
348
- "date_updated": "Sat, 03 Jan 2015 11:23:45 +0000",
349
- "date_created": "Sat, 03 Jan 2015 11:23:45 +0000",
500
+ "date_updated": "Tue, 07 Jul 2020 11:23:45 +0000",
501
+ "date_created": "Tue, 07 Jul 2020 11:23:45 +0000",
350
502
  "subresource_uris": {
351
503
  "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Participants.json",
352
504
  "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json"
@@ -360,15 +512,91 @@ describe 'Conference' do
360
512
  },
361
513
  {
362
514
  "status": "in-progress",
363
- "region": "unknown",
515
+ "region": "de1",
364
516
  "sid": "CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
365
- "date_updated": "Fri, 02 Jan 2015 11:23:45 +0000",
366
- "date_created": "Fri, 02 Jan 2015 11:23:45 +0000",
517
+ "date_updated": "Tue, 07 Jul 2020 11:23:45 +0000",
518
+ "date_created": "Tue, 07 Jul 2020 11:23:45 +0000",
367
519
  "subresource_uris": {
368
520
  "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/Participants.json",
369
521
  "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/Recordings.json"
370
522
  },
523
+ "friendly_name": "MyRoom",
524
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb.json",
525
+ "api_version": "2010-04-01",
526
+ "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
527
+ "reason_conference_ended": null,
528
+ "call_sid_ending_conference": null
529
+ },
530
+ {
531
+ "status": "completed",
532
+ "region": "br1",
533
+ "sid": "CFcccccccccccccccccccccccccccccccc",
534
+ "date_updated": "Tue, 07 Jul 2020 11:23:45 +0000",
535
+ "date_created": "Tue, 07 Jul 2020 11:23:45 +0000",
536
+ "subresource_uris": {
537
+ "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFcccccccccccccccccccccccccccccccc/Participants.json",
538
+ "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFcccccccccccccccccccccccccccccccc/Recordings.json"
539
+ },
540
+ "friendly_name": "FRIEND",
541
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFcccccccccccccccccccccccccccccccc.json",
542
+ "api_version": "2010-04-01",
543
+ "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
544
+ "reason_conference_ended": "participant-with-end-conference-on-exit-left",
545
+ "call_sid_ending_conference": "CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
546
+ }
547
+ ],
548
+ "first_page_uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?DateCreated=2020-07-07&PageSize=3&Page=0",
549
+ "next_page_uri": null,
550
+ "previous_page_uri": null,
551
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?DateCreated=2020-07-07&PageSize=3&Page=0",
552
+ "page": 0,
553
+ "page_size": 3,
554
+ "start": 0,
555
+ "end": 2
556
+ }
557
+ ]
558
+ ))
559
+
560
+ actual = @client.api.v2010.accounts('ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
561
+ .conferences.list()
562
+
563
+ expect(actual).to_not eq(nil)
564
+ end
565
+
566
+ it "receives read_date_created_on_or_after responses" do
567
+ @holodeck.mock(Twilio::Response.new(
568
+ 200,
569
+ %q[
570
+ {
571
+ "conferences": [
572
+ {
573
+ "status": "in-progress",
574
+ "region": "jp1",
575
+ "sid": "CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
576
+ "date_updated": "Fri, 01 Jan 2021 11:23:45 +0000",
577
+ "date_created": "Fri, 01 Jan 2021 11:23:45 +0000",
578
+ "subresource_uris": {
579
+ "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Participants.json",
580
+ "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json"
581
+ },
371
582
  "friendly_name": "friendly_name",
583
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json",
584
+ "api_version": "2010-04-01",
585
+ "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
586
+ "reason_conference_ended": null,
587
+ "call_sid_ending_conference": null
588
+ },
589
+ {
590
+ "status": "in-progress",
591
+ "region": "de1",
592
+ "sid": "CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
593
+ "date_updated": "Fri, 01 Jan 2021 11:23:45 +0000",
594
+ "date_created": "Fri, 01 Jan 2021 11:23:45 +0000",
595
+ "subresource_uris": {
596
+ "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/Participants.json",
597
+ "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/Recordings.json"
598
+ },
599
+ "friendly_name": "MyRoom",
372
600
  "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb.json",
373
601
  "api_version": "2010-04-01",
374
602
  "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
@@ -377,15 +605,15 @@ describe 'Conference' do
377
605
  },
378
606
  {
379
607
  "status": "in-progress",
380
- "region": "us1",
608
+ "region": "br1",
381
609
  "sid": "CFcccccccccccccccccccccccccccccccc",
382
- "date_updated": "Thu, 01 Jan 2015 11:23:45 +0000",
383
- "date_created": "Thu, 01 Jan 2015 11:23:45 +0000",
610
+ "date_updated": "Fri, 01 Jan 2021 11:23:45 +0000",
611
+ "date_created": "Fri, 01 Jan 2021 11:23:45 +0000",
384
612
  "subresource_uris": {
385
613
  "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFcccccccccccccccccccccccccccccccc/Participants.json",
386
614
  "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFcccccccccccccccccccccccccccccccc/Recordings.json"
387
615
  },
388
- "friendly_name": "friendly_name",
616
+ "friendly_name": "FRIEND",
389
617
  "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFcccccccccccccccccccccccccccccccc.json",
390
618
  "api_version": "2010-04-01",
391
619
  "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
@@ -393,12 +621,12 @@ describe 'Conference' do
393
621
  "call_sid_ending_conference": null
394
622
  }
395
623
  ],
396
- "first_page_uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?Status=in-progress&DateUpdated%3E=2018-11-12&DateUpdated%3C=2018-11-11&DateCreated=2008-01-03&FriendlyName=friendly_name&DateUpdated=2018-11-13&DateCreated%3C=2008-01-01&DateCreated%3E=2008-01-02&PageSize=3&Page=0",
624
+ "first_page_uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?Status=in-progress&DateCreated%3E=2021-01-01&PageSize=20&Page=0",
397
625
  "next_page_uri": null,
398
626
  "previous_page_uri": null,
399
- "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?Status=in-progress&DateUpdated%3E=2018-11-12&DateUpdated%3C=2018-11-11&DateCreated=2008-01-03&FriendlyName=friendly_name&DateUpdated=2018-11-13&DateCreated%3C=2008-01-01&DateCreated%3E=2008-01-02&PageSize=3&Page=0&PageToken=PBCFdddddddddddddddddddddddddddddddd",
627
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences.json?Status=in-progress&DateCreated%3E=2021-01-01&PageSize=20&Page=0",
400
628
  "page": 0,
401
- "page_size": 3,
629
+ "page_size": 20,
402
630
  "start": 0,
403
631
  "end": 2
404
632
  }
@@ -455,4 +683,34 @@ describe 'Conference' do
455
683
 
456
684
  expect(actual).to_not eq(nil)
457
685
  end
686
+
687
+ it "receives announce_to_conference responses" do
688
+ @holodeck.mock(Twilio::Response.new(
689
+ 200,
690
+ %q[
691
+ {
692
+ "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
693
+ "api_version": "2010-04-01",
694
+ "date_created": "Mon, 08 Feb 2021 20:58:45 +0000",
695
+ "date_updated": "Mon, 08 Feb 2021 20:58:46 +0000",
696
+ "friendly_name": "MyRoom",
697
+ "region": "us1",
698
+ "sid": "CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
699
+ "status": "in-progress",
700
+ "subresource_uris": {
701
+ "participants": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Participants.json",
702
+ "recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json"
703
+ },
704
+ "uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Conferences/CFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json",
705
+ "reason_conference_ended": null,
706
+ "call_sid_ending_conference": null
707
+ }
708
+ ]
709
+ ))
710
+
711
+ actual = @client.api.v2010.accounts('ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
712
+ .conferences('CFXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX').update()
713
+
714
+ expect(actual).to_not eq(nil)
715
+ end
458
716
  end