twilio-ruby 5.45.1 → 5.49.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (232) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -0
  3. data/CHANGES.md +108 -0
  4. data/LICENSE +1 -1
  5. data/README.md +16 -2
  6. data/lib/twilio-ruby/rest/api.rb +1 -1
  7. data/lib/twilio-ruby/rest/api/v2010.rb +5 -4
  8. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +1 -1
  9. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +8 -8
  10. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +4 -4
  11. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +17 -17
  12. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +1 -1
  13. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +4 -4
  14. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +11 -11
  15. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +3 -3
  16. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +5 -5
  17. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +6 -3
  18. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +1 -1
  19. data/lib/twilio-ruby/rest/autopilot/v1.rb +5 -4
  20. data/lib/twilio-ruby/rest/bulkexports.rb +4 -2
  21. data/lib/twilio-ruby/rest/bulkexports/v1.rb +14 -10
  22. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +7 -4
  23. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +7 -4
  24. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +5 -3
  25. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +5 -3
  26. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +5 -3
  27. data/lib/twilio-ruby/rest/chat/v1.rb +10 -8
  28. data/lib/twilio-ruby/rest/chat/v1/service.rb +5 -5
  29. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +6 -6
  30. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +3 -3
  31. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +3 -3
  32. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +9 -9
  33. data/lib/twilio-ruby/rest/chat/v2.rb +10 -8
  34. data/lib/twilio-ruby/rest/chat/v2/service.rb +5 -5
  35. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +7 -7
  36. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +6 -6
  37. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +3 -3
  38. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +3 -3
  39. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +27 -24
  40. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +9 -9
  41. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +10 -10
  42. data/lib/twilio-ruby/rest/client.rb +8 -1
  43. data/lib/twilio-ruby/rest/conversations/v1.rb +25 -20
  44. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +9 -9
  45. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +1 -1
  46. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +9 -9
  47. data/lib/twilio-ruby/rest/conversations/v1/role.rb +9 -9
  48. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +7 -7
  49. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +1 -1
  50. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +9 -9
  51. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +9 -9
  52. data/lib/twilio-ruby/rest/events/v1.rb +20 -16
  53. data/lib/twilio-ruby/rest/events/v1/event_type.rb +4 -4
  54. data/lib/twilio-ruby/rest/events/v1/schema.rb +4 -4
  55. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +4 -4
  56. data/lib/twilio-ruby/rest/events/v1/sink.rb +8 -6
  57. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +3 -3
  58. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +3 -3
  59. data/lib/twilio-ruby/rest/events/v1/subscription.rb +7 -6
  60. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +3 -3
  61. data/lib/twilio-ruby/rest/fax/v1.rb +5 -4
  62. data/lib/twilio-ruby/rest/flex_api/v1.rb +15 -12
  63. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +18 -4
  64. data/lib/twilio-ruby/rest/insights.rb +1 -1
  65. data/lib/twilio-ruby/rest/insights/v1.rb +11 -9
  66. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +8 -9
  67. data/lib/twilio-ruby/rest/insights/v1/room.rb +55 -43
  68. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +22 -22
  69. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +10 -8
  70. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +3 -3
  71. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +3 -3
  72. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +3 -3
  73. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +3 -3
  74. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +4 -4
  75. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +10 -8
  76. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +3 -3
  77. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +7 -7
  78. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +3 -3
  79. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +3 -3
  80. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +3 -3
  81. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +6 -6
  82. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +4 -4
  83. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +4 -4
  84. data/lib/twilio-ruby/rest/lookups/v1.rb +5 -4
  85. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +16 -16
  86. data/lib/twilio-ruby/rest/messaging.rb +8 -0
  87. data/lib/twilio-ruby/rest/messaging/v1.rb +21 -4
  88. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +328 -0
  89. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +1 -1
  90. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +1 -1
  91. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +1 -1
  92. data/lib/twilio-ruby/rest/monitor/v1.rb +10 -8
  93. data/lib/twilio-ruby/rest/notify/v1.rb +10 -8
  94. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +16 -15
  95. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +18 -18
  96. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +1 -1
  97. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +1 -1
  98. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +1 -1
  99. data/lib/twilio-ruby/rest/preview.rb +4 -2
  100. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +14 -10
  101. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +7 -4
  102. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +7 -4
  103. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +5 -3
  104. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +5 -3
  105. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +5 -3
  106. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +5 -4
  107. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +10 -8
  108. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +13 -13
  109. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +2 -2
  110. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +8 -8
  111. data/lib/twilio-ruby/rest/preview/marketplace.rb +10 -8
  112. data/lib/twilio-ruby/rest/preview/sync.rb +5 -4
  113. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +4 -8
  114. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +5 -4
  115. data/lib/twilio-ruby/rest/preview/understand.rb +5 -4
  116. data/lib/twilio-ruby/rest/preview/wireless.rb +15 -12
  117. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +2 -2
  118. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +2 -2
  119. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +1 -1
  120. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +2 -2
  121. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +2 -2
  122. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +1 -1
  123. data/lib/twilio-ruby/rest/proxy/v1.rb +5 -4
  124. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +1 -1
  125. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +1 -1
  126. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +1 -1
  127. data/lib/twilio-ruby/rest/serverless/v1.rb +5 -4
  128. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +17 -7
  129. data/lib/twilio-ruby/rest/studio/v1.rb +5 -4
  130. data/lib/twilio-ruby/rest/studio/v2.rb +5 -4
  131. data/lib/twilio-ruby/rest/studio/v2/flow.rb +6 -14
  132. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +0 -8
  133. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +0 -8
  134. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +0 -8
  135. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +0 -8
  136. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +2 -10
  137. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +10 -16
  138. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +6 -11
  139. data/lib/twilio-ruby/rest/supersim/v1.rb +25 -20
  140. data/lib/twilio-ruby/rest/supersim/v1/command.rb +4 -4
  141. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +33 -12
  142. data/lib/twilio-ruby/rest/supersim/v1/network.rb +5 -5
  143. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +6 -6
  144. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +5 -5
  145. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +4 -4
  146. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +3 -3
  147. data/lib/twilio-ruby/rest/sync/v1.rb +5 -4
  148. data/lib/twilio-ruby/rest/sync/v1/service.rb +0 -8
  149. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +25 -52
  150. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +0 -8
  151. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +18 -40
  152. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +46 -76
  153. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +0 -8
  154. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +18 -40
  155. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +47 -79
  156. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +1 -9
  157. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +14 -38
  158. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +1 -7
  159. data/lib/twilio-ruby/rest/taskrouter/v1.rb +5 -4
  160. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +17 -17
  161. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +10 -10
  162. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +1 -1
  163. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +10 -10
  164. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +1 -1
  165. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +1 -1
  166. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +1 -1
  167. data/lib/twilio-ruby/rest/trunking/v1.rb +5 -4
  168. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +1 -1
  169. data/lib/twilio-ruby/rest/trusthub.rb +100 -0
  170. data/lib/twilio-ruby/rest/trusthub/v1.rb +146 -0
  171. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +523 -0
  172. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +359 -0
  173. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +330 -0
  174. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +328 -0
  175. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +356 -0
  176. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +271 -0
  177. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +262 -0
  178. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +369 -0
  179. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +271 -0
  180. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +523 -0
  181. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +359 -0
  182. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +330 -0
  183. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +328 -0
  184. data/lib/twilio-ruby/rest/verify.rb +9 -0
  185. data/lib/twilio-ruby/rest/verify/v2.rb +26 -8
  186. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +7 -6
  187. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +64 -13
  188. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +1 -1
  189. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +10 -10
  190. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +329 -0
  191. data/lib/twilio-ruby/rest/video/v1.rb +20 -16
  192. data/lib/twilio-ruby/rest/video/v1/composition.rb +16 -15
  193. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +26 -26
  194. data/lib/twilio-ruby/rest/video/v1/recording.rb +6 -6
  195. data/lib/twilio-ruby/rest/video/v1/room.rb +10 -3
  196. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +1 -1
  197. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +1 -1
  198. data/lib/twilio-ruby/rest/voice/v1.rb +20 -16
  199. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +1 -1
  200. data/lib/twilio-ruby/rest/wireless/v1.rb +15 -12
  201. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +4 -4
  202. data/lib/twilio-ruby/twiml/voice_response.rb +38 -8
  203. data/lib/twilio-ruby/version.rb +1 -1
  204. data/spec/integration/api/v2010/account/conference_spec.rb +302 -44
  205. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +4 -16
  206. data/spec/integration/api/v2010/account/message_spec.rb +37 -0
  207. data/spec/integration/events/v1/sink_spec.rb +14 -0
  208. data/spec/integration/flex_api/v1/configuration_spec.rb +24 -0
  209. data/spec/integration/insights/v1/call/summary_spec.rb +1 -0
  210. data/spec/integration/messaging/v1/brand_registration_spec.rb +143 -0
  211. data/spec/integration/preview/sync/service/document_spec.rb +1 -3
  212. data/spec/integration/serverless/v1/service/build_spec.rb +12 -2
  213. data/spec/integration/supersim/v1/fleet_spec.rb +8 -0
  214. data/spec/integration/sync/v1/service/document_spec.rb +1 -3
  215. data/spec/integration/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment_spec.rb +192 -0
  216. data/spec/integration/trusthub/v1/customer_profiles/customer_profiles_entity_assignments_spec.rb +186 -0
  217. data/spec/integration/trusthub/v1/customer_profiles/customer_profiles_evaluations_spec.rb +615 -0
  218. data/spec/integration/trusthub/v1/customer_profiles_spec.rb +255 -0
  219. data/spec/integration/trusthub/v1/end_user_spec.rb +247 -0
  220. data/spec/integration/trusthub/v1/end_user_type_spec.rb +176 -0
  221. data/spec/integration/trusthub/v1/policies_spec.rb +252 -0
  222. data/spec/integration/trusthub/v1/supporting_document_spec.rb +235 -0
  223. data/spec/integration/trusthub/v1/supporting_document_type_spec.rb +159 -0
  224. data/spec/integration/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment_spec.rb +192 -0
  225. data/spec/integration/trusthub/v1/trust_products/trust_products_entity_assignments_spec.rb +186 -0
  226. data/spec/integration/trusthub/v1/trust_products/trust_products_evaluations_spec.rb +615 -0
  227. data/spec/integration/trusthub/v1/trust_products_spec.rb +255 -0
  228. data/spec/integration/verify/v2/service/entity/factor_spec.rb +3 -3
  229. data/spec/integration/verify/v2/verification_attempt_spec.rb +146 -0
  230. data/spec/integration/video/v1/room_spec.rb +5 -0
  231. data/spec/twiml/voice_response_spec.rb +1 -1
  232. metadata +49 -2
