twilio-ruby 5.72.1 → 5.73.4

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.
Files changed (163) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/pr-lint.yml +8 -2
  3. data/.github/workflows/test-and-deploy.yml +3 -3
  4. data/CHANGES.md +89 -0
  5. data/LICENSE +1 -1
  6. data/README.md +2 -2
  7. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +2 -2
  8. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +2 -2
  9. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +2 -2
  10. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +2 -2
  11. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +2 -2
  12. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +2 -2
  13. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +2 -2
  14. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +1 -1
  15. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +5 -5
  16. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +2 -2
  17. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +160 -0
  18. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +251 -0
  19. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +59 -0
  20. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +22 -16
  21. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +1 -1
  22. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +4 -4
  23. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +17 -1
  24. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +2 -2
  25. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +3 -3
  26. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +1 -1
  27. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +1 -1
  28. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +1 -1
  29. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +1 -1
  30. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +1 -1
  31. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +1 -1
  32. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +1 -1
  33. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +1 -1
  34. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +1 -1
  35. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +1 -1
  36. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +1 -1
  37. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +1 -1
  38. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +1 -1
  39. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +2 -2
  40. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +1 -1
  41. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +1 -1
  42. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +2 -2
  43. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +1 -1
  44. data/lib/twilio-ruby/rest/chat/v1/service.rb +2 -2
  45. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +1 -1
  46. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +2 -2
  47. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +1 -1
  48. data/lib/twilio-ruby/rest/chat/v2/service.rb +4 -4
  49. data/lib/twilio-ruby/rest/chat/v3/channel.rb +2 -2
  50. data/lib/twilio-ruby/rest/client.rb +14 -0
  51. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +195 -0
  52. data/lib/twilio-ruby/rest/content/v1/content.rb +346 -0
  53. data/lib/twilio-ruby/rest/content/v1.rb +45 -0
  54. data/lib/twilio-ruby/rest/content.rb +47 -0
  55. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +1 -1
  56. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +1 -1
  57. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +1 -1
  58. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +1 -1
  59. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +1 -1
  60. data/lib/twilio-ruby/rest/events/v1/schema.rb +1 -1
  61. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +1 -1
  62. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +156 -0
  63. data/lib/twilio-ruby/rest/flex_api/v1/good_data.rb +190 -0
  64. data/lib/twilio-ruby/rest/flex_api/v1/user_roles.rb +166 -0
  65. data/lib/twilio-ruby/rest/flex_api/v1.rb +21 -0
  66. data/lib/twilio-ruby/rest/flex_api.rb +18 -0
  67. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +7 -0
  68. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +7 -0
  69. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +1 -1
  70. data/lib/twilio-ruby/rest/insights/v1/room.rb +3 -3
  71. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +1 -1
  72. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +2 -2
  73. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +1 -1
  74. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +2 -2
  75. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +1 -1
  76. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +2 -2
  77. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +1 -1
  78. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +4 -4
  79. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +81 -6
  80. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +1 -1
  81. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +2 -2
  82. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +1 -1
  83. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +257 -0
  84. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +267 -0
  85. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +71 -1
  86. data/lib/twilio-ruby/rest/messaging/v1/service.rb +1 -1
  87. data/lib/twilio-ruby/rest/messaging/v1.rb +34 -0
  88. data/lib/twilio-ruby/rest/messaging.rb +18 -0
  89. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +7 -0
  90. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +1 -1
  91. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +162 -0
  92. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +242 -0
  93. data/lib/twilio-ruby/rest/oauth/v1/token.rb +157 -0
  94. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +193 -0
  95. data/lib/twilio-ruby/rest/oauth/v1.rb +56 -0
  96. data/lib/twilio-ruby/rest/oauth.rb +62 -0
  97. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +2 -2
  98. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +2 -2
  99. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +1 -1
  100. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +2 -2
  101. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +1 -1
  102. data/lib/twilio-ruby/rest/preview.rb +0 -33
  103. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +1 -1
  104. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +1 -14
  105. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +5 -46
  106. data/lib/twilio-ruby/rest/proxy/v1/service.rb +1 -1
  107. data/lib/twilio-ruby/rest/studio/v1/flow.rb +1 -1
  108. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +1 -1
  109. data/lib/twilio-ruby/rest/studio/v2/flow.rb +1 -1
  110. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +1 -1
  111. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +1 -1
  112. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +240 -0
  113. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +4 -4
  114. data/lib/twilio-ruby/rest/supersim/v1.rb +7 -0
  115. data/lib/twilio-ruby/rest/supersim.rb +6 -0
  116. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +1 -1
  117. data/lib/twilio-ruby/rest/sync/v1/service.rb +1 -1
  118. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +1 -1
  119. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +18 -5
  120. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +3 -3
  121. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +12 -12
  122. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +5 -5
  123. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +10 -4
  124. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +3 -3
  125. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +6 -6
  126. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +1 -1
  127. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +9 -3
  128. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +13 -13
  129. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +2 -2
  130. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +1 -1
  131. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +13 -13
  132. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +3 -3
  133. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +2 -2
  134. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +1 -9
  135. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +1 -7
  136. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +0 -8
  137. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +0 -8
  138. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +0 -6
  139. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +0 -8
  140. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +2 -2
  141. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +2 -2
  142. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +0 -8
  143. data/lib/twilio-ruby/rest/verify/v2/service.rb +1 -1
  144. data/lib/twilio-ruby/rest/verify/v2/template.rb +7 -0
  145. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +4 -4
  146. data/lib/twilio-ruby/rest/video/v1/composition.rb +3 -3
  147. data/lib/twilio-ruby/rest/video/v1/recording.rb +2 -2
  148. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +2 -2
  149. data/lib/twilio-ruby/rest/video/v1/room.rb +4 -4
  150. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +2 -2
  151. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +1 -1
  152. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +1 -1
  153. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +3 -3
  154. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +2 -2
  155. data/lib/twilio-ruby/twiml/voice_response.rb +10 -6
  156. data/lib/twilio-ruby/version.rb +1 -1
  157. metadata +20 -8
  158. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +0 -165
  159. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +0 -225
  160. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +0 -195
  161. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +0 -186
  162. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -277
  163. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -65
