twilio-ruby 5.72.0 → 6.0.2

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 (654) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/pr-lint.yml +8 -2
  3. data/.github/workflows/test-and-deploy.yml +14 -4
  4. data/.gitignore +3 -0
  5. data/CHANGES.md +281 -1
  6. data/CONTRIBUTING.md +10 -8
  7. data/LICENSE +1 -1
  8. data/Makefile +3 -0
  9. data/README.md +133 -40
  10. data/UPGRADE.md +10 -0
  11. data/advanced-examples/custom-http-client.md +170 -0
  12. data/cluster_spec.rb +77 -0
  13. data/lib/twilio-ruby/base/client_base.rb +124 -0
  14. data/lib/twilio-ruby/framework/rest/error.rb +0 -12
  15. data/lib/twilio-ruby/jwt/access_token.rb +0 -59
  16. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +198 -178
  17. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +372 -332
  18. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +372 -332
  19. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +121 -114
  20. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +214 -192
  21. data/lib/twilio-ruby/rest/accounts/v1.rb +45 -42
  22. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  23. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  24. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +371 -365
  25. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +555 -514
  26. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +617 -586
  27. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +328 -320
  28. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +413 -0
  29. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +413 -0
  30. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +413 -0
  31. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +413 -0
  32. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +413 -0
  33. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +413 -0
  34. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +413 -0
  35. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +433 -0
  36. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +136 -118
  37. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +203 -194
  38. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +252 -289
  39. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +317 -303
  40. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +405 -417
  41. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +291 -342
  42. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +498 -511
  43. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +839 -641
  44. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +839 -641
  45. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +163 -0
  46. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +239 -0
  47. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +963 -991
  48. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +653 -717
  49. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +455 -458
  50. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +498 -493
  51. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +427 -407
  52. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +322 -351
  53. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +399 -418
  54. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +541 -554
  55. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +541 -553
  56. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +541 -553
  57. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +846 -903
  58. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +336 -302
  59. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +167 -166
  60. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +344 -350
  61. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +618 -625
  62. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +157 -138
  63. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +157 -138
  64. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +405 -399
  65. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +371 -358
  66. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +341 -338
  67. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +427 -390
  68. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +359 -380
  69. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +369 -385
  70. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +365 -372
  71. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +514 -513
  72. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +420 -408
  73. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +336 -306
  74. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +376 -368
  75. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +400 -373
  76. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +347 -0
  77. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/{auth_calls_mapping → auth_type_calls}/auth_calls_ip_access_control_list_mapping.rb +194 -195
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +140 -0
  79. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/{auth_registrations_mapping → auth_type_registrations}/auth_registrations_credential_list_mapping.rb +194 -195
  80. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +126 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +94 -103
  82. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +340 -339
  83. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +340 -338
  84. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +650 -645
  85. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +413 -421
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +400 -374
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +141 -150
  88. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +171 -154
  89. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +365 -350
  90. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +319 -339
  91. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +319 -339
  92. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +319 -339
  93. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +319 -339
  94. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +319 -339
  95. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +319 -339
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +319 -339
  97. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +319 -339
  98. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +386 -416
  99. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +489 -484
  100. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +112 -104
  101. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +172 -161
  102. data/lib/twilio-ruby/rest/api/v2010/account.rb +982 -943
  103. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  104. data/lib/twilio-ruby/rest/api.rb +25 -34
  105. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  106. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +234 -213
  107. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +210 -207
  108. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +380 -388
  109. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +429 -411
  110. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +403 -385
  111. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +471 -462
  112. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +234 -211
  113. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +363 -375
  114. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +427 -445
  115. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +242 -244
  116. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +215 -226
  117. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +519 -500
  118. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +427 -413
  119. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +674 -640
  120. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +201 -188
  121. data/lib/twilio-ruby/rest/autopilot/v1.rb +48 -45
  122. data/lib/twilio-ruby/rest/autopilot.rb +3 -34
  123. data/lib/twilio-ruby/rest/autopilot_base.rb +38 -0
  124. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +300 -279
  125. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +299 -279
  126. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +271 -248
  127. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +246 -235
  128. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +245 -218
  129. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  130. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  131. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  132. data/lib/twilio-ruby/rest/chat/v1/credential.rb +420 -403
  133. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +375 -391
  134. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +423 -440
  135. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +440 -437
  136. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +535 -515
  137. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +397 -367
  138. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +245 -239
  139. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +466 -440
  140. data/lib/twilio-ruby/rest/chat/v1/service.rb +862 -894
  141. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  142. data/lib/twilio-ruby/rest/chat/v2/credential.rb +420 -401
  143. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +372 -370
  144. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +375 -386
  145. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +487 -527
  146. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +515 -533
  147. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +441 -467
  148. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +607 -605
  149. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +397 -369
  150. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +365 -381
  151. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +407 -419
  152. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +510 -491
  153. data/lib/twilio-ruby/rest/chat/v2/service.rb +765 -778
  154. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  155. data/lib/twilio-ruby/rest/chat/v3/channel.rb +289 -267
  156. data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
  157. data/lib/twilio-ruby/rest/chat.rb +4 -48
  158. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  159. data/lib/twilio-ruby/rest/client.rb +328 -570
  160. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +208 -0
  161. data/lib/twilio-ruby/rest/content/v1/content.rb +364 -0
  162. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +252 -0
  163. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +266 -0
  164. data/lib/twilio-ruby/rest/content/v1.rb +61 -0
  165. data/lib/twilio-ruby/rest/content.rb +15 -0
  166. data/lib/twilio-ruby/rest/content_base.rb +38 -0
  167. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +474 -444
  168. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -227
  169. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +279 -252
  170. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +335 -344
  171. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +530 -495
  172. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +499 -495
  173. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +426 -403
  174. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +606 -552
  175. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +426 -409
  176. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +307 -304
  177. data/lib/twilio-ruby/rest/conversations/v1/role.rb +385 -356
  178. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +365 -373
  179. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +300 -289
  180. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +246 -235
  181. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +307 -279
  182. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +342 -371
  183. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +537 -535
  184. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +508 -530
  185. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +435 -438
  186. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +618 -588
  187. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +313 -317
  188. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +397 -380
  189. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +447 -455
  190. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +485 -474
  191. data/lib/twilio-ruby/rest/conversations/v1/service.rb +477 -447
  192. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +446 -435
  193. data/lib/twilio-ruby/rest/conversations/v1/user.rb +473 -441
  194. data/lib/twilio-ruby/rest/conversations/v1.rb +129 -136
  195. data/lib/twilio-ruby/rest/conversations.rb +9 -34
  196. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  197. data/lib/twilio-ruby/rest/events/v1/event_type.rb +306 -288
  198. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +302 -0
  199. data/lib/twilio-ruby/rest/events/v1/schema.rb +229 -218
  200. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +114 -100
  201. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +120 -103
  202. data/lib/twilio-ruby/rest/events/v1/sink.rb +439 -408
  203. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +368 -339
  204. data/lib/twilio-ruby/rest/events/v1/subscription.rb +420 -387
  205. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  206. data/lib/twilio-ruby/rest/events.rb +5 -34
  207. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  208. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +451 -0
  209. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +366 -330
  210. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +489 -496
  211. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +565 -570
  212. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +331 -0
  213. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +231 -0
  214. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +445 -0
  215. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +360 -0
  216. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +445 -0
  217. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +364 -0
  218. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +217 -0
  219. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +155 -0
  220. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +141 -0
  221. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +196 -0
  222. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +245 -229
  223. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +329 -319
  224. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +400 -398
  225. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +249 -225
  226. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +379 -331
  227. data/lib/twilio-ruby/rest/flex_api/v1.rb +195 -92
  228. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +146 -0
  229. data/lib/twilio-ruby/rest/flex_api/v2.rb +40 -0
  230. data/lib/twilio-ruby/rest/flex_api.rb +24 -31
  231. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  232. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +244 -227
  233. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  234. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  235. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  236. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +312 -315
  237. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +350 -0
  238. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +271 -255
  239. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +244 -225
  240. data/lib/twilio-ruby/rest/insights/v1/call.rb +260 -236
  241. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +496 -426
  242. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +485 -467
  243. data/lib/twilio-ruby/rest/insights/v1/conference.rb +506 -502
  244. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +379 -371
  245. data/lib/twilio-ruby/rest/insights/v1/room.rb +494 -489
  246. data/lib/twilio-ruby/rest/insights/v1/setting.rb +246 -207
  247. data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
  248. data/lib/twilio-ruby/rest/insights.rb +6 -34
  249. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  250. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +511 -0
  251. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +226 -0
  252. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +383 -0
  253. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +250 -0
  254. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +540 -0
  255. data/lib/twilio-ruby/rest/intelligence/v2.rb +64 -0
  256. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  257. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  258. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +420 -364
  259. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +375 -359
  260. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +423 -397
  261. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +440 -409
  262. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +535 -488
  263. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +397 -347
  264. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +245 -233
  265. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +466 -418
  266. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +862 -779
  267. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  268. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +420 -364
  269. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +372 -343
  270. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +375 -359
  271. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +487 -451
  272. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +515 -479
  273. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +441 -411
  274. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +607 -555
  275. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +397 -347
  276. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +365 -351
  277. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +398 -384
  278. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +510 -467
  279. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +765 -689
  280. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  281. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  282. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  283. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +243 -239
  284. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  285. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +342 -253
  286. data/lib/twilio-ruby/rest/lookups/v2.rb +42 -38
  287. data/lib/twilio-ruby/rest/lookups.rb +2 -41
  288. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  289. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +413 -387
  290. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +399 -389
  291. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +245 -214
  292. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +425 -393
  293. data/lib/twilio-ruby/rest/media/v1.rb +72 -69
  294. data/lib/twilio-ruby/rest/media.rb +4 -34
  295. data/lib/twilio-ruby/rest/media_base.rb +38 -0
  296. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +136 -0
  297. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +360 -346
  298. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +488 -443
  299. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +189 -0
  300. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +280 -0
  301. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +289 -0
  302. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +238 -0
  303. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +155 -144
  304. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +214 -0
  305. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +196 -0
  306. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +352 -335
  307. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +359 -341
  308. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +359 -336
  309. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +507 -426
  310. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +121 -115
  311. data/lib/twilio-ruby/rest/messaging/v1/service.rb +741 -763
  312. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +106 -94
  313. data/lib/twilio-ruby/rest/messaging/v1.rb +172 -90
  314. data/lib/twilio-ruby/rest/messaging.rb +28 -35
  315. data/lib/twilio-ruby/rest/messaging_base.rb +38 -0
  316. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +359 -0
  317. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +352 -0
  318. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +208 -0
  319. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +340 -295
  320. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +375 -0
  321. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +368 -0
  322. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +412 -322
  323. data/lib/twilio-ruby/rest/microvisor/v1.rb +87 -53
  324. data/lib/twilio-ruby/rest/microvisor.rb +4 -34
  325. data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
  326. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +402 -395
  327. data/lib/twilio-ruby/rest/monitor/v1/event.rb +388 -390
  328. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  329. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  330. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  331. data/lib/twilio-ruby/rest/notify/v1/credential.rb +422 -408
  332. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +440 -452
  333. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +313 -362
  334. data/lib/twilio-ruby/rest/notify/v1/service.rb +628 -622
  335. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  336. data/lib/twilio-ruby/rest/notify.rb +3 -34
  337. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  338. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +224 -0
  339. data/lib/twilio-ruby/rest/numbers/v1.rb +49 -0
  340. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +279 -261
  341. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +325 -298
  342. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +334 -309
  343. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +194 -181
  344. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +613 -607
  345. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +392 -351
  346. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +291 -266
  347. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +326 -307
  348. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +413 -371
  349. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +291 -266
  350. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +177 -181
  351. data/lib/twilio-ruby/rest/numbers/v2.rb +33 -28
  352. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  353. data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
  354. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +171 -0
  355. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +185 -0
  356. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +262 -0
  357. data/lib/twilio-ruby/rest/oauth/v1/token.rb +179 -0
  358. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +213 -0
  359. data/lib/twilio-ruby/rest/oauth/v1.rb +64 -0
  360. data/lib/twilio-ruby/rest/oauth.rb +33 -0
  361. data/lib/twilio-ruby/rest/oauth_base.rb +38 -0
  362. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +412 -375
  363. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +395 -358
  364. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +451 -418
  365. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +409 -369
  366. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +495 -459
  367. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +42 -38
  368. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +376 -396
  369. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +449 -446
  370. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +616 -625
  371. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  372. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +302 -298
  373. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +326 -309
  374. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +343 -330
  375. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +430 -398
  376. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  377. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +379 -374
  378. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +443 -399
  379. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +438 -407
  380. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +379 -374
  381. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +420 -398
  382. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +441 -404
  383. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +379 -374
  384. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +420 -398
  385. data/lib/twilio-ruby/rest/preview/sync/service.rb +496 -452
  386. data/lib/twilio-ruby/rest/preview/sync.rb +42 -37
  387. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +234 -205
  388. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +234 -205
  389. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +210 -199
  390. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +380 -375
  391. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +429 -400
  392. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +403 -373
  393. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +460 -430
  394. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +234 -205
  395. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +363 -362
  396. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +427 -417
  397. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +242 -230
  398. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +215 -214
  399. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +519 -488
  400. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +654 -619
  401. data/lib/twilio-ruby/rest/preview/understand.rb +42 -38
  402. data/lib/twilio-ruby/rest/preview/wireless/command.rb +392 -364
  403. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +449 -398
  404. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +232 -205
  405. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +580 -523
  406. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  407. data/lib/twilio-ruby/rest/preview.rb +11 -102
  408. data/lib/twilio-ruby/rest/preview_base.rb +63 -0
  409. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +298 -275
  410. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +107 -119
  411. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +291 -268
  412. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +107 -119
  413. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +298 -275
  414. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +220 -197
  415. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +121 -135
  416. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  417. data/lib/twilio-ruby/rest/pricing/v2/country.rb +290 -270
  418. data/lib/twilio-ruby/rest/pricing/v2/number.rb +232 -217
  419. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +298 -275
  420. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +238 -220
  421. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +121 -138
  422. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  423. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  424. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  425. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +420 -403
  426. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +409 -418
  427. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +431 -449
  428. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +422 -455
  429. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +523 -547
  430. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +400 -370
  431. data/lib/twilio-ruby/rest/proxy/v1/service.rb +560 -596
  432. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  433. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  434. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  435. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +260 -227
  436. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +260 -223
  437. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +260 -227
  438. data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
  439. data/lib/twilio-ruby/rest/routes.rb +4 -34
  440. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  441. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +316 -323
  442. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +413 -380
  443. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +208 -208
  444. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +408 -384
  445. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +337 -338
  446. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +365 -383
  447. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +404 -396
  448. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +457 -447
  449. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +223 -234
  450. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +343 -353
  451. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +413 -380
  452. data/lib/twilio-ruby/rest/serverless/v1/service.rb +524 -493
  453. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  454. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  455. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  456. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +206 -199
  457. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +221 -218
  458. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +362 -355
  459. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +423 -394
  460. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +206 -200
  461. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +221 -221
  462. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +362 -361
  463. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +471 -449
  464. data/lib/twilio-ruby/rest/studio/v1/flow.rb +381 -355
  465. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  466. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +206 -200
  467. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +221 -221
  468. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +362 -361
  469. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +464 -442
  470. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +342 -320
  471. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +232 -0
  472. data/lib/twilio-ruby/rest/studio/v2/flow.rb +520 -472
  473. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +121 -99
  474. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  475. data/lib/twilio-ruby/rest/studio.rb +3 -41
  476. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  477. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +397 -362
  478. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +474 -483
  479. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +403 -406
  480. data/lib/twilio-ruby/rest/supersim/v1/network.rb +306 -297
  481. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +338 -332
  482. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +381 -351
  483. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +259 -0
  484. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +243 -224
  485. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +201 -188
  486. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +464 -453
  487. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +362 -361
  488. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +314 -344
  489. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -140
  490. data/lib/twilio-ruby/rest/supersim.rb +16 -34
  491. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  492. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +377 -371
  493. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +457 -423
  494. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +470 -490
  495. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +377 -370
  496. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +471 -445
  497. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +473 -495
  498. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +377 -368
  499. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +471 -444
  500. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +139 -132
  501. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +420 -400
  502. data/lib/twilio-ruby/rest/sync/v1/service.rb +576 -567
  503. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  504. data/lib/twilio-ruby/rest/sync.rb +2 -34
  505. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  506. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +408 -395
  507. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +454 -464
  508. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +702 -736
  509. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +616 -661
  510. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +410 -382
  511. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +359 -369
  512. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +279 -275
  513. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +230 -236
  514. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +246 -258
  515. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +571 -566
  516. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +683 -732
  517. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +390 -388
  518. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +235 -239
  519. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +281 -265
  520. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +215 -193
  521. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +251 -234
  522. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +632 -631
  523. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +359 -375
  524. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +245 -241
  525. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +230 -244
  526. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +525 -510
  527. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +353 -356
  528. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +231 -206
  529. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +241 -234
  530. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +722 -730
  531. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  532. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  533. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  534. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +343 -320
  535. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +343 -317
  536. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +441 -419
  537. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +476 -451
  538. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +224 -191
  539. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +624 -630
  540. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  541. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  542. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  543. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +360 -352
  544. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +336 -323
  545. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +334 -321
  546. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +529 -513
  547. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +384 -346
  548. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +283 -261
  549. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +276 -252
  550. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +398 -359
  551. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +283 -261
  552. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +360 -352
  553. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +336 -323
  554. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +334 -321
  555. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +529 -513
  556. data/lib/twilio-ruby/rest/trusthub/v1.rb +132 -139
  557. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  558. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  559. data/lib/twilio-ruby/rest/verify/v2/form.rb +195 -183
  560. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +223 -207
  561. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +272 -262
  562. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +191 -198
  563. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +500 -539
  564. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +448 -461
  565. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +249 -289
  566. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +423 -422
  567. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +380 -363
  568. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +402 -388
  569. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +421 -384
  570. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +374 -366
  571. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +218 -205
  572. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +448 -420
  573. data/lib/twilio-ruby/rest/verify/v2/service.rb +767 -780
  574. data/lib/twilio-ruby/rest/verify/v2/template.rb +223 -198
  575. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +381 -387
  576. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +239 -226
  577. data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
  578. data/lib/twilio-ruby/rest/verify.rb +7 -34
  579. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  580. data/lib/twilio-ruby/rest/video/v1/composition.rb +482 -507
  581. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +530 -647
  582. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +281 -261
  583. data/lib/twilio-ruby/rest/video/v1/recording.rb +432 -426
  584. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +281 -261
  585. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +259 -0
  586. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +332 -0
  587. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +181 -0
  588. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +339 -0
  589. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +503 -0
  590. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +170 -0
  591. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +428 -0
  592. data/lib/twilio-ruby/rest/video/v1/room.rb +611 -602
  593. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  594. data/lib/twilio-ruby/rest/video.rb +7 -34
  595. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  596. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +160 -176
  597. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +502 -486
  598. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +441 -434
  599. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +392 -352
  600. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +135 -121
  601. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +196 -183
  602. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +382 -397
  603. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +217 -190
  604. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +122 -121
  605. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +378 -339
  606. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +361 -319
  607. data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
  608. data/lib/twilio-ruby/rest/voice.rb +7 -34
  609. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  610. data/lib/twilio-ruby/rest/wireless/v1/command.rb +413 -406
  611. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +464 -436
  612. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +299 -284
  613. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +243 -243
  614. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +640 -647
  615. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +230 -221
  616. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  617. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  618. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  619. data/lib/twilio-ruby/rest.rb +1 -0
  620. data/lib/twilio-ruby/twiml/voice_response.rb +132 -33
  621. data/lib/twilio-ruby/version.rb +1 -1
  622. data/sonar-project.properties +1 -1
  623. data/twilio-ruby.gemspec +1 -1
  624. metadata +118 -38
  625. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  626. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  627. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  628. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  629. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  630. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  631. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  632. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  633. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  634. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  635. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  636. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  637. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  638. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -314
  639. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  640. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +0 -559
  641. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +0 -165
  642. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +0 -225
  643. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +0 -195
  644. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +0 -186
  645. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -277
  646. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -65
  647. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  648. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
  649. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
  650. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  651. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  652. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  653. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
  654. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,500 +1,505 @@