@@ -155,20 +155,21 @@ module Twilio
155
155
  # Layouts}[https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts]
156
156
  # for more info. Please, be aware that either video_layout or audio_sources have
157
157
  # to be provided to get a valid creation request
158
- # @param [String] audio_sources An array of track names from the same group room
159
- # to merge into the new composition. Can include zero or more track names. The new
160
- # composition includes all audio sources specified in `audio_sources` except for
161
- # those specified in `audio_sources_excluded`. The track names in this parameter
162
- # can include an asterisk as a wild card character, which will match zero or more
163
- # characters in a track name. For example, `student*` includes `student` as well
164
- # as `studentTeam`. Please, be aware that either video_layout or audio_sources
165
- # have to be provided to get a valid creation request
166
- # @param [String] audio_sources_excluded An array of track names to exclude. The
167
- # new composition includes all audio sources specified in `audio_sources` except
168
- # for those specified in `audio_sources_excluded`. The track names in this
158
+ # @param [Array[String]] audio_sources An array of track names from the same group
159
+ # room to merge into the new composition. Can include zero or more track names.
160
+ # The new composition includes all audio sources specified in `audio_sources`
161
+ # except for those specified in `audio_sources_excluded`. The track names in this
169
162
  # parameter can include an asterisk as a wild card character, which will match