@@ -127,20 +127,8 @@ module Twilio
127
127
  # on create.
128
128
  # @param [Array[Hash]] participants The Participant objects to include in the new
129
129
  # session.
130
- # @param [Boolean] fail_on_participant_conflict [Experimental] For accounts with
131
- # the ProxyAllowParticipantConflict account flag, setting to true enables
132
- # per-request opt-in to allowing Proxy to reject a Session create (with
133
- # Participants) request that could cause the same Identifier/ProxyIdentifier pair
134
- # to be active in multiple Sessions. Depending on the context, this could be a 409
135
- # error (Twilio error code 80623) or a 400 error (Twilio error code 80604). If not
136
- # provided, requests will be allowed to succeed and a Debugger notification
137
- # (80802) will be emitted. Having multiple, active Participants with the same
138
- # Identifier/ProxyIdentifier pair causes calls and messages from affected
139
- # Participants to be routed incorrectly. Please note, the default behavior for
140
- # accounts without the ProxyAllowParticipantConflict flag is to reject the request
141
- # as described. This will eventually be the default for all accounts.
142
130
  # @return [SessionInstance] Created SessionInstance
143
- def create(unique_name: :unset, date_expiry: :unset, ttl: :unset, mode: :unset, status: :unset, participants: :unset, fail_on_participant_conflict: :unset)
131
+ def create(unique_name: :unset, date_expiry: :unset, ttl: :unset, mode: :unset, status: :unset, participants: :unset)
144
132
  data = Twilio::Values.of({
145
133
  'UniqueName' => unique_name,
146
134
  'DateExpiry' => Twilio.serialize_iso8601_datetime(date_expiry),
@@ -148,7 +136,6 @@ module Twilio
148
136
  'Mode' => mode,
149
137
  'Status' => status,
150
138
  'Participants' => Twilio.serialize_list(participants) { |e| Twilio.serialize_object(e) },
151
- 'FailOnParticipantConflict' => fail_on_participant_conflict,
152
139
  })
153
140
 
154
141
  payload = @version.create('POST', @uri, data: data)
@@ -243,24 +230,12 @@ module Twilio
243
230
  # is measured from the last Session create or the Session's last Interaction.
244
231
  # @param [session.Status] status The new status of the resource. Can be:
245
232
  # `in-progress` to re-open a session or `closed` to close a session.
246
- # @param [Boolean] fail_on_participant_conflict [Experimental] For accounts with
247
- # the ProxyAllowParticipantConflict account flag, setting to true enables
248
- # per-request opt-in to allowing Proxy to return a 400 error (Twilio error code
249
- # 80604) when a request to set a Session to in-progress would cause Participants
250
- # with the same Identifier/ProxyIdentifier pair to be active in multiple Sessions.
251
- # If not provided, requests will be allowed to succeed, and a Debugger
252
- # notification (80801) will be emitted. Having multiple, active Participants with
253
- # the same Identifier/ProxyIdentifier pair causes calls and messages from affected
254
- # Participants to be routed incorrectly. Please note, the default behavior for
255
- # accounts without the ProxyAllowParticipantConflict flag is to reject the request
256
- # as described. This will eventually be the default for all accounts.
257
233
  # @return [SessionInstance] Updated SessionInstance
258
- def update(date_expiry: :unset, ttl: :unset, status: :unset, fail_on_participant_conflict: :unset)
234
+ def update(date_expiry: :unset, ttl: :unset, status: :unset)
259
235
  data = Twilio::Values.of({
260
236
  'DateExpiry' => Twilio.serialize_iso8601_datetime(date_expiry),
261
237
  'Ttl' => ttl,
262
238
  'Status' => status,
263
- 'FailOnParticipantConflict' => fail_on_participant_conflict,
264
239
  })
