twilio-ruby 5.42.0 → 5.46.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (187) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -0
  3. data/CHANGES.md +95 -0
  4. data/LICENSE +1 -1
  5. data/README.md +18 -2
  6. data/lib/twilio-ruby.rb +1 -1
  7. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +1 -1
  8. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +34 -9
  9. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +201 -0
  10. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +13 -13
  11. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +1 -1
  12. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +17 -5
  13. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +17 -12
  14. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +3 -3
  15. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +5 -5
  16. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +6 -3
  17. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +1 -1
  18. data/lib/twilio-ruby/rest/bulkexports.rb +4 -2
  19. data/lib/twilio-ruby/rest/bulkexports/v1.rb +4 -2
  20. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +7 -4
  21. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +7 -4
  22. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +5 -3
  23. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +5 -3
  24. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +5 -3
  25. data/lib/twilio-ruby/rest/chat/v1/service.rb +5 -5
  26. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +6 -6
  27. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +3 -3
  28. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +3 -3
  29. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +9 -9
  30. data/lib/twilio-ruby/rest/chat/v2/service.rb +5 -5
  31. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +7 -7
  32. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +6 -6
  33. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +3 -3
  34. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +3 -3
  35. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +27 -24
  36. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +9 -9
  37. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +10 -10
  38. data/lib/twilio-ruby/rest/client.rb +29 -3
  39. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +9 -9
  40. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +1 -1
  41. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +32 -2
  42. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +9 -9
  43. data/lib/twilio-ruby/rest/conversations/v1/role.rb +9 -9
  44. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +7 -7
  45. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +17 -2
  46. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +1 -1
  47. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +32 -2
  48. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +9 -9
  49. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +9 -9
  50. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +8 -1
  51. data/lib/twilio-ruby/rest/conversations/v1/user.rb +8 -1
  52. data/lib/twilio-ruby/rest/events/v1/sink.rb +2 -1
  53. data/lib/twilio-ruby/rest/events/v1/subscription.rb +14 -7
  54. data/lib/twilio-ruby/rest/flex_api.rb +1 -1
  55. data/lib/twilio-ruby/rest/flex_api/v1.rb +1 -1
  56. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +5 -5
  57. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +4 -4
  58. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +88 -76
  59. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +2 -2
  60. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +8 -9
  61. data/lib/twilio-ruby/rest/insights/v1/room.rb +7 -7
  62. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +2 -9
  63. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +3 -3
  64. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +3 -3
  65. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +3 -3
  66. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +3 -3
  67. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +4 -4
  68. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +3 -3
  69. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +7 -7
  70. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +3 -3
  71. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +3 -3
  72. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +3 -3
  73. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +6 -6
  74. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +4 -4
  75. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +4 -4
  76. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +16 -16
  77. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +1 -1
  78. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +1 -1
  79. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +1 -1
  80. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +16 -15
  81. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +18 -18
  82. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +1 -1
  83. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +1 -1
  84. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +1 -1
  85. data/lib/twilio-ruby/rest/preview.rb +4 -23
  86. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +4 -2
  87. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +7 -4
  88. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +7 -4
  89. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +5 -3
  90. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +5 -3
  91. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +5 -3
  92. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +13 -13
  93. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +2 -2
  94. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +8 -8
  95. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -30
  96. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +2 -2
  97. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +2 -2
  98. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +1 -1
  99. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +2 -2
  100. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +2 -2
  101. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +1 -1
  102. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +1 -1
  103. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +1 -1
  104. data/lib/twilio-ruby/rest/serverless/v1/service.rb +5 -5
  105. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +4 -4
  106. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +4 -4
  107. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +10 -10
  108. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +4 -4
  109. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +4 -4
  110. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +4 -4
  111. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +4 -4
  112. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +4 -4
  113. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +4 -4
  114. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +4 -4
  115. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +4 -4
  116. data/lib/twilio-ruby/rest/studio/v2/flow.rb +2 -2
  117. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +1 -1
  118. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +3 -3
  119. data/lib/twilio-ruby/rest/supersim/v1/network.rb +1 -1
  120. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +2 -2
  121. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +1 -1
  122. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +7 -5
  123. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +4 -2
  124. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +3 -3
  125. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +4 -2
  126. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +4 -4
  127. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +1 -1
  128. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +1 -1
  129. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +12 -9
  130. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +10 -10
  131. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +16 -16
  132. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +1 -1
  133. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +10 -10
  134. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +1 -1
  135. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +1 -1
  136. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +1 -1
  137. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +1 -1
  138. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +21 -24
  139. data/lib/twilio-ruby/rest/verify/v2/service.rb +3 -3
  140. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +3 -1
  141. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +8 -6
  142. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +1 -1
  143. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +10 -10
  144. data/lib/twilio-ruby/rest/video/v1/composition.rb +16 -15
  145. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +26 -26
  146. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +6 -6
  147. data/lib/twilio-ruby/rest/video/v1/recording.rb +6 -6
  148. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +6 -6
  149. data/lib/twilio-ruby/rest/video/v1/room.rb +10 -3
  150. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +1 -1
  151. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +1 -1
  152. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +1 -1
  153. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +4 -4
  154. data/lib/twilio-ruby/twiml/voice_response.rb +8 -4
  155. data/lib/twilio-ruby/util/configuration.rb +5 -1
  156. data/lib/twilio-ruby/version.rb +1 -1
  157. data/spec/integration/api/v2010/account/call/event_spec.rb +102 -0
  158. data/spec/integration/api/v2010/account/call/recording_spec.rb +4 -0
  159. data/spec/integration/api/v2010/account/call_spec.rb +20 -10
  160. data/spec/integration/api/v2010/account/conference/participant_spec.rb +30 -0
  161. data/spec/integration/conversations/v1/conversation/participant_spec.rb +30 -10
  162. data/spec/integration/conversations/v1/service/configuration_spec.rb +2 -0
  163. data/spec/integration/conversations/v1/service/conversation/participant_spec.rb +30 -10
  164. data/spec/integration/conversations/v1/service/user_spec.rb +9 -4
  165. data/spec/integration/conversations/v1/user_spec.rb +9 -4
  166. data/spec/integration/events/v1/sink_spec.rb +14 -0
  167. data/spec/integration/events/v1/subscription_spec.rb +49 -0
  168. data/spec/integration/insights/v1/call/summary_spec.rb +1 -0
  169. data/spec/integration/insights/v1/room/participant_spec.rb +0 -2
  170. data/spec/integration/lookups/v1/phone_number_spec.rb +7 -7
  171. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +1 -1
  172. data/spec/integration/trunking/v1/trunk/recording_spec.rb +2 -6
  173. data/spec/integration/video/v1/room_spec.rb +5 -0
  174. data/spec/rest/client_spec.rb +24 -2
  175. data/spec/twiml/voice_response_spec.rb +1 -1
  176. data/twilio-ruby.gemspec +1 -0
  177. metadata +19 -17
  178. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_call.rb +0 -243
  179. data/lib/twilio-ruby/rest/preview/trusted_comms/business.rb +0 -213
  180. data/lib/twilio-ruby/rest/preview/trusted_comms/business/insights.rb +0 -108
  181. data/lib/twilio-ruby/rest/preview/trusted_comms/business/insights/impressions_rate.rb +0 -260
  182. data/lib/twilio-ruby/rest/preview/trusted_comms/phone_call.rb +0 -342
  183. data/spec/integration/preview/trusted_comms/branded_call_spec.rb +0 -59
  184. data/spec/integration/preview/trusted_comms/business/insights/impressions_rate_spec.rb +0 -56
  185. data/spec/integration/preview/trusted_comms/business/insights_spec.rb +0 -12
  186. data/spec/integration/preview/trusted_comms/business_spec.rb +0 -45
  187. data/spec/integration/preview/trusted_comms/phone_call_spec.rb +0 -59
