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