265
240
 
266
241
  payload = @version.update('POST', @uri, data: data)
@@ -355,7 +330,7 @@ module Twilio
355
330
  'unique_name' => payload['unique_name'],
356
331
  'status' => payload['status'],
357
332
  'closed_reason' => payload['closed_reason'],
358
- 'ttl' => payload['ttl'].to_i,
333
+ 'ttl' => payload['ttl'] == nil ? payload['ttl'] : payload['ttl'].to_i,
359
334
  'mode' => payload['mode'],
360
335
  'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
361
336
  'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
@@ -498,25 +473,9 @@ module Twilio
498
473
  # is measured from the last Session create or the Session's last Interaction.
499
474
  # @param [session.Status] status The new status of the resource. Can be:
500
475
  # `in-progress` to re-open a session or `closed` to close a session.
501
- # @param [Boolean] fail_on_participant_conflict [Experimental] For accounts with
502
- # the ProxyAllowParticipantConflict account flag, setting to true enables
503
- # per-request opt-in to allowing Proxy to return a 400 error (Twilio error code
504
- # 80604) when a request to set a Session to in-progress would cause Participants
505
- # with the same Identifier/ProxyIdentifier pair to be active in multiple Sessions.
506
- # If not provided, requests will be allowed to succeed, and a Debugger
507
- # notification (80801) will be emitted. Having multiple, active Participants with
508
- # the same Identifier/ProxyIdentifier pair causes calls and messages from affected
509
- # Participants to be routed incorrectly. Please note, the default behavior for
510
- # accounts without the ProxyAllowParticipantConflict flag is to reject the request
511
- # as described. This will eventually be the default for all accounts.
512
476
  # @return [SessionInstance] Updated SessionInstance
513
- def update(date_expiry: :unset, ttl: :unset, status: :unset, fail_on_participant_conflict: :unset)
514
- context.update(
515
- date_expiry: date_expiry,
516
- ttl: ttl,
517
- status: status,
518
- fail_on_participant_conflict: fail_on_participant_conflict,
519
- )
477
+ def update(date_expiry: :unset, ttl: :unset, status: :unset)
478
+ context.update(date_expiry: date_expiry, ttl: ttl, status: status, )
520
479
  end
521
480
 
522
481
  ##
@@ -386,7 +386,7 @@ module Twilio
386
386
  'account_sid' => payload['account_sid'],
387
387
  'chat_instance_sid' => payload['chat_instance_sid'],
388
388
  'callback_url' => payload['callback_url'],
389
- 'default_ttl' => payload['default_ttl'].to_i,
389
+ 'default_ttl' => payload['default_ttl'] == nil ? payload['default_ttl'] : payload['default_ttl'].to_i,
390
390
  'number_selection_behavior' => payload['number_selection_behavior'],
391
391
  'geo_match_level' => payload['geo_match_level'],
392
392
  'intercept_callback_url' => payload['intercept_callback_url'],
@@ -240,7 +240,7 @@ module Twilio
240
240
  'account_sid' => payload['account_sid'],
241
241
  'friendly_name' => payload['friendly_name'],
242
242
  'status' => payload['status'],
243
- 'version' => payload['version'].to_i,
243
+ 'version' => payload['version'] == nil ? payload['version'] : payload['version'].to_i,
244
244
  'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
245
245
  'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
246
246
  'url' => payload['url'],
@@ -202,7 +202,7 @@ module Twilio
202
202
  'friendly_name' => payload['friendly_name'],
203
203
  'definition' => payload['definition'],
204
204
  'status' => payload['status'],
205
- 'revision' => payload['revision'].to_i,
205
+ 'revision' => payload['revision'] == nil ? payload['revision'] : payload['revision'].to_i,
206
206
  'commit_message' => payload['commit_message'],
207
207
  'valid' => payload['valid'],
208
208
  'errors' => payload['errors'],
@@ -292,7 +292,7 @@ module Twilio
292
292
  'friendly_name' => payload['friendly_name'],
293
293
  'definition' => payload['definition'],
294
294
  'status' => payload['status'],
295
- 'revision' => payload['revision'].to_i,
295
+ 'revision' => payload['revision'] == nil ? payload['revision'] : payload['revision'].to_i,
296
296
  'commit_message' => payload['commit_message'],
297
297
  'valid' => payload['valid'],
298
298
  'errors' => payload['errors'],
@@ -311,7 +311,7 @@ module Twilio
311
311
  'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
312
312
  'url' => payload['url'],
313
313
  'data_enabled' => payload['data_enabled'],
314
- 'data_limit' => payload['data_limit'].to_i,
314
+ 'data_limit' => payload['data_limit'] == nil ? payload['data_limit'] : payload['data_limit'].to_i,
315
315
  'data_metering' => payload['data_metering'],