@@ -92,8 +92,8 @@ module Twilio
92
92
  # @param [String] quality_score The call quality expressed as an integer from `1`
93
93
  # to `5` where `1` represents very poor call quality and `5` represents a perfect
94
94
  # call.
95
- # @param [feedback.Issues] issue A list of one or more issues experienced during
96
- # the call. Issues can be: `imperfect-audio`, `dropped-call`,
95
+ # @param [Array[feedback.Issues]] issue A list of one or more issues experienced
96
+ # during the call. Issues can be: `imperfect-audio`, `dropped-call`,
97
97
  # `incorrect-caller-id`, `post-dial-delay`, `digits-not-captured`,
98
98
  # `audio-latency`, `unsolicited-call`, or `one-way-audio`.
99
99
  # @return [FeedbackInstance] Created FeedbackInstance
@@ -132,10 +132,10 @@ module Twilio
132
132
  # @param [String] quality_score The call quality expressed as an integer from `1`
133
133
  # to `5` where `1` represents very poor call quality and `5` represents a perfect
134
134
  # call.
135
- # @param [feedback.Issues] issue One or more issues experienced during the call.
136
- # The issues can be: `imperfect-audio`, `dropped-call`, `incorrect-caller-id`,
137
- # `post-dial-delay`, `digits-not-captured`, `audio-latency`, `unsolicited-call`,
138
- # or `one-way-audio`.
135
+ # @param [Array[feedback.Issues]] issue One or more issues experienced during the
136
+ # call. The issues can be: `imperfect-audio`, `dropped-call`,
137
+ # `incorrect-caller-id`, `post-dial-delay`, `digits-not-captured`,
138
+ # `audio-latency`, `unsolicited-call`, or `one-way-audio`.
139
139
  # @return [FeedbackInstance] Updated FeedbackInstance