170
- # zero or more characters in a track name. For example, `student*` excludes
171
- # `student` as well as `studentTeam`. This parameter can also be empty.
163
+ # zero or more characters in a track name. For example, `student*` includes
164
+ # `student` as well as `studentTeam`. Please, be aware that either video_layout or
165
+ # audio_sources have to be provided to get a valid creation request
166
+ # @param [Array[String]] audio_sources_excluded An array of track names to
167
+ # exclude. The new composition includes all audio sources specified in
168
+ # `audio_sources` except for those specified in `audio_sources_excluded`. The
169
+ # track names in this parameter can include an asterisk as a wild card character,
170
+ # which will match zero or more characters in a track name. For example,
171
+ # `student*` excludes `student` as well as `studentTeam`. This parameter can also
172
+ # be empty.
172
173
  # @param [String] resolution A string that describes the columns (width) and rows
173
174
  # (height) of the generated composed video in pixels. Defaults to `640x480`.
174
175
  # The string's format is `{width}x{height}` where:
@@ -404,13 +405,13 @@ module Twilio
404
405
  end
405
406
 
406
407
  ##
407
- # @return [String] The array of track names to include in the composition
408
+ # @return [Array[String]] The array of track names to include in the composition
408
409
  def audio_sources
409
410
  @properties['audio_sources']