316
316
  'sms_commands_enabled' => payload['sms_commands_enabled'],
317
317
  'sms_commands_url' => payload['sms_commands_url'],
@@ -287,7 +287,7 @@ module Twilio
287
287
  'status' => payload['status'],
288
288
  'direction' => payload['direction'],
289
289
  'device_ip' => payload['device_ip'],
290
- 'device_port' => payload['device_port'].to_i,
290
+ 'device_port' => payload['device_port'] == nil ? payload['device_port'] : payload['device_port'].to_i,
291
291
  'payload_type' => payload['payload_type'],
292
292
  'payload' => payload['payload'],
293
293
  'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
@@ -0,0 +1,240 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ module Twilio
10
+ module REST
11
+ class Supersim < Domain
12
+ class V1 < Version
13
+ ##
14
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
15
+ class SettingsUpdateList < ListResource
16
+ ##
17
+ # Initialize the SettingsUpdateList
18
+ # @param [Version] version Version that contains the resource
19
+ # @return [SettingsUpdateList] SettingsUpdateList
20
+ def initialize(version)
21
+ super(version)
22
+
23
+ # Path Solution
24
+ @solution = {}
25
+ @uri = "/SettingsUpdates"
26
+ end
27
+
28
+ ##
29
+ # Lists SettingsUpdateInstance records from the API as a list.
30
+ # Unlike stream(), this operation is eager and will load `limit` records into
31
+ # memory before returning.
32
+ # @param [String] sim Filter the Settings Updates by a Super SIM's SID or
33
+ # UniqueName.
34
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
35
+ # guarantees to never return more than limit. Default is no limit
36
+ # @param [Integer] page_size Number of records to fetch per request, when
37
+ # not set will use the default value of 50 records. If no page_size is defined
38
+ # but a limit is defined, stream() will attempt to read the limit with the most
39
+ # efficient page size, i.e. min(limit, 1000)
40
+ # @return [Array] Array of up to limit results
41
+ def list(sim: :unset, limit: nil, page_size: nil)
42
+ self.stream(sim: sim, limit: limit, page_size: page_size).entries
43
+ end
44
+
45
+ ##
46
+ # Streams SettingsUpdateInstance records from the API as an Enumerable.
47
+ # This operation lazily loads records as efficiently as possible until the limit
48
+ # is reached.
49
+ # @param [String] sim Filter the Settings Updates by a Super SIM's SID or
50
+ # UniqueName.
51
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
52
+ # guarantees to never return more than limit. Default is no limit.
53
+ # @param [Integer] page_size Number of records to fetch per request, when
54
+ # not set will use the default value of 50 records. If no page_size is defined
55
+ # but a limit is defined, stream() will attempt to read the limit with the most
56
+ # efficient page size, i.e. min(limit, 1000)
57
+ # @return [Enumerable] Enumerable that will yield up to limit results
58
+ def stream(sim: :unset, limit: nil, page_size: nil)
59
+ limits = @version.read_limits(limit, page_size)
60
+
61
+ page = self.page(sim: sim, page_size: limits[:page_size], )
62
+
63
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
64
+ end
65
+
66
+ ##
67
+ # When passed a block, yields SettingsUpdateInstance records from the API.
68
+ # This operation lazily loads records as efficiently as possible until the limit
69
+ # is reached.
70
+ def each
71
+ limits = @version.read_limits
72
+
73
+ page = self.page(page_size: limits[:page_size], )
74
+
75
+ @version.stream(page,
76
+ limit: limits[:limit],
77
+ page_limit: limits[:page_limit]).each {|x| yield x}
78
+ end
79
+
80
+ ##
81
+ # Retrieve a single page of SettingsUpdateInstance records from the API.
82
+ # Request is executed immediately.
83
+ # @param [String] sim Filter the Settings Updates by a Super SIM's SID or
84
+ # UniqueName.
85
+ # @param [String] page_token PageToken provided by the API
86
+ # @param [Integer] page_number Page Number, this value is simply for client state
87
+ # @param [Integer] page_size Number of records to return, defaults to 50
88
+ # @return [Page] Page of SettingsUpdateInstance
89
+ def page(sim: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
90
+ params = Twilio::Values.of({
91
+ 'Sim' => sim,
92
+ 'PageToken' => page_token,
93
+ 'Page' => page_number,
94
+ 'PageSize' => page_size,
95
+ })
96
+
97
+ response = @version.page('GET', @uri, params: params)
98
+
99
+ SettingsUpdatePage.new(@version, response, @solution)
100
+ end
101
+
102
+ ##
103
+ # Retrieve a single page of SettingsUpdateInstance records from the API.
104
+ # Request is executed immediately.
105
+ # @param [String] target_url API-generated URL for the requested results page
106
+ # @return [Page] Page of SettingsUpdateInstance
107
+ def get_page(target_url)
108
+ response = @version.domain.request(
109
+ 'GET',
110
+ target_url
111
+ )
112
+ SettingsUpdatePage.new(@version, response, @solution)
113
+ end
114
+
115
+ ##
116
+ # Provide a user friendly representation
117
+ def to_s
118
+ '#<Twilio.Supersim.V1.SettingsUpdateList>'
119
+ end
120
+ end
121
+
122
+ ##
123
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
124
+ class SettingsUpdatePage < Page
125
+ ##
126
+ # Initialize the SettingsUpdatePage
127
+ # @param [Version] version Version that contains the resource
128
+ # @param [Response] response Response from the API
129
+ # @param [Hash] solution Path solution for the resource
130
+ # @return [SettingsUpdatePage] SettingsUpdatePage
131
+ def initialize(version, response, solution)
132
+ super(version, response)
133
+
134
+ # Path Solution
135
+ @solution = solution
136
+ end
137
+
138
+ ##
139
+ # Build an instance of SettingsUpdateInstance
140
+ # @param [Hash] payload Payload response from the API
141
+ # @return [SettingsUpdateInstance] SettingsUpdateInstance
142
+ def get_instance(payload)
143
+ SettingsUpdateInstance.new(@version, payload, )
144
+ end
145
+
146
+ ##
147
+ # Provide a user friendly representation
148
+ def to_s
149
+ '<Twilio.Supersim.V1.SettingsUpdatePage>'
150
+ end
151
+ end
152
+
153
+ ##
154
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
155
+ class SettingsUpdateInstance < InstanceResource
156
+ ##
157
+ # Initialize the SettingsUpdateInstance
158
+ # @param [Version] version Version that contains the resource
159
+ # @param [Hash] payload payload that contains response from Twilio
160
+ # @return [SettingsUpdateInstance] SettingsUpdateInstance
161
+ def initialize(version, payload)
162
+ super(version)
163
+
164
+ # Marshaled Properties
165
+ @properties = {
166
+ 'sid' => payload['sid'],
167
+ 'iccid' => payload['iccid'],
168
+ 'sim_sid' => payload['sim_sid'],
169
+ 'status' => payload['status'],
170
+ 'packages' => payload['packages'],
171
+ 'date_completed' => Twilio.deserialize_iso8601_datetime(payload['date_completed']),
172
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
173
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
174
+ }
175
+ end
176
+
177
+ ##
178
+ # @return [String] The unique identifier of this Settings Update
179
+ def sid
180
+ @properties['sid']
181
+ end
182
+
183
+ ##
184
+ # @return [String] The ICCID associated with the SIM
185
+ def iccid
186
+ @properties['iccid']
187
+ end
188
+
189
+ ##
190
+ # @return [String] The SID of the Super SIM to which this Settings Update was applied
191
+ def sim_sid
192
+ @properties['sim_sid']
193
+ end
194
+
195
+ ##
196
+ # @return [settings_update.Status] The Status of this Settings Update
197
+ def status
198
+ @properties['status']
199
+ end
200
+
201
+ ##
202
+ # @return [Array[Hash]] Array containing the different Settings Packages that will be applied to the SIM after the update completes
203
+ def packages
204
+ @properties['packages']
205
+ end
206
+
207
+ ##
208
+ # @return [Time] The time when the update successfully completed and the new settings were applied to the SIM
209
+ def date_completed
210
+ @properties['date_completed']
211
+ end
212
+
213
+ ##
214
+ # @return [Time] The date this Settings Update was created
215
+ def date_created
216
+ @properties['date_created']
217
+ end
218
+
219
+ ##
220
+ # @return [Time] The date this Settings Update was last updated
221
+ def date_updated
222
+ @properties['date_updated']
223
+ end
224
+
225
+ ##
226
+ # Provide a user friendly representation
227
+ def to_s
228
+ "<Twilio.Supersim.V1.SettingsUpdateInstance>"
229
+ end
230
+
231
+ ##
232
+ # Provide a detailed, user friendly representation
233
+ def inspect
234
+ "<Twilio.Supersim.V1.SettingsUpdateInstance>"
235
+ end
236
+ end
237
+ end
238
+ end
239
+ end
240
+ end
@@ -260,10 +260,10 @@ module Twilio
260
260
  'fleet_sid' => payload['fleet_sid'],
261
261
  'iso_country' => payload['iso_country'],
262
262
  'period' => payload['period'],
263
- 'data_upload' => payload['data_upload'].to_i,
264
- 'data_download' => payload['data_download'].to_i,
265
- 'data_total' => payload['data_total'].to_i,
266
- 'data_total_billed' => payload['data_total_billed'].to_f,
263
+ 'data_upload' => payload['data_upload'] == nil ? payload['data_upload'] : payload['data_upload'].to_i,
264
+ 'data_download' => payload['data_download'] == nil ? payload['data_download'] : payload['data_download'].to_i,
265
+ 'data_total' => payload['data_total'] == nil ? payload['data_total'] : payload['data_total'].to_i,
266
+ 'data_total_billed' => payload['data_total_billed'] == nil ? payload['data_total_billed'] : payload['data_total_billed'].to_f,
267
267
  'billed_unit' => payload['billed_unit'],
268
268
  }