1
1
  ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio - Api
8
+ # This is the public Twilio REST API.
9
+ #
10
+ # NOTE: This class is auto generated by OpenAPI Generator.
11
+ # https://openapi-generator.tech
12
+ # Do not edit the class manually.
6
13
  #
7
- # frozen_string_literal: true
8
-
9
- module Twilio
10
- module REST
11
- class Api < Domain
12
- class V2010 < Version
13
- class AccountContext < InstanceContext
14
- class ConferenceList < ListResource
15
- ##
16
- # Initialize the ConferenceList
17
- # @param [Version] version Version that contains the resource
18
- # @param [String] account_sid The SID of the
19
- # {Account}[https://www.twilio.com/docs/iam/api/account] that created this
20
- # Conference resource.
21
- # @return [ConferenceList] ConferenceList
22
- def initialize(version, account_sid: nil)
23
- super(version)
24
-
25
- # Path Solution
26
- @solution = {account_sid: account_sid}
27
- @uri = "/Accounts/#{@solution[:account_sid]}/Conferences.json"
28
- end
29
-
30
- ##
31
- # Lists ConferenceInstance records from the API as a list.
32
- # Unlike stream(), this operation is eager and will load `limit` records into
33
- # memory before returning.
34
- # @param [Time] date_created_before The `YYYY-MM-DD` value of the resources to read
35
- # @param [Time] date_created The `YYYY-MM-DD` value of the resources to read
36
- # @param [Time] date_created_after The `YYYY-MM-DD` value of the resources to read
37
- # @param [Time] date_updated_before The `YYYY-MM-DD` value of the resources to read
38
- # @param [Time] date_updated The `YYYY-MM-DD` value of the resources to read
39
- # @param [Time] date_updated_after The `YYYY-MM-DD` value of the resources to read
40
- # @param [String] friendly_name The string that identifies the Conference
41
- # resources to read.
42
- # @param [conference.Status] status The status of the resources to read. Can be:
43
- # `init`, `in-progress`, or `completed`.
44
- # @param [Integer] limit Upper limit for the number of records to return. stream()
45
- # guarantees to never return more than limit. Default is no limit
46
- # @param [Integer] page_size Number of records to fetch per request, when
47
- # not set will use the default value of 50 records. If no page_size is defined
48
- # but a limit is defined, stream() will attempt to read the limit with the most
49
- # efficient page size, i.e. min(limit, 1000)
50
- # @return [Array] Array of up to limit results
51
- def list(date_created_before: :unset, date_created: :unset, date_created_after: :unset, date_updated_before: :unset, date_updated: :unset, date_updated_after: :unset, friendly_name: :unset, status: :unset, limit: nil, page_size: nil)
52
- self.stream(
53
- date_created_before: date_created_before,
54
- date_created: date_created,
55
- date_created_after: date_created_after,
56
- date_updated_before: date_updated_before,
57
- date_updated: date_updated,
58
- date_updated_after: date_updated_after,
59
- friendly_name: friendly_name,
60
- status: status,
61
- limit: limit,
62
- page_size: page_size
63
- ).entries
64
- end
65
-
66
- ##
67
- # Streams ConferenceInstance records from the API as an Enumerable.
68
- # This operation lazily loads records as efficiently as possible until the limit
69
- # is reached.
70
- # @param [Time] date_created_before The `YYYY-MM-DD` value of the resources to read
71
- # @param [Time] date_created The `YYYY-MM-DD` value of the resources to read
72
- # @param [Time] date_created_after The `YYYY-MM-DD` value of the resources to read
73
- # @param [Time] date_updated_before The `YYYY-MM-DD` value of the resources to read
74
- # @param [Time] date_updated The `YYYY-MM-DD` value of the resources to read
75
- # @param [Time] date_updated_after The `YYYY-MM-DD` value of the resources to read
76
- # @param [String] friendly_name The string that identifies the Conference
77
- # resources to read.
78
- # @param [conference.Status] status The status of the resources to read. Can be:
79
- # `init`, `in-progress`, or `completed`.
80
- # @param [Integer] limit Upper limit for the number of records to return. stream()
81
- # guarantees to never return more than limit. Default is no limit.
82
- # @param [Integer] page_size Number of records to fetch per request, when
83
- # not set will use the default value of 50 records. If no page_size is defined
84
- # but a limit is defined, stream() will attempt to read the limit with the most
85
- # efficient page size, i.e. min(limit, 1000)
86
- # @return [Enumerable] Enumerable that will yield up to limit results
87
- def stream(date_created_before: :unset, date_created: :unset, date_created_after: :unset, date_updated_before: :unset, date_updated: :unset, date_updated_after: :unset, friendly_name: :unset, status: :unset, limit: nil, page_size: nil)
88
- limits = @version.read_limits(limit, page_size)
89
-
90
- page = self.page(
91
- date_created_before: date_created_before,
92
- date_created: date_created,
93
- date_created_after: date_created_after,
94
- date_updated_before: date_updated_before,
95
- date_updated: date_updated,
96
- date_updated_after: date_updated_after,
97
- friendly_name: friendly_name,
98
- status: status,
99
- page_size: limits[:page_size],
100
- )
101
-
102
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
103
- end
104
-
105
- ##
106
- # When passed a block, yields ConferenceInstance records from the API.
107
- # This operation lazily loads records as efficiently as possible until the limit
108
- # is reached.
109
- def each
110
- limits = @version.read_limits
111
-
112
- page = self.page(page_size: limits[:page_size], )
113
-
114
- @version.stream(page,
115
- limit: limits[:limit],
116
- page_limit: limits[:page_limit]).each {|x| yield x}
117
- end
118
-
119
- ##
120
- # Retrieve a single page of ConferenceInstance records from the API.
121
- # Request is executed immediately.
122
- # @param [Time] date_created_before The `YYYY-MM-DD` value of the resources to read
123
- # @param [Time] date_created The `YYYY-MM-DD` value of the resources to read
124
- # @param [Time] date_created_after The `YYYY-MM-DD` value of the resources to read
125
- # @param [Time] date_updated_before The `YYYY-MM-DD` value of the resources to read
126
- # @param [Time] date_updated The `YYYY-MM-DD` value of the resources to read
127
- # @param [Time] date_updated_after The `YYYY-MM-DD` value of the resources to read
128
- # @param [String] friendly_name The string that identifies the Conference
129
- # resources to read.
130
- # @param [conference.Status] status The status of the resources to read. Can be:
131
- # `init`, `in-progress`, or `completed`.
132
- # @param [String] page_token PageToken provided by the API
133
- # @param [Integer] page_number Page Number, this value is simply for client state
134
- # @param [Integer] page_size Number of records to return, defaults to 50
135
- # @return [Page] Page of ConferenceInstance
136
- def page(date_created_before: :unset, date_created: :unset, date_created_after: :unset, date_updated_before: :unset, date_updated: :unset, date_updated_after: :unset, friendly_name: :unset, status: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
137
- params = Twilio::Values.of({
138
- 'DateCreated<' => Twilio.serialize_iso8601_date(date_created_before),
139
- 'DateCreated' => Twilio.serialize_iso8601_date(date_created),
140
- 'DateCreated>' => Twilio.serialize_iso8601_date(date_created_after),
141
- 'DateUpdated<' => Twilio.serialize_iso8601_date(date_updated_before),
142
- 'DateUpdated' => Twilio.serialize_iso8601_date(date_updated),
143
- 'DateUpdated>' => Twilio.serialize_iso8601_date(date_updated_after),
144
- 'FriendlyName' => friendly_name,
145
- 'Status' => status,
146
- 'PageToken' => page_token,
147
- 'Page' => page_number,
148
- 'PageSize' => page_size,
149
- })
150
-
151
- response = @version.page('GET', @uri, params: params)
152
-
153
- ConferencePage.new(@version, response, @solution)
154
- end
155
-
156
- ##
157
- # Retrieve a single page of ConferenceInstance records from the API.
158
- # Request is executed immediately.
159
- # @param [String] target_url API-generated URL for the requested results page
160
- # @return [Page] Page of ConferenceInstance
161
- def get_page(target_url)
162
- response = @version.domain.request(
163
- 'GET',
164
- target_url
165
- )
166
- ConferencePage.new(@version, response, @solution)
167
- end
168
-
169
- ##
170
- # Provide a user friendly representation
171
- def to_s
172
- '#<Twilio.Api.V2010.ConferenceList>'
173
- end
174
- end
175
-
176
- class ConferencePage < Page
177
- ##
178
- # Initialize the ConferencePage
179
- # @param [Version] version Version that contains the resource
180
- # @param [Response] response Response from the API
181
- # @param [Hash] solution Path solution for the resource
182
- # @return [ConferencePage] ConferencePage
183
- def initialize(version, response, solution)
184
- super(version, response)
185
-
186
- # Path Solution
187
- @solution = solution
188
- end
189
-
190
- ##
191
- # Build an instance of ConferenceInstance
192
- # @param [Hash] payload Payload response from the API
193
- # @return [ConferenceInstance] ConferenceInstance
194
- def get_instance(payload)
195
- ConferenceInstance.new(@version, payload, account_sid: @solution[:account_sid], )
196
- end
197
-
198
- ##
199
- # Provide a user friendly representation
200
- def to_s
201
- '<Twilio.Api.V2010.ConferencePage>'
202
- end
203
- end
204
-
205
- class ConferenceContext < InstanceContext
206
- ##
207
- # Initialize the ConferenceContext
208
- # @param [Version] version Version that contains the resource
209
- # @param [String] account_sid The SID of the
210
- # {Account}[https://www.twilio.com/docs/iam/api/account] that created the
211
- # Conference resource(s) to fetch.
212
- # @param [String] sid The Twilio-provided string that uniquely identifies the
213
- # Conference resource to fetch
214
- # @return [ConferenceContext] ConferenceContext
215
- def initialize(version, account_sid, sid)
216
- super(version)
217
-
218
- # Path Solution
219
- @solution = {account_sid: account_sid, sid: sid, }
220
- @uri = "/Accounts/#{@solution[:account_sid]}/Conferences/#{@solution[:sid]}.json"
221
-
222
- # Dependents
223
- @participants = nil
224
- @recordings = nil
225
- end
226
-
227
- ##
228
- # Fetch the ConferenceInstance
229
- # @return [ConferenceInstance] Fetched ConferenceInstance
230
- def fetch
231
- payload = @version.fetch('GET', @uri)
232
-
233
- ConferenceInstance.new(
234
- @version,
235
- payload,
236
- account_sid: @solution[:account_sid],
237
- sid: @solution[:sid],
238
- )
239
- end
240
-
241
- ##
242
- # Update the ConferenceInstance
243
- # @param [conference.UpdateStatus] status The new status of the resource. Can be:
244
- # Can be: `init`, `in-progress`, or `completed`. Specifying `completed` will end
245
- # the conference and hang up all participants
246
- # @param [String] announce_url The URL we should call to announce something into
247
- # the conference. The URL can return an MP3, a WAV, or a TwiML document with
248
- # `<Play>` or `<Say>`.
249
- # @param [String] announce_method The HTTP method used to call `announce_url`. Can
250
- # be: `GET` or `POST` and the default is `POST`
251
- # @return [ConferenceInstance] Updated ConferenceInstance
252
- def update(status: :unset, announce_url: :unset, announce_method: :unset)
253
- data = Twilio::Values.of({
254
- 'Status' => status,
255
- 'AnnounceUrl' => announce_url,
256
- 'AnnounceMethod' => announce_method,
257
- })
258
-
259
- payload = @version.update('POST', @uri, data: data)
260
-
261
- ConferenceInstance.new(
262
- @version,
263
- payload,
264
- account_sid: @solution[:account_sid],
265
- sid: @solution[:sid],
266
- )
267
- end
268
-
269
- ##
270
- # Access the participants
271
- # @return [ParticipantList]
272
- # @return [ParticipantContext] if call_sid was passed.
273
- def participants(call_sid=:unset)
274
- raise ArgumentError, 'call_sid cannot be nil' if call_sid.nil?
275
-
276
- if call_sid != :unset
277
- return ParticipantContext.new(@version, @solution[:account_sid], @solution[:sid], call_sid, )
278
- end
279
-
280
- unless @participants
281
- @participants = ParticipantList.new(
282
- @version,
283
- account_sid: @solution[:account_sid],
284
- conference_sid: @solution[:sid],
285
- )
286
- end
287
-
288
- @participants
289
- end
290
-
291
- ##
292
- # Access the recordings
293
- # @return [RecordingList]
294
- # @return [RecordingContext] if sid was passed.
295
- def recordings(sid=:unset)
296
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
297
-
298
- if sid != :unset
299
- return RecordingContext.new(@version, @solution[:account_sid], @solution[:sid], sid, )
300
- end
301
-
302
- unless @recordings
303
- @recordings = RecordingList.new(
304
- @version,
305
- account_sid: @solution[:account_sid],
306
- conference_sid: @solution[:sid],
307
- )
308
- end
309
-
310
- @recordings
311
- end
312
-
313
- ##
314
- # Provide a user friendly representation
315
- def to_s
316
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
317
- "#<Twilio.Api.V2010.ConferenceContext #{context}>"
318
- end
319
-
320
- ##
321
- # Provide a detailed, user friendly representation
322
- def inspect
323
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
324
- "#<Twilio.Api.V2010.ConferenceContext #{context}>"
325
- end
326
- end
327
-
328
- class ConferenceInstance < InstanceResource
329
- ##
330
- # Initialize the ConferenceInstance
331
- # @param [Version] version Version that contains the resource
332
- # @param [Hash] payload payload that contains response from Twilio
333
- # @param [String] account_sid The SID of the
334
- # {Account}[https://www.twilio.com/docs/iam/api/account] that created this
335
- # Conference resource.
336
- # @param [String] sid The Twilio-provided string that uniquely identifies the
337
- # Conference resource to fetch
338
- # @return [ConferenceInstance] ConferenceInstance
339
- def initialize(version, payload, account_sid: nil, sid: nil)
340
- super(version)
341
-
342
- # Marshaled Properties
343
- @properties = {
344
- 'account_sid' => payload['account_sid'],
345
- 'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
346
- 'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
347
- 'api_version' => payload['api_version'],
348
- 'friendly_name' => payload['friendly_name'],
349
- 'region' => payload['region'],
350
- 'sid' => payload['sid'],
351
- 'status' => payload['status'],
352
- 'uri' => payload['uri'],
353
- 'subresource_uris' => payload['subresource_uris'],
354
- 'reason_conference_ended' => payload['reason_conference_ended'],
355
- 'call_sid_ending_conference' => payload['call_sid_ending_conference'],
356
- }
357
-
358
- # Context
359
- @instance_context = nil
360
- @params = {'account_sid' => account_sid, 'sid' => sid || @properties['sid'], }
361
- end
362
-
363
- ##
364
- # Generate an instance context for the instance, the context is capable of
365
- # performing various actions. All instance actions are proxied to the context
366
- # @return [ConferenceContext] ConferenceContext for this ConferenceInstance
367
- def context
368
- unless @instance_context
369
- @instance_context = ConferenceContext.new(@version, @params['account_sid'], @params['sid'], )
370
- end
371
- @instance_context
372
- end
373
-
374
- ##
375
- # @return [String] The SID of the Account that created this resource
376
- def account_sid
377
- @properties['account_sid']
378
- end
379
-
380
- ##
381
- # @return [Time] The RFC 2822 date and time in GMT that this resource was created
382
- def date_created
383
- @properties['date_created']
384
- end
385
-
386
- ##
387
- # @return [Time] The RFC 2822 date and time in GMT that this resource was last updated
388
- def date_updated
389
- @properties['date_updated']
390
- end
391
-
392
- ##
393
- # @return [String] The API version used to create this conference
394
- def api_version
395
- @properties['api_version']
396
- end
397
-
398
- ##
399
- # @return [String] A string that you assigned to describe this conference room
400
- def friendly_name
401
- @properties['friendly_name']
402
- end
403
-
404
- ##
405
- # @return [String] A string that represents the Twilio Region where the conference was mixed
406
- def region
407
- @properties['region']
408
- end
409
-
410
- ##
411
- # @return [String] The unique string that identifies this resource
412
- def sid
413
- @properties['sid']
414
- end
415
-
416
- ##
417
- # @return [conference.Status] The status of this conference
418
- def status
419
- @properties['status']
420
- end
421
-
422
- ##
423
- # @return [String] The URI of this resource, relative to `https://api.twilio.com`
424
- def uri
425
- @properties['uri']
426
- end
427
-
428
- ##
429
- # @return [String] A list of related resources identified by their relative URIs
430
- def subresource_uris
431
- @properties['subresource_uris']
432
- end
433
-
434
- ##
435
- # @return [conference.ReasonConferenceEnded] The reason why a conference ended.
436
- def reason_conference_ended
437
- @properties['reason_conference_ended']
438
- end
439
-
440
- ##
441
- # @return [String] The call SID that caused the conference to end
442
- def call_sid_ending_conference
443
- @properties['call_sid_ending_conference']
444
- end
445
-
446
- ##
447
- # Fetch the ConferenceInstance
448
- # @return [ConferenceInstance] Fetched ConferenceInstance
449
- def fetch
450
- context.fetch
451
- end
452
-
453
- ##
454
- # Update the ConferenceInstance
455
- # @param [conference.UpdateStatus] status The new status of the resource. Can be:
456
- # Can be: `init`, `in-progress`, or `completed`. Specifying `completed` will end
457
- # the conference and hang up all participants
458
- # @param [String] announce_url The URL we should call to announce something into
459
- # the conference. The URL can return an MP3, a WAV, or a TwiML document with
460
- # `<Play>` or `<Say>`.
461
- # @param [String] announce_method The HTTP method used to call `announce_url`. Can
462
- # be: `GET` or `POST` and the default is `POST`
463
- # @return [ConferenceInstance] Updated ConferenceInstance
464
- def update(status: :unset, announce_url: :unset, announce_method: :unset)
465
- context.update(status: status, announce_url: announce_url, announce_method: announce_method, )
466
- end
467
-
468
- ##
469
- # Access the participants
470
- # @return [participants] participants
471
- def participants
472
- context.participants
473
- end
474
14
 
475
- ##
476
- # Access the recordings
477
- # @return [recordings] recordings
478
- def recordings
479
- context.recordings
480
- end
481
15
 
482
- ##
483
- # Provide a user friendly representation
484
- def to_s
485
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
486
- "<Twilio.Api.V2010.ConferenceInstance #{values}>"
487
- end
488
-
489
- ##
490
- # Provide a detailed, user friendly representation
491
- def inspect
492
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
493
- "<Twilio.Api.V2010.ConferenceInstance #{values}>"
16
+ module Twilio
17
+ module REST
18
+ class Api < ApiBase
19
+ class V2010 < Version
20
+ class AccountContext < InstanceContext
21
+
22
+ class ConferenceList < ListResource
23
+ ##
24
+ # Initialize the ConferenceList
25
+ # @param [Version] version Version that contains the resource
26
+ # @return [ConferenceList] ConferenceList
27
+ def initialize(version, account_sid: nil)
28
+ super(version)
29
+ # Path Solution
30
+ @solution = { account_sid: account_sid }
31
+ @uri = "/Accounts/#{@solution[:account_sid]}/Conferences.json"
32
+
33
+ end
34
+
35
+ ##
36
+ # Lists ConferenceInstance records from the API as a list.
37
+ # Unlike stream(), this operation is eager and will load `limit` records into
38
+ # memory before returning.
39
+ # @param [Date] date_created The `date_created` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that started on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that started on or after midnight on a date, use `>=YYYY-MM-DD`.
40
+ # @param [Date] date_created_before The `date_created` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that started on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that started on or after midnight on a date, use `>=YYYY-MM-DD`.
41
+ # @param [Date] date_created_after The `date_created` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that started on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that started on or after midnight on a date, use `>=YYYY-MM-DD`.
42
+ # @param [Date] date_updated The `date_updated` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that were last updated on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that were last updated on or after midnight on a given date, use `>=YYYY-MM-DD`.
43
+ # @param [Date] date_updated_before The `date_updated` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that were last updated on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that were last updated on or after midnight on a given date, use `>=YYYY-MM-DD`.
44
+ # @param [Date] date_updated_after The `date_updated` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that were last updated on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that were last updated on or after midnight on a given date, use `>=YYYY-MM-DD`.
45
+ # @param [String] friendly_name The string that identifies the Conference resources to read.
46
+ # @param [Status] status The status of the resources to read. Can be: `init`, `in-progress`, or `completed`.
47
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
48
+ # guarantees to never return more than limit. Default is no limit
49
+ # @param [Integer] page_size Number of records to fetch per request, when
50
+ # not set will use the default value of 50 records. If no page_size is defined
51
+ # but a limit is defined, stream() will attempt to read the limit with the most
52
+ # efficient page size, i.e. min(limit, 1000)
53
+ # @return [Array] Array of up to limit results
54
+ def list(date_created: :unset, date_created_before: :unset, date_created_after: :unset, date_updated: :unset, date_updated_before: :unset, date_updated_after: :unset, friendly_name: :unset, status: :unset, limit: nil, page_size: nil)
55
+ self.stream(
56
+ date_created: date_created,
57
+ date_created_before: date_created_before,
58
+ date_created_after: date_created_after,
59
+ date_updated: date_updated,
60
+ date_updated_before: date_updated_before,
61
+ date_updated_after: date_updated_after,
62
+ friendly_name: friendly_name,
63
+ status: status,
64
+ limit: limit,
65
+ page_size: page_size
66
+ ).entries
67
+ end
68
+
69
+ ##
70
+ # Streams Instance records from the API as an Enumerable.
71
+ # This operation lazily loads records as efficiently as possible until the limit
72
+ # is reached.
73
+ # @param [Date] date_created The `date_created` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that started on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that started on or after midnight on a date, use `>=YYYY-MM-DD`.
74
+ # @param [Date] date_created_before The `date_created` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that started on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that started on or after midnight on a date, use `>=YYYY-MM-DD`.
75
+ # @param [Date] date_created_after The `date_created` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that started on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that started on or after midnight on a date, use `>=YYYY-MM-DD`.
76
+ # @param [Date] date_updated The `date_updated` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that were last updated on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that were last updated on or after midnight on a given date, use `>=YYYY-MM-DD`.
77
+ # @param [Date] date_updated_before The `date_updated` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that were last updated on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that were last updated on or after midnight on a given date, use `>=YYYY-MM-DD`.
78
+ # @param [Date] date_updated_after The `date_updated` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that were last updated on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that were last updated on or after midnight on a given date, use `>=YYYY-MM-DD`.
79
+ # @param [String] friendly_name The string that identifies the Conference resources to read.
80
+ # @param [Status] status The status of the resources to read. Can be: `init`, `in-progress`, or `completed`.
81
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
82
+ # guarantees to never return more than limit. Default is no limit
83
+ # @param [Integer] page_size Number of records to fetch per request, when
84
+ # not set will use the default value of 50 records. If no page_size is defined
85
+ # but a limit is defined, stream() will attempt to read the limit with the most
86
+ # efficient page size, i.e. min(limit, 1000)
87
+ # @return [Enumerable] Enumerable that will yield up to limit results
88
+ def stream(date_created: :unset, date_created_before: :unset, date_created_after: :unset, date_updated: :unset, date_updated_before: :unset, date_updated_after: :unset, friendly_name: :unset, status: :unset, limit: nil, page_size: nil)
89
+ limits = @version.read_limits(limit, page_size)
90
+
91
+ page = self.page(
92
+ date_created: date_created,
93
+ date_created_before: date_created_before,
94
+ date_created_after: date_created_after,
95
+ date_updated: date_updated,
96
+ date_updated_before: date_updated_before,
97
+ date_updated_after: date_updated_after,
98
+ friendly_name: friendly_name,
99
+ status: status,
100
+ page_size: limits[:page_size], )
101
+
102
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
103
+ end
104
+
105
+ ##
106
+ # When passed a block, yields ConferenceInstance records from the API.
107
+ # This operation lazily loads records as efficiently as possible until the limit
108
+ # is reached.
109
+ def each
110
+ limits = @version.read_limits
111
+
112
+ page = self.page(page_size: limits[:page_size], )
113
+
114
+ @version.stream(page,
115
+ limit: limits[:limit],
116
+ page_limit: limits[:page_limit]).each {|x| yield x}
117
+ end
118
+
119
+ ##
120
+ # Retrieve a single page of ConferenceInstance records from the API.
121
+ # Request is executed immediately.
122
+ # @param [Date] date_created The `date_created` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that started on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that started on or after midnight on a date, use `>=YYYY-MM-DD`.
123
+ # @param [Date] date_created_before The `date_created` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that started on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that started on or after midnight on a date, use `>=YYYY-MM-DD`.
124
+ # @param [Date] date_created_after The `date_created` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that started on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that started on or after midnight on a date, use `>=YYYY-MM-DD`.
125
+ # @param [Date] date_updated The `date_updated` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that were last updated on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that were last updated on or after midnight on a given date, use `>=YYYY-MM-DD`.
126
+ # @param [Date] date_updated_before The `date_updated` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that were last updated on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that were last updated on or after midnight on a given date, use `>=YYYY-MM-DD`.
127
+ # @param [Date] date_updated_after The `date_updated` value, specified as `YYYY-MM-DD`, of the resources to read. To read conferences that were last updated on or before midnight on a date, use `<=YYYY-MM-DD`, and to specify conferences that were last updated on or after midnight on a given date, use `>=YYYY-MM-DD`.
128
+ # @param [String] friendly_name The string that identifies the Conference resources to read.
129
+ # @param [Status] status The status of the resources to read. Can be: `init`, `in-progress`, or `completed`.
130
+ # @param [String] page_token PageToken provided by the API
131
+ # @param [Integer] page_number Page Number, this value is simply for client state
132
+ # @param [Integer] page_size Number of records to return, defaults to 50
133
+ # @return [Page] Page of ConferenceInstance
134
+ def page(date_created: :unset, date_created_before: :unset, date_created_after: :unset, date_updated: :unset, date_updated_before: :unset, date_updated_after: :unset, friendly_name: :unset, status: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
135
+ params = Twilio::Values.of({
136
+
137
+ 'DateCreated' => Twilio.serialize_iso8601_date(date_created),
138
+
139
+ 'DateCreated<' => Twilio.serialize_iso8601_date(date_created_before),
140
+
141
+ 'DateCreated>' => Twilio.serialize_iso8601_date(date_created_after),
142
+
143
+ 'DateUpdated' => Twilio.serialize_iso8601_date(date_updated),
144
+
145
+ 'DateUpdated<' => Twilio.serialize_iso8601_date(date_updated_before),
146
+
147
+ 'DateUpdated>' => Twilio.serialize_iso8601_date(date_updated_after),
148
+
149
+ 'FriendlyName' => friendly_name,
150
+
151
+ 'Status' => status,
152
+
153
+ 'PageToken' => page_token,
154
+ 'Page' => page_number,
155
+ 'PageSize' => page_size,
156
+ })
157
+
158
+ response = @version.page('GET', @uri, params: params)
159
+
160
+ ConferencePage.new(@version, response, @solution)
161
+ end
162
+
163
+ ##
164
+ # Retrieve a single page of ConferenceInstance records from the API.
165
+ # Request is executed immediately.
166
+ # @param [String] target_url API-generated URL for the requested results page
167
+ # @return [Page] Page of ConferenceInstance
168
+ def get_page(target_url)
169
+ response = @version.domain.request(
170
+ 'GET',
171
+ target_url
172
+ )
173
+ ConferencePage.new(@version, response, @solution)
174
+ end
175
+
176
+
177
+
178
+ # Provide a user friendly representation
179
+ def to_s
180
+ '#<Twilio.Api.V2010.ConferenceList>'
181
+ end
182
+ end
183
+
184
+
185
+ class ConferenceContext < InstanceContext
186
+ ##
187
+ # Initialize the ConferenceContext
188
+ # @param [Version] version Version that contains the resource
189
+ # @param [String] account_sid The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Conference resource(s) to update.
190
+ # @param [String] sid The Twilio-provided string that uniquely identifies the Conference resource to update
191
+ # @return [ConferenceContext] ConferenceContext
192
+ def initialize(version, account_sid, sid)
193
+ super(version)
194
+
195
+ # Path Solution
196
+ @solution = { account_sid: account_sid, sid: sid, }
197
+ @uri = "/Accounts/#{@solution[:account_sid]}/Conferences/#{@solution[:sid]}.json"
198
+
199
+ # Dependents
200
+ @recordings = nil
201
+ @participants = nil
202
+ end
203
+ ##
204
+ # Fetch the ConferenceInstance
205
+ # @return [ConferenceInstance] Fetched ConferenceInstance
206
+ def fetch
207
+
208
+ payload = @version.fetch('GET', @uri)
209
+ ConferenceInstance.new(
210
+ @version,
211
+ payload,
212
+ account_sid: @solution[:account_sid],
213
+ sid: @solution[:sid],
214
+ )
215
+ end
216
+
217
+ ##
218
+ # Update the ConferenceInstance
219
+ # @param [UpdateStatus] status
220
+ # @param [String] announce_url The URL we should call to announce something into the conference. The URL may return an MP3 file, a WAV file, or a TwiML document that contains `<Play>`, `<Say>`, `<Pause>`, or `<Redirect>` verbs.
221
+ # @param [String] announce_method The HTTP method used to call `announce_url`. Can be: `GET` or `POST` and the default is `POST`
222
+ # @return [ConferenceInstance] Updated ConferenceInstance
223
+ def update(
224
+ status: :unset,
225
+ announce_url: :unset,
226
+ announce_method: :unset
227
+ )
228
+
229
+ data = Twilio::Values.of({
230
+ 'Status' => status,
231
+ 'AnnounceUrl' => announce_url,
232
+ 'AnnounceMethod' => announce_method,
233
+ })
234
+
235
+ payload = @version.update('POST', @uri, data: data)
236
+ ConferenceInstance.new(
237
+ @version,
238
+ payload,
239
+ account_sid: @solution[:account_sid],
240
+ sid: @solution[:sid],
241
+ )
242
+ end
243
+
244
+ ##
245
+ # Access the recordings
246
+ # @return [RecordingList]
247
+ # @return [RecordingContext] if sid was passed.
248
+ def recordings(sid=:unset)
249
+
250
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
251
+
252
+ if sid != :unset
253
+ return RecordingContext.new(@version, @solution[:account_sid], @solution[:sid],sid )
254
+ end
255
+
256
+ unless @recordings
257
+ @recordings = RecordingList.new(
258
+ @version, account_sid: @solution[:account_sid], conference_sid: @solution[:sid], )
259
+ end
260
+
261
+ @recordings
262
+ end
263
+ ##
264
+ # Access the participants
265
+ # @return [ParticipantList]
266
+ # @return [ParticipantContext] if sid was passed.
267
+ def participants(call_sid=:unset)
268
+
269
+ raise ArgumentError, 'call_sid cannot be nil' if call_sid.nil?
270
+
271
+ if call_sid != :unset
272
+ return ParticipantContext.new(@version, @solution[:account_sid], @solution[:sid],call_sid )
273
+ end
274
+
275
+ unless @participants
276
+ @participants = ParticipantList.new(
277
+ @version, account_sid: @solution[:account_sid], conference_sid: @solution[:sid], )
278
+ end
279
+
280
+ @participants
281
+ end
282
+
283
+ ##
284
+ # Provide a user friendly representation
285
+ def to_s
286
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
287
+ "#<Twilio.Api.V2010.ConferenceContext #{context}>"
288
+ end
289
+
290
+ ##
291
+ # Provide a detailed, user friendly representation
292
+ def inspect
293
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
294
+ "#<Twilio.Api.V2010.ConferenceContext #{context}>"
295
+ end
296
+ end
297
+
298
+ class ConferencePage < Page
299
+ ##
300
+ # Initialize the ConferencePage
301
+ # @param [Version] version Version that contains the resource
302
+ # @param [Response] response Response from the API
303
+ # @param [Hash] solution Path solution for the resource
304
+ # @return [ConferencePage] ConferencePage
305
+ def initialize(version, response, solution)
306
+ super(version, response)
307
+
308
+ # Path Solution
309
+ @solution = solution
310
+ end
311
+
312
+ ##
313
+ # Build an instance of ConferenceInstance
314
+ # @param [Hash] payload Payload response from the API
315
+ # @return [ConferenceInstance] ConferenceInstance
316
+ def get_instance(payload)
317
+ ConferenceInstance.new(@version, payload, account_sid: @solution[:account_sid])
318
+ end
319
+
320
+ ##
321
+ # Provide a user friendly representation
322
+ def to_s
323
+ '<Twilio.Api.V2010.ConferencePage>'
324
+ end
325
+ end
326
+ class ConferenceInstance < InstanceResource
327
+ ##
328
+ # Initialize the ConferenceInstance
329
+ # @param [Version] version Version that contains the resource
330
+ # @param [Hash] payload payload that contains response from Twilio
331
+ # @param [String] account_sid The SID of the
332
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Conference
333
+ # resource.
334
+ # @param [String] sid The SID of the Call resource to fetch.
335
+ # @return [ConferenceInstance] ConferenceInstance
336
+ def initialize(version, payload , account_sid: nil, sid: nil)
337
+ super(version)
338
+
339
+ # Marshaled Properties
340
+ @properties = {
341
+ 'account_sid' => payload['account_sid'],
342
+ 'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
343
+ 'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
344
+ 'api_version' => payload['api_version'],
345
+ 'friendly_name' => payload['friendly_name'],
346
+ 'region' => payload['region'],
347
+ 'sid' => payload['sid'],
348
+ 'status' => payload['status'],
349
+ 'uri' => payload['uri'],
350
+ 'subresource_uris' => payload['subresource_uris'],
351
+ 'reason_conference_ended' => payload['reason_conference_ended'],
352
+ 'call_sid_ending_conference' => payload['call_sid_ending_conference'],
353
+ }
354
+
355
+ # Context
356
+ @instance_context = nil
357
+ @params = { 'account_sid' => account_sid ,'sid' => sid || @properties['sid'] , }
358
+ end
359
+
360
+ ##
361
+ # Generate an instance context for the instance, the context is capable of
362
+ # performing various actions. All instance actions are proxied to the context
363
+ # @return [ConferenceContext] CallContext for this CallInstance
364
+ def context
365
+ unless @instance_context
366
+ @instance_context = ConferenceContext.new(@version , @params['account_sid'], @params['sid'])
367
+ end
368
+ @instance_context
369
+ end
370
+
371
+ ##
372
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created this Conference resource.
373
+ def account_sid
374
+ @properties['account_sid']
375
+ end
376
+
377
+ ##
378
+ # @return [Time] The date and time in GMT that this resource was created specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
379
+ def date_created
380
+ @properties['date_created']
381
+ end
382
+
383
+ ##
384
+ # @return [Time] The date and time in GMT that this resource was last updated, specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
385
+ def date_updated
386
+ @properties['date_updated']
387
+ end
388
+
389
+ ##
390
+ # @return [String] The API version used to create this conference.
391
+ def api_version
392
+ @properties['api_version']
393
+ end
394
+
395
+ ##
396
+ # @return [String] A string that you assigned to describe this conference room. Maxiumum length is 128 characters.
397
+ def friendly_name
398
+ @properties['friendly_name']
399
+ end
400
+
401
+ ##
402
+ # @return [String] A string that represents the Twilio Region where the conference audio was mixed. May be `us1`, `ie1`, `de1`, `sg1`, `br1`, `au1`, and `jp1`. Basic conference audio will always be mixed in `us1`. Global Conference audio will be mixed nearest to the majority of participants.
403
+ def region
404
+ @properties['region']
405
+ end
406
+
407
+ ##
408
+ # @return [String] The unique string that that we created to identify this Conference resource.
409
+ def sid
410
+ @properties['sid']
411
+ end
412
+
413
+ ##
414
+ # @return [Status]
415
+ def status
416
+ @properties['status']
417
+ end
418
+
419
+ ##
420
+ # @return [String] The URI of this resource, relative to `https://api.twilio.com`.
421
+ def uri
422
+ @properties['uri']
423
+ end
424
+
425
+ ##
426
+ # @return [Hash] A list of related resources identified by their URIs relative to `https://api.twilio.com`.
427
+ def subresource_uris
428
+ @properties['subresource_uris']
429
+ end
430
+
431
+ ##
432
+ # @return [ReasonConferenceEnded]
433
+ def reason_conference_ended
434
+ @properties['reason_conference_ended']
435
+ end
436
+
437
+ ##
438
+ # @return [String] The call SID that caused the conference to end.
439
+ def call_sid_ending_conference
440
+ @properties['call_sid_ending_conference']
441
+ end
442
+
443
+ ##
444
+ # Fetch the ConferenceInstance
445
+ # @return [ConferenceInstance] Fetched ConferenceInstance
446
+ def fetch
447
+
448
+ context.fetch
449
+ end
450
+
451
+ ##
452
+ # Update the ConferenceInstance
453
+ # @param [UpdateStatus] status
454
+ # @param [String] announce_url The URL we should call to announce something into the conference. The URL may return an MP3 file, a WAV file, or a TwiML document that contains `<Play>`, `<Say>`, `<Pause>`, or `<Redirect>` verbs.
455
+ # @param [String] announce_method The HTTP method used to call `announce_url`. Can be: `GET` or `POST` and the default is `POST`
456
+ # @return [ConferenceInstance] Updated ConferenceInstance
457
+ def update(
458
+ status: :unset,
459
+ announce_url: :unset,
460
+ announce_method: :unset
461
+ )
462
+
463
+ context.update(
464
+ status: status,
465
+ announce_url: announce_url,
466
+ announce_method: announce_method,
467
+ )
468
+ end
469
+
470
+ ##
471
+ # Access the recordings
472
+ # @return [recordings] recordings
473
+ def recordings
474
+ context.recordings
475
+ end
476
+
477
+ ##
478
+ # Access the participants
479
+ # @return [participants] participants
480
+ def participants
481
+ context.participants
482
+ end
483
+
484
+ ##
485
+ # Provide a user friendly representation
486
+ def to_s
487
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
488
+ "<Twilio.Api.V2010.ConferenceInstance #{values}>"
489
+ end
490
+
491
+ ##
492
+ # Provide a detailed, user friendly representation
493
+ def inspect
494
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
495
+ "<Twilio.Api.V2010.ConferenceInstance #{values}>"
496
+ end
497
+ end
498
+
499
+ end
494
500
  end
495
- end
496
501
  end
497
- end
498
502
  end
499
- end
500
- end
503
+ end
504
+
505
+