140
140
  def update(quality_score: nil, issue: :unset)
141
141
  data = Twilio::Values.of({
@@ -227,7 +227,7 @@ module Twilio
227
227
  end
228
228
 
229
229
  ##
230
- # @return [feedback.Issues] Issues experienced during the call
230
+ # @return [Array[feedback.Issues]] Issues experienced during the call
231
231
  def issues
232
232
  @properties['issues']
233
233
  end
@@ -249,8 +249,8 @@ module Twilio
249
249
  # @param [String] quality_score The call quality expressed as an integer from `1`
250
250
  # to `5` where `1` represents very poor call quality and `5` represents a perfect
251
251
  # call.
252
- # @param [feedback.Issues] issue A list of one or more issues experienced during
253
- # the call. Issues can be: `imperfect-audio`, `dropped-call`,
252
+ # @param [Array[feedback.Issues]] issue A list of one or more issues experienced
253
+ # during the call. Issues can be: `imperfect-audio`, `dropped-call`,
254
254
  # `incorrect-caller-id`, `post-dial-delay`, `digits-not-captured`,
255
255
  # `audio-latency`, `unsolicited-call`, or `one-way-audio`.
256
256
  # @return [FeedbackInstance] Created FeedbackInstance
@@ -270,10 +270,10 @@ module Twilio
270
270
  # @param [String] quality_score The call quality expressed as an integer from `1`
271
271
  # to `5` where `1` represents very poor call quality and `5` represents a perfect
272
272
  # call.
273
- # @param [feedback.Issues] issue One or more issues experienced during the call.
274
- # The issues can be: `imperfect-audio`, `dropped-call`, `incorrect-caller-id`,
275
- # `post-dial-delay`, `digits-not-captured`, `audio-latency`, `unsolicited-call`,
276
- # or `one-way-audio`.
273
+ # @param [Array[feedback.Issues]] issue One or more issues experienced during the
274
+ # call. The issues can be: `imperfect-audio`, `dropped-call`,
275
+ # `incorrect-caller-id`, `post-dial-delay`, `digits-not-captured`,
276
+ # `audio-latency`, `unsolicited-call`, or `one-way-audio`.
277
277
  # @return [FeedbackInstance] Updated FeedbackInstance
278
278
  def update(quality_score: nil, issue: :unset)
279
279
  context.update(quality_score: quality_score, issue: issue, )
@@ -237,7 +237,7 @@ module Twilio
237
237
  end
238
238
 
239
239
  ##
240
- # @return [String] Issues experienced during the call
240
+ # @return [Array[String]] Issues experienced during the call
241
241
  def issues
242
242
  @properties['issues']
243
243
  end
@@ -33,10 +33,10 @@ module Twilio
33
33
 
34
34
  ##
35
35
  # Create the RecordingInstance
36
- # @param [String] recording_status_callback_event The recording status events on
37
- # which we should call the `recording_status_callback` URL. Can be: `in-progress`,
38
- # `completed` and `absent` and the default is `completed`. Separate multiple event
39
- # values with a space.
36
+ # @param [Array[String]] recording_status_callback_event The recording status
37
+ # events on which we should call the `recording_status_callback` URL. Can be:
38
+ # `in-progress`, `completed` and `absent` and the default is `completed`. Separate
39
+ # multiple event values with a space.
40
40
  # @param [String] recording_status_callback The URL we should call using the
41
41
  # `recording_status_callback_method` on each recording event specified in
42
42
  # `recording_status_callback_event`. For more information, see
@@ -53,14 +53,19 @@ module Twilio
53
53
  # Can be: `mono` or `dual` and the default is `mono`. `mono` records all parties
54
54
  # of the call into one channel. `dual` records each party of a 2-party call into
55
55
  # separate channels.
56
+ # @param [String] recording_track The audio track to record for the call. Can be:
57
+ # `inbound`, `outbound` or `both`. The default is `both`. `inbound` records the
58
+ # audio that is received by Twilio. `outbound` records the audio that is generated
59
+ # from Twilio. `both` records the audio that is received and generated by Twilio.
56
60
  # @return [RecordingInstance] Created RecordingInstance
57
- def create(recording_status_callback_event: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, trim: :unset, recording_channels: :unset)
61
+ def create(recording_status_callback_event: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, trim: :unset, recording_channels: :unset, recording_track: :unset)
58
62
  data = Twilio::Values.of({
59
63
  'RecordingStatusCallbackEvent' => Twilio.serialize_list(recording_status_callback_event) { |e| e },
60
64
  'RecordingStatusCallback' => recording_status_callback,
61
65
  'RecordingStatusCallbackMethod' => recording_status_callback_method,
62
66
  'Trim' => trim,
63
67
  'RecordingChannels' => recording_channels,
68
+ 'RecordingTrack' => recording_track,
64
69
  })
65
70
 
66
71
  payload = @version.create('POST', @uri, data: data)
@@ -335,6 +340,7 @@ module Twilio
335
340
  'channels' => payload['channels'].to_i,
336
341
  'source' => payload['source'],
337
342
  'error_code' => payload['error_code'] == nil ? payload['error_code'] : payload['error_code'].to_i,
343
+ 'track' => payload['track'],
338
344
  }
339
345
 
340
346
  # Context
@@ -460,6 +466,12 @@ module Twilio
460
466
  @properties['error_code']
461
467
  end
462
468
 
469
+ ##
470
+ # @return [String] The recorded track. Can be: `inbound`, `outbound`, or `both`.
471
+ def track
472
+ @properties['track']
473
+ end
474
+
463
475
  ##
464
476
  # Update the RecordingInstance
465
477
  # @param [recording.Status] status The new status of the recording. Can be:
@@ -52,8 +52,8 @@ module Twilio
52
52
  # `status_callback_method` to send status information to your application.
53
53
  # @param [String] status_callback_method The HTTP method we should use to call
54
54
  # `status_callback`. Can be: `GET` and `POST` and defaults to `POST`.
55
- # @param [String] status_callback_event The conference state changes that should
56
- # generate a call to `status_callback`. Can be: `initiated`, `ringing`,
55
+ # @param [Array[String]] status_callback_event The conference state changes that
56
+ # should generate a call to `status_callback`. Can be: `initiated`, `ringing`,
57
57
  # `answered`, and `completed`. Separate multiple values with a space. The default
58
58
  # value is `completed`.
59
59
  # @param [String] label A label for this participant. If one is supplied, it may
@@ -105,10 +105,10 @@ module Twilio
105
105
  # @param [String] conference_status_callback_method The HTTP method we should use
106
106
  # to call `conference_status_callback`. Can be: `GET` or `POST` and defaults to
107
107
  # `POST`.
108
- # @param [String] conference_status_callback_event The conference state changes
109
- # that should generate a call to `conference_status_callback`. Can be: `start`,
110
- # `end`, `join`, `leave`, `mute`, `hold`, and `speaker`. Separate multiple values
111
- # with a space. Defaults to `start end`.
108
+ # @param [Array[String]] conference_status_callback_event The conference state
109
+ # changes that should generate a call to `conference_status_callback`. Can be:
110
+ # `start`, `end`, `join`, `leave`, `mute`, `hold`, and `speaker`. Separate
111
+ # multiple values with a space. Defaults to `start end`.
112
112
  # @param [String] recording_channels The recording channels for the final
113
113
  # recording. Can be: `mono` or `dual` and the default is `mono`.
114
114
  # @param [String] recording_status_callback The URL that we should call using the
@@ -128,11 +128,11 @@ module Twilio
128
128
  # @param [String] conference_recording_status_callback_method The HTTP method we
129
129
  # should use to call `conference_recording_status_callback`. Can be: `GET` or
130
130
  # `POST` and defaults to `POST`.
131
- # @param [String] recording_status_callback_event The recording state changes that
132
- # should generate a call to `recording_status_callback`. Can be: `in-progress`,
133
- # `completed`, and `failed`. Separate multiple values with a space. The default
134
- # value is `in-progress completed failed`.
135
- # @param [String] conference_recording_status_callback_event The conference
131
+ # @param [Array[String]] recording_status_callback_event The recording state
132
+ # changes that should generate a call to `recording_status_callback`. Can be:
133
+ # `in-progress`, `completed`, and `failed`. Separate multiple values with a space.
134
+ # The default value is `in-progress completed failed`.
135
+ # @param [Array[String]] conference_recording_status_callback_event The conference
136
136
  # recording state changes that generate a call to
137
137
  # `conference_recording_status_callback`. Can be: `in-progress`, `completed`, and
138
138
  # `failed`. Separate multiple values with a space. The default value is
@@ -162,8 +162,12 @@ module Twilio
162
162
  # @param [String] call_reason The Reason for the outgoing call. Use it to specify
163
163
  # the purpose of the call that is presented on the called party's phone. (Branded
164
164
  # Calls Beta)
165
+ # @param [String] recording_track The audio track to record for the call. Can be:
166
+ # `inbound`, `outbound` or `both`. The default is `both`. `inbound` records the
167
+ # audio that is received by Twilio. `outbound` records the audio that is sent from
168
+ # Twilio. `both` records the audio that is received and sent by Twilio.
165
169
  # @return [ParticipantInstance] Created ParticipantInstance
166
- def create(from: nil, to: nil, status_callback: :unset, status_callback_method: :unset, status_callback_event: :unset, label: :unset, timeout: :unset, record: :unset, muted: :unset, beep: :unset, start_conference_on_enter: :unset, end_conference_on_exit: :unset, wait_url: :unset, wait_method: :unset, early_media: :unset, max_participants: :unset, conference_record: :unset, conference_trim: :unset, conference_status_callback: :unset, conference_status_callback_method: :unset, conference_status_callback_event: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, sip_auth_username: :unset, sip_auth_password: :unset, region: :unset, conference_recording_status_callback: :unset, conference_recording_status_callback_method: :unset, recording_status_callback_event: :unset, conference_recording_status_callback_event: :unset, coaching: :unset, call_sid_to_coach: :unset, jitter_buffer_size: :unset, byoc: :unset, caller_id: :unset, call_reason: :unset)
170
+ def create(from: nil, to: nil, status_callback: :unset, status_callback_method: :unset, status_callback_event: :unset, label: :unset, timeout: :unset, record: :unset, muted: :unset, beep: :unset, start_conference_on_enter: :unset, end_conference_on_exit: :unset, wait_url: :unset, wait_method: :unset, early_media: :unset, max_participants: :unset, conference_record: :unset, conference_trim: :unset, conference_status_callback: :unset, conference_status_callback_method: :unset, conference_status_callback_event: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, sip_auth_username: :unset, sip_auth_password: :unset, region: :unset, conference_recording_status_callback: :unset, conference_recording_status_callback_method: :unset, recording_status_callback_event: :unset, conference_recording_status_callback_event: :unset, coaching: :unset, call_sid_to_coach: :unset, jitter_buffer_size: :unset, byoc: :unset, caller_id: :unset, call_reason: :unset, recording_track: :unset)
167
171
  data = Twilio::Values.of({
168
172
  'From' => from,
169
173
  'To' => to,
@@ -202,6 +206,7 @@ module Twilio
202
206
  'Byoc' => byoc,
203
207
  'CallerId' => caller_id,
204
208
  'CallReason' => call_reason,
209
+ 'RecordingTrack' => recording_track,
205
210
  })
206
211
 
207
212
  payload = @version.create('POST', @uri, data: data)
@@ -189,7 +189,7 @@ module Twilio
189
189
  # the resource. It can be up to 64 characters long.
190
190
  # @param [String] homepage_url A public URL where users can obtain more
191
191
  # information about this Connect App.
192
- # @param [connect_app.Permission] permissions A comma-separated list of the
192
+ # @param [Array[connect_app.Permission]] permissions A comma-separated list of the
193
193
  # permissions you will request from the users of this ConnectApp. Can include:
194
194
  # `get-all` and `post-all`.
195
195
  # @return [ConnectAppInstance] Updated ConnectAppInstance
@@ -331,7 +331,7 @@ module Twilio
331
331
  end
332
332
 
333
333
  ##
334
- # @return [connect_app.Permission] The set of permissions that your ConnectApp requests
334
+ # @return [Array[connect_app.Permission]] The set of permissions that your ConnectApp requests
335
335
  def permissions
336
336
  @properties['permissions']
337
337
  end
@@ -369,7 +369,7 @@ module Twilio
369
369
  # the resource. It can be up to 64 characters long.
370
370
  # @param [String] homepage_url A public URL where users can obtain more
371
371
  # information about this Connect App.
372
- # @param [connect_app.Permission] permissions A comma-separated list of the
372
+ # @param [Array[connect_app.Permission]] permissions A comma-separated list of the
373
373
  # permissions you will request from the users of this ConnectApp. Can include:
374
374
  # `get-all` and `post-all`.
375
375
  # @return [ConnectAppInstance] Updated ConnectAppInstance
@@ -77,7 +77,7 @@ module Twilio
77
77
  # can be stored or obfuscated based on privacy settings
78
78
  # @param [Boolean] smart_encoded Whether to detect Unicode characters that have a
79
79
  # similar GSM-7 character and replace them. Can be: `true` or `false`.
80
- # @param [String] persistent_action Rich actions for Channels Messages.
80
+ # @param [Array[String]] persistent_action Rich actions for Channels Messages.
81
81
  # @param [String] from A Twilio phone number in
82
82
  # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, an {alphanumeric
83
83
  # sender
@@ -99,10 +99,10 @@ module Twilio
99
99
  # delivery.
100
100
  # @param [String] body The text of the message you want to send. Can be up to
101
101
  # 1,600 characters in length.
102
- # @param [String] media_url The URL of the media to send with the message. The
103
- # media can be of type `gif`, `png`, and `jpeg` and will be formatted correctly on
104
- # the recipient's device. The media size limit is 5MB for supported file types
105
- # (JPEG, PNG, GIF) and 500KB for {other
102
+ # @param [Array[String]] media_url The URL of the media to send with the message.
103
+ # The media can be of type `gif`, `png`, and `jpeg` and will be formatted
104
+ # correctly on the recipient's device. The media size limit is 5MB for supported
105
+ # file types (JPEG, PNG, GIF) and 500KB for {other
106
106
  # types}[https://www.twilio.com/docs/sms/accepted-mime-types] of accepted media.
107
107
  # To send more than one image in the message body, provide multiple `media_url`
108
108
  # parameters in the POST request. You can include up to 10 `media_url` parameters
@@ -110,7 +110,8 @@ module Twilio
110
110
  ##
111
111
  # Create the DomainInstance
112
112
  # @param [String] domain_name The unique address you reserve on Twilio to which
113
- # you route your SIP traffic. Domain names can contain letters, digits, and "-".
113
+ # you route your SIP traffic. Domain names can contain letters, digits, and "-"
114
+ # and must end with `sip.twilio.com`.
114
115
  # @param [String] friendly_name A descriptive string that you created to describe
115
116
  # the resource. It can be up to 64 characters long.
116
117
  # @param [String] voice_url The URL we should when the domain receives a call.
@@ -248,7 +249,8 @@ module Twilio
248
249
  # with the domain to receive calls. Can be `true` or `false`. `true` allows SIP
249
250
  # Endpoints to register with the domain to receive calls, `false` does not.
250
251
  # @param [String] domain_name The unique address you reserve on Twilio to which
251
- # you route your SIP traffic. Domain names can contain letters, digits, and "-".
252
+ # you route your SIP traffic. Domain names can contain letters, digits, and "-"
253
+ # and must end with `sip.twilio.com`.
252
254
  # @param [Boolean] emergency_calling_enabled Whether emergency calling is enabled
253
255
  # for the domain. If enabled, allows emergency calls on the domain from phone
254
256
  # numbers with validated addresses.
@@ -576,7 +578,8 @@ module Twilio
576
578
  # with the domain to receive calls. Can be `true` or `false`. `true` allows SIP
577
579
  # Endpoints to register with the domain to receive calls, `false` does not.
578
580
  # @param [String] domain_name The unique address you reserve on Twilio to which
579
- # you route your SIP traffic. Domain names can contain letters, digits, and "-".
581
+ # you route your SIP traffic. Domain names can contain letters, digits, and "-"
582
+ # and must end with `sip.twilio.com`.
580
583
  # @param [Boolean] emergency_calling_enabled Whether emergency calling is enabled
581
584
  # for the domain. If enabled, allows emergency calls on the domain from phone
582
585
  # numbers with validated addresses.
@@ -119,7 +119,7 @@ module Twilio
119
119
  end
120
120
 
121
121
  ##
122
- # @return [String] An array representing the ephemeral credentials
122
+ # @return [Array[String]] An array representing the ephemeral credentials
123
123
  def ice_servers
124
124
  @properties['ice_servers']
125
125
  end
@@ -29,7 +29,8 @@ module Twilio
29
29
  end
30
30
 
31
31
  ##
32
- # @param [String] resource_type The type of communication – Messages, Calls
32
+ # @param [String] resource_type The type of communication – Messages, Calls,
33
+ # Conferences, and Participants
33
34
  # @return [Twilio::REST::Bulkexports::V1::ExportInstance] if resource_type was passed.
34
35
  # @return [Twilio::REST::Bulkexports::V1::ExportList]
35
36
  def exports(resource_type=:unset)
@@ -37,7 +38,8 @@ module Twilio
37
38
  end
38
39
 
39
40
  ##
40
- # @param [String] resource_type The type of communication – Messages, Calls
41
+ # @param [String] resource_type The type of communication – Messages, Calls,
42
+ # Conferences, and Participants
41
43
  # @return [Twilio::REST::Bulkexports::V1::ExportConfigurationInstance] if resource_type was passed.
42
44
  # @return [Twilio::REST::Bulkexports::V1::ExportConfigurationList]
43
45
  def export_configuration(resource_type=:unset)
@@ -20,7 +20,8 @@ module Twilio
20
20
  end
21
21
 
22
22
  ##
23
- # @param [String] resource_type The type of communication – Messages, Calls
23
+ # @param [String] resource_type The type of communication – Messages, Calls,
24
+ # Conferences, and Participants
24
25
  # @return [Twilio::REST::Bulkexports::V1::ExportContext] if resource_type was passed.
25
26
  # @return [Twilio::REST::Bulkexports::V1::ExportList]
26
27
  def exports(resource_type=:unset)
@@ -34,7 +35,8 @@ module Twilio
34
35
  end
35
36
 
36
37
  ##
37
- # @param [String] resource_type The type of communication – Messages, Calls
38
+ # @param [String] resource_type The type of communication – Messages, Calls,
39
+ # Conferences, and Participants
38
40
  # @return [Twilio::REST::Bulkexports::V1::ExportConfigurationContext] if resource_type was passed.
39
41
  # @return [Twilio::REST::Bulkexports::V1::ExportConfigurationList]
40
42
  def export_configuration(resource_type=:unset)
@@ -29,7 +29,8 @@ module Twilio
29
29
 
30
30
  ##
31
31
  # Access the jobs
32
- # @param [String] job_sid The job_sid
32
+ # @param [String] job_sid The unique string that that we created to identify the
33
+ # Bulk Export job
33
34
  # @return [JobList]
34
35
  # @return [JobContext] if job_sid was passed.
35
36
  def jobs(job_sid=:unset)
@@ -86,7 +87,8 @@ module Twilio
86
87
  ##
87
88
  # Initialize the ExportContext
88
89
  # @param [Version] version Version that contains the resource
89
- # @param [String] resource_type The type of communication – Messages, Calls
90
+ # @param [String] resource_type The type of communication – Messages, Calls,
91
+ # Conferences, and Participants
90
92
  # @return [ExportContext] ExportContext
91
93
  def initialize(version, resource_type)
92
94
  super(version)
@@ -161,7 +163,8 @@ module Twilio
161
163
  # Initialize the ExportInstance
162
164
  # @param [Version] version Version that contains the resource
163
165
  # @param [Hash] payload payload that contains response from Twilio
164
- # @param [String] resource_type The type of communication – Messages, Calls
166
+ # @param [String] resource_type The type of communication – Messages, Calls,
167
+ # Conferences, and Participants
165
168
  # @return [ExportInstance] ExportInstance
166
169
  def initialize(version, payload, resource_type: nil)
167
170
  super(version)
@@ -190,7 +193,7 @@ module Twilio
190
193
  end
191
194
 
192
195
  ##
193
- # @return [String] The type of communication – Messages, Calls
196
+ # @return [String] The type of communication – Messages, Calls, Conferences, and Participants
194
197
  def resource_type
195
198
  @properties['resource_type']
196
199
  end
@@ -17,7 +17,8 @@ module Twilio
17
17
  ##
18
18
  # Initialize the DayList
19
19
  # @param [Version] version Version that contains the resource
20
- # @param [String] resource_type The type of communication – Messages, Calls
20
+ # @param [String] resource_type The type of communication – Messages, Calls,
21
+ # Conferences, and Participants
21
22
  # @return [DayList] DayList
22
23
  def initialize(version, resource_type: nil)
23
24
  super(version)
@@ -151,7 +152,8 @@ module Twilio
151
152
  ##
152
153
  # Initialize the DayContext
153
154
  # @param [Version] version Version that contains the resource
154
- # @param [String] resource_type The type of communication – Messages, Calls
155
+ # @param [String] resource_type The type of communication – Messages, Calls,
156
+ # Conferences, and Participants
155
157
  # @param [String] day The ISO 8601 format date of the resources in the file, for a
156
158
  # UTC day
157
159
  # @return [DayContext] DayContext
@@ -194,7 +196,8 @@ module Twilio
194
196
  # Initialize the DayInstance
195
197
  # @param [Version] version Version that contains the resource
196
198
  # @param [Hash] payload payload that contains response from Twilio
197
- # @param [String] resource_type The type of communication – Messages, Calls
199
+ # @param [String] resource_type The type of communication – Messages, Calls,
200
+ # Conferences, and Participants
198
201
  # @param [String] day The ISO 8601 format date of the resources in the file, for a
199
202
  # UTC day
200
203
  # @return [DayInstance] DayInstance
@@ -258,7 +261,7 @@ module Twilio
258
261
  end
259
262
 
260
263
  ##
261
- # @return [String] The type of communication – Messages, Calls
264
+ # @return [String] The type of communication – Messages, Calls, Conferences, and Participants
262
265
  def resource_type
263
266
  @properties['resource_type']
264
267
  end
@@ -17,7 +17,8 @@ module Twilio
17
17
  ##
18
18
  # Initialize the ExportCustomJobList
19
19
  # @param [Version] version Version that contains the resource
20
- # @param [String] resource_type The type of communication – Messages, Calls
20
+ # @param [String] resource_type The type of communication – Messages, Calls,
21
+ # Conferences, and Participants
21
22
  # @return [ExportCustomJobList] ExportCustomJobList
22
23
  def initialize(version, resource_type: nil)
23
24
  super(version)
@@ -184,7 +185,8 @@ module Twilio
184
185
  # Initialize the ExportCustomJobInstance
185
186
  # @param [Version] version Version that contains the resource
186
187
  # @param [Hash] payload payload that contains response from Twilio
187
- # @param [String] resource_type The type of communication – Messages, Calls
188
+ # @param [String] resource_type The type of communication – Messages, Calls,
189
+ # Conferences, and Participants
188
190
  # @return [ExportCustomJobInstance] ExportCustomJobInstance
189
191
  def initialize(version, payload, resource_type: nil)
190
192
  super(version)
@@ -210,7 +212,7 @@ module Twilio
210
212
  end
211
213
 
212
214
  ##
213
- # @return [String] The type of communication – Messages, Calls
215
+ # @return [String] The type of communication – Messages, Calls, Conferences, and Participants
214
216
  def resource_type
215
217
  @properties['resource_type']
216
218
  end
@@ -69,7 +69,8 @@ module Twilio
69
69
  ##
70
70
  # Initialize the JobContext
71
71
  # @param [Version] version Version that contains the resource
72
- # @param [String] job_sid The job_sid
72
+ # @param [String] job_sid The unique string that that we created to identify the
73
+ # Bulk Export job
73
74
  # @return [JobContext] JobContext
74
75
  def initialize(version, job_sid)
75
76
  super(version)
@@ -117,7 +118,8 @@ module Twilio
117
118
  # Initialize the JobInstance
118
119
  # @param [Version] version Version that contains the resource
119
120
  # @param [Hash] payload payload that contains response from Twilio
120
- # @param [String] job_sid The job_sid
121
+ # @param [String] job_sid The unique string that that we created to identify the
122
+ # Bulk Export job
121
123
  # @return [JobInstance] JobInstance
122
124
  def initialize(version, payload, job_sid: nil)
123
125
  super(version)
@@ -153,7 +155,7 @@ module Twilio
153
155
  end
154
156
 
155
157
  ##
156
- # @return [String] The type of communication – Messages, Calls
158
+ # @return [String] The type of communication – Messages, Calls, Conferences, and Participants
157
159
  def resource_type
158
160
  @properties['resource_type']
159
161
  end