269
269
  end
@@ -20,6 +20,7 @@ module Twilio
20
20
  @ip_commands = nil
21
21
  @networks = nil
22
22
  @network_access_profiles = nil
23
+ @settings_updates = nil
23
24
  @sims = nil
24
25
  @sms_commands = nil
25
26
  @usage_records = nil
@@ -100,6 +101,12 @@ module Twilio
100
101
  end
101
102
  end
102
103
 
104
+ ##
105
+ # @return [Twilio::REST::Supersim::V1::SettingsUpdateContext]
106
+ def settings_updates
107
+ @settings_updates ||= SettingsUpdateList.new self
108
+ end
109
+
103
110
  ##
104
111
  # @param [String] sid The SID of the Sim resource to fetch.
105
112
  # @return [Twilio::REST::Supersim::V1::SimContext] if sid was passed.
@@ -73,6 +73,12 @@ module Twilio
73
73
  self.v1.network_access_profiles(sid)
74
74
  end
75
75
 
76
+ ##
77
+ # @return [Twilio::REST::Supersim::V1::SettingsUpdateInstance]
78
+ def settings_updates
79
+ self.v1.settings_updates()
80
+ end
81
+
76
82
  ##
77
83
  # @param [String] sid The unique string that identifies the Sim resource.
78
84
  # @return [Twilio::REST::Supersim::V1::SimInstance] if sid was passed.