410
411
  end
411
412
 
412
413
  ##
413
- # @return [String] The array of track names to exclude from the composition
414
+ # @return [Array[String]] The array of track names to exclude from the composition
414
415
  def audio_sources_excluded
415
416
  @properties['audio_sources_excluded']
416
417
  end
@@ -167,17 +167,17 @@ module Twilio
167
167
  # composition hook in terms of regions. See {Specifying Video
168
168
  # Layouts}[https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts]
169
169
  # for more info.
170
- # @param [String] audio_sources An array of track names from the same group room
171
- # to merge into the compositions created by the composition hook. Can include zero
172
- # or more track names. A composition triggered by the composition hook includes
173
- # all audio sources specified in `audio_sources` except those specified in
174
- # `audio_sources_excluded`. The track names in this parameter can include an
170
+ # @param [Array[String]] audio_sources An array of track names from the same group
171
+ # room to merge into the compositions created by the composition hook. Can include
172
+ # zero or more track names. A composition triggered by the composition hook
173
+ # includes all audio sources specified in `audio_sources` except those specified
174
+ # in `audio_sources_excluded`. The track names in this parameter can include an
175
175
  # asterisk as a wild card character, which matches zero or more characters in a
176
176
  # track name. For example, `student*` includes tracks named `student` as well as
177
177
  # `studentTeam`.
178
- # @param [String] audio_sources_excluded An array of track names to exclude. A
179
- # composition triggered by the composition hook includes all audio sources
180
- # specified in `audio_sources` except for those specified in
178
+ # @param [Array[String]] audio_sources_excluded An array of track names to
179
+ # exclude. A composition triggered by the composition hook includes all audio
180
+ # sources specified in `audio_sources` except for those specified in
181
181
  # `audio_sources_excluded`. The track names in this parameter can include an
182
182
  # asterisk as a wild card character, which matches zero or more characters in a
183
183
  # track name. For example, `student*` excludes `student` as well as `studentTeam`.
@@ -323,17 +323,17 @@ module Twilio
323
323
  # composition hook in terms of regions. See {Specifying Video
324
324
  # Layouts}[https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts]
325
325
  # for more info.
326
- # @param [String] audio_sources An array of track names from the same group room
327
- # to merge into the compositions created by the composition hook. Can include zero
328
- # or more track names. A composition triggered by the composition hook includes
329
- # all audio sources specified in `audio_sources` except those specified in
330
- # `audio_sources_excluded`. The track names in this parameter can include an
326
+ # @param [Array[String]] audio_sources An array of track names from the same group
327
+ # room to merge into the compositions created by the composition hook. Can include
328
+ # zero or more track names. A composition triggered by the composition hook
329
+ # includes all audio sources specified in `audio_sources` except those specified
330
+ # in `audio_sources_excluded`. The track names in this parameter can include an
331
331
  # asterisk as a wild card character, which matches zero or more characters in a
332
332
  # track name. For example, `student*` includes tracks named `student` as well as
333
333
  # `studentTeam`.
334
- # @param [String] audio_sources_excluded An array of track names to exclude. A
335
- # composition triggered by the composition hook includes all audio sources
336
- # specified in `audio_sources` except for those specified in
334
+ # @param [Array[String]] audio_sources_excluded An array of track names to
335
+ # exclude. A composition triggered by the composition hook includes all audio
336
+ # sources specified in `audio_sources` except for those specified in
337
337
  # `audio_sources_excluded`. The track names in this parameter can include an
338
338
  # asterisk as a wild card character, which matches zero or more characters in a
339
339
  # track name. For example, `student*` excludes `student` as well as `studentTeam`.
@@ -496,13 +496,13 @@ module Twilio
496
496
  end
497
497
 
498
498
  ##
499
- # @return [String] The array of track names to include in the compositions created by the composition hook
499
+ # @return [Array[String]] The array of track names to include in the compositions created by the composition hook
500
500
  def audio_sources
501
501
  @properties['audio_sources']
502
502
  end
503
503
 
504
504
  ##
