twilio-ruby 5.47.0 → 5.74.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 (763) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/pr-lint.yml +21 -0
  3. data/.github/workflows/test-and-deploy.yml +129 -0
  4. data/.gitignore +5 -1
  5. data/.rubocop.yml +1 -1
  6. data/.rubocop_todo.yml +91 -28
  7. data/CHANGES.md +920 -0
  8. data/Gemfile +1 -0
  9. data/LICENSE +1 -1
  10. data/Makefile +12 -11
  11. data/PULL_REQUEST_TEMPLATE.md +1 -1
  12. data/README.md +16 -8
  13. data/examples/examples.rb +1 -1
  14. data/lib/rack/twilio_webhook_authentication.rb +25 -1
  15. data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +0 -0
  16. data/lib/twilio-ruby/framework/{error.rb → rest/error.rb} +0 -0
  17. data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  18. data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
  19. data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +0 -0
  20. data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +0 -0
  21. data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +0 -0
  22. data/lib/twilio-ruby/http/http_client.rb +20 -4
  23. data/lib/twilio-ruby/http.rb +5 -0
  24. data/lib/twilio-ruby/jwt/access_token.rb +13 -0
  25. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +19 -3
  26. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +2 -2
  27. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +2 -2
  28. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +2 -2
  29. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +2 -2
  30. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +2 -2
  31. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +2 -2
  32. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +2 -2
  33. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +4 -4
  34. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +28 -28
  35. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +10 -10
  36. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +8 -8
  37. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +2 -2
  38. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +674 -0
  39. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +674 -0
  40. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +160 -0
  41. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +251 -0
  42. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +130 -11
  43. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +67 -24
  44. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +2 -2
  45. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +4 -4
  46. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +11 -4
  47. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +11 -4
  48. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +11 -4
  49. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +17 -10
  50. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +34 -5
  51. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +2 -2
  52. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +3 -3
  53. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +1 -1
  54. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +35 -8
  55. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +11 -11
  56. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +11 -11
  57. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +5 -5
  58. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +3 -3
  59. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +1 -1
  60. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +1 -1
  61. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +1 -1
  62. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +1 -1
  63. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +1 -1
  64. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +1 -1
  65. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +1 -1
  66. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +1 -1
  67. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +1 -1
  68. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +1 -1
  69. data/lib/twilio-ruby/rest/api/v2010.rb +5 -4
  70. data/lib/twilio-ruby/rest/api.rb +1 -1
  71. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +2 -2
  72. data/lib/twilio-ruby/rest/autopilot/v1.rb +5 -4
  73. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +1 -9
  74. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +15 -7
  75. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +15 -9
  76. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +0 -8
  77. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +0 -8
  78. data/lib/twilio-ruby/rest/bulkexports/v1.rb +10 -8
  79. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +1 -1
  80. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +2 -2
  81. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +1 -1
  82. data/lib/twilio-ruby/rest/chat/v1/service.rb +2 -2
  83. data/lib/twilio-ruby/rest/chat/v1.rb +10 -8
  84. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +1 -1
  85. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +2 -2
  86. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +10 -4
  87. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +1 -1
  88. data/lib/twilio-ruby/rest/chat/v2/service.rb +4 -4
  89. data/lib/twilio-ruby/rest/chat/v2.rb +10 -8
  90. data/lib/twilio-ruby/rest/chat/v3/channel.rb +275 -0
  91. data/lib/twilio-ruby/rest/chat/v3.rb +48 -0
  92. data/lib/twilio-ruby/rest/chat.rb +16 -0
  93. data/lib/twilio-ruby/rest/client.rb +57 -13
  94. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +195 -0
  95. data/lib/twilio-ruby/rest/content/v1/content.rb +346 -0
  96. data/lib/twilio-ruby/rest/content/v1.rb +45 -0
  97. data/lib/twilio-ruby/rest/content.rb +47 -0
  98. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +454 -0
  99. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +1 -1
  100. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +13 -6
  101. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +7 -0
  102. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +312 -0
  103. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +18 -2
  104. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +269 -0
  105. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +8 -0
  106. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +1 -1
  107. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +13 -6
  108. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +7 -0
  109. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +324 -0
  110. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +466 -0
  111. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +44 -0
  112. data/lib/twilio-ruby/rest/conversations/v1/service.rb +23 -0
  113. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +442 -0
  114. data/lib/twilio-ruby/rest/conversations/v1/user.rb +35 -0
  115. data/lib/twilio-ruby/rest/conversations/v1.rb +49 -20
  116. data/lib/twilio-ruby/rest/conversations.rb +15 -0
  117. data/lib/twilio-ruby/rest/events/v1/event_type.rb +16 -9
  118. data/lib/twilio-ruby/rest/events/v1/schema/{schema_version.rb → version.rb} +42 -42
  119. data/lib/twilio-ruby/rest/events/v1/schema.rb +16 -16
  120. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +3 -3
  121. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +3 -3
  122. data/lib/twilio-ruby/rest/events/v1/sink.rb +45 -9
  123. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +139 -9
  124. data/lib/twilio-ruby/rest/events/v1/subscription.rb +14 -8
  125. data/lib/twilio-ruby/rest/events/v1.rb +20 -16
  126. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +156 -0
  127. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +42 -0
  128. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +55 -34
  129. data/lib/twilio-ruby/rest/flex_api/v1/good_data.rb +190 -0
  130. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +236 -0
  131. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +330 -0
  132. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +405 -0
  133. data/lib/twilio-ruby/rest/{preview/trusted_comms/branded_channel.rb → flex_api/v1/interaction.rb} +76 -68
  134. data/lib/twilio-ruby/rest/flex_api/v1/user_roles.rb +166 -0
  135. data/lib/twilio-ruby/rest/flex_api/v1.rb +52 -12
  136. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +133 -0
  137. data/lib/twilio-ruby/rest/flex_api/v2.rb +35 -0
  138. data/lib/twilio-ruby/rest/flex_api.rb +40 -0
  139. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +258 -0
  140. data/lib/twilio-ruby/rest/frontline_api/v1.rb +45 -0
  141. data/lib/twilio-ruby/rest/{fax.rb → frontline_api.rb} +11 -11
  142. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +322 -0
  143. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +14 -0
  144. data/lib/twilio-ruby/rest/insights/v1/call.rb +16 -8
  145. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +441 -0
  146. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +474 -0
  147. data/lib/twilio-ruby/rest/insights/v1/conference.rb +512 -0
  148. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +23 -23
  149. data/lib/twilio-ruby/rest/insights/v1/room.rb +58 -46
  150. data/lib/twilio-ruby/rest/insights/v1/setting.rb +215 -0
  151. data/lib/twilio-ruby/rest/insights/v1.rb +41 -9
  152. data/lib/twilio-ruby/rest/insights.rb +21 -1
  153. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +1 -1
  154. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +2 -2
  155. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +1 -1
  156. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +2 -2
  157. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +10 -8
  158. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +1 -1
  159. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +2 -2
  160. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +1 -1
  161. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +4 -4
  162. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +10 -8
  163. data/lib/twilio-ruby/rest/lookups/v1.rb +5 -4
  164. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +336 -0
  165. data/lib/twilio-ruby/rest/lookups/v2.rb +45 -0
  166. data/lib/twilio-ruby/rest/lookups.rb +7 -0
  167. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +397 -0
  168. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +399 -0
  169. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +221 -0
  170. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +403 -0
  171. data/lib/twilio-ruby/rest/media/v1.rb +76 -0
  172. data/lib/twilio-ruby/rest/media.rb +65 -0
  173. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +353 -0
  174. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +127 -2
  175. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +257 -0
  176. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +267 -0
  177. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +150 -0
  178. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +2 -2
  179. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +528 -0
  180. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +129 -0
  181. data/lib/twilio-ruby/rest/messaging/v1/service.rb +145 -27
  182. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +559 -0
  183. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +111 -0
  184. data/lib/twilio-ruby/rest/messaging/v1.rb +69 -25
  185. data/lib/twilio-ruby/rest/messaging.rb +35 -11
  186. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +305 -0
  187. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +339 -0
  188. data/lib/twilio-ruby/rest/microvisor/v1.rb +60 -0
  189. data/lib/twilio-ruby/rest/microvisor.rb +54 -0
  190. data/lib/twilio-ruby/rest/monitor/v1.rb +10 -8
  191. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +1 -1
  192. data/lib/twilio-ruby/rest/notify/v1.rb +10 -8
  193. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +268 -0
  194. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +188 -0
  195. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +128 -26
  196. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +7 -0
  197. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +153 -0
  198. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +162 -0
  199. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +242 -0
  200. data/lib/twilio-ruby/rest/oauth/v1/token.rb +157 -0
  201. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +193 -0
  202. data/lib/twilio-ruby/rest/oauth/v1.rb +63 -0
  203. data/lib/twilio-ruby/rest/oauth.rb +68 -0
  204. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +5 -4
  205. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +2 -2
  206. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +2 -2
  207. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +10 -8
  208. data/lib/twilio-ruby/rest/preview/marketplace.rb +10 -8
  209. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +1 -1
  210. data/lib/twilio-ruby/rest/preview/sync.rb +5 -4
  211. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +2 -2
  212. data/lib/twilio-ruby/rest/preview/understand.rb +5 -4
  213. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +1 -1
  214. data/lib/twilio-ruby/rest/preview/wireless.rb +15 -12
  215. data/lib/twilio-ruby/rest/preview.rb +0 -58
  216. data/lib/twilio-ruby/rest/pricing/v2/country.rb +280 -0
  217. data/lib/twilio-ruby/rest/pricing/v2/number.rb +225 -0
  218. data/lib/twilio-ruby/rest/pricing/v2.rb +37 -0
  219. data/lib/twilio-ruby/rest/pricing.rb +19 -0
  220. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +1 -1
  221. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +2 -15
  222. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +5 -46
  223. data/lib/twilio-ruby/rest/proxy/v1/service.rb +1 -1
  224. data/lib/twilio-ruby/rest/proxy/v1.rb +5 -4
  225. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +235 -0
  226. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +231 -0
  227. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +235 -0
  228. data/lib/twilio-ruby/rest/routes/v2.rb +76 -0
  229. data/lib/twilio-ruby/rest/routes.rb +62 -0
  230. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +1 -1
  231. data/lib/twilio-ruby/rest/serverless/v1/service.rb +7 -0
  232. data/lib/twilio-ruby/rest/serverless/v1.rb +5 -4
  233. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +1 -1
  234. data/lib/twilio-ruby/rest/studio/v1/flow.rb +1 -1
  235. data/lib/twilio-ruby/rest/studio/v1.rb +5 -4
  236. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +1 -1
  237. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +1 -1
  238. data/lib/twilio-ruby/rest/studio/v2/flow.rb +1 -1
  239. data/lib/twilio-ruby/rest/studio/v2.rb +5 -4
  240. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +372 -0
  241. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +101 -50
  242. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +416 -0
  243. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +247 -0
  244. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +231 -0
  245. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +195 -0
  246. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +65 -0
  247. data/lib/twilio-ruby/rest/supersim/v1/{command.rb → sms_command.rb} +81 -78
  248. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +26 -12
  249. data/lib/twilio-ruby/rest/supersim/v1.rb +69 -25
  250. data/lib/twilio-ruby/rest/supersim.rb +30 -6
  251. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +9 -16
  252. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +23 -34
  253. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +9 -15
  254. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +22 -35
  255. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +9 -15
  256. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +9 -15
  257. data/lib/twilio-ruby/rest/sync/v1/service.rb +1 -1
  258. data/lib/twilio-ruby/rest/sync/v1.rb +5 -4
  259. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +7 -0
  260. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +1 -1
  261. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +25 -8
  262. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +34 -10
  263. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +18 -14
  264. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +5 -5
  265. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +10 -4
  266. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +7 -3
  267. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +3 -3
  268. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +6 -6
  269. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +1 -1
  270. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +32 -14
  271. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +17 -15
  272. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +2 -2
  273. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +1 -1
  274. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +17 -15
  275. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +3 -3
  276. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +45 -30
  277. data/lib/twilio-ruby/rest/taskrouter/v1.rb +5 -4
  278. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +2 -2
  279. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +19 -3
  280. data/lib/twilio-ruby/rest/trunking/v1.rb +5 -4
  281. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +359 -0
  282. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +330 -0
  283. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +328 -0
  284. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +523 -0
  285. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +356 -0
  286. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +271 -0
  287. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +262 -0
  288. data/lib/twilio-ruby/rest/{messaging/v1/campaign.rb → trusthub/v1/supporting_document.rb} +125 -143
  289. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +271 -0
  290. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +359 -0
  291. data/lib/twilio-ruby/rest/{fax/v1/fax/fax_media.rb → trusthub/v1/trust_products/trust_products_entity_assignments.rb} +101 -85
  292. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +328 -0
  293. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +523 -0
  294. data/lib/twilio-ruby/rest/trusthub/v1.rb +146 -0
  295. data/lib/twilio-ruby/rest/trusthub.rb +100 -0
  296. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +215 -0
  297. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +153 -16
  298. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +199 -0
  299. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +111 -28
  300. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +68 -68
  301. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +303 -0
  302. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +31 -11
  303. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +2 -2
  304. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +25 -8
  305. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +8 -1
  306. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +24 -13
  307. data/lib/twilio-ruby/rest/verify/v2/service.rb +99 -12
  308. data/lib/twilio-ruby/rest/{messaging/v1/use_case.rb → verify/v2/template.rb} +66 -51
  309. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +397 -0
  310. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +234 -0
  311. data/lib/twilio-ruby/rest/verify/v2.rb +58 -8
  312. data/lib/twilio-ruby/rest/verify.rb +29 -0
  313. data/lib/twilio-ruby/rest/video/v1/composition.rb +24 -11
  314. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +0 -8
  315. data/lib/twilio-ruby/rest/video/v1/recording.rb +23 -2
  316. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +9 -2
  317. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +240 -0
  318. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +16 -0
  319. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -6
  320. data/lib/twilio-ruby/rest/video/v1/room.rb +66 -6
  321. data/lib/twilio-ruby/rest/video/v1.rb +20 -16
  322. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +184 -0
  323. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +2 -2
  324. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +1 -1
  325. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +1 -1
  326. data/lib/twilio-ruby/rest/voice/v1.rb +41 -16
  327. data/lib/twilio-ruby/rest/voice.rb +8 -0
  328. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +6 -6
  329. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +2 -2
  330. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +16 -26
  331. data/lib/twilio-ruby/rest/wireless/v1.rb +15 -12
  332. data/lib/twilio-ruby/rest.rb +13 -0
  333. data/lib/twilio-ruby/security/request_validator.rb +1 -1
  334. data/lib/twilio-ruby/twiml/voice_response.rb +789 -108
  335. data/lib/twilio-ruby/version.rb +1 -1
  336. data/lib/twilio-ruby.rb +6 -16
  337. data/sonar-project.properties +13 -0
  338. data/twilio-ruby.gemspec +2 -3
  339. metadata +118 -868
  340. data/.travis.yml +0 -45
  341. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -536
  342. data/lib/twilio-ruby/rest/fax/v1.rb +0 -44
  343. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +0 -294
  344. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +0 -275
  345. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +0 -249
  346. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -251
  347. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -234
  348. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -60
  349. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +0 -165
  350. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +0 -195
  351. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +0 -186
  352. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -277
  353. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -64
  354. data/spec/framework/request_spec.rb +0 -36
  355. data/spec/framework/serialize_spec.rb +0 -80
  356. data/spec/framework/version_spec.rb +0 -219
  357. data/spec/holodeck/holodeck.rb +0 -66
  358. data/spec/holodeck/hologram.rb +0 -4
  359. data/spec/http/http_client_spec.rb +0 -122
  360. data/spec/integration/accounts/v1/auth_token_promotion_spec.rb +0 -44
  361. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -222
  362. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -222
  363. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  364. data/spec/integration/accounts/v1/secondary_auth_token_spec.rb +0 -69
  365. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -106
  366. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  367. data/spec/integration/api/v2010/account/application_spec.rb +0 -274
  368. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -137
  369. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -102
  370. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -102
  371. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -101
  372. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -102
  373. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -102
  374. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -101
  375. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -102
  376. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -128
  377. data/spec/integration/api/v2010/account/balance_spec.rb +0 -44
  378. data/spec/integration/api/v2010/account/call/event_spec.rb +0 -102
  379. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -138
  380. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -149
  381. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -143
  382. data/spec/integration/api/v2010/account/call/payment_spec.rb +0 -135
  383. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
  384. data/spec/integration/api/v2010/account/call_spec.rb +0 -660
  385. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -768
  386. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -234
  387. data/spec/integration/api/v2010/account/conference_spec.rb +0 -716
  388. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -197
  389. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -135
  390. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -220
  391. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -189
  392. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -189
  393. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -189
  394. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -370
  395. data/spec/integration/api/v2010/account/key_spec.rb +0 -176
  396. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -49
  397. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -161
  398. data/spec/integration/api/v2010/account/message_spec.rb +0 -507
  399. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -46
  400. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -46
  401. data/spec/integration/api/v2010/account/notification_spec.rb +0 -138
  402. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -185
  403. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -208
  404. data/spec/integration/api/v2010/account/queue_spec.rb +0 -244
  405. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -174
  406. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -165
  407. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -173
  408. data/spec/integration/api/v2010/account/recording_spec.rb +0 -184
  409. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -179
  410. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -176
  411. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -252
  412. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -241
  413. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -217
  414. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -217
  415. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  416. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -217
  417. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  418. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  419. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -207
  420. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -217
  421. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -303
  422. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -254
  423. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -251
  424. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  425. data/spec/integration/api/v2010/account/token_spec.rb +0 -71
  426. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -166
  427. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  428. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  429. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  430. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  431. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  432. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  433. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  434. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  435. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  436. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -281
  437. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  438. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  439. data/spec/integration/api/v2010/account_spec.rb +0 -327
  440. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -79
  441. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -46
  442. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -207
  443. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -242
  444. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -236
  445. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -290
  446. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -79
  447. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -204
  448. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -249
  449. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -85
  450. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -49
  451. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -258
  452. data/spec/integration/autopilot/v1/assistant/webhook_spec.rb +0 -242
  453. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -277
  454. data/spec/integration/autopilot/v1/restore_assistant_spec.rb +0 -53
  455. data/spec/integration/bulkexports/v1/export/day_spec.rb +0 -115
  456. data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +0 -129
  457. data/spec/integration/bulkexports/v1/export/job_spec.rb +0 -78
  458. data/spec/integration/bulkexports/v1/export_configuration_spec.rb +0 -77
  459. data/spec/integration/bulkexports/v1/export_spec.rb +0 -44
  460. data/spec/integration/chat/v1/credential_spec.rb +0 -219
  461. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -207
  462. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -280
  463. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -290
  464. data/spec/integration/chat/v1/service/channel_spec.rb +0 -272
  465. data/spec/integration/chat/v1/service/role_spec.rb +0 -260
  466. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -93
  467. data/spec/integration/chat/v1/service/user_spec.rb +0 -262
  468. data/spec/integration/chat/v1/service_spec.rb +0 -295
  469. data/spec/integration/chat/v2/credential_spec.rb +0 -219
  470. data/spec/integration/chat/v2/service/binding_spec.rb +0 -174
  471. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -207
  472. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -263
  473. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -406
  474. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -303
  475. data/spec/integration/chat/v2/service/channel_spec.rb +0 -282
  476. data/spec/integration/chat/v2/service/role_spec.rb +0 -260
  477. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -177
  478. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -247
  479. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  480. data/spec/integration/chat/v2/service_spec.rb +0 -350
  481. data/spec/integration/conversations/v1/configuration/webhook_spec.rb +0 -90
  482. data/spec/integration/conversations/v1/configuration_spec.rb +0 -87
  483. data/spec/integration/conversations/v1/conversation/message/delivery_receipt_spec.rb +0 -136
  484. data/spec/integration/conversations/v1/conversation/message_spec.rb +0 -409
  485. data/spec/integration/conversations/v1/conversation/participant_spec.rb +0 -402
  486. data/spec/integration/conversations/v1/conversation/webhook_spec.rb +0 -282
  487. data/spec/integration/conversations/v1/conversation_spec.rb +0 -278
  488. data/spec/integration/conversations/v1/credential_spec.rb +0 -219
  489. data/spec/integration/conversations/v1/role_spec.rb +0 -249
  490. data/spec/integration/conversations/v1/service/binding_spec.rb +0 -166
  491. data/spec/integration/conversations/v1/service/configuration/notification_spec.rb +0 -115
  492. data/spec/integration/conversations/v1/service/configuration_spec.rb +0 -89
  493. data/spec/integration/conversations/v1/service/conversation/message/delivery_receipt_spec.rb +0 -144
  494. data/spec/integration/conversations/v1/service/conversation/message_spec.rb +0 -429
  495. data/spec/integration/conversations/v1/service/conversation/participant_spec.rb +0 -427
  496. data/spec/integration/conversations/v1/service/conversation/webhook_spec.rb +0 -299
  497. data/spec/integration/conversations/v1/service/conversation_spec.rb +0 -289
  498. data/spec/integration/conversations/v1/service/role_spec.rb +0 -260
  499. data/spec/integration/conversations/v1/service/user_spec.rb +0 -241
  500. data/spec/integration/conversations/v1/service_spec.rb +0 -174
  501. data/spec/integration/conversations/v1/user_spec.rb +0 -231
  502. data/spec/integration/events/v1/event_type_spec.rb +0 -133
  503. data/spec/integration/events/v1/schema/schema_version_spec.rb +0 -126
  504. data/spec/integration/events/v1/schema_spec.rb +0 -46
  505. data/spec/integration/events/v1/sink/sink_test_spec.rb +0 -42
  506. data/spec/integration/events/v1/sink/sink_validate_spec.rb +0 -44
  507. data/spec/integration/events/v1/sink_spec.rb +0 -231
  508. data/spec/integration/events/v1/subscription/subscribed_event_spec.rb +0 -91
  509. data/spec/integration/events/v1/subscription_spec.rb +0 -292
  510. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -125
  511. data/spec/integration/fax/v1/fax_spec.rb +0 -267
  512. data/spec/integration/flex_api/v1/channel_spec.rb +0 -188
  513. data/spec/integration/flex_api/v1/configuration_spec.rb +0 -578
  514. data/spec/integration/flex_api/v1/flex_flow_spec.rb +0 -259
  515. data/spec/integration/flex_api/v1/web_channel_spec.rb +0 -216
  516. data/spec/integration/insights/v1/call/event_spec.rb +0 -166
  517. data/spec/integration/insights/v1/call/metric_spec.rb +0 -154
  518. data/spec/integration/insights/v1/call/summary_spec.rb +0 -64
  519. data/spec/integration/insights/v1/call_spec.rb +0 -46
  520. data/spec/integration/insights/v1/room/participant_spec.rb +0 -147
  521. data/spec/integration/insights/v1/room_spec.rb +0 -164
  522. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -219
  523. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -207
  524. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -280
  525. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -290
  526. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -272
  527. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -260
  528. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -93
  529. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -262
  530. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -295
  531. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -219
  532. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -174
  533. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -207
  534. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -263
  535. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -406
  536. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -303
  537. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -282
  538. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -260
  539. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -177
  540. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -247
  541. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  542. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -350
  543. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -336
  544. data/spec/integration/messaging/v1/brand_registration_spec.rb +0 -143
  545. data/spec/integration/messaging/v1/campaign_spec.rb +0 -194
  546. data/spec/integration/messaging/v1/deactivation_spec.rb +0 -40
  547. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -173
  548. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -198
  549. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -176
  550. data/spec/integration/messaging/v1/service_spec.rb +0 -267
  551. data/spec/integration/messaging/v1/use_case_spec.rb +0 -55
  552. data/spec/integration/monitor/v1/alert_spec.rb +0 -138
  553. data/spec/integration/monitor/v1/event_spec.rb +0 -148
  554. data/spec/integration/notify/v1/credential_spec.rb +0 -219
  555. data/spec/integration/notify/v1/service/binding_spec.rb +0 -222
  556. data/spec/integration/notify/v1/service/notification_spec.rb +0 -98
  557. data/spec/integration/notify/v1/service_spec.rb +0 -289
  558. data/spec/integration/numbers/v2/regulatory_compliance/bundle/evaluation_spec.rb +0 -620
  559. data/spec/integration/numbers/v2/regulatory_compliance/bundle/item_assignment_spec.rb +0 -195
  560. data/spec/integration/numbers/v2/regulatory_compliance/bundle_spec.rb +0 -258
  561. data/spec/integration/numbers/v2/regulatory_compliance/end_user_spec.rb +0 -238
  562. data/spec/integration/numbers/v2/regulatory_compliance/end_user_type_spec.rb +0 -141
  563. data/spec/integration/numbers/v2/regulatory_compliance/regulation_spec.rb +0 -181
  564. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_spec.rb +0 -250
  565. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_type_spec.rb +0 -131
  566. data/spec/integration/numbers/v2/regulatory_compliance_spec.rb +0 -12
  567. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -115
  568. data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +0 -129
  569. data/spec/integration/preview/bulk_exports/export/job_spec.rb +0 -78
  570. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -77
  571. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -44
  572. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -234
  573. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -228
  574. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -244
  575. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -232
  576. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -241
  577. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -110
  578. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -224
  579. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -389
  580. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -121
  581. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -142
  582. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -162
  583. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -250
  584. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -201
  585. data/spec/integration/preview/sync/service/document_spec.rb +0 -252
  586. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -255
  587. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -201
  588. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -205
  589. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -255
  590. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -201
  591. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -205
  592. data/spec/integration/preview/sync/service_spec.rb +0 -241
  593. data/spec/integration/preview/trusted_comms/branded_channel/channel_spec.rb +0 -50
  594. data/spec/integration/preview/trusted_comms/branded_channel_spec.rb +0 -47
  595. data/spec/integration/preview/trusted_comms/brands_information_spec.rb +0 -45
  596. data/spec/integration/preview/trusted_comms/cps_spec.rb +0 -44
  597. data/spec/integration/preview/trusted_comms/current_call_spec.rb +0 -58
  598. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -79
  599. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -79
  600. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -46
  601. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -207
  602. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -242
  603. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -236
  604. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -302
  605. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -79
  606. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -204
  607. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -249
  608. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -85
  609. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -49
  610. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -258
  611. data/spec/integration/preview/understand/assistant_spec.rb +0 -269
  612. data/spec/integration/preview/wireless/command_spec.rb +0 -167
  613. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -257
  614. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -50
  615. data/spec/integration/preview/wireless/sim_spec.rb +0 -207
  616. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -137
  617. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  618. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -128
  619. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  620. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -138
  621. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -55
  622. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  623. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -179
  624. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -61
  625. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  626. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -231
  627. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -133
  628. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -163
  629. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -240
  630. data/spec/integration/proxy/v1/service/session_spec.rb +0 -225
  631. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -225
  632. data/spec/integration/proxy/v1/service_spec.rb +0 -214
  633. data/spec/integration/serverless/v1/service/asset/asset_version_spec.rb +0 -93
  634. data/spec/integration/serverless/v1/service/asset_spec.rb +0 -202
  635. data/spec/integration/serverless/v1/service/build/build_status_spec.rb +0 -48
  636. data/spec/integration/serverless/v1/service/build_spec.rb +0 -224
  637. data/spec/integration/serverless/v1/service/environment/deployment_spec.rb +0 -133
  638. data/spec/integration/serverless/v1/service/environment/log_spec.rb +0 -97
  639. data/spec/integration/serverless/v1/service/environment/variable_spec.rb +0 -207
  640. data/spec/integration/serverless/v1/service/environment_spec.rb +0 -170
  641. data/spec/integration/serverless/v1/service/function/function_version/function_version_content_spec.rb +0 -51
  642. data/spec/integration/serverless/v1/service/function/function_version_spec.rb +0 -96
  643. data/spec/integration/serverless/v1/service/function_spec.rb +0 -202
  644. data/spec/integration/serverless/v1/service_spec.rb +0 -205
  645. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -50
  646. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -53
  647. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -99
  648. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -168
  649. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -50
  650. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  651. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -100
  652. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -214
  653. data/spec/integration/studio/v1/flow_spec.rb +0 -114
  654. data/spec/integration/studio/v2/flow/execution/execution_context_spec.rb +0 -50
  655. data/spec/integration/studio/v2/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  656. data/spec/integration/studio/v2/flow/execution/execution_step_spec.rb +0 -100
  657. data/spec/integration/studio/v2/flow/execution_spec.rb +0 -211
  658. data/spec/integration/studio/v2/flow/flow_revision_spec.rb +0 -110
  659. data/spec/integration/studio/v2/flow/test_user_spec.rb +0 -85
  660. data/spec/integration/studio/v2/flow_spec.rb +0 -251
  661. data/spec/integration/studio/v2/flow_validate_spec.rb +0 -46
  662. data/spec/integration/supersim/v1/command_spec.rb +0 -184
  663. data/spec/integration/supersim/v1/fleet_spec.rb +0 -222
  664. data/spec/integration/supersim/v1/network_access_profile/network_access_profile_network_spec.rb +0 -176
  665. data/spec/integration/supersim/v1/network_access_profile_spec.rb +0 -219
  666. data/spec/integration/supersim/v1/network_spec.rb +0 -137
  667. data/spec/integration/supersim/v1/sim_spec.rb +0 -323
  668. data/spec/integration/supersim/v1/usage_record_spec.rb +0 -647
  669. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -201
  670. data/spec/integration/sync/v1/service/document_spec.rb +0 -254
  671. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  672. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -201
  673. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -252
  674. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  675. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -201
  676. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -252
  677. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  678. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -244
  679. data/spec/integration/sync/v1/service_spec.rb +0 -261
  680. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -232
  681. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -163
  682. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -222
  683. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -312
  684. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -101
  685. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -83
  686. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -107
  687. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -145
  688. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -290
  689. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -325
  690. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -191
  691. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -185
  692. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -91
  693. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -88
  694. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -69
  695. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -115
  696. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -290
  697. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -96
  698. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  699. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -70
  700. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -266
  701. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -93
  702. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  703. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -104
  704. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -291
  705. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -189
  706. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -189
  707. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -248
  708. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -264
  709. data/spec/integration/trunking/v1/trunk/recording_spec.rb +0 -75
  710. data/spec/integration/trunking/v1/trunk_spec.rb +0 -281
  711. data/spec/integration/verify/v2/form_spec.rb +0 -47
  712. data/spec/integration/verify/v2/service/access_token_spec.rb +0 -44
  713. data/spec/integration/verify/v2/service/entity/challenge_spec.rb +0 -288
  714. data/spec/integration/verify/v2/service/entity/factor_spec.rb +0 -277
  715. data/spec/integration/verify/v2/service/entity_spec.rb +0 -201
  716. data/spec/integration/verify/v2/service/messaging_configuration_spec.rb +0 -228
  717. data/spec/integration/verify/v2/service/rate_limit/bucket_spec.rb +0 -245
  718. data/spec/integration/verify/v2/service/rate_limit_spec.rb +0 -217
  719. data/spec/integration/verify/v2/service/verification_check_spec.rb +0 -80
  720. data/spec/integration/verify/v2/service/verification_spec.rb +0 -318
  721. data/spec/integration/verify/v2/service/webhook_spec.rb +0 -258
  722. data/spec/integration/verify/v2/service_spec.rb +0 -279
  723. data/spec/integration/video/v1/composition_hook_spec.rb +0 -407
  724. data/spec/integration/video/v1/composition_settings_spec.rb +0 -85
  725. data/spec/integration/video/v1/composition_spec.rb +0 -347
  726. data/spec/integration/video/v1/recording_settings_spec.rb +0 -85
  727. data/spec/integration/video/v1/recording_spec.rb +0 -176
  728. data/spec/integration/video/v1/room/recording_spec.rb +0 -185
  729. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -94
  730. data/spec/integration/video/v1/room/room_participant/room_participant_subscribe_rule_spec.rb +0 -103
  731. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -95
  732. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  733. data/spec/integration/video/v1/room/room_recording_rule_spec.rb +0 -89
  734. data/spec/integration/video/v1/room_spec.rb +0 -301
  735. data/spec/integration/voice/v1/byoc_trunk_spec.rb +0 -245
  736. data/spec/integration/voice/v1/connection_policy/connection_policy_target_spec.rb +0 -242
  737. data/spec/integration/voice/v1/connection_policy_spec.rb +0 -221
  738. data/spec/integration/voice/v1/dialing_permissions/bulk_country_update_spec.rb +0 -45
  739. data/spec/integration/voice/v1/dialing_permissions/country/highrisk_special_prefix_spec.rb +0 -60
  740. data/spec/integration/voice/v1/dialing_permissions/country_spec.rb +0 -110
  741. data/spec/integration/voice/v1/dialing_permissions/settings_spec.rb +0 -75
  742. data/spec/integration/voice/v1/dialing_permissions_spec.rb +0 -12
  743. data/spec/integration/voice/v1/ip_record_spec.rb +0 -219
  744. data/spec/integration/voice/v1/source_ip_mapping_spec.rb +0 -216
  745. data/spec/integration/wireless/v1/command_spec.rb +0 -286
  746. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -277
  747. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -88
  748. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -114
  749. data/spec/integration/wireless/v1/sim_spec.rb +0 -325
  750. data/spec/integration/wireless/v1/usage_record_spec.rb +0 -110
  751. data/spec/jwt/access_token_spec.rb +0 -159
  752. data/spec/jwt/client_capability_spec.rb +0 -104
  753. data/spec/jwt/task_router_spec.rb +0 -172
  754. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  755. data/spec/rest/client_spec.rb +0 -255
  756. data/spec/security/request_validator_spec.rb +0 -125
  757. data/spec/spec_helper.rb +0 -38
  758. data/spec/support/fakeweb.rb +0 -2
  759. data/spec/twilio_spec.rb +0 -17
  760. data/spec/twiml/messaging_response_spec.rb +0 -235
  761. data/spec/twiml/voice_response_spec.rb +0 -847
  762. data/spec/util/configuration_spec.rb +0 -33
  763. data/spec/util/url_encode_spec.rb +0 -12