@@ -328,7 +328,7 @@ module Twilio
328
328
 
329
329
  # Marshaled Properties
330
330
  @properties = {
331
- 'index' => payload['index'].to_i,
331
+ 'index' => payload['index'] == nil ? payload['index'] : payload['index'].to_i,
332
332
  'account_sid' => payload['account_sid'],
333
333
  'service_sid' => payload['service_sid'],
334
334
  'list_sid' => payload['list_sid'],
@@ -372,7 +372,7 @@ module Twilio
372
372
  'reachability_webhooks_enabled' => payload['reachability_webhooks_enabled'],
373
373
  'acl_enabled' => payload['acl_enabled'],
374
374
  'reachability_debouncing_enabled' => payload['reachability_debouncing_enabled'],
375
- 'reachability_debouncing_window' => payload['reachability_debouncing_window'].to_i,
375
+ 'reachability_debouncing_window' => payload['reachability_debouncing_window'] == nil ? payload['reachability_debouncing_window'] : payload['reachability_debouncing_window'].to_i,
376
376
  'links' => payload['links'],
377
377
  }
378
378
 
@@ -313,7 +313,7 @@ module Twilio
313
313
  'description' => payload['description'],
314
314
  'event_data' => payload['event_data'],
315
315
  'event_date' => Twilio.deserialize_iso8601_datetime(payload['event_date']),
316
- 'event_date_ms' => payload['event_date_ms'].to_i,
316
+ 'event_date_ms' => payload['event_date_ms'] == nil ? payload['event_date_ms'] : payload['event_date_ms'].to_i,
317
317
  'event_type' => payload['event_type'],
318
318
  'resource_sid' => payload['resource_sid'],
319
319
  'resource_type' => payload['resource_type'],
@@ -35,6 +35,7 @@ module Twilio
35
35
  # @param [reservation.Status] reservation_status Returns the list of reservations
36
36
  # for a task with a specified ReservationStatus. Can be: `pending`, `accepted`,
37
37
  # `rejected`, or `timeout`.
38
+ # @param [String] worker_sid The SID of the reserved Worker resource to read.
38
39
  # @param [Integer] limit Upper limit for the number of records to return. stream()
39
40
  # guarantees to never return more than limit. Default is no limit
40
41
  # @param [Integer] page_size Number of records to fetch per request, when
@@ -42,8 +43,13 @@ module Twilio
42
43
  # but a limit is defined, stream() will attempt to read the limit with the most
43
44
  # efficient page size, i.e. min(limit, 1000)
44
45
  # @return [Array] Array of up to limit results
45
- def list(reservation_status: :unset, limit: nil, page_size: nil)
46
- self.stream(reservation_status: reservation_status, limit: limit, page_size: page_size).entries
46
+ def list(reservation_status: :unset, worker_sid: :unset, limit: nil, page_size: nil)
47
+ self.stream(
48
+ reservation_status: reservation_status,
49
+ worker_sid: worker_sid,
50
+ limit: limit,
51
+ page_size: page_size
52
+ ).entries
47
53
  end
48
54
 
49
55
  ##