505
- # @return [String] The array of track names to exclude from the compositions created by the composition hook
505
+ # @return [Array[String]] The array of track names to exclude from the compositions created by the composition hook
506
506
  def audio_sources_excluded
507
507
  @properties['audio_sources_excluded']
508
508
  end
@@ -575,17 +575,17 @@ module Twilio
575
575
  # composition hook in terms of regions. See {Specifying Video
576
576
  # Layouts}[https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts]
577
577
  # for more info.
578
- # @param [String] audio_sources An array of track names from the same group room
579
- # to merge into the compositions created by the composition hook. Can include zero
580
- # or more track names. A composition triggered by the composition hook includes
581
- # all audio sources specified in `audio_sources` except those specified in
582
- # `audio_sources_excluded`. The track names in this parameter can include an
578
+ # @param [Array[String]] audio_sources An array of track names from the same group
579
+ # room to merge into the compositions created by the composition hook. Can include
580
+ # zero or more track names. A composition triggered by the composition hook
581
+ # includes all audio sources specified in `audio_sources` except those specified
582
+ # in `audio_sources_excluded`. The track names in this parameter can include an
583
583
  # asterisk as a wild card character, which matches zero or more characters in a
584
584
  # track name. For example, `student*` includes tracks named `student` as well as
585
585
  # `studentTeam`.
586
- # @param [String] audio_sources_excluded An array of track names to exclude. A
587
- # composition triggered by the composition hook includes all audio sources
588
- # specified in `audio_sources` except for those specified in
586
+ # @param [Array[String]] audio_sources_excluded An array of track names to
587
+ # exclude. A composition triggered by the composition hook includes all audio
588
+ # sources specified in `audio_sources` except for those specified in
589
589
  # `audio_sources_excluded`. The track names in this parameter can include an
590
590
  # asterisk as a wild card character, which matches zero or more characters in a
591
591
  # track name. For example, `student*` excludes `student` as well as `studentTeam`.
@@ -30,8 +30,8 @@ module Twilio
30
30
  # @param [recording.Status] status Read only the recordings that have this status.
31
31
  # Can be: `processing`, `completed`, or `deleted`.
32
32
  # @param [String] source_sid Read only the recordings that have this `source_sid`.
33
- # @param [String] grouping_sid Read only recordings with this `grouping_sid`,
34
- # which may include a `participant_sid` and/or a `room_sid`.
33
+ # @param [Array[String]] grouping_sid Read only recordings with this
34
+ # `grouping_sid`, which may include a `participant_sid` and/or a `room_sid`.
35
35
  # @param [Time] date_created_after Read only recordings that started on or after
36
36
  # this {ISO 8601}[https://en.wikipedia.org/wiki/ISO_8601] date-time with time
37
37
  # zone.
@@ -67,8 +67,8 @@ module Twilio
67
67
  # @param [recording.Status] status Read only the recordings that have this status.
68
68
  # Can be: `processing`, `completed`, or `deleted`.
69
69
  # @param [String] source_sid Read only the recordings that have this `source_sid`.
70
- # @param [String] grouping_sid Read only recordings with this `grouping_sid`,
71
- # which may include a `participant_sid` and/or a `room_sid`.
70
+ # @param [Array[String]] grouping_sid Read only recordings with this
71
+ # `grouping_sid`, which may include a `participant_sid` and/or a `room_sid`.
72
72
  # @param [Time] date_created_after Read only recordings that started on or after
73
73
  # this {ISO 8601}[https://en.wikipedia.org/wiki/ISO_8601] date-time with time
74
74
  # zone.
@@ -120,8 +120,8 @@ module Twilio
120
120
  # @param [recording.Status] status Read only the recordings that have this status.
121
121
  # Can be: `processing`, `completed`, or `deleted`.
122
122
  # @param [String] source_sid Read only the recordings that have this `source_sid`.
123
- # @param [String] grouping_sid Read only recordings with this `grouping_sid`,
124
- # which may include a `participant_sid` and/or a `room_sid`.
123
+ # @param [Array[String]] grouping_sid Read only recordings with this
124
+ # `grouping_sid`, which may include a `participant_sid` and/or a `room_sid`.
125
125
  # @param [Time] date_created_after Read only recordings that started on or after
126
126
  # this {ISO 8601}[https://en.wikipedia.org/wiki/ISO_8601] date-time with time
127
127
  # zone.