@@ -0,0 +1,330 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ module Twilio
10
+ module REST
11
+ class FlexApi < Domain
12
+ class V1 < Version
13
+ class InteractionContext < InstanceContext
14
+ class InteractionChannelContext < InstanceContext
15
+ class InteractionChannelParticipantList < ListResource
16
+ ##
17
+ # Initialize the InteractionChannelParticipantList
18
+ # @param [Version] version Version that contains the resource
19
+ # @param [String] interaction_sid The Interaction Sid for this channel.
20
+ # @param [String] channel_sid The Channel Sid for this Participant.
21
+ # @return [InteractionChannelParticipantList] InteractionChannelParticipantList
22
+ def initialize(version, interaction_sid: nil, channel_sid: nil)
23
+ super(version)
24
+
25
+ # Path Solution
26
+ @solution = {interaction_sid: interaction_sid, channel_sid: channel_sid}
27
+ @uri = "/Interactions/#{@solution[:interaction_sid]}/Channels/#{@solution[:channel_sid]}/Participants"
28
+ end
29
+
30
+ ##
31
+ # Create the InteractionChannelParticipantInstance
32
+ # @param [interaction_channel_participant.Type] type Participant type. Can be:
33
+ # `agent`, `customer`, `supervisor`, `external` or `unknown`.
34
+ # @param [Hash] media_properties JSON representing the Media Properties for the
35
+ # new Participant.
36
+ # @return [InteractionChannelParticipantInstance] Created InteractionChannelParticipantInstance
37
+ def create(type: nil, media_properties: nil)
38
+ data = Twilio::Values.of({
39
+ 'Type' => type,
40
+ 'MediaProperties' => Twilio.serialize_object(media_properties),
41
+ })
42
+
43
+ payload = @version.create('POST', @uri, data: data)
44
+
45
+ InteractionChannelParticipantInstance.new(
46
+ @version,
47
+ payload,
48
+ interaction_sid: @solution[:interaction_sid],
49
+ channel_sid: @solution[:channel_sid],
50
+ )
51
+ end
52
+
53
+ ##
54
+ # Lists InteractionChannelParticipantInstance records from the API as a list.
55
+ # Unlike stream(), this operation is eager and will load `limit` records into
56
+ # memory before returning.
57
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
58
+ # guarantees to never return more than limit. Default is no limit
59
+ # @param [Integer] page_size Number of records to fetch per request, when
60
+ # not set will use the default value of 50 records. If no page_size is defined
61
+ # but a limit is defined, stream() will attempt to read the limit with the most
62
+ # efficient page size, i.e. min(limit, 1000)
63
+ # @return [Array] Array of up to limit results
64
+ def list(limit: nil, page_size: nil)
65
+ self.stream(limit: limit, page_size: page_size).entries
66
+ end
67
+
68
+ ##
69
+ # Streams InteractionChannelParticipantInstance records from the API as an Enumerable.
70
+ # This operation lazily loads records as efficiently as possible until the limit
71
+ # is reached.
72
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
73
+ # guarantees to never return more than limit. Default is no limit.
74
+ # @param [Integer] page_size Number of records to fetch per request, when
75
+ # not set will use the default value of 50 records. If no page_size is defined
76
+ # but a limit is defined, stream() will attempt to read the limit with the most
77
+ # efficient page size, i.e. min(limit, 1000)
78
+ # @return [Enumerable] Enumerable that will yield up to limit results
79
+ def stream(limit: nil, page_size: nil)
80
+ limits = @version.read_limits(limit, page_size)
81
+
82
+ page = self.page(page_size: limits[:page_size], )
83
+
84
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
85
+ end
86
+
87
+ ##
88
+ # When passed a block, yields InteractionChannelParticipantInstance records from the API.
89
+ # This operation lazily loads records as efficiently as possible until the limit
90
+ # is reached.
91
+ def each
92
+ limits = @version.read_limits
93
+
94
+ page = self.page(page_size: limits[:page_size], )
95
+
96
+ @version.stream(page,
97
+ limit: limits[:limit],
98
+ page_limit: limits[:page_limit]).each {|x| yield x}
99
+ end
100
+
101
+ ##
102
+ # Retrieve a single page of InteractionChannelParticipantInstance records from the API.
103
+ # Request is executed immediately.
104
+ # @param [String] page_token PageToken provided by the API
105
+ # @param [Integer] page_number Page Number, this value is simply for client state
106
+ # @param [Integer] page_size Number of records to return, defaults to 50
107
+ # @return [Page] Page of InteractionChannelParticipantInstance
108
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
109
+ params = Twilio::Values.of({
110
+ 'PageToken' => page_token,
111
+ 'Page' => page_number,
112
+ 'PageSize' => page_size,
113
+ })
114
+
115
+ response = @version.page('GET', @uri, params: params)
116
+
117
+ InteractionChannelParticipantPage.new(@version, response, @solution)
118
+ end
119
+
120
+ ##
121
+ # Retrieve a single page of InteractionChannelParticipantInstance records from the API.
122
+ # Request is executed immediately.
123
+ # @param [String] target_url API-generated URL for the requested results page
124
+ # @return [Page] Page of InteractionChannelParticipantInstance
125
+ def get_page(target_url)
126
+ response = @version.domain.request(
127
+ 'GET',
128
+ target_url
129
+ )
130
+ InteractionChannelParticipantPage.new(@version, response, @solution)
131
+ end
132
+
133
+ ##
134
+ # Provide a user friendly representation
135
+ def to_s
136
+ '#<Twilio.FlexApi.V1.InteractionChannelParticipantList>'
137
+ end
138
+ end
139
+
140
+ class InteractionChannelParticipantPage < Page
141
+ ##
142
+ # Initialize the InteractionChannelParticipantPage
143
+ # @param [Version] version Version that contains the resource
144
+ # @param [Response] response Response from the API
145
+ # @param [Hash] solution Path solution for the resource
146
+ # @return [InteractionChannelParticipantPage] InteractionChannelParticipantPage
147
+ def initialize(version, response, solution)
148
+ super(version, response)
149
+
150
+ # Path Solution
151
+ @solution = solution
152
+ end
153
+
154
+ ##
155
+ # Build an instance of InteractionChannelParticipantInstance
156
+ # @param [Hash] payload Payload response from the API
157
+ # @return [InteractionChannelParticipantInstance] InteractionChannelParticipantInstance
158
+ def get_instance(payload)
159
+ InteractionChannelParticipantInstance.new(
160
+ @version,
161
+ payload,
162
+ interaction_sid: @solution[:interaction_sid],
163
+ channel_sid: @solution[:channel_sid],
164
+ )
165
+ end
166
+
167
+ ##
168
+ # Provide a user friendly representation
169
+ def to_s
170
+ '<Twilio.FlexApi.V1.InteractionChannelParticipantPage>'
171
+ end
172
+ end
173
+
174
+ class InteractionChannelParticipantContext < InstanceContext
175
+ ##
176
+ # Initialize the InteractionChannelParticipantContext
177
+ # @param [Version] version Version that contains the resource
178
+ # @param [String] interaction_sid The Interaction Sid for this channel.
179
+ # @param [String] channel_sid The Channel Sid for this Participant.
180
+ # @param [String] sid The unique string created by Twilio to identify an
181
+ # Interaction Channel resource.
182
+ # @return [InteractionChannelParticipantContext] InteractionChannelParticipantContext
183
+ def initialize(version, interaction_sid, channel_sid, sid)
184
+ super(version)
185
+
186
+ # Path Solution
187
+ @solution = {interaction_sid: interaction_sid, channel_sid: channel_sid, sid: sid, }
188
+ @uri = "/Interactions/#{@solution[:interaction_sid]}/Channels/#{@solution[:channel_sid]}/Participants/#{@solution[:sid]}"
189
+ end
190
+
191
+ ##
192
+ # Update the InteractionChannelParticipantInstance
193
+ # @param [interaction_channel_participant.Status] status The Participant's status.
194
+ # Can be: `closed` or `wrapup`. Participant must be an agent.
195
+ # @return [InteractionChannelParticipantInstance] Updated InteractionChannelParticipantInstance
196
+ def update(status: nil)
197
+ data = Twilio::Values.of({'Status' => status, })
198
+
199
+ payload = @version.update('POST', @uri, data: data)
200
+
201
+ InteractionChannelParticipantInstance.new(
202
+ @version,
203
+ payload,
204
+ interaction_sid: @solution[:interaction_sid],
205
+ channel_sid: @solution[:channel_sid],
206
+ sid: @solution[:sid],
207
+ )
208
+ end
209
+
210
+ ##
211
+ # Provide a user friendly representation
212
+ def to_s
213
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
214
+ "#<Twilio.FlexApi.V1.InteractionChannelParticipantContext #{context}>"
215
+ end
216
+
217
+ ##
218
+ # Provide a detailed, user friendly representation
219
+ def inspect
220
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
221
+ "#<Twilio.FlexApi.V1.InteractionChannelParticipantContext #{context}>"
222
+ end
223
+ end
224
+
225
+ class InteractionChannelParticipantInstance < InstanceResource
226
+ ##
227
+ # Initialize the InteractionChannelParticipantInstance
228
+ # @param [Version] version Version that contains the resource
229
+ # @param [Hash] payload payload that contains response from Twilio
230
+ # @param [String] interaction_sid The Interaction Sid for this channel.
231
+ # @param [String] channel_sid The Channel Sid for this Participant.
232
+ # @param [String] sid The unique string created by Twilio to identify an
233
+ # Interaction Channel resource.
234
+ # @return [InteractionChannelParticipantInstance] InteractionChannelParticipantInstance
235
+ def initialize(version, payload, interaction_sid: nil, channel_sid: nil, sid: nil)
236
+ super(version)
237
+
238
+ # Marshaled Properties
239
+ @properties = {
240
+ 'sid' => payload['sid'],
241
+ 'type' => payload['type'],
242
+ 'interaction_sid' => payload['interaction_sid'],
243
+ 'channel_sid' => payload['channel_sid'],
244
+ 'url' => payload['url'],
245
+ }
246
+
247
+ # Context
248
+ @instance_context = nil
249
+ @params = {
250
+ 'interaction_sid' => interaction_sid,
251
+ 'channel_sid' => channel_sid,
252
+ 'sid' => sid || @properties['sid'],
253
+ }
254
+ end
255
+
256
+ ##
257
+ # Generate an instance context for the instance, the context is capable of
258
+ # performing various actions. All instance actions are proxied to the context
259
+ # @return [InteractionChannelParticipantContext] InteractionChannelParticipantContext for this InteractionChannelParticipantInstance
260
+ def context
261
+ unless @instance_context
262
+ @instance_context = InteractionChannelParticipantContext.new(
263
+ @version,
264
+ @params['interaction_sid'],
265
+ @params['channel_sid'],
266
+ @params['sid'],
267
+ )
268
+ end
269
+ @instance_context
270
+ end
271
+
272
+ ##
273
+ # @return [String] The unique string that identifies the resource
274
+ def sid
275
+ @properties['sid']
276
+ end
277
+
278
+ ##
279
+ # @return [interaction_channel_participant.Type] Participant type.
280
+ def type
281
+ @properties['type']
282
+ end
283
+
284
+ ##
285
+ # @return [String] The Interaction Sid for this channel.
286
+ def interaction_sid
287
+ @properties['interaction_sid']
288
+ end
289
+
290
+ ##
291
+ # @return [String] The Channel Sid for this Participant.
292
+ def channel_sid
293
+ @properties['channel_sid']
294
+ end
295
+
296
+ ##
297
+ # @return [String] The url
298
+ def url
299
+ @properties['url']
300
+ end
301
+
302
+ ##
303
+ # Update the InteractionChannelParticipantInstance
304
+ # @param [interaction_channel_participant.Status] status The Participant's status.
305
+ # Can be: `closed` or `wrapup`. Participant must be an agent.
306
+ # @return [InteractionChannelParticipantInstance] Updated InteractionChannelParticipantInstance
307
+ def update(status: nil)
308
+ context.update(status: status, )
309
+ end
310
+
311
+ ##
312
+ # Provide a user friendly representation
313
+ def to_s
314
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
315
+ "<Twilio.FlexApi.V1.InteractionChannelParticipantInstance #{values}>"
316
+ end
317
+
318
+ ##
319
+ # Provide a detailed, user friendly representation
320
+ def inspect
321
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
322
+ "<Twilio.FlexApi.V1.InteractionChannelParticipantInstance #{values}>"
323
+ end
324
+ end
325
+ end
326
+ end
327
+ end
328
+ end
329
+ end
330
+ end