@@ -53,6 +59,7 @@ module Twilio
53
59
  # @param [reservation.Status] reservation_status Returns the list of reservations
54
60
  # for a task with a specified ReservationStatus. Can be: `pending`, `accepted`,
55
61
  # `rejected`, or `timeout`.
62
+ # @param [String] worker_sid The SID of the reserved Worker resource to read.
56
63
  # @param [Integer] limit Upper limit for the number of records to return. stream()
57
64
  # guarantees to never return more than limit. Default is no limit.
58
65
  # @param [Integer] page_size Number of records to fetch per request, when
@@ -60,10 +67,14 @@ module Twilio
60
67
  # but a limit is defined, stream() will attempt to read the limit with the most
61
68
  # efficient page size, i.e. min(limit, 1000)
62
69
  # @return [Enumerable] Enumerable that will yield up to limit results
63
- def stream(reservation_status: :unset, limit: nil, page_size: nil)
70
+ def stream(reservation_status: :unset, worker_sid: :unset, limit: nil, page_size: nil)
64
71
  limits = @version.read_limits(limit, page_size)
65
72
 
66
- page = self.page(reservation_status: reservation_status, page_size: limits[:page_size], )
73
+ page = self.page(
74
+ reservation_status: reservation_status,
75
+ worker_sid: worker_sid,
76
+ page_size: limits[:page_size],
77
+ )
67
78
 
68
79
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
69
80
  end
@@ -88,13 +99,15 @@ module Twilio
88
99
  # @param [reservation.Status] reservation_status Returns the list of reservations
89
100
  # for a task with a specified ReservationStatus. Can be: `pending`, `accepted`,
90
101
  # `rejected`, or `timeout`.
102
+ # @param [String] worker_sid The SID of the reserved Worker resource to read.
91
103
  # @param [String] page_token PageToken provided by the API
92
104
  # @param [Integer] page_number Page Number, this value is simply for client state
93
105
  # @param [Integer] page_size Number of records to return, defaults to 50
94
106
  # @return [Page] Page of ReservationInstance