@@ -48,8 +48,8 @@ module Twilio
48
48
  # @param [Boolean] record_participants_on_connect Whether to start recording when
49
49
  # Participants connect. ***This feature is not available in `peer-to-peer`
50
50
  # rooms.***
51
- # @param [room.VideoCodec] video_codecs An array of the video codecs that are
52
- # supported when publishing a track in the room. Can be: `VP8` and `H264`.
51
+ # @param [Array[room.VideoCodec]] video_codecs An array of the video codecs that
52
+ # are supported when publishing a track in the room. Can be: `VP8` and `H264`.
53
53
  # ***This feature is not available in `peer-to-peer` rooms***
54
54
  # @param [String] media_region The region for the media server in Group Rooms.
55
55
  # Can be: one of the {available Media
@@ -357,6 +357,7 @@ module Twilio
357
357
  'duration' => payload['duration'] == nil ? payload['duration'] : payload['duration'].to_i,
358
358
  'type' => payload['type'],
359
359
  'max_participants' => payload['max_participants'].to_i,
360
+ 'max_concurrent_published_tracks' => payload['max_concurrent_published_tracks'] == nil ? payload['max_concurrent_published_tracks'] : payload['max_concurrent_published_tracks'].to_i,
360
361
  'record_participants_on_connect' => payload['record_participants_on_connect'],
361
362
  'video_codecs' => payload['video_codecs'],
362
363
  'media_region' => payload['media_region'],
@@ -458,6 +459,12 @@ module Twilio
458
459
  @properties['max_participants']
459
460
  end
460
461
 
462
+ ##
463
+ # @return [String] The maximum number of published tracks allowed in the room at the same time
464
+ def max_concurrent_published_tracks
465
+ @properties['max_concurrent_published_tracks']
466
+ end
467
+
461
468
  ##
462
469
  # @return [Boolean] Whether to start recording when Participants connect
463
470
  def record_participants_on_connect
@@ -465,7 +472,7 @@ module Twilio
465
472
  end
466
473
 
467
474
  ##
468
- # @return [room.VideoCodec] An array of the video codecs that are supported when publishing a track in the room
475
+ # @return [Array[room.VideoCodec]] An array of the video codecs that are supported when publishing a track in the room
469
476
  def video_codecs
470
477
  @properties['video_codecs']
471
478
  end
@@ -138,7 +138,7 @@ module Twilio
138
138
  end
139
139
 
140
140
  ##
141
- # @return [String] A collection of Subscribe Rules that describe how to include or exclude matching tracks
141
+ # @return [Array[String]] A collection of Subscribe Rules that describe how to include or exclude matching tracks
142
142
  def rules
143
143
  @properties['rules']
144
144
  end
@@ -114,7 +114,7 @@ module Twilio
114
114
  end
115
115
 
116
116
  ##
117
- # @return [String] A collection of recording Rules that describe how to include or exclude matching tracks for recording
117
+ # @return [Array[String]] A collection of recording Rules that describe how to include or exclude matching tracks for recording
118
118
  def rules
119
119
  @properties['rules']
120
120
  end
@@ -29,11 +29,12 @@ module Twilio
29
29
  # @return [Twilio::REST::Voice::V1::ByocTrunkList]
30
30
  def byoc_trunks(sid=:unset)
31
31
  if sid.nil?
32
- raise ArgumentError, 'sid cannot be nil'
33
- elsif sid == :unset
34
- @byoc_trunks ||= ByocTrunkList.new self
32
+ raise ArgumentError, 'sid cannot be nil'
33
+ end
34
+ if sid == :unset
35
+ @byoc_trunks ||= ByocTrunkList.new self
35
36
  else
36
- ByocTrunkContext.new(self, sid)
37
+ ByocTrunkContext.new(self, sid)
37
38
  end
38
39
  end
39
40
 
@@ -44,11 +45,12 @@ module Twilio
44
45
  # @return [Twilio::REST::Voice::V1::ConnectionPolicyList]
45
46
  def connection_policies(sid=:unset)
46
47
  if sid.nil?
47
- raise ArgumentError, 'sid cannot be nil'
48
- elsif sid == :unset
49
- @connection_policies ||= ConnectionPolicyList.new self
48
+ raise ArgumentError, 'sid cannot be nil'
49
+ end
50
+ if sid == :unset
51
+ @connection_policies ||= ConnectionPolicyList.new self
50
52
  else
