twilio-ruby 5.42.0 → 5.46.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 (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