95
- def page(reservation_status: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
107
+ def page(reservation_status: :unset, worker_sid: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
96
108
  params = Twilio::Values.of({
97
109
  'ReservationStatus' => reservation_status,
110
+ 'WorkerSid' => worker_sid,
98
111
  'PageToken' => page_token,
99
112
  'Page' => page_number,
100
113
  'PageSize' => page_size,
@@ -423,21 +423,21 @@ module Twilio
423
423
  # Marshaled Properties
424
424
  @properties = {
425
425
  'account_sid' => payload['account_sid'],
426
- 'age' => payload['age'].to_i,
426
+ 'age' => payload['age'] == nil ? payload['age'] : payload['age'].to_i,
427
427
  'assignment_status' => payload['assignment_status'],
428
428
  'attributes' => payload['attributes'],
429
429
  'addons' => payload['addons'],
430
430
  'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
431
431
  'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
432
432
  'task_queue_entered_date' => Twilio.deserialize_iso8601_datetime(payload['task_queue_entered_date']),
433
- 'priority' => payload['priority'].to_i,
433
+ 'priority' => payload['priority'] == nil ? payload['priority'] : payload['priority'].to_i,
434
434
  'reason' => payload['reason'],
435
435
  'sid' => payload['sid'],
436
436
  'task_queue_sid' => payload['task_queue_sid'],
437
437
  'task_queue_friendly_name' => payload['task_queue_friendly_name'],
438
438
  'task_channel_sid' => payload['task_channel_sid'],
439
439
  'task_channel_unique_name' => payload['task_channel_unique_name'],
440
- 'timeout' => payload['timeout'].to_i,
440
+ 'timeout' => payload['timeout'] == nil ? payload['timeout'] : payload['timeout'].to_i,
441
441
  'workflow_sid' => payload['workflow_sid'],
442
442
  'workflow_friendly_name' => payload['workflow_friendly_name'],
443
443
  'workspace_sid' => payload['workspace_sid'],
@@ -155,25 +155,25 @@ module Twilio
155
155
  # Marshaled Properties
156
156
  @properties = {
157
157
  'account_sid' => payload['account_sid'],
158
- 'avg_task_acceptance_time' => payload['avg_task_acceptance_time'].to_i,
158
+ 'avg_task_acceptance_time' => payload['avg_task_acceptance_time'] == nil ? payload['avg_task_acceptance_time'] : payload['avg_task_acceptance_time'].to_i,
159
159
  'start_time' => Twilio.deserialize_iso8601_datetime(payload['start_time']),
160
160
  'end_time' => Twilio.deserialize_iso8601_datetime(payload['end_time']),
161
- 'reservations_created' => payload['reservations_created'].to_i,
162
- 'reservations_accepted' => payload['reservations_accepted'].to_i,
163
- 'reservations_rejected' => payload['reservations_rejected'].to_i,
164
- 'reservations_timed_out' => payload['reservations_timed_out'].to_i,
165
- 'reservations_canceled' => payload['reservations_canceled'].to_i,
166
- 'reservations_rescinded' => payload['reservations_rescinded'].to_i,
161
+ 'reservations_created' => payload['reservations_created'] == nil ? payload['reservations_created'] : payload['reservations_created'].to_i,
162
+ 'reservations_accepted' => payload['reservations_accepted'] == nil ? payload['reservations_accepted'] : payload['reservations_accepted'].to_i,
163
+ 'reservations_rejected' => payload['reservations_rejected'] == nil ? payload['reservations_rejected'] : payload['reservations_rejected'].to_i,
164
+ 'reservations_timed_out' => payload['reservations_timed_out'] == nil ? payload['reservations_timed_out'] : payload['reservations_timed_out'].to_i,
165
+ 'reservations_canceled' => payload['reservations_canceled'] == nil ? payload['reservations_canceled'] : payload['reservations_canceled'].to_i,
166
+ 'reservations_rescinded' => payload['reservations_rescinded'] == nil ? payload['reservations_rescinded'] : payload['reservations_rescinded'].to_i,
167
167
  'split_by_wait_time' => payload['split_by_wait_time'],
168
168
  'task_queue_sid' => payload['task_queue_sid'],
169
169
  'wait_duration_until_accepted' => payload['wait_duration_until_accepted'],
170
170
  'wait_duration_until_canceled' => payload['wait_duration_until_canceled'],
171
171
  'wait_duration_in_queue_until_accepted' => payload['wait_duration_in_queue_until_accepted'],
172
- 'tasks_canceled' => payload['tasks_canceled'].to_i,
173
- 'tasks_completed' => payload['tasks_completed'].to_i,
174
- 'tasks_deleted' => payload['tasks_deleted'].to_i,
175
- 'tasks_entered' => payload['tasks_entered'].to_i,
176
- 'tasks_moved' => payload['tasks_moved'].to_i,
172
+ 'tasks_canceled' => payload['tasks_canceled'] == nil ? payload['tasks_canceled'] : payload['tasks_canceled'].to_i,
173
+ 'tasks_completed' => payload['tasks_completed'] == nil ? payload['tasks_completed'] : payload['tasks_completed'].to_i,
174
+ 'tasks_deleted' => payload['tasks_deleted'] == nil ? payload['tasks_deleted'] : payload['tasks_deleted'].to_i,
175
+ 'tasks_entered' => payload['tasks_entered'] == nil ? payload['tasks_entered'] : payload['tasks_entered'].to_i,
176
+ 'tasks_moved' => payload['tasks_moved'] == nil ? payload['tasks_moved'] : payload['tasks_moved'].to_i,
177
177
  'workspace_sid' => payload['workspace_sid'],
178
178
  'url' => payload['url'],
179
179
  }
@@ -137,16 +137,16 @@ module Twilio
137
137
  @properties = {
138
138
  'account_sid' => payload['account_sid'],
139
139
  'activity_statistics' => payload['activity_statistics'],
140
- 'longest_task_waiting_age' => payload['longest_task_waiting_age'].to_i,
140
+ 'longest_task_waiting_age' => payload['longest_task_waiting_age'] == nil ? payload['longest_task_waiting_age'] : payload['longest_task_waiting_age'].to_i,
141
141
  'longest_task_waiting_sid' => payload['longest_task_waiting_sid'],
142
- 'longest_relative_task_age_in_queue' => payload['longest_relative_task_age_in_queue'].to_i,
142
+ 'longest_relative_task_age_in_queue' => payload['longest_relative_task_age_in_queue'] == nil ? payload['longest_relative_task_age_in_queue'] : payload['longest_relative_task_age_in_queue'].to_i,
143
143
  'longest_relative_task_sid_in_queue' => payload['longest_relative_task_sid_in_queue'],
144
144
  'task_queue_sid' => payload['task_queue_sid'],
145
145
  'tasks_by_priority' => payload['tasks_by_priority'],
146
146
  'tasks_by_status' => payload['tasks_by_status'],
147
- 'total_available_workers' => payload['total_available_workers'].to_i,
148
- 'total_eligible_workers' => payload['total_eligible_workers'].to_i,
149
- 'total_tasks' => payload['total_tasks'].to_i,
147
+ 'total_available_workers' => payload['total_available_workers'] == nil ? payload['total_available_workers'] : payload['total_available_workers'].to_i,
148
+ 'total_eligible_workers' => payload['total_eligible_workers'] == nil ? payload['total_eligible_workers'] : payload['total_eligible_workers'].to_i,
149
+ 'total_tasks' => payload['total_tasks'] == nil ? payload['total_tasks'] : payload['total_tasks'].to_i,
150
150
  'workspace_sid' => payload['workspace_sid'],
151
151
  'url' => payload['url'],
152
152
  }