51
- ConnectionPolicyContext.new(self, sid)
53
+ ConnectionPolicyContext.new(self, sid)
52
54
  end
53
55
  end
54
56
 
@@ -65,11 +67,12 @@ module Twilio
65
67
  # @return [Twilio::REST::Voice::V1::IpRecordList]
66
68
  def ip_records(sid=:unset)
67
69
  if sid.nil?
68
- raise ArgumentError, 'sid cannot be nil'
69
- elsif sid == :unset
70
- @ip_records ||= IpRecordList.new self
70
+ raise ArgumentError, 'sid cannot be nil'
71
+ end
72
+ if sid == :unset
73
+ @ip_records ||= IpRecordList.new self
71
74
  else
72
- IpRecordContext.new(self, sid)
75
+ IpRecordContext.new(self, sid)
73
76
  end
74
77
  end
75
78
 
@@ -80,11 +83,12 @@ module Twilio
80
83
  # @return [Twilio::REST::Voice::V1::SourceIpMappingList]
81
84
  def source_ip_mappings(sid=:unset)
82
85
  if sid.nil?
83
- raise ArgumentError, 'sid cannot be nil'
84
- elsif sid == :unset
85
- @source_ip_mappings ||= SourceIpMappingList.new self
86
+ raise ArgumentError, 'sid cannot be nil'
87
+ end
88
+ if sid == :unset
89
+ @source_ip_mappings ||= SourceIpMappingList.new self
86
90
  else
87
- SourceIpMappingContext.new(self, sid)
91
+ SourceIpMappingContext.new(self, sid)
88
92
  end
89
93
  end
90
94
 
@@ -334,7 +334,7 @@ module Twilio
334
334
  end
335
335
 
336
336
  ##
337
- # @return [String] The E.164 assigned country codes(s)
337
+ # @return [Array[String]] The E.164 assigned country codes(s)
338
338
  def country_codes
339
339
  @properties['country_codes']
340
340
  end
@@ -33,11 +33,12 @@ module Twilio
33
33
  # @return [Twilio::REST::Wireless::V1::CommandList]
34
34
  def commands(sid=:unset)
35
35
  if sid.nil?
36
- raise ArgumentError, 'sid cannot be nil'
37
- elsif sid == :unset
38
- @commands ||= CommandList.new self
36
+ raise ArgumentError, 'sid cannot be nil'
37
+ end
38
+ if sid == :unset
39
+ @commands ||= CommandList.new self
39
40
  else
40
- CommandContext.new(self, sid)
41
+ CommandContext.new(self, sid)
41
42
  end
42
43
  end
43
44
 
@@ -47,11 +48,12 @@ module Twilio
47
48
  # @return [Twilio::REST::Wireless::V1::RatePlanList]
48
49
  def rate_plans(sid=:unset)
49
50
  if sid.nil?
50
- raise ArgumentError, 'sid cannot be nil'
51
- elsif sid == :unset
52
- @rate_plans ||= RatePlanList.new self
51
+ raise ArgumentError, 'sid cannot be nil'
52
+ end
53
+ if sid == :unset
54
+ @rate_plans ||= RatePlanList.new self
53
55
  else
54
- RatePlanContext.new(self, sid)
56
+ RatePlanContext.new(self, sid)
55
57
  end
56
58
  end
57
59
 
@@ -61,11 +63,12 @@ module Twilio
61
63
  # @return [Twilio::REST::Wireless::V1::SimList]
62
64
  def sims(sid=:unset)
63
65
  if sid.nil?
64
- raise ArgumentError, 'sid cannot be nil'
65
- elsif sid == :unset
66
- @sims ||= SimList.new self
66
+ raise ArgumentError, 'sid cannot be nil'
67
+ end
68
+ if sid == :unset
69
+ @sims ||= SimList.new self
67
70
  else
68
- SimContext.new(self, sid)
71
+ SimContext.new(self, sid)
69
72
  end
70
73
  end
71
74
 
@@ -127,9 +127,9 @@ module Twilio
127
127
  # @param [Boolean] national_roaming_enabled Whether SIMs can roam on networks
128
128
  # other than the home network (T-Mobile USA) in the United States. See {national
129
129
  # roaming}[https://www.twilio.com/docs/wireless/api/rateplan-resource#national-roaming].
