twilio-ruby 5.45.1 → 5.49.0

Sign up to get free protection for your applications and to get access to all the features.
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
  ##