130
- # @param [String] international_roaming The list of services that SIMs capable of
131
- # using GPRS/3G/4G/LTE data connectivity can use outside of the United States. Can
132
- # be: `data`, `voice`, and `messaging`.
130
+ # @param [Array[String]] international_roaming The list of services that SIMs
131
+ # capable of using GPRS/3G/4G/LTE data connectivity can use outside of the United
132
+ # States. Can be: `data`, `voice`, and `messaging`.
133
133
  # @param [String] national_roaming_data_limit The total data usage (download and
134
134
  # upload combined) in Megabytes that the Network allows during one month on
135
135
  # non-home networks in the United States. The metering period begins the day of
@@ -371,7 +371,7 @@ module Twilio
371
371
  end
372
372
 
373
373
  ##
374
- # @return [String] The services that SIMs capable of using GPRS/3G/4G/LTE data connectivity can use outside of the United States
374
+ # @return [Array[String]] The services that SIMs capable of using GPRS/3G/4G/LTE data connectivity can use outside of the United States
375
375
  def international_roaming
376
376
  @properties['international_roaming']
377
377
  end
@@ -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)
@@ -337,9 +339,11 @@ module Twilio
337
339
  # connector_name:: Unique name for Stream Connector
338
340
  # url:: URL of the remote service where the Stream is routed
339
341
  # track:: Track to be streamed to remote service
342
+ # status_callback:: Status Callback URL
343
+ # status_callback_method:: Status Callback URL method
340
344
  # keyword_args:: additional attributes
341
- def stream(name: nil, connector_name: nil, url: nil, track: nil, **keyword_args)
342
- stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, **keyword_args)
345
+ def stream(name: nil, connector_name: nil, url: nil, track: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
346
+ stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args)
343
347
 
344
348
  yield(stream) if block_given?
345
349
  append(stream)
@@ -426,9 +430,11 @@ module Twilio
426
430
  # connector_name:: Unique name for Stream Connector
427
431
  # url:: URL of the remote service where the Stream is routed
428
432
  # track:: Track to be streamed to remote service
433
+ # status_callback:: Status Callback URL
434
+ # status_callback_method:: Status Callback URL method
429
435
  # keyword_args:: additional attributes
430
- def stream(name: nil, connector_name: nil, url: nil, track: nil, **keyword_args)
431
- stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, **keyword_args)
436
+ def stream(name: nil, connector_name: nil, url: nil, track: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
437
+ stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args)
432
438
 
433
439
  yield(stream) if block_given?
434
440
  append(stream)
@@ -1144,13 +1150,37 @@ module Twilio
1144
1150
  # connector_name:: Unique name for Stream Connector
1145
1151
  # url:: URL of the remote service where the Stream is routed
1146
1152
  # track:: Track to be streamed to remote service
1153
+ # status_callback:: Status Callback URL
1154
+ # status_callback_method:: Status Callback URL method
1147
1155
  # keyword_args:: additional attributes
1148
- def stream(name: nil, connector_name: nil, url: nil, track: nil, **keyword_args)
1149
- stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, **keyword_args)
1156
+ def stream(name: nil, connector_name: nil, url: nil, track: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
1157
+ stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args)
1150
1158
 
1151
1159
  yield(stream) if block_given?
1152
1160
  append(stream)
1153
1161
  end
1162
+
1163
+ ##
1164
+ # Create a new <VirtualAgent> element
1165
+ # connector_name:: Defines the conversation profile Dialogflow needs to use
1166
+ # language:: Language to be used by Dialogflow to transcribe speech
1167
+ # sentiment_analysis:: Whether sentiment analysis needs to be enabled or not
1168
+ # status_callback:: URL to post status callbacks from Twilio
1169
+ # keyword_args:: additional attributes
1170
+ def virtual_agent(connector_name: nil, language: nil, sentiment_analysis: nil, status_callback: nil, **keyword_args)
1171
+ append(VirtualAgent.new(connector_name: connector_name, language: language, sentiment_analysis: sentiment_analysis, status_callback: status_callback, **keyword_args))
1172
+ end
1173
+ end
1174
+
1175
+ ##
1176
+ # <VirtualAgent> TwiML Noun
1177
+ class VirtualAgent < TwiML
1178
+ def initialize(**keyword_args)
1179
+ super(**keyword_args)
1180
+ @name = 'VirtualAgent'
1181
+
1182
+ yield(self) if block_given?
1183
+ end
1154
1184
  end
1155
1185
 
1156
1186
  ##