twilio-ruby 5.46.0 → 7.10.1

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 (1217) hide show
  1. checksums.yaml +5 -5
  2. data/.dockerignore +1 -1
  3. data/.github/ISSUE_TEMPLATE/bug_report.yml +69 -0
  4. data/.github/workflows/pr-lint.yml +21 -0
  5. data/.github/workflows/test-and-deploy.yml +147 -0
  6. data/.gitignore +9 -1
  7. data/.rubocop.yml +2 -1
  8. data/.rubocop_todo.yml +91 -28
  9. data/CHANGES.md +2333 -0
  10. data/CONTRIBUTING.md +11 -9
  11. data/Dockerfile +2 -1
  12. data/Gemfile +6 -0
  13. data/LICENSE +1 -1
  14. data/Makefile +18 -11
  15. data/PULL_REQUEST_TEMPLATE.md +1 -1
  16. data/README.md +158 -38
  17. data/UPGRADE.md +21 -0
  18. data/advanced-examples/custom-http-client.md +170 -0
  19. data/cluster/cluster_oauth_spec.rb +19 -0
  20. data/cluster/cluster_orgs_spec.rb +40 -0
  21. data/cluster/cluster_spec.rb +75 -0
  22. data/examples/examples.rb +1 -1
  23. data/examples/public_oauth.rb +13 -0
  24. data/lib/rack/twilio_webhook_authentication.rb +25 -1
  25. data/lib/twilio-ruby/auth_strategy/auth_strategy.rb +19 -0
  26. data/lib/twilio-ruby/auth_strategy/no_auth_strategy.rb +17 -0
  27. data/lib/twilio-ruby/auth_strategy/token_auth_strategy.rb +39 -0
  28. data/lib/twilio-ruby/base/client_base.rb +131 -0
  29. data/lib/twilio-ruby/credential/auth_type.rb +17 -0
  30. data/lib/twilio-ruby/credential/client_credential_provider.rb +28 -0
  31. data/lib/twilio-ruby/credential/credential_provider.rb +11 -0
  32. data/lib/twilio-ruby/credential/orgs_credential_provider.rb +30 -0
  33. data/lib/twilio-ruby/framework/request.rb +8 -1
  34. data/lib/twilio-ruby/framework/rest/api_v1_version.rb +22 -0
  35. data/lib/twilio-ruby/framework/rest/domain.rb +35 -0
  36. data/lib/twilio-ruby/framework/rest/error.rb +66 -0
  37. data/lib/twilio-ruby/framework/rest/page.rb +104 -0
  38. data/lib/twilio-ruby/framework/rest/page_metadata.rb +83 -0
  39. data/lib/twilio-ruby/framework/rest/resource.rb +39 -0
  40. data/lib/twilio-ruby/framework/rest/token_page.rb +73 -0
  41. data/lib/twilio-ruby/framework/rest/version.rb +240 -0
  42. data/lib/twilio-ruby/http/client_token_manager.rb +31 -0
  43. data/lib/twilio-ruby/http/http_client.rb +42 -9
  44. data/lib/twilio-ruby/http/org_token_manager.rb +31 -0
  45. data/lib/twilio-ruby/http.rb +5 -0
  46. data/lib/twilio-ruby/jwt/access_token.rb +13 -59
  47. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +338 -176
  48. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +231 -0
  49. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +231 -0
  50. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +644 -332
  51. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +644 -332
  52. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +185 -114
  53. data/lib/twilio-ruby/rest/accounts/v1/messaging_geopermissions.rb +285 -0
  54. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +336 -0
  55. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +378 -190
  56. data/lib/twilio-ruby/rest/accounts/v1.rb +69 -42
  57. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  58. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +459 -365
  60. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +886 -514
  61. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +977 -586
  62. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +482 -320
  63. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +519 -0
  64. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +519 -0
  65. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +519 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +519 -0
  67. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +519 -0
  68. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +519 -0
  69. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +519 -0
  70. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +601 -0
  71. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +231 -118
  72. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +289 -192
  73. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +578 -417
  74. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +556 -364
  75. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +791 -511
  76. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +1669 -0
  77. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +1669 -0
  78. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +541 -0
  79. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +269 -0
  80. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +420 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +1368 -931
  82. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +1124 -713
  83. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +694 -458
  84. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +719 -493
  85. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +679 -407
  86. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +483 -344
  87. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +627 -416
  88. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +737 -547
  89. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +737 -546
  90. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +737 -546
  91. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +1261 -896
  92. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +567 -302
  93. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +268 -164
  94. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +540 -350
  95. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +970 -612
  96. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +246 -125
  97. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +246 -125
  98. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +577 -399
  99. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +604 -358
  100. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +553 -338
  101. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +702 -390
  102. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +343 -0
  103. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +572 -378
  104. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +560 -383
  105. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +558 -372
  106. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +718 -486
  107. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +644 -408
  108. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +567 -306
  109. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +642 -359
  110. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +667 -371
  111. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +579 -0
  112. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +579 -0
  113. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +204 -0
  114. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +579 -0
  115. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +190 -0
  116. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +158 -103
  117. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +564 -331
  118. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +564 -330
  119. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +987 -641
  120. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +694 -418
  121. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +667 -372
  122. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +205 -150
  123. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +258 -139
  124. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +557 -350
  125. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +407 -335
  126. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +407 -335
  127. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +407 -335
  128. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +407 -335
  129. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +407 -335
  130. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +407 -335
  131. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +407 -335
  132. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +407 -335
  133. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +478 -416
  134. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +785 -484
  135. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +176 -104
  136. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +278 -150
  137. data/lib/twilio-ruby/rest/api/v2010/account.rb +1229 -943
  138. data/lib/twilio-ruby/rest/api/v2010.rb +126 -147
  139. data/lib/twilio-ruby/rest/api.rb +26 -35
  140. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  141. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +550 -0
  142. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +550 -0
  143. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +423 -0
  144. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +296 -0
  145. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +918 -0
  146. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +317 -0
  147. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +349 -0
  148. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +862 -0
  149. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +356 -0
  150. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +352 -0
  151. data/lib/twilio-ruby/rest/assistants/v1/session.rb +493 -0
  152. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +838 -0
  153. data/lib/twilio-ruby/rest/assistants/v1.rb +100 -0
  154. data/lib/twilio-ruby/rest/assistants.rb +6 -0
  155. data/lib/twilio-ruby/rest/assistants_base.rb +38 -0
  156. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +468 -287
  157. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +440 -271
  158. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +438 -242
  159. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +389 -243
  160. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +430 -224
  161. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -53
  162. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  163. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  164. data/lib/twilio-ruby/rest/chat/v1/credential.rb +719 -403
  165. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +613 -391
  166. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +704 -440
  167. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +722 -437
  168. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +822 -515
  169. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +672 -367
  170. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +331 -237
  171. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +750 -440
  172. data/lib/twilio-ruby/rest/chat/v1/service.rb +1287 -894
  173. data/lib/twilio-ruby/rest/chat/v1.rb +57 -53
  174. data/lib/twilio-ruby/rest/chat/v2/credential.rb +719 -401
  175. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +570 -370
  176. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +613 -386
  177. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +799 -527
  178. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +825 -533
  179. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +746 -467
  180. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +916 -605
  181. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +672 -369
  182. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +561 -381
  183. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +648 -413
  184. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +796 -491
  185. data/lib/twilio-ruby/rest/chat/v2/service.rb +1121 -778
  186. data/lib/twilio-ruby/rest/chat/v2.rb +57 -51
  187. data/lib/twilio-ruby/rest/chat/v3/channel.rb +452 -0
  188. data/lib/twilio-ruby/rest/chat/v3.rb +71 -0
  189. data/lib/twilio-ruby/rest/chat.rb +10 -38
  190. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  191. data/lib/twilio-ruby/rest/client.rb +338 -540
  192. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +280 -0
  193. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +349 -0
  194. data/lib/twilio-ruby/rest/content/v1/content.rb +1921 -0
  195. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +340 -0
  196. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +354 -0
  197. data/lib/twilio-ruby/rest/content/v1.rb +61 -0
  198. data/lib/twilio-ruby/rest/content/v2/content.rb +425 -0
  199. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +418 -0
  200. data/lib/twilio-ruby/rest/content/v2.rb +46 -0
  201. data/lib/twilio-ruby/rest/content.rb +15 -0
  202. data/lib/twilio-ruby/rest/content_base.rb +43 -0
  203. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +808 -0
  204. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +445 -227
  205. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +467 -252
  206. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +504 -344
  207. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +852 -488
  208. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +817 -495
  209. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +725 -403
  210. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +957 -545
  211. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +392 -0
  212. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +728 -409
  213. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +405 -0
  214. data/lib/twilio-ruby/rest/conversations/v1/role.rb +657 -356
  215. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +563 -373
  216. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +540 -296
  217. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +470 -0
  218. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +497 -271
  219. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +504 -363
  220. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +860 -526
  221. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +829 -530
  222. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +737 -438
  223. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +972 -581
  224. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +399 -0
  225. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +410 -0
  226. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +672 -380
  227. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +697 -0
  228. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +773 -430
  229. data/lib/twilio-ruby/rest/conversations/v1/service.rb +724 -424
  230. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +690 -0
  231. data/lib/twilio-ruby/rest/conversations/v1/user.rb +758 -406
  232. data/lib/twilio-ruby/rest/conversations/v1.rb +135 -107
  233. data/lib/twilio-ruby/rest/conversations.rb +24 -34
  234. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  235. data/lib/twilio-ruby/rest/events/v1/event_type.rb +486 -281
  236. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +461 -283
  237. data/lib/twilio-ruby/rest/events/v1/schema.rb +366 -214
  238. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +209 -100
  239. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +222 -103
  240. data/lib/twilio-ruby/rest/events/v1/sink.rb +711 -371
  241. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +621 -192
  242. data/lib/twilio-ruby/rest/events/v1/subscription.rb +685 -380
  243. data/lib/twilio-ruby/rest/events/v1.rb +87 -83
  244. data/lib/twilio-ruby/rest/events.rb +5 -34
  245. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  246. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +697 -0
  247. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +621 -330
  248. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +722 -440
  249. data/lib/twilio-ruby/rest/flex_api/v1/create_flex_instance.rb +382 -0
  250. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +928 -549
  251. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +475 -0
  252. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +321 -0
  253. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +735 -0
  254. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +598 -0
  255. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +710 -0
  256. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +457 -0
  257. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +359 -0
  258. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +251 -0
  259. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +237 -0
  260. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +338 -0
  261. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +379 -0
  262. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +571 -0
  263. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +547 -0
  264. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +644 -0
  265. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +537 -0
  266. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +621 -0
  267. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +700 -0
  268. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +390 -0
  269. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +564 -0
  270. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +599 -0
  271. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +376 -0
  272. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +539 -0
  273. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +400 -0
  274. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +327 -0
  275. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +663 -331
  276. data/lib/twilio-ruby/rest/flex_api/v1.rb +319 -73
  277. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +515 -0
  278. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +266 -0
  279. data/lib/twilio-ruby/rest/flex_api/v2.rb +77 -0
  280. data/lib/twilio-ruby/rest/flex_api.rb +33 -31
  281. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  282. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +463 -0
  283. data/lib/twilio-ruby/rest/frontline_api/v1.rb +49 -0
  284. data/lib/twilio-ruby/rest/frontline_api.rb +15 -0
  285. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  286. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +471 -0
  287. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +320 -0
  288. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +284 -0
  289. data/lib/twilio-ruby/rest/iam/v1/o_auth_app.rb +646 -0
  290. data/lib/twilio-ruby/rest/iam/v1/token.rb +301 -0
  291. data/lib/twilio-ruby/rest/iam/v1.rb +82 -0
  292. data/lib/twilio-ruby/rest/iam.rb +6 -0
  293. data/lib/twilio-ruby/rest/iam_base.rb +33 -0
  294. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +516 -0
  295. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +499 -0
  296. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +360 -255
  297. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +333 -224
  298. data/lib/twilio-ruby/rest/insights/v1/call.rb +403 -228
  299. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +726 -0
  300. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +672 -0
  301. data/lib/twilio-ruby/rest/insights/v1/conference.rb +693 -0
  302. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +545 -371
  303. data/lib/twilio-ruby/rest/insights/v1/room.rb +668 -477
  304. data/lib/twilio-ruby/rest/insights/v1/setting.rb +445 -0
  305. data/lib/twilio-ruby/rest/insights/v1.rb +84 -51
  306. data/lib/twilio-ruby/rest/insights.rb +24 -32
  307. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  308. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +720 -0
  309. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +525 -0
  310. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +380 -0
  311. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +337 -0
  312. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +523 -0
  313. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +525 -0
  314. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +844 -0
  315. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_operator_results.rb +359 -0
  316. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_sentences.rb +359 -0
  317. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +373 -0
  318. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +570 -0
  319. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +354 -0
  320. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +815 -0
  321. data/lib/twilio-ruby/rest/intelligence/v2.rb +176 -0
  322. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  323. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  324. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +719 -364
  325. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +613 -359
  326. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +704 -397
  327. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +722 -409
  328. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +822 -488
  329. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +672 -347
  330. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +331 -231
  331. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +750 -418
  332. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +1287 -779
  333. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -51
  334. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +719 -364
  335. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +570 -343
  336. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +613 -359
  337. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +799 -451
  338. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +825 -479
  339. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +746 -411
  340. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +916 -555
  341. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +672 -347
  342. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +561 -351
  343. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +637 -384
  344. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +796 -467
  345. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +1121 -689
  346. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -51
  347. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  348. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  349. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/chunk.rb +317 -0
  350. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +349 -0
  351. data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +856 -0
  352. data/lib/twilio-ruby/rest/knowledge/v1.rb +49 -0
  353. data/lib/twilio-ruby/rest/knowledge.rb +6 -0
  354. data/lib/twilio-ruby/rest/knowledge_base.rb +38 -0
  355. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +399 -237
  356. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -38
  357. data/lib/twilio-ruby/rest/lookups/v2/bucket.rb +500 -0
  358. data/lib/twilio-ruby/rest/lookups/v2/lookup_override.rb +603 -0
  359. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +578 -0
  360. data/lib/twilio-ruby/rest/lookups/v2/query.rb +351 -0
  361. data/lib/twilio-ruby/rest/lookups/v2/rate_limit.rb +229 -0
  362. data/lib/twilio-ruby/rest/lookups/v2.rb +135 -0
  363. data/lib/twilio-ruby/rest/lookups.rb +2 -34
  364. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  365. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +475 -0
  366. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +501 -0
  367. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +555 -0
  368. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +252 -0
  369. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +735 -0
  370. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +342 -0
  371. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +511 -0
  372. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +235 -0
  373. data/lib/twilio-ruby/rest/marketplace/v1.rb +91 -0
  374. data/lib/twilio-ruby/rest/marketplace.rb +6 -0
  375. data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
  376. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +231 -0
  377. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +575 -0
  378. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +768 -0
  379. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +337 -0
  380. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +483 -0
  381. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +477 -0
  382. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +379 -0
  383. data/lib/twilio-ruby/rest/messaging/v1/domain_validate_dn.rb +344 -0
  384. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +271 -0
  385. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +380 -0
  386. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +337 -0
  387. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +379 -0
  388. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +580 -335
  389. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +594 -0
  390. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +608 -0
  391. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +587 -341
  392. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +587 -336
  393. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +944 -0
  394. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +236 -0
  395. data/lib/twilio-ruby/rest/messaging/v1/service.rb +1149 -645
  396. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +1527 -0
  397. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +217 -0
  398. data/lib/twilio-ruby/rest/messaging/v1.rb +217 -43
  399. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +1002 -0
  400. data/lib/twilio-ruby/rest/messaging/v2/domain_certs.rb +386 -0
  401. data/lib/twilio-ruby/rest/messaging/v2/typing_indicator.rb +237 -0
  402. data/lib/twilio-ruby/rest/messaging/v2.rb +70 -0
  403. data/lib/twilio-ruby/rest/messaging.rb +48 -27
  404. data/lib/twilio-ruby/rest/messaging_base.rb +43 -0
  405. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +572 -395
  406. data/lib/twilio-ruby/rest/monitor/v1/event.rb +561 -390
  407. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -51
  408. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  409. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  410. data/lib/twilio-ruby/rest/notify/v1/credential.rb +719 -408
  411. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +694 -452
  412. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +466 -362
  413. data/lib/twilio-ruby/rest/notify/v1/service.rb +971 -622
  414. data/lib/twilio-ruby/rest/notify/v1.rb +57 -53
  415. data/lib/twilio-ruby/rest/notify.rb +3 -34
  416. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  417. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +411 -0
  418. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +221 -0
  419. data/lib/twilio-ruby/rest/numbers/v1/porting_all_port_in.rb +367 -0
  420. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +616 -0
  421. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +485 -0
  422. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +405 -0
  423. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +242 -0
  424. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +301 -0
  425. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +395 -0
  426. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +252 -0
  427. data/lib/twilio-ruby/rest/numbers/v1.rb +161 -0
  428. data/lib/twilio-ruby/rest/numbers/v2/application.rb +562 -0
  429. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +440 -0
  430. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +649 -0
  431. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +442 -0
  432. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +430 -0
  433. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +915 -0
  434. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +412 -0
  435. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +524 -298
  436. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +564 -309
  437. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +303 -0
  438. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +923 -505
  439. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +667 -351
  440. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +458 -266
  441. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +521 -307
  442. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +695 -364
  443. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +458 -266
  444. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +241 -181
  445. data/lib/twilio-ruby/rest/numbers/v2.rb +108 -28
  446. data/lib/twilio-ruby/rest/numbers/v3/hosted_number_order.rb +484 -0
  447. data/lib/twilio-ruby/rest/numbers/v3.rb +40 -0
  448. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  449. data/lib/twilio-ruby/rest/numbers_base.rb +48 -0
  450. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +253 -0
  451. data/lib/twilio-ruby/rest/oauth/v1/token.rb +301 -0
  452. data/lib/twilio-ruby/rest/oauth/v1.rb +46 -0
  453. data/lib/twilio-ruby/rest/oauth/v2/authorize.rb +253 -0
  454. data/lib/twilio-ruby/rest/oauth/v2/token.rb +311 -0
  455. data/lib/twilio-ruby/rest/oauth/v2.rb +46 -0
  456. data/lib/twilio-ruby/rest/oauth.rb +6 -0
  457. data/lib/twilio-ruby/rest/oauth_base.rb +43 -0
  458. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +469 -396
  459. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +724 -446
  460. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +960 -625
  461. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -53
  462. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +468 -298
  463. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +491 -309
  464. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +548 -330
  465. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +706 -398
  466. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -51
  467. data/lib/twilio-ruby/rest/preview/wireless/command.rb +616 -364
  468. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +743 -398
  469. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +382 -205
  470. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +833 -523
  471. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -66
  472. data/lib/twilio-ruby/rest/preview.rb +10 -145
  473. data/lib/twilio-ruby/rest/preview_base.rb +48 -0
  474. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +253 -0
  475. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +301 -0
  476. data/lib/twilio-ruby/rest/preview_iam/v1.rb +46 -0
  477. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +468 -0
  478. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +559 -0
  479. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +768 -0
  480. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +413 -0
  481. data/lib/twilio-ruby/rest/preview_iam/versionless.rb +49 -0
  482. data/lib/twilio-ruby/rest/preview_iam.rb +9 -0
  483. data/lib/twilio-ruby/rest/preview_iam_base.rb +38 -0
  484. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +465 -275
  485. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +172 -120
  486. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +458 -268
  487. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +172 -120
  488. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +465 -275
  489. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +345 -179
  490. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +185 -135
  491. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  492. data/lib/twilio-ruby/rest/pricing/v2/country.rb +467 -0
  493. data/lib/twilio-ruby/rest/pricing/v2/number.rb +389 -0
  494. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +465 -275
  495. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +367 -200
  496. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +185 -138
  497. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -28
  498. data/lib/twilio-ruby/rest/pricing.rb +22 -38
  499. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  500. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +693 -403
  501. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +600 -418
  502. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +640 -447
  503. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +659 -453
  504. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +811 -547
  505. data/lib/twilio-ruby/rest/proxy/v1/service.rb +839 -596
  506. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -37
  507. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  508. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  509. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +452 -0
  510. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +452 -0
  511. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +452 -0
  512. data/lib/twilio-ruby/rest/routes/v2.rb +79 -0
  513. data/lib/twilio-ruby/rest/routes.rb +32 -0
  514. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  515. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +483 -323
  516. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +680 -380
  517. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +350 -208
  518. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +645 -374
  519. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +549 -338
  520. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +535 -383
  521. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +680 -396
  522. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +688 -447
  523. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +342 -210
  524. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +510 -353
  525. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +680 -380
  526. data/lib/twilio-ruby/rest/serverless/v1/service.rb +803 -486
  527. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -36
  528. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  529. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  530. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +350 -199
  531. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +342 -194
  532. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +545 -355
  533. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +659 -394
  534. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +350 -200
  535. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +342 -197
  536. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +545 -361
  537. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +748 -449
  538. data/lib/twilio-ruby/rest/studio/v1/flow.rb +572 -355
  539. data/lib/twilio-ruby/rest/studio/v1.rb +42 -36
  540. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +350 -208
  541. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +342 -205
  542. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +545 -369
  543. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +741 -450
  544. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +510 -328
  545. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +413 -0
  546. data/lib/twilio-ruby/rest/studio/v2/flow.rb +804 -480
  547. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +241 -114
  548. data/lib/twilio-ruby/rest/studio/v2.rb +48 -43
  549. data/lib/twilio-ruby/rest/studio.rb +3 -41
  550. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  551. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +621 -0
  552. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +757 -411
  553. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +634 -0
  554. data/lib/twilio-ruby/rest/supersim/v1/network.rb +474 -297
  555. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +566 -332
  556. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +624 -351
  557. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +349 -0
  558. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +338 -0
  559. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +296 -0
  560. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +725 -388
  561. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +586 -0
  562. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +408 -328
  563. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -103
  564. data/lib/twilio-ruby/rest/supersim.rb +40 -40
  565. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  566. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +616 -379
  567. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +736 -442
  568. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +766 -497
  569. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +616 -378
  570. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +749 -459
  571. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +772 -504
  572. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +616 -376
  573. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +749 -458
  574. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +242 -138
  575. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +692 -414
  576. data/lib/twilio-ruby/rest/sync/v1/service.rb +878 -575
  577. data/lib/twilio-ruby/rest/sync/v1.rb +42 -36
  578. data/lib/twilio-ruby/rest/sync.rb +2 -34
  579. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  580. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +682 -388
  581. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +633 -464
  582. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +1079 -732
  583. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +985 -637
  584. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +688 -382
  585. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +258 -0
  586. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +522 -366
  587. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +430 -276
  588. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +410 -254
  589. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +358 -276
  590. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +882 -566
  591. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +1053 -728
  592. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +602 -388
  593. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +394 -239
  594. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +440 -266
  595. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +364 -193
  596. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +418 -234
  597. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +927 -619
  598. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +522 -374
  599. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +395 -241
  600. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +410 -262
  601. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +822 -510
  602. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +514 -354
  603. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +379 -205
  604. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +387 -219
  605. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +1022 -715
  606. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -36
  607. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  608. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  609. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +573 -320
  610. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +573 -317
  611. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +734 -419
  612. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +706 -451
  613. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +391 -174
  614. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +939 -614
  615. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -37
  616. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  617. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  618. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +440 -0
  619. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +656 -0
  620. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +474 -0
  621. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +602 -0
  622. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +581 -0
  623. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +547 -0
  624. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +833 -0
  625. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +669 -0
  626. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +460 -0
  627. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +453 -0
  628. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +683 -0
  629. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +460 -0
  630. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +602 -0
  631. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +581 -0
  632. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +547 -0
  633. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +833 -0
  634. data/lib/twilio-ruby/rest/trusthub/v1.rb +175 -0
  635. data/lib/twilio-ruby/rest/trusthub.rb +74 -0
  636. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  637. data/lib/twilio-ruby/rest/verify/v2/form.rb +334 -181
  638. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +433 -0
  639. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +454 -108
  640. data/lib/twilio-ruby/rest/verify/v2/service/approve_challenge.rb +402 -0
  641. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +302 -0
  642. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +770 -449
  643. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +705 -453
  644. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +418 -0
  645. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +653 -394
  646. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +652 -363
  647. data/lib/twilio-ruby/rest/verify/v2/service/new_challenge.rb +478 -0
  648. data/lib/twilio-ruby/rest/verify/v2/service/new_factor.rb +387 -0
  649. data/lib/twilio-ruby/rest/verify/v2/service/new_verify_factor.rb +357 -0
  650. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +680 -388
  651. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +693 -384
  652. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +655 -349
  653. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +321 -181
  654. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +741 -401
  655. data/lib/twilio-ruby/rest/verify/v2/service.rb +1360 -693
  656. data/lib/twilio-ruby/rest/verify/v2/template.rb +320 -0
  657. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +566 -0
  658. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +410 -0
  659. data/lib/twilio-ruby/rest/verify/v2.rb +99 -53
  660. data/lib/twilio-ruby/rest/verify.rb +33 -31
  661. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  662. data/lib/twilio-ruby/rest/video/v1/composition.rb +738 -494
  663. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +854 -655
  664. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +475 -261
  665. data/lib/twilio-ruby/rest/video/v1/recording.rb +631 -405
  666. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +475 -261
  667. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +403 -0
  668. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +501 -0
  669. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +316 -0
  670. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +508 -0
  671. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +714 -0
  672. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +303 -0
  673. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +624 -0
  674. data/lib/twilio-ruby/rest/video/v1/room/transcriptions.rb +648 -0
  675. data/lib/twilio-ruby/rest/video/v1/room.rb +938 -542
  676. data/lib/twilio-ruby/rest/video/v1.rb +99 -95
  677. data/lib/twilio-ruby/rest/video.rb +7 -34
  678. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  679. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +302 -0
  680. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +822 -486
  681. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +734 -434
  682. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +658 -352
  683. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +236 -121
  684. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +282 -181
  685. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +553 -397
  686. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +377 -173
  687. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +187 -122
  688. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +650 -339
  689. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +630 -319
  690. data/lib/twilio-ruby/rest/voice/v1.rb +130 -92
  691. data/lib/twilio-ruby/rest/voice.rb +12 -31
  692. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  693. data/lib/twilio-ruby/rest/wireless/v1/command.rb +663 -406
  694. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +769 -436
  695. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +387 -284
  696. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +317 -226
  697. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +925 -657
  698. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +319 -219
  699. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -73
  700. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  701. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  702. data/lib/twilio-ruby/rest.rb +14 -0
  703. data/lib/twilio-ruby/security/request_validator.rb +1 -1
  704. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  705. data/lib/twilio-ruby/twiml/voice_response.rb +1287 -143
  706. data/lib/twilio-ruby/version.rb +1 -1
  707. data/lib/twilio-ruby.rb +6 -16
  708. data/sonar-project.properties +13 -0
  709. data/twilio-ruby.gemspec +5 -5
  710. metadata +334 -942
  711. data/.travis.yml +0 -45
  712. data/conf/cacert.pem +0 -3376
  713. data/lib/twilio-ruby/framework/domain.rb +0 -36
  714. data/lib/twilio-ruby/framework/error.rb +0 -51
  715. data/lib/twilio-ruby/framework/page.rb +0 -103
  716. data/lib/twilio-ruby/framework/resource.rb +0 -23
  717. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  718. data/lib/twilio-ruby/framework/version.rb +0 -153
  719. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  720. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  721. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  722. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  723. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  724. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  725. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  726. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  727. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -301
  728. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -314
  729. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  730. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +0 -348
  731. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  732. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +0 -348
  733. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  734. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -220
  735. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -214
  736. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -399
  737. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -418
  738. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -392
  739. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -469
  740. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -218
  741. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -386
  742. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -456
  743. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -255
  744. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -237
  745. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -507
  746. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -420
  747. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -650
  748. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +0 -194
  749. data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -51
  750. data/lib/twilio-ruby/rest/autopilot.rb +0 -53
  751. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +0 -314
  752. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -536
  753. data/lib/twilio-ruby/rest/fax/v1.rb +0 -44
  754. data/lib/twilio-ruby/rest/fax.rb +0 -47
  755. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -307
  756. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  757. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +0 -294
  758. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +0 -275
  759. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +0 -249
  760. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -251
  761. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -234
  762. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -60
  763. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -382
  764. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -365
  765. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -425
  766. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -376
  767. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -469
  768. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -44
  769. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -385
  770. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -410
  771. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -418
  772. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -385
  773. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -405
  774. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -415
  775. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -385
  776. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -405
  777. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -462
  778. data/lib/twilio-ruby/rest/preview/sync.rb +0 -43
  779. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +0 -165
  780. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +0 -225
  781. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +0 -195
  782. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +0 -186
  783. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -277
  784. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -64
  785. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -212
  786. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -212
  787. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -206
  788. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -386
  789. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -407
  790. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -380
  791. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -437
  792. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -212
  793. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -373
  794. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -428
  795. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -241
  796. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -225
  797. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -495
  798. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -629
  799. data/lib/twilio-ruby/rest/preview/understand.rb +0 -44
  800. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +0 -377
  801. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -205
  802. data/lib/twilio-ruby/rest/supersim/v1/command.rb +0 -368
  803. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -406
  804. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  805. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  806. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  807. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -483
  808. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -150
  809. data/spec/framework/request_spec.rb +0 -36
  810. data/spec/framework/serialize_spec.rb +0 -80
  811. data/spec/framework/version_spec.rb +0 -219
  812. data/spec/holodeck/holodeck.rb +0 -66
  813. data/spec/holodeck/hologram.rb +0 -4
  814. data/spec/http/http_client_spec.rb +0 -122
  815. data/spec/integration/accounts/v1/auth_token_promotion_spec.rb +0 -44
  816. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -222
  817. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -222
  818. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  819. data/spec/integration/accounts/v1/secondary_auth_token_spec.rb +0 -69
  820. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -106
  821. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  822. data/spec/integration/api/v2010/account/application_spec.rb +0 -274
  823. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -137
  824. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -102
  825. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -102
  826. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -101
  827. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -102
  828. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -102
  829. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -101
  830. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -102
  831. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -128
  832. data/spec/integration/api/v2010/account/balance_spec.rb +0 -44
  833. data/spec/integration/api/v2010/account/call/event_spec.rb +0 -102
  834. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -138
  835. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -149
  836. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -143
  837. data/spec/integration/api/v2010/account/call/payment_spec.rb +0 -135
  838. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
  839. data/spec/integration/api/v2010/account/call_spec.rb +0 -660
  840. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -768
  841. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -234
  842. data/spec/integration/api/v2010/account/conference_spec.rb +0 -458
  843. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -197
  844. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -135
  845. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -220
  846. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -189
  847. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -189
  848. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -189
  849. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -370
  850. data/spec/integration/api/v2010/account/key_spec.rb +0 -176
  851. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -49
  852. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -161
  853. data/spec/integration/api/v2010/account/message_spec.rb +0 -507
  854. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -46
  855. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -46
  856. data/spec/integration/api/v2010/account/notification_spec.rb +0 -138
  857. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -185
  858. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -208
  859. data/spec/integration/api/v2010/account/queue_spec.rb +0 -244
  860. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -174
  861. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -165
  862. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -173
  863. data/spec/integration/api/v2010/account/recording_spec.rb +0 -184
  864. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -179
  865. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -176
  866. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -252
  867. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -241
  868. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -217
  869. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -217
  870. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  871. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -217
  872. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  873. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  874. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -207
  875. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -217
  876. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -303
  877. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -254
  878. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -251
  879. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  880. data/spec/integration/api/v2010/account/token_spec.rb +0 -71
  881. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -166
  882. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  883. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  884. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  885. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  886. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  887. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  888. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  889. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  890. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  891. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -281
  892. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  893. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  894. data/spec/integration/api/v2010/account_spec.rb +0 -327
  895. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -79
  896. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -46
  897. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -207
  898. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -242
  899. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -236
  900. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -290
  901. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -79
  902. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -204
  903. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -249
  904. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -85
  905. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -49
  906. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -258
  907. data/spec/integration/autopilot/v1/assistant/webhook_spec.rb +0 -242
  908. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -277
  909. data/spec/integration/autopilot/v1/restore_assistant_spec.rb +0 -53
  910. data/spec/integration/bulkexports/v1/export/day_spec.rb +0 -115
  911. data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +0 -129
  912. data/spec/integration/bulkexports/v1/export/job_spec.rb +0 -78
  913. data/spec/integration/bulkexports/v1/export_configuration_spec.rb +0 -77
  914. data/spec/integration/bulkexports/v1/export_spec.rb +0 -44
  915. data/spec/integration/chat/v1/credential_spec.rb +0 -219
  916. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -207
  917. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -280
  918. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -290
  919. data/spec/integration/chat/v1/service/channel_spec.rb +0 -272
  920. data/spec/integration/chat/v1/service/role_spec.rb +0 -260
  921. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -93
  922. data/spec/integration/chat/v1/service/user_spec.rb +0 -262
  923. data/spec/integration/chat/v1/service_spec.rb +0 -295
  924. data/spec/integration/chat/v2/credential_spec.rb +0 -219
  925. data/spec/integration/chat/v2/service/binding_spec.rb +0 -174
  926. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -207
  927. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -263
  928. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -406
  929. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -303
  930. data/spec/integration/chat/v2/service/channel_spec.rb +0 -282
  931. data/spec/integration/chat/v2/service/role_spec.rb +0 -260
  932. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -177
  933. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -247
  934. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  935. data/spec/integration/chat/v2/service_spec.rb +0 -350
  936. data/spec/integration/conversations/v1/configuration/webhook_spec.rb +0 -90
  937. data/spec/integration/conversations/v1/configuration_spec.rb +0 -87
  938. data/spec/integration/conversations/v1/conversation/message/delivery_receipt_spec.rb +0 -136
  939. data/spec/integration/conversations/v1/conversation/message_spec.rb +0 -409
  940. data/spec/integration/conversations/v1/conversation/participant_spec.rb +0 -402
  941. data/spec/integration/conversations/v1/conversation/webhook_spec.rb +0 -282
  942. data/spec/integration/conversations/v1/conversation_spec.rb +0 -278
  943. data/spec/integration/conversations/v1/credential_spec.rb +0 -219
  944. data/spec/integration/conversations/v1/role_spec.rb +0 -249
  945. data/spec/integration/conversations/v1/service/binding_spec.rb +0 -166
  946. data/spec/integration/conversations/v1/service/configuration/notification_spec.rb +0 -115
  947. data/spec/integration/conversations/v1/service/configuration_spec.rb +0 -89
  948. data/spec/integration/conversations/v1/service/conversation/message/delivery_receipt_spec.rb +0 -144
  949. data/spec/integration/conversations/v1/service/conversation/message_spec.rb +0 -429
  950. data/spec/integration/conversations/v1/service/conversation/participant_spec.rb +0 -427
  951. data/spec/integration/conversations/v1/service/conversation/webhook_spec.rb +0 -299
  952. data/spec/integration/conversations/v1/service/conversation_spec.rb +0 -289
  953. data/spec/integration/conversations/v1/service/role_spec.rb +0 -260
  954. data/spec/integration/conversations/v1/service/user_spec.rb +0 -241
  955. data/spec/integration/conversations/v1/service_spec.rb +0 -174
  956. data/spec/integration/conversations/v1/user_spec.rb +0 -231
  957. data/spec/integration/events/v1/event_type_spec.rb +0 -133
  958. data/spec/integration/events/v1/schema/schema_version_spec.rb +0 -126
  959. data/spec/integration/events/v1/schema_spec.rb +0 -46
  960. data/spec/integration/events/v1/sink/sink_test_spec.rb +0 -42
  961. data/spec/integration/events/v1/sink/sink_validate_spec.rb +0 -44
  962. data/spec/integration/events/v1/sink_spec.rb +0 -231
  963. data/spec/integration/events/v1/subscription/subscribed_event_spec.rb +0 -91
  964. data/spec/integration/events/v1/subscription_spec.rb +0 -292
  965. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -125
  966. data/spec/integration/fax/v1/fax_spec.rb +0 -267
  967. data/spec/integration/flex_api/v1/channel_spec.rb +0 -188
  968. data/spec/integration/flex_api/v1/configuration_spec.rb +0 -554
  969. data/spec/integration/flex_api/v1/flex_flow_spec.rb +0 -259
  970. data/spec/integration/flex_api/v1/web_channel_spec.rb +0 -216
  971. data/spec/integration/insights/v1/call/event_spec.rb +0 -166
  972. data/spec/integration/insights/v1/call/metric_spec.rb +0 -154
  973. data/spec/integration/insights/v1/call/summary_spec.rb +0 -64
  974. data/spec/integration/insights/v1/call_spec.rb +0 -46
  975. data/spec/integration/insights/v1/room/participant_spec.rb +0 -147
  976. data/spec/integration/insights/v1/room_spec.rb +0 -164
  977. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -219
  978. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -207
  979. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -280
  980. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -290
  981. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -272
  982. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -260
  983. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -93
  984. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -262
  985. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -295
  986. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -219
  987. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -174
  988. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -207
  989. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -263
  990. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -406
  991. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -303
  992. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -282
  993. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -260
  994. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -177
  995. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -247
  996. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  997. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -350
  998. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -336
  999. data/spec/integration/messaging/v1/deactivation_spec.rb +0 -40
  1000. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -173
  1001. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -198
  1002. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -176
  1003. data/spec/integration/messaging/v1/service_spec.rb +0 -267
  1004. data/spec/integration/monitor/v1/alert_spec.rb +0 -138
  1005. data/spec/integration/monitor/v1/event_spec.rb +0 -148
  1006. data/spec/integration/notify/v1/credential_spec.rb +0 -219
  1007. data/spec/integration/notify/v1/service/binding_spec.rb +0 -222
  1008. data/spec/integration/notify/v1/service/notification_spec.rb +0 -98
  1009. data/spec/integration/notify/v1/service_spec.rb +0 -289
  1010. data/spec/integration/numbers/v2/regulatory_compliance/bundle/evaluation_spec.rb +0 -620
  1011. data/spec/integration/numbers/v2/regulatory_compliance/bundle/item_assignment_spec.rb +0 -195
  1012. data/spec/integration/numbers/v2/regulatory_compliance/bundle_spec.rb +0 -258
  1013. data/spec/integration/numbers/v2/regulatory_compliance/end_user_spec.rb +0 -238
  1014. data/spec/integration/numbers/v2/regulatory_compliance/end_user_type_spec.rb +0 -141
  1015. data/spec/integration/numbers/v2/regulatory_compliance/regulation_spec.rb +0 -181
  1016. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_spec.rb +0 -250
  1017. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_type_spec.rb +0 -131
  1018. data/spec/integration/numbers/v2/regulatory_compliance_spec.rb +0 -12
  1019. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -115
  1020. data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +0 -129
  1021. data/spec/integration/preview/bulk_exports/export/job_spec.rb +0 -78
  1022. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -77
  1023. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -44
  1024. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -234
  1025. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -228
  1026. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -244
  1027. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -232
  1028. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -241
  1029. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -110
  1030. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -224
  1031. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -389
  1032. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -121
  1033. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -142
  1034. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -162
  1035. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -250
  1036. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -201
  1037. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  1038. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -255
  1039. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -201
  1040. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -205
  1041. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -255
  1042. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -201
  1043. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -205
  1044. data/spec/integration/preview/sync/service_spec.rb +0 -241
  1045. data/spec/integration/preview/trusted_comms/branded_channel/channel_spec.rb +0 -50
  1046. data/spec/integration/preview/trusted_comms/branded_channel_spec.rb +0 -47
  1047. data/spec/integration/preview/trusted_comms/brands_information_spec.rb +0 -45
  1048. data/spec/integration/preview/trusted_comms/cps_spec.rb +0 -44
  1049. data/spec/integration/preview/trusted_comms/current_call_spec.rb +0 -58
  1050. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -79
  1051. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -79
  1052. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -46
  1053. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -207
  1054. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -242
  1055. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -236
  1056. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -302
  1057. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -79
  1058. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -204
  1059. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -249
  1060. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -85
  1061. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -49
  1062. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -258
  1063. data/spec/integration/preview/understand/assistant_spec.rb +0 -269
  1064. data/spec/integration/preview/wireless/command_spec.rb +0 -167
  1065. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -257
  1066. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -50
  1067. data/spec/integration/preview/wireless/sim_spec.rb +0 -207
  1068. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -137
  1069. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  1070. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -128
  1071. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  1072. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -138
  1073. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -55
  1074. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  1075. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -179
  1076. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -61
  1077. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  1078. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -231
  1079. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -133
  1080. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -163
  1081. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -240
  1082. data/spec/integration/proxy/v1/service/session_spec.rb +0 -225
  1083. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -225
  1084. data/spec/integration/proxy/v1/service_spec.rb +0 -214
  1085. data/spec/integration/serverless/v1/service/asset/asset_version_spec.rb +0 -93
  1086. data/spec/integration/serverless/v1/service/asset_spec.rb +0 -202
  1087. data/spec/integration/serverless/v1/service/build/build_status_spec.rb +0 -48
  1088. data/spec/integration/serverless/v1/service/build_spec.rb +0 -214
  1089. data/spec/integration/serverless/v1/service/environment/deployment_spec.rb +0 -133
  1090. data/spec/integration/serverless/v1/service/environment/log_spec.rb +0 -97
  1091. data/spec/integration/serverless/v1/service/environment/variable_spec.rb +0 -207
  1092. data/spec/integration/serverless/v1/service/environment_spec.rb +0 -170
  1093. data/spec/integration/serverless/v1/service/function/function_version/function_version_content_spec.rb +0 -51
  1094. data/spec/integration/serverless/v1/service/function/function_version_spec.rb +0 -96
  1095. data/spec/integration/serverless/v1/service/function_spec.rb +0 -202
  1096. data/spec/integration/serverless/v1/service_spec.rb +0 -205
  1097. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -50
  1098. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -53
  1099. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -99
  1100. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -168
  1101. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -50
  1102. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  1103. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -100
  1104. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -214
  1105. data/spec/integration/studio/v1/flow_spec.rb +0 -114
  1106. data/spec/integration/studio/v2/flow/execution/execution_context_spec.rb +0 -50
  1107. data/spec/integration/studio/v2/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  1108. data/spec/integration/studio/v2/flow/execution/execution_step_spec.rb +0 -100
  1109. data/spec/integration/studio/v2/flow/execution_spec.rb +0 -211
  1110. data/spec/integration/studio/v2/flow/flow_revision_spec.rb +0 -110
  1111. data/spec/integration/studio/v2/flow/test_user_spec.rb +0 -85
  1112. data/spec/integration/studio/v2/flow_spec.rb +0 -251
  1113. data/spec/integration/studio/v2/flow_validate_spec.rb +0 -46
  1114. data/spec/integration/supersim/v1/command_spec.rb +0 -184
  1115. data/spec/integration/supersim/v1/fleet_spec.rb +0 -214
  1116. data/spec/integration/supersim/v1/network_access_profile/network_access_profile_network_spec.rb +0 -176
  1117. data/spec/integration/supersim/v1/network_access_profile_spec.rb +0 -219
  1118. data/spec/integration/supersim/v1/network_spec.rb +0 -137
  1119. data/spec/integration/supersim/v1/sim_spec.rb +0 -323
  1120. data/spec/integration/supersim/v1/usage_record_spec.rb +0 -647
  1121. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -201
  1122. data/spec/integration/sync/v1/service/document_spec.rb +0 -256
  1123. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  1124. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -201
  1125. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -252
  1126. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  1127. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -201
  1128. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -252
  1129. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  1130. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -244
  1131. data/spec/integration/sync/v1/service_spec.rb +0 -261
  1132. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -232
  1133. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -163
  1134. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -222
  1135. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -312
  1136. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -101
  1137. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -83
  1138. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -107
  1139. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -145
  1140. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -290
  1141. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -325
  1142. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -191
  1143. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -185
  1144. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -91
  1145. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -88
  1146. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -69
  1147. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -115
  1148. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -290
  1149. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -96
  1150. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  1151. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -70
  1152. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -266
  1153. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -93
  1154. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  1155. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -104
  1156. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -291
  1157. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -189
  1158. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -189
  1159. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -248
  1160. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -264
  1161. data/spec/integration/trunking/v1/trunk/recording_spec.rb +0 -75
  1162. data/spec/integration/trunking/v1/trunk_spec.rb +0 -281
  1163. data/spec/integration/verify/v2/form_spec.rb +0 -47
  1164. data/spec/integration/verify/v2/service/access_token_spec.rb +0 -44
  1165. data/spec/integration/verify/v2/service/entity/challenge_spec.rb +0 -288
  1166. data/spec/integration/verify/v2/service/entity/factor_spec.rb +0 -277
  1167. data/spec/integration/verify/v2/service/entity_spec.rb +0 -201
  1168. data/spec/integration/verify/v2/service/messaging_configuration_spec.rb +0 -228
  1169. data/spec/integration/verify/v2/service/rate_limit/bucket_spec.rb +0 -245
  1170. data/spec/integration/verify/v2/service/rate_limit_spec.rb +0 -217
  1171. data/spec/integration/verify/v2/service/verification_check_spec.rb +0 -80
  1172. data/spec/integration/verify/v2/service/verification_spec.rb +0 -318
  1173. data/spec/integration/verify/v2/service/webhook_spec.rb +0 -258
  1174. data/spec/integration/verify/v2/service_spec.rb +0 -279
  1175. data/spec/integration/video/v1/composition_hook_spec.rb +0 -407
  1176. data/spec/integration/video/v1/composition_settings_spec.rb +0 -85
  1177. data/spec/integration/video/v1/composition_spec.rb +0 -347
  1178. data/spec/integration/video/v1/recording_settings_spec.rb +0 -85
  1179. data/spec/integration/video/v1/recording_spec.rb +0 -176
  1180. data/spec/integration/video/v1/room/recording_spec.rb +0 -185
  1181. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -94
  1182. data/spec/integration/video/v1/room/room_participant/room_participant_subscribe_rule_spec.rb +0 -103
  1183. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -95
  1184. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  1185. data/spec/integration/video/v1/room/room_recording_rule_spec.rb +0 -89
  1186. data/spec/integration/video/v1/room_spec.rb +0 -301
  1187. data/spec/integration/voice/v1/byoc_trunk_spec.rb +0 -245
  1188. data/spec/integration/voice/v1/connection_policy/connection_policy_target_spec.rb +0 -242
  1189. data/spec/integration/voice/v1/connection_policy_spec.rb +0 -221
  1190. data/spec/integration/voice/v1/dialing_permissions/bulk_country_update_spec.rb +0 -45
  1191. data/spec/integration/voice/v1/dialing_permissions/country/highrisk_special_prefix_spec.rb +0 -60
  1192. data/spec/integration/voice/v1/dialing_permissions/country_spec.rb +0 -110
  1193. data/spec/integration/voice/v1/dialing_permissions/settings_spec.rb +0 -75
  1194. data/spec/integration/voice/v1/dialing_permissions_spec.rb +0 -12
  1195. data/spec/integration/voice/v1/ip_record_spec.rb +0 -219
  1196. data/spec/integration/voice/v1/source_ip_mapping_spec.rb +0 -216
  1197. data/spec/integration/wireless/v1/command_spec.rb +0 -286
  1198. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -277
  1199. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -88
  1200. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -114
  1201. data/spec/integration/wireless/v1/sim_spec.rb +0 -325
  1202. data/spec/integration/wireless/v1/usage_record_spec.rb +0 -110
  1203. data/spec/jwt/access_token_spec.rb +0 -159
  1204. data/spec/jwt/client_capability_spec.rb +0 -104
  1205. data/spec/jwt/task_router_spec.rb +0 -172
  1206. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  1207. data/spec/rest/client_spec.rb +0 -255
  1208. data/spec/security/request_validator_spec.rb +0 -125
  1209. data/spec/spec_helper.rb +0 -38
  1210. data/spec/support/fakeweb.rb +0 -2
  1211. data/spec/twilio_spec.rb +0 -17
  1212. data/spec/twiml/messaging_response_spec.rb +0 -235
  1213. data/spec/twiml/voice_response_spec.rb +0 -847
  1214. data/spec/util/configuration_spec.rb +0 -33
  1215. data/spec/util/url_encode_spec.rb +0 -12
  1216. /data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  1217. /data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
@@ -1,938 +1,1375 @@
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 CallList < ListResource
15
- ##
16
- # Initialize the CallList
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 Call
20
- # resource.
21
- # @return [CallList] CallList
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]}/Calls.json"
28
-
29
- # Components
30
- @feedback_summaries = nil
31
- end
32
-
33
- ##
34
- # Create the CallInstance
35
- # @param [String] to The phone number, SIP address, or client identifier to call.
36
- # @param [String] from The phone number or client identifier to use as the caller
37
- # id. If using a phone number, it must be a Twilio number or a Verified {outgoing
38
- # caller id}[https://www.twilio.com/docs/voice/api/outgoing-caller-ids] for your
39
- # account. If the `to` parameter is a phone number, `From` must also be a phone
40
- # number.
41
- # @param [String] method The HTTP method we should use when calling the `url`
42
- # parameter's value. Can be: `GET` or `POST` and the default is `POST`. If an
43
- # `application_sid` parameter is present, this parameter is ignored.
44
- # @param [String] fallback_url The URL that we call using the `fallback_method` if
45
- # an error occurs when requesting or executing the TwiML at `url`. If an
46
- # `application_sid` parameter is present, this parameter is ignored.
47
- # @param [String] fallback_method The HTTP method that we should use to request
48
- # the `fallback_url`. Can be: `GET` or `POST` and the default is `POST`. If an
49
- # `application_sid` parameter is present, this parameter is ignored.
50
- # @param [String] status_callback The URL we should call using the
51
- # `status_callback_method` to send status information to your application. If no
52
- # `status_callback_event` is specified, we will send the `completed` status. If an
53
- # `application_sid` parameter is present, this parameter is ignored. URLs must
54
- # contain a valid hostname (underscores are not permitted).
55
- # @param [Array[String]] status_callback_event The call progress events that we
56
- # will send to the `status_callback` URL. Can be: `initiated`, `ringing`,
57
- # `answered`, and `completed`. If no event is specified, we send the `completed`
58
- # status. If you want to receive multiple events, specify each one in a separate
59
- # `status_callback_event` parameter. See the code sample for {monitoring call
60
- # progress}[https://www.twilio.com/docs/voice/api/call-resource?code-sample=code-create-a-call-resource-and-specify-a-statuscallbackevent&code-sdk-version=json].
61
- # If an `application_sid` is present, this parameter is ignored.
62
- # @param [String] status_callback_method The HTTP method we should use when
63
- # calling the `status_callback` URL. Can be: `GET` or `POST` and the default is
64
- # `POST`. If an `application_sid` parameter is present, this parameter is ignored.
65
- # @param [String] send_digits A string of keys to dial after connecting to the
66
- # number, maximum of 32 digits. Valid digits in the string include: any digit
67
- # (`0`-`9`), '`#`', '`*`' and '`w`', to insert a half second pause. For example,
68
- # if you connected to a company phone number and wanted to pause for one second,
69
- # and then dial extension 1234 followed by the pound key, the value of this
70
- # parameter would be `ww1234#`. Remember to URL-encode this string, since the
71
- # '`#`' character has special meaning in a URL. If both `SendDigits` and
72
- # `MachineDetection` parameters are provided, then `MachineDetection` will be
73
- # ignored.
74
- # @param [String] timeout The integer number of seconds that we should allow the
75
- # phone to ring before assuming there is no answer. The default is `60` seconds
76
- # and the maximum is `600` seconds. For some call flows, we will add a 5-second
77
- # buffer to the timeout value you provide. For this reason, a timeout value of 10
78
- # seconds could result in an actual timeout closer to 15 seconds. You can set this
79
- # to a short time, such as `15` seconds, to hang up before reaching an answering
80
- # machine or voicemail.
81
- # @param [Boolean] record Whether to record the call. Can be `true` to record the
82
- # phone call, or `false` to not. The default is `false`. The `recording_url` is
83
- # sent to the `status_callback` URL.
84
- # @param [String] recording_channels The number of channels in the final
85
- # recording. Can be: `mono` or `dual`. The default is `mono`. `mono` records both
86
- # legs of the call in a single channel of the recording file. `dual` records each
87
- # leg to a separate channel of the recording file. The first channel of a
88
- # dual-channel recording contains the parent call and the second channel contains
89
- # the child call.
90
- # @param [String] recording_status_callback The URL that we call when the
91
- # recording is available to be accessed.
92
- # @param [String] recording_status_callback_method The HTTP method we should use
93
- # when calling the `recording_status_callback` URL. Can be: `GET` or `POST` and
94
- # the default is `POST`.
95
- # @param [String] sip_auth_username The username used to authenticate the caller
96
- # making a SIP call.
97
- # @param [String] sip_auth_password The password required to authenticate the user
98
- # account specified in `sip_auth_username`.
99
- # @param [String] machine_detection Whether to detect if a human, answering
100
- # machine, or fax has picked up the call. Can be: `Enable` or `DetectMessageEnd`.
101
- # Use `Enable` if you would like us to return `AnsweredBy` as soon as the called
102
- # party is identified. Use `DetectMessageEnd`, if you would like to leave a
103
- # message on an answering machine. If `send_digits` is provided, this parameter is
104
- # ignored. For more information, see {Answering Machine
105
- # Detection}[https://www.twilio.com/docs/voice/answering-machine-detection].
106
- # @param [String] machine_detection_timeout The number of seconds that we should
107
- # attempt to detect an answering machine before timing out and sending a voice
108
- # request with `AnsweredBy` of `unknown`. The default timeout is 30 seconds.
109
- # @param [Array[String]] recording_status_callback_event The recording status
110
- # events that will trigger calls to the URL specified in
111
- # `recording_status_callback`. Can be: `in-progress`, `completed` and `absent`.
112
- # Defaults to `completed`. Separate multiple values with a space.
113
- # @param [String] trim Whether to trim any leading and trailing silence from the
114
- # recording. Can be: `trim-silence` or `do-not-trim` and the default is
115
- # `trim-silence`.
116
- # @param [String] caller_id The phone number, SIP address, or Client identifier
117
- # that made this call. Phone numbers are in {E.164
118
- # format}[https://wwnw.twilio.com/docs/glossary/what-e164] (e.g., +16175551212).
119
- # SIP addresses are formatted as `name@company.com`.
120
- # @param [String] machine_detection_speech_threshold The number of milliseconds
121
- # that is used as the measuring stick for the length of the speech activity, where
122
- # durations lower than this value will be interpreted as a human and longer than
123
- # this value as a machine. Possible Values: 1000-6000. Default: 2400.
124
- # @param [String] machine_detection_speech_end_threshold The number of
125
- # milliseconds of silence after speech activity at which point the speech activity
126
- # is considered complete. Possible Values: 500-5000. Default: 1200.
127
- # @param [String] machine_detection_silence_timeout The number of milliseconds of
128
- # initial silence after which an `unknown` AnsweredBy result will be returned.
129
- # Possible Values: 2000-10000. Default: 5000.
130
- # @param [String] async_amd Select whether to perform answering machine detection
131
- # in the background. Default, blocks the execution of the call until Answering
132
- # Machine Detection is completed. Can be: `true` or `false`.
133
- # @param [String] async_amd_status_callback The URL that we should call using the
134
- # `async_amd_status_callback_method` to notify customer application whether the
135
- # call was answered by human, machine or fax.
136
- # @param [String] async_amd_status_callback_method The HTTP method we should use
137
- # when calling the `async_amd_status_callback` URL. Can be: `GET` or `POST` and
138
- # the default is `POST`.
139
- # @param [String] byoc The SID of a BYOC (Bring Your Own Carrier) trunk to route
140
- # this call with. Note that `byoc` is only meaningful when `to` is a phone number;
141
- # it will otherwise be ignored. (Beta)
142
- # @param [String] call_reason The Reason for the outgoing call. Use it to specify
143
- # the purpose of the call that is presented on the called party's phone. (Branded
144
- # Calls Beta)
145
- # @param [String] recording_track The audio track to record for the call. Can be:
146
- # `inbound`, `outbound` or `both`. The default is `both`. `inbound` records the
147
- # audio that is received by Twilio. `outbound` records the audio that is generated
148
- # from Twilio. `both` records the audio that is received and generated by Twilio.
149
- # @param [String] url The absolute URL that returns the TwiML instructions for the
150
- # call. We will call this URL using the `method` when the call connects. For more
151
- # information, see the {Url
152
- # Parameter}[https://www.twilio.com/docs/voice/make-calls#specify-a-url-parameter]
153
- # section in {Making Calls}[https://www.twilio.com/docs/voice/make-calls].
154
- # @param [String] twiml TwiML instructions for the call Twilio will use without
155
- # fetching Twiml from url parameter. If both `twiml` and `url` are provided then
156
- # `twiml` parameter will be ignored.
157
- # @param [String] application_sid The SID of the Application resource that will
158
- # handle the call, if the call will be handled by an application.
159
- # @return [CallInstance] Created CallInstance
160
- def create(to: nil, from: nil, method: :unset, fallback_url: :unset, fallback_method: :unset, status_callback: :unset, status_callback_event: :unset, status_callback_method: :unset, send_digits: :unset, timeout: :unset, record: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, sip_auth_username: :unset, sip_auth_password: :unset, machine_detection: :unset, machine_detection_timeout: :unset, recording_status_callback_event: :unset, trim: :unset, caller_id: :unset, machine_detection_speech_threshold: :unset, machine_detection_speech_end_threshold: :unset, machine_detection_silence_timeout: :unset, async_amd: :unset, async_amd_status_callback: :unset, async_amd_status_callback_method: :unset, byoc: :unset, call_reason: :unset, recording_track: :unset, url: :unset, twiml: :unset, application_sid: :unset)
161
- data = Twilio::Values.of({
162
- 'To' => to,
163
- 'From' => from,
164
- 'Url' => url,
165
- 'Twiml' => twiml,
166
- 'ApplicationSid' => application_sid,
167
- 'Method' => method,
168
- 'FallbackUrl' => fallback_url,
169
- 'FallbackMethod' => fallback_method,
170
- 'StatusCallback' => status_callback,
171
- 'StatusCallbackEvent' => Twilio.serialize_list(status_callback_event) { |e| e },
172
- 'StatusCallbackMethod' => status_callback_method,
173
- 'SendDigits' => send_digits,
174
- 'Timeout' => timeout,
175
- 'Record' => record,
176
- 'RecordingChannels' => recording_channels,
177
- 'RecordingStatusCallback' => recording_status_callback,
178
- 'RecordingStatusCallbackMethod' => recording_status_callback_method,
179
- 'SipAuthUsername' => sip_auth_username,
180
- 'SipAuthPassword' => sip_auth_password,
181
- 'MachineDetection' => machine_detection,
182
- 'MachineDetectionTimeout' => machine_detection_timeout,
183
- 'RecordingStatusCallbackEvent' => Twilio.serialize_list(recording_status_callback_event) { |e| e },
184
- 'Trim' => trim,
185
- 'CallerId' => caller_id,
186
- 'MachineDetectionSpeechThreshold' => machine_detection_speech_threshold,
187
- 'MachineDetectionSpeechEndThreshold' => machine_detection_speech_end_threshold,
188
- 'MachineDetectionSilenceTimeout' => machine_detection_silence_timeout,
189
- 'AsyncAmd' => async_amd,
190
- 'AsyncAmdStatusCallback' => async_amd_status_callback,
191
- 'AsyncAmdStatusCallbackMethod' => async_amd_status_callback_method,
192
- 'Byoc' => byoc,
193
- 'CallReason' => call_reason,
194
- 'RecordingTrack' => recording_track,
195
- })
196
-
197
- payload = @version.create('POST', @uri, data: data)
198
-
199
- CallInstance.new(@version, payload, account_sid: @solution[:account_sid], )
200
- end
201
-
202
- ##
203
- # Lists CallInstance records from the API as a list.
204
- # Unlike stream(), this operation is eager and will load `limit` records into
205
- # memory before returning.
206
- # @param [String] to Only show calls made to this phone number, SIP address,
207
- # Client identifier or SIM SID.
208
- # @param [String] from Only include calls from this phone number, SIP address,
209
- # Client identifier or SIM SID.
210
- # @param [String] parent_call_sid Only include calls spawned by calls with this
211
- # SID.
212
- # @param [call.Status] status The status of the calls to include. Can be:
213
- # `queued`, `ringing`, `in-progress`, `canceled`, `completed`, `failed`, `busy`,
214
- # or `no-answer`.
215
- # @param [Time] start_time_before Only include calls that started on this date
216
- # @param [Time] start_time Only include calls that started on this date
217
- # @param [Time] start_time_after Only include calls that started on this date
218
- # @param [Time] end_time_before Only include calls that ended on this date
219
- # @param [Time] end_time Only include calls that ended on this date
220
- # @param [Time] end_time_after Only include calls that ended on this date
221
- # @param [Integer] limit Upper limit for the number of records to return. stream()
222
- # guarantees to never return more than limit. Default is no limit
223
- # @param [Integer] page_size Number of records to fetch per request, when
224
- # not set will use the default value of 50 records. If no page_size is defined
225
- # but a limit is defined, stream() will attempt to read the limit with the most
226
- # efficient page size, i.e. min(limit, 1000)
227
- # @return [Array] Array of up to limit results
228
- def list(to: :unset, from: :unset, parent_call_sid: :unset, status: :unset, start_time_before: :unset, start_time: :unset, start_time_after: :unset, end_time_before: :unset, end_time: :unset, end_time_after: :unset, limit: nil, page_size: nil)
229
- self.stream(
230
- to: to,
231
- from: from,
232
- parent_call_sid: parent_call_sid,
233
- status: status,
234
- start_time_before: start_time_before,
235
- start_time: start_time,
236
- start_time_after: start_time_after,
237
- end_time_before: end_time_before,
238
- end_time: end_time,
239
- end_time_after: end_time_after,
240
- limit: limit,
241
- page_size: page_size
242
- ).entries
243
- end
244
-
245
- ##
246
- # Streams CallInstance records from the API as an Enumerable.
247
- # This operation lazily loads records as efficiently as possible until the limit
248
- # is reached.
249
- # @param [String] to Only show calls made to this phone number, SIP address,
250
- # Client identifier or SIM SID.
251
- # @param [String] from Only include calls from this phone number, SIP address,
252
- # Client identifier or SIM SID.
253
- # @param [String] parent_call_sid Only include calls spawned by calls with this
254
- # SID.
255
- # @param [call.Status] status The status of the calls to include. Can be:
256
- # `queued`, `ringing`, `in-progress`, `canceled`, `completed`, `failed`, `busy`,
257
- # or `no-answer`.
258
- # @param [Time] start_time_before Only include calls that started on this date
259
- # @param [Time] start_time Only include calls that started on this date
260
- # @param [Time] start_time_after Only include calls that started on this date
261
- # @param [Time] end_time_before Only include calls that ended on this date
262
- # @param [Time] end_time Only include calls that ended on this date
263
- # @param [Time] end_time_after Only include calls that ended on this date
264
- # @param [Integer] limit Upper limit for the number of records to return. stream()
265
- # guarantees to never return more than limit. Default is no limit.
266
- # @param [Integer] page_size Number of records to fetch per request, when
267
- # not set will use the default value of 50 records. If no page_size is defined
268
- # but a limit is defined, stream() will attempt to read the limit with the most
269
- # efficient page size, i.e. min(limit, 1000)
270
- # @return [Enumerable] Enumerable that will yield up to limit results
271
- def stream(to: :unset, from: :unset, parent_call_sid: :unset, status: :unset, start_time_before: :unset, start_time: :unset, start_time_after: :unset, end_time_before: :unset, end_time: :unset, end_time_after: :unset, limit: nil, page_size: nil)
272
- limits = @version.read_limits(limit, page_size)
273
-
274
- page = self.page(
275
- to: to,
276
- from: from,
277
- parent_call_sid: parent_call_sid,
278
- status: status,
279
- start_time_before: start_time_before,
280
- start_time: start_time,
281
- start_time_after: start_time_after,
282
- end_time_before: end_time_before,
283
- end_time: end_time,
284
- end_time_after: end_time_after,
285
- page_size: limits[:page_size],
286
- )
287
-
288
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
289
- end
290
-
291
- ##
292
- # When passed a block, yields CallInstance records from the API.
293
- # This operation lazily loads records as efficiently as possible until the limit
294
- # is reached.
295
- def each
296
- limits = @version.read_limits
297
-
298
- page = self.page(page_size: limits[:page_size], )
299
-
300
- @version.stream(page,
301
- limit: limits[:limit],
302
- page_limit: limits[:page_limit]).each {|x| yield x}
303
- end
304
-
305
- ##
306
- # Retrieve a single page of CallInstance records from the API.
307
- # Request is executed immediately.
308
- # @param [String] to Only show calls made to this phone number, SIP address,
309
- # Client identifier or SIM SID.
310
- # @param [String] from Only include calls from this phone number, SIP address,
311
- # Client identifier or SIM SID.
312
- # @param [String] parent_call_sid Only include calls spawned by calls with this
313
- # SID.
314
- # @param [call.Status] status The status of the calls to include. Can be:
315
- # `queued`, `ringing`, `in-progress`, `canceled`, `completed`, `failed`, `busy`,
316
- # or `no-answer`.
317
- # @param [Time] start_time_before Only include calls that started on this date
318
- # @param [Time] start_time Only include calls that started on this date
319
- # @param [Time] start_time_after Only include calls that started on this date
320
- # @param [Time] end_time_before Only include calls that ended on this date
321
- # @param [Time] end_time Only include calls that ended on this date
322
- # @param [Time] end_time_after Only include calls that ended on this date
323
- # @param [String] page_token PageToken provided by the API
324
- # @param [Integer] page_number Page Number, this value is simply for client state
325
- # @param [Integer] page_size Number of records to return, defaults to 50
326
- # @return [Page] Page of CallInstance
327
- def page(to: :unset, from: :unset, parent_call_sid: :unset, status: :unset, start_time_before: :unset, start_time: :unset, start_time_after: :unset, end_time_before: :unset, end_time: :unset, end_time_after: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
328
- params = Twilio::Values.of({
329
- 'To' => to,
330
- 'From' => from,
331
- 'ParentCallSid' => parent_call_sid,
332
- 'Status' => status,
333
- 'StartTime<' => Twilio.serialize_iso8601_datetime(start_time_before),
334
- 'StartTime' => Twilio.serialize_iso8601_datetime(start_time),
335
- 'StartTime>' => Twilio.serialize_iso8601_datetime(start_time_after),
336
- 'EndTime<' => Twilio.serialize_iso8601_datetime(end_time_before),
337
- 'EndTime' => Twilio.serialize_iso8601_datetime(end_time),
338
- 'EndTime>' => Twilio.serialize_iso8601_datetime(end_time_after),
339
- 'PageToken' => page_token,
340
- 'Page' => page_number,
341
- 'PageSize' => page_size,
342
- })
343
-
344
- response = @version.page('GET', @uri, params: params)
345
-
346
- CallPage.new(@version, response, @solution)
347
- end
348
-
349
- ##
350
- # Retrieve a single page of CallInstance records from the API.
351
- # Request is executed immediately.
352
- # @param [String] target_url API-generated URL for the requested results page
353
- # @return [Page] Page of CallInstance
354
- def get_page(target_url)
355
- response = @version.domain.request(
356
- 'GET',
357
- target_url
358
- )
359
- CallPage.new(@version, response, @solution)
360
- end
361
-
362
- ##
363
- # Access the feedback_summaries
364
- # @param [String] sid A 34 character string that uniquely identifies this
365
- # resource.
366
- # @return [FeedbackSummaryList]
367
- # @return [FeedbackSummaryContext] if sid was passed.
368
- def feedback_summaries(sid=:unset)
369
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
370
-
371
- if sid != :unset
372
- return FeedbackSummaryContext.new(@version, @solution[:account_sid], sid, )
373
- end
374
-
375
- @feedback_summaries ||= FeedbackSummaryList.new(@version, account_sid: @solution[:account_sid], )
376
- end
377
-
378
- ##
379
- # Provide a user friendly representation
380
- def to_s
381
- '#<Twilio.Api.V2010.CallList>'
382
- end
383
- end
384
-
385
- class CallPage < Page
386
- ##
387
- # Initialize the CallPage
388
- # @param [Version] version Version that contains the resource
389
- # @param [Response] response Response from the API
390
- # @param [Hash] solution Path solution for the resource
391
- # @return [CallPage] CallPage
392
- def initialize(version, response, solution)
393
- super(version, response)
394
-
395
- # Path Solution
396
- @solution = solution
397
- end
398
-
399
- ##
400
- # Build an instance of CallInstance
401
- # @param [Hash] payload Payload response from the API
402
- # @return [CallInstance] CallInstance
403
- def get_instance(payload)
404
- CallInstance.new(@version, payload, account_sid: @solution[:account_sid], )
405
- end
406
-
407
- ##
408
- # Provide a user friendly representation
409
- def to_s
410
- '<Twilio.Api.V2010.CallPage>'
411
- end
412
- end
413
-
414
- class CallContext < InstanceContext
415
- ##
416
- # Initialize the CallContext
417
- # @param [Version] version Version that contains the resource
418
- # @param [String] account_sid The SID of the
419
- # {Account}[https://www.twilio.com/docs/iam/api/account] that created the Call
420
- # resource(s) to fetch.
421
- # @param [String] sid The SID of the Call resource to fetch.
422
- # @return [CallContext] CallContext
423
- def initialize(version, account_sid, sid)
424
- super(version)
425
-
426
- # Path Solution
427
- @solution = {account_sid: account_sid, sid: sid, }
428
- @uri = "/Accounts/#{@solution[:account_sid]}/Calls/#{@solution[:sid]}.json"
429
-
430
- # Dependents
431
- @recordings = nil
432
- @notifications = nil
433
- @feedback = nil
434
- @events = nil
435
- @payments = nil
436
- end
437
-
438
- ##
439
- # Delete the CallInstance
440
- # @return [Boolean] true if delete succeeds, false otherwise
441
- def delete
442
- @version.delete('DELETE', @uri)
443
- end
444
-
445
- ##
446
- # Fetch the CallInstance
447
- # @return [CallInstance] Fetched CallInstance
448
- def fetch
449
- payload = @version.fetch('GET', @uri)
450
-
451
- CallInstance.new(@version, payload, account_sid: @solution[:account_sid], sid: @solution[:sid], )
452
- end
453
-
454
- ##
455
- # Update the CallInstance
456
- # @param [String] url The absolute URL that returns the TwiML instructions for the
457
- # call. We will call this URL using the `method` when the call connects. For more
458
- # information, see the {Url
459
- # Parameter}[https://www.twilio.com/docs/voice/make-calls#specify-a-url-parameter]
460
- # section in {Making Calls}[https://www.twilio.com/docs/voice/make-calls].
461
- # @param [String] method The HTTP method we should use when calling the `url`. Can
462
- # be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter
463
- # is present, this parameter is ignored.
464
- # @param [call.UpdateStatus] status The new status of the resource. Can be:
465
- # `canceled` or `completed`. Specifying `canceled` will attempt to hang up calls
466
- # that are queued or ringing; however, it will not affect calls already in
467
- # progress. Specifying `completed` will attempt to hang up a call even if it's
468
- # already in progress.
469
- # @param [String] fallback_url The URL that we call using the `fallback_method` if
470
- # an error occurs when requesting or executing the TwiML at `url`. If an
471
- # `application_sid` parameter is present, this parameter is ignored.
472
- # @param [String] fallback_method The HTTP method that we should use to request
473
- # the `fallback_url`. Can be: `GET` or `POST` and the default is `POST`. If an
474
- # `application_sid` parameter is present, this parameter is ignored.
475
- # @param [String] status_callback The URL we should call using the
476
- # `status_callback_method` to send status information to your application. If no
477
- # `status_callback_event` is specified, we will send the `completed` status. If an
478
- # `application_sid` parameter is present, this parameter is ignored. URLs must
479
- # contain a valid hostname (underscores are not permitted).
480
- # @param [String] status_callback_method The HTTP method we should use when
481
- # requesting the `status_callback` URL. Can be: `GET` or `POST` and the default is
482
- # `POST`. If an `application_sid` parameter is present, this parameter is ignored.
483
- # @param [String] twiml TwiML instructions for the call Twilio will use without
484
- # fetching Twiml from url. Twiml and url parameters are mutually exclusive
485
- # @return [CallInstance] Updated CallInstance
486
- def update(url: :unset, method: :unset, status: :unset, fallback_url: :unset, fallback_method: :unset, status_callback: :unset, status_callback_method: :unset, twiml: :unset)
487
- data = Twilio::Values.of({
488
- 'Url' => url,
489
- 'Method' => method,
490
- 'Status' => status,
491
- 'FallbackUrl' => fallback_url,
492
- 'FallbackMethod' => fallback_method,
493
- 'StatusCallback' => status_callback,
494
- 'StatusCallbackMethod' => status_callback_method,
495
- 'Twiml' => twiml,
496
- })
497
-
498
- payload = @version.update('POST', @uri, data: data)
499
-
500
- CallInstance.new(@version, payload, account_sid: @solution[:account_sid], sid: @solution[:sid], )
501
- end
502
-
503
- ##
504
- # Access the recordings
505
- # @return [RecordingList]
506
- # @return [RecordingContext] if sid was passed.
507
- def recordings(sid=:unset)
508
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
509
-
510
- if sid != :unset
511
- return RecordingContext.new(@version, @solution[:account_sid], @solution[:sid], sid, )
512
- end
513
-
514
- unless @recordings
515
- @recordings = RecordingList.new(
516
- @version,
517
- account_sid: @solution[:account_sid],
518
- call_sid: @solution[:sid],
519
- )
520
- end
521
-
522
- @recordings
523
- end
524
-
525
- ##
526
- # Access the notifications
527
- # @return [NotificationList]
528
- # @return [NotificationContext] if sid was passed.
529
- def notifications(sid=:unset)
530
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
531
-
532
- if sid != :unset
533
- return NotificationContext.new(@version, @solution[:account_sid], @solution[:sid], sid, )
534
- end
535
-
536
- unless @notifications
537
- @notifications = NotificationList.new(
538
- @version,
539
- account_sid: @solution[:account_sid],
540
- call_sid: @solution[:sid],
541
- )
542
- end
543
-
544
- @notifications
545
- end
546
-
547
- ##
548
- # Access the feedback
549
- # @return [FeedbackList]
550
- # @return [FeedbackContext]
551
- def feedback
552
- FeedbackContext.new(@version, @solution[:account_sid], @solution[:sid], )
553
- end
554
-
555
- ##
556
- # Access the events
557
- # @return [EventList]
558
- # @return [EventContext]
559
- def events
560
- unless @events
561
- @events = EventList.new(@version, account_sid: @solution[:account_sid], call_sid: @solution[:sid], )
562
- end
563
-
564
- @events
565
- end
566
-
567
- ##
568
- # Access the payments
569
- # @return [PaymentList]
570
- # @return [PaymentContext] if sid was passed.
571
- def payments(sid=:unset)
572
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
573
-
574
- if sid != :unset
575
- return PaymentContext.new(@version, @solution[:account_sid], @solution[:sid], sid, )
576
- end
577
-
578
- unless @payments
579
- @payments = PaymentList.new(
580
- @version,
581
- account_sid: @solution[:account_sid],
582
- call_sid: @solution[:sid],
583
- )
584
- end
585
-
586
- @payments
587
- end
588
-
589
- ##
590
- # Provide a user friendly representation
591
- def to_s
592
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
593
- "#<Twilio.Api.V2010.CallContext #{context}>"
594
- end
595
-
596
- ##
597
- # Provide a detailed, user friendly representation
598
- def inspect
599
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
600
- "#<Twilio.Api.V2010.CallContext #{context}>"
601
- end
602
- end
603
-
604
- class CallInstance < InstanceResource
605
- ##
606
- # Initialize the CallInstance
607
- # @param [Version] version Version that contains the resource
608
- # @param [Hash] payload payload that contains response from Twilio
609
- # @param [String] account_sid The SID of the
610
- # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Call
611
- # resource.
612
- # @param [String] sid The SID of the Call resource to fetch.
613
- # @return [CallInstance] CallInstance
614
- def initialize(version, payload, account_sid: nil, sid: nil)
615
- super(version)
616
-
617
- # Marshaled Properties
618
- @properties = {
619
- 'sid' => payload['sid'],
620
- 'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
621
- 'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
622
- 'parent_call_sid' => payload['parent_call_sid'],
623
- 'account_sid' => payload['account_sid'],
624
- 'to' => payload['to'],
625
- 'to_formatted' => payload['to_formatted'],
626
- 'from' => payload['from'],
627
- 'from_formatted' => payload['from_formatted'],
628
- 'phone_number_sid' => payload['phone_number_sid'],
629
- 'status' => payload['status'],
630
- 'start_time' => Twilio.deserialize_rfc2822(payload['start_time']),
631
- 'end_time' => Twilio.deserialize_rfc2822(payload['end_time']),
632
- 'duration' => payload['duration'],
633
- 'price' => payload['price'],
634
- 'price_unit' => payload['price_unit'],
635
- 'direction' => payload['direction'],
636
- 'answered_by' => payload['answered_by'],
637
- 'annotation' => payload['annotation'],
638
- 'api_version' => payload['api_version'],
639
- 'forwarded_from' => payload['forwarded_from'],
640
- 'group_sid' => payload['group_sid'],
641
- 'caller_name' => payload['caller_name'],
642
- 'queue_time' => payload['queue_time'],
643
- 'trunk_sid' => payload['trunk_sid'],
644
- 'uri' => payload['uri'],
645
- 'subresource_uris' => payload['subresource_uris'],
646
- }
647
-
648
- # Context
649
- @instance_context = nil
650
- @params = {'account_sid' => account_sid, 'sid' => sid || @properties['sid'], }
651
- end
652
-
653
- ##
654
- # Generate an instance context for the instance, the context is capable of
655
- # performing various actions. All instance actions are proxied to the context
656
- # @return [CallContext] CallContext for this CallInstance
657
- def context
658
- unless @instance_context
659
- @instance_context = CallContext.new(@version, @params['account_sid'], @params['sid'], )
660
- end
661
- @instance_context
662
- end
663
-
664
- ##
665
- # @return [String] The unique string that identifies this resource
666
- def sid
667
- @properties['sid']
668
- end
669
-
670
- ##
671
- # @return [Time] The RFC 2822 date and time in GMT that this resource was created
672
- def date_created
673
- @properties['date_created']
674
- end
675
-
676
- ##
677
- # @return [Time] The RFC 2822 date and time in GMT that this resource was last updated
678
- def date_updated
679
- @properties['date_updated']
680
- end
681
-
682
- ##
683
- # @return [String] The SID that identifies the call that created this leg.
684
- def parent_call_sid
685
- @properties['parent_call_sid']
686
- end
687
-
688
- ##
689
- # @return [String] The SID of the Account that created this resource
690
- def account_sid
691
- @properties['account_sid']
692
- end
693
-
694
- ##
695
- # @return [String] The phone number, SIP address or Client identifier that received this call. Phone numbers are in E.164 format (e.g., +16175551212). SIP addresses are formatted as `name@company.com`. Client identifiers are formatted `client:name`.
696
- def to
697
- @properties['to']
698
- end
699
-
700
- ##
701
- # @return [String] The phone number, SIP address or Client identifier that received this call. Formatted for display.
702
- def to_formatted
703
- @properties['to_formatted']
704
- end
705
-
706
- ##
707
- # @return [String] The phone number, SIP address or Client identifier that made this call. Phone numbers are in E.164 format (e.g., +16175551212). SIP addresses are formatted as `name@company.com`. Client identifiers are formatted `client:name`.
708
- def from
709
- @properties['from']
710
- end
711
-
712
- ##
713
- # @return [String] The calling phone number, SIP address, or Client identifier formatted for display.
714
- def from_formatted
715
- @properties['from_formatted']
716
- end
717
-
718
- ##
719
- # @return [String] If the call was inbound, this is the SID of the IncomingPhoneNumber resource that received the call. If the call was outbound, it is the SID of the OutgoingCallerId resource from which the call was placed.
720
- def phone_number_sid
721
- @properties['phone_number_sid']
722
- end
723
-
724
- ##
725
- # @return [call.Status] The status of this call.
726
- def status
727
- @properties['status']
728
- end
729
-
730
- ##
731
- # @return [Time] The start time of the call. Null if the call has not yet been dialed.
732
- def start_time
733
- @properties['start_time']
734
- end
735
-
736
- ##
737
- # @return [Time] The end time of the call. Null if the call did not complete successfully.
738
- def end_time
739
- @properties['end_time']
740
- end
741
-
742
- ##
743
- # @return [String] The length of the call in seconds.
744
- def duration
745
- @properties['duration']
746
- end
747
-
748
- ##
749
- # @return [String] The charge for this call, in the currency associated with the account. Populated after the call is completed. May not be immediately available.
750
- def price
751
- @properties['price']
752
- end
753
-
754
- ##
755
- # @return [String] The currency in which `Price` is measured.
756
- def price_unit
757
- @properties['price_unit']
758
- end
759
-
760
- ##
761
- # @return [String] A string describing the direction of the call. `inbound` for inbound calls, `outbound-api` for calls initiated via the REST API or `outbound-dial` for calls initiated by a `Dial` verb.
762
- def direction
763
- @properties['direction']
764
- end
765
-
766
- ##
767
- # @return [String] Either `human` or `machine` if this call was initiated with answering machine detection. Empty otherwise.
768
- def answered_by
769
- @properties['answered_by']
770
- end
771
-
772
- ##
773
- # @return [String] The annotation provided for the call
774
- def annotation
775
- @properties['annotation']
776
- end
777
-
778
- ##
779
- # @return [String] The API Version used to create the call
780
- def api_version
781
- @properties['api_version']
782
- end
783
-
784
- ##
785
- # @return [String] The forwarding phone number if this call was an incoming call forwarded from another number (depends on carrier supporting forwarding). Otherwise, empty.
786
- def forwarded_from
787
- @properties['forwarded_from']
788
- end
789
-
790
- ##
791
- # @return [String] The Group SID associated with this call. If no Group is associated with the call, the field is empty.
792
- def group_sid
793
- @properties['group_sid']
794
- end
795
-
796
- ##
797
- # @return [String] The caller's name if this call was an incoming call to a phone number with caller ID Lookup enabled. Otherwise, empty.
798
- def caller_name
799
- @properties['caller_name']
800
- end
801
-
802
- ##
803
- # @return [String] The wait time in milliseconds before the call is placed.
804
- def queue_time
805
- @properties['queue_time']
806
- end
807
-
808
- ##
809
- # @return [String] The (optional) unique identifier of the trunk resource that was used for this call.
810
- def trunk_sid
811
- @properties['trunk_sid']
812
- end
813
-
814
- ##
815
- # @return [String] The URI of this resource, relative to `https://api.twilio.com`
816
- def uri
817
- @properties['uri']
818
- end
819
-
820
- ##
821
- # @return [String] A list of related subresources identified by their relative URIs
822
- def subresource_uris
823
- @properties['subresource_uris']
824
- end
825
-
826
- ##
827
- # Delete the CallInstance
828
- # @return [Boolean] true if delete succeeds, false otherwise
829
- def delete
830
- context.delete
831
- end
832
-
833
- ##
834
- # Fetch the CallInstance
835
- # @return [CallInstance] Fetched CallInstance
836
- def fetch
837
- context.fetch
838
- end
839
-
840
- ##
841
- # Update the CallInstance
842
- # @param [String] url The absolute URL that returns the TwiML instructions for the
843
- # call. We will call this URL using the `method` when the call connects. For more
844
- # information, see the {Url
845
- # Parameter}[https://www.twilio.com/docs/voice/make-calls#specify-a-url-parameter]
846
- # section in {Making Calls}[https://www.twilio.com/docs/voice/make-calls].
847
- # @param [String] method The HTTP method we should use when calling the `url`. Can
848
- # be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter
849
- # is present, this parameter is ignored.
850
- # @param [call.UpdateStatus] status The new status of the resource. Can be:
851
- # `canceled` or `completed`. Specifying `canceled` will attempt to hang up calls
852
- # that are queued or ringing; however, it will not affect calls already in
853
- # progress. Specifying `completed` will attempt to hang up a call even if it's
854
- # already in progress.
855
- # @param [String] fallback_url The URL that we call using the `fallback_method` if
856
- # an error occurs when requesting or executing the TwiML at `url`. If an
857
- # `application_sid` parameter is present, this parameter is ignored.
858
- # @param [String] fallback_method The HTTP method that we should use to request
859
- # the `fallback_url`. Can be: `GET` or `POST` and the default is `POST`. If an
860
- # `application_sid` parameter is present, this parameter is ignored.
861
- # @param [String] status_callback The URL we should call using the
862
- # `status_callback_method` to send status information to your application. If no
863
- # `status_callback_event` is specified, we will send the `completed` status. If an
864
- # `application_sid` parameter is present, this parameter is ignored. URLs must
865
- # contain a valid hostname (underscores are not permitted).
866
- # @param [String] status_callback_method The HTTP method we should use when
867
- # requesting the `status_callback` URL. Can be: `GET` or `POST` and the default is
868
- # `POST`. If an `application_sid` parameter is present, this parameter is ignored.
869
- # @param [String] twiml TwiML instructions for the call Twilio will use without
870
- # fetching Twiml from url. Twiml and url parameters are mutually exclusive
871
- # @return [CallInstance] Updated CallInstance
872
- def update(url: :unset, method: :unset, status: :unset, fallback_url: :unset, fallback_method: :unset, status_callback: :unset, status_callback_method: :unset, twiml: :unset)
873
- context.update(
874
- url: url,
875
- method: method,
876
- status: status,
877
- fallback_url: fallback_url,
878
- fallback_method: fallback_method,
879
- status_callback: status_callback,
880
- status_callback_method: status_callback_method,
881
- twiml: twiml,
882
- )
883
- end
884
-
885
- ##
886
- # Access the recordings
887
- # @return [recordings] recordings
888
- def recordings
889
- context.recordings
890
- end
891
-
892
- ##
893
- # Access the notifications
894
- # @return [notifications] notifications
895
- def notifications
896
- context.notifications
897
- end
898
-
899
- ##
900
- # Access the feedback
901
- # @return [feedback] feedback
902
- def feedback
903
- context.feedback
904
- end
905
-
906
- ##
907
- # Access the events
908
- # @return [events] events
909
- def events
910
- context.events
911
- end
912
-
913
- ##
914
- # Access the payments
915
- # @return [payments] payments
916
- def payments
917
- context.payments
918
- end
919
14
 
920
- ##
921
- # Provide a user friendly representation
922
- def to_s
923
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
924
- "<Twilio.Api.V2010.CallInstance #{values}>"
925
- end
926
15
 
927
- ##
928
- # Provide a detailed, user friendly representation
929
- def inspect
930
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
931
- "<Twilio.Api.V2010.CallInstance #{values}>"
16
+ module Twilio
17
+ module REST
18
+ class Api < ApiBase
19
+ class V2010 < Version
20
+ class AccountContext < InstanceContext
21
+
22
+ class CallList < ListResource
23
+
24
+ ##
25
+ # Initialize the CallList
26
+ # @param [Version] version Version that contains the resource
27
+ # @return [CallList] CallList
28
+ def initialize(version, account_sid: nil)
29
+ super(version)
30
+
31
+ # Path Solution
32
+ @solution = { account_sid: account_sid }
33
+ @uri = "/Accounts/#{@solution[:account_sid]}/Calls.json"
34
+
35
+ end
36
+ ##
37
+ # Create the CallInstance
38
+ # @param [String] to The phone number, SIP address, or client identifier to call.
39
+ # @param [String] from The phone number or client identifier to use as the caller id. If using a phone number, it must be a Twilio number or a Verified [outgoing caller id](https://www.twilio.com/docs/voice/api/outgoing-caller-ids) for your account. If the `to` parameter is a phone number, `From` must also be a phone number.
40
+ # @param [String] method The HTTP method we should use when calling the `url` parameter's value. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
41
+ # @param [String] fallback_url The URL that we call using the `fallback_method` if an error occurs when requesting or executing the TwiML at `url`. If an `application_sid` parameter is present, this parameter is ignored.
42
+ # @param [String] fallback_method The HTTP method that we should use to request the `fallback_url`. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
43
+ # @param [String] status_callback The URL we should call using the `status_callback_method` to send status information to your application. If no `status_callback_event` is specified, we will send the `completed` status. If an `application_sid` parameter is present, this parameter is ignored. URLs must contain a valid hostname (underscores are not permitted).
44
+ # @param [Array[String]] status_callback_event The call progress events that we will send to the `status_callback` URL. Can be: `initiated`, `ringing`, `answered`, and `completed`. If no event is specified, we send the `completed` status. If you want to receive multiple events, specify each one in a separate `status_callback_event` parameter. See the code sample for [monitoring call progress](https://www.twilio.com/docs/voice/api/call-resource?code-sample=code-create-a-call-resource-and-specify-a-statuscallbackevent&code-sdk-version=json). If an `application_sid` is present, this parameter is ignored.
45
+ # @param [String] status_callback_method The HTTP method we should use when calling the `status_callback` URL. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
46
+ # @param [String] send_digits The string of keys to dial after connecting to the number, with a maximum length of 32 digits. Valid digits in the string include any digit (`0`-`9`), '`A`', '`B`', '`C`', '`D`', '`#`', and '`*`'. You can also use '`w`' to insert a half-second pause and '`W`' to insert a one-second pause. For example, to pause for one second after connecting and then dial extension 1234 followed by the # key, set this parameter to `W1234#`. Be sure to URL-encode this string because the '`#`' character has special meaning in a URL. If both `SendDigits` and `MachineDetection` parameters are provided, then `MachineDetection` will be ignored.
47
+ # @param [String] timeout The integer number of seconds that we should allow the phone to ring before assuming there is no answer. The default is `60` seconds and the maximum is `600` seconds. For some call flows, we will add a 5-second buffer to the timeout value you provide. For this reason, a timeout value of 10 seconds could result in an actual timeout closer to 15 seconds. You can set this to a short time, such as `15` seconds, to hang up before reaching an answering machine or voicemail.
48
+ # @param [Boolean] record Whether to record the call. Can be `true` to record the phone call, or `false` to not. The default is `false`. The `recording_url` is sent to the `status_callback` URL.
49
+ # @param [String] recording_channels The number of channels in the final recording. Can be: `mono` or `dual`. The default is `mono`. `mono` records both legs of the call in a single channel of the recording file. `dual` records each leg to a separate channel of the recording file. The first channel of a dual-channel recording contains the parent call and the second channel contains the child call.
50
+ # @param [String] recording_status_callback The URL that we call when the recording is available to be accessed.
51
+ # @param [String] recording_status_callback_method The HTTP method we should use when calling the `recording_status_callback` URL. Can be: `GET` or `POST` and the default is `POST`.
52
+ # @param [String] sip_auth_username The username used to authenticate the caller making a SIP call.
53
+ # @param [String] sip_auth_password The password required to authenticate the user account specified in `sip_auth_username`.
54
+ # @param [String] machine_detection Whether to detect if a human, answering machine, or fax has picked up the call. Can be: `Enable` or `DetectMessageEnd`. Use `Enable` if you would like us to return `AnsweredBy` as soon as the called party is identified. Use `DetectMessageEnd`, if you would like to leave a message on an answering machine. If `send_digits` is provided, this parameter is ignored. For more information, see [Answering Machine Detection](https://www.twilio.com/docs/voice/answering-machine-detection).
55
+ # @param [String] machine_detection_timeout The number of seconds that we should attempt to detect an answering machine before timing out and sending a voice request with `AnsweredBy` of `unknown`. The default timeout is 30 seconds.
56
+ # @param [Array[String]] recording_status_callback_event The recording status events that will trigger calls to the URL specified in `recording_status_callback`. Can be: `in-progress`, `completed` and `absent`. Defaults to `completed`. Separate multiple values with a space.
57
+ # @param [String] trim Whether to trim any leading and trailing silence from the recording. Can be: `trim-silence` or `do-not-trim` and the default is `trim-silence`.
58
+ # @param [String] caller_id The phone number, SIP address, or Client identifier that made this call. Phone numbers are in [E.164 format](https://wwnw.twilio.com/docs/glossary/what-e164) (e.g., +16175551212). SIP addresses are formatted as `name@company.com`.
59
+ # @param [String] machine_detection_speech_threshold The number of milliseconds that is used as the measuring stick for the length of the speech activity, where durations lower than this value will be interpreted as a human and longer than this value as a machine. Possible Values: 1000-6000. Default: 2400.
60
+ # @param [String] machine_detection_speech_end_threshold The number of milliseconds of silence after speech activity at which point the speech activity is considered complete. Possible Values: 500-5000. Default: 1200.
61
+ # @param [String] machine_detection_silence_timeout The number of milliseconds of initial silence after which an `unknown` AnsweredBy result will be returned. Possible Values: 2000-10000. Default: 5000.
62
+ # @param [String] async_amd Select whether to perform answering machine detection in the background. Default, blocks the execution of the call until Answering Machine Detection is completed. Can be: `true` or `false`.
63
+ # @param [String] async_amd_status_callback The URL that we should call using the `async_amd_status_callback_method` to notify customer application whether the call was answered by human, machine or fax.
64
+ # @param [String] async_amd_status_callback_method The HTTP method we should use when calling the `async_amd_status_callback` URL. Can be: `GET` or `POST` and the default is `POST`.
65
+ # @param [String] byoc The SID of a BYOC (Bring Your Own Carrier) trunk to route this call with. Note that `byoc` is only meaningful when `to` is a phone number; it will otherwise be ignored. (Beta)
66
+ # @param [String] call_reason The Reason for the outgoing call. Use it to specify the purpose of the call that is presented on the called party's phone. (Branded Calls Beta)
67
+ # @param [String] call_token A token string needed to invoke a forwarded call. A call_token is generated when an incoming call is received on a Twilio number. Pass an incoming call's call_token value to a forwarded call via the call_token parameter when creating a new call. A forwarded call should bear the same CallerID of the original incoming call.
68
+ # @param [String] recording_track The audio track to record for the call. Can be: `inbound`, `outbound` or `both`. The default is `both`. `inbound` records the audio that is received by Twilio. `outbound` records the audio that is generated from Twilio. `both` records the audio that is received and generated by Twilio.
69
+ # @param [String] time_limit The maximum duration of the call in seconds. Constraints depend on account and configuration.
70
+ # @param [String] client_notification_url The URL that we should use to deliver `push call notification`.
71
+ # @param [String] url The absolute URL that returns the TwiML instructions for the call. We will call this URL using the `method` when the call connects. For more information, see the [Url Parameter](https://www.twilio.com/docs/voice/make-calls#specify-a-url-parameter) section in [Making Calls](https://www.twilio.com/docs/voice/make-calls).
72
+ # @param [String] twiml TwiML instructions for the call Twilio will use without fetching Twiml from url parameter. If both `twiml` and `url` are provided then `twiml` parameter will be ignored. Max 4000 characters.
73
+ # @param [String] application_sid The SID of the Application resource that will handle the call, if the call will be handled by an application.
74
+ # @return [CallInstance] Created CallInstance
75
+ def create(
76
+ to: nil,
77
+ from: nil,
78
+ method: :unset,
79
+ fallback_url: :unset,
80
+ fallback_method: :unset,
81
+ status_callback: :unset,
82
+ status_callback_event: :unset,
83
+ status_callback_method: :unset,
84
+ send_digits: :unset,
85
+ timeout: :unset,
86
+ record: :unset,
87
+ recording_channels: :unset,
88
+ recording_status_callback: :unset,
89
+ recording_status_callback_method: :unset,
90
+ sip_auth_username: :unset,
91
+ sip_auth_password: :unset,
92
+ machine_detection: :unset,
93
+ machine_detection_timeout: :unset,
94
+ recording_status_callback_event: :unset,
95
+ trim: :unset,
96
+ caller_id: :unset,
97
+ machine_detection_speech_threshold: :unset,
98
+ machine_detection_speech_end_threshold: :unset,
99
+ machine_detection_silence_timeout: :unset,
100
+ async_amd: :unset,
101
+ async_amd_status_callback: :unset,
102
+ async_amd_status_callback_method: :unset,
103
+ byoc: :unset,
104
+ call_reason: :unset,
105
+ call_token: :unset,
106
+ recording_track: :unset,
107
+ time_limit: :unset,
108
+ client_notification_url: :unset,
109
+ url: :unset,
110
+ twiml: :unset,
111
+ application_sid: :unset
112
+ )
113
+
114
+ data = Twilio::Values.of({
115
+ 'To' => to,
116
+ 'From' => from,
117
+ 'Method' => method,
118
+ 'FallbackUrl' => fallback_url,
119
+ 'FallbackMethod' => fallback_method,
120
+ 'StatusCallback' => status_callback,
121
+ 'StatusCallbackEvent' => Twilio.serialize_list(status_callback_event) { |e| e },
122
+ 'StatusCallbackMethod' => status_callback_method,
123
+ 'SendDigits' => send_digits,
124
+ 'Timeout' => timeout,
125
+ 'Record' => record,
126
+ 'RecordingChannels' => recording_channels,
127
+ 'RecordingStatusCallback' => recording_status_callback,
128
+ 'RecordingStatusCallbackMethod' => recording_status_callback_method,
129
+ 'SipAuthUsername' => sip_auth_username,
130
+ 'SipAuthPassword' => sip_auth_password,
131
+ 'MachineDetection' => machine_detection,
132
+ 'MachineDetectionTimeout' => machine_detection_timeout,
133
+ 'RecordingStatusCallbackEvent' => Twilio.serialize_list(recording_status_callback_event) { |e| e },
134
+ 'Trim' => trim,
135
+ 'CallerId' => caller_id,
136
+ 'MachineDetectionSpeechThreshold' => machine_detection_speech_threshold,
137
+ 'MachineDetectionSpeechEndThreshold' => machine_detection_speech_end_threshold,
138
+ 'MachineDetectionSilenceTimeout' => machine_detection_silence_timeout,
139
+ 'AsyncAmd' => async_amd,
140
+ 'AsyncAmdStatusCallback' => async_amd_status_callback,
141
+ 'AsyncAmdStatusCallbackMethod' => async_amd_status_callback_method,
142
+ 'Byoc' => byoc,
143
+ 'CallReason' => call_reason,
144
+ 'CallToken' => call_token,
145
+ 'RecordingTrack' => recording_track,
146
+ 'TimeLimit' => time_limit,
147
+ 'ClientNotificationUrl' => client_notification_url,
148
+ 'Url' => url,
149
+ 'Twiml' => twiml,
150
+ 'ApplicationSid' => application_sid,
151
+ })
152
+
153
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
154
+
155
+
156
+
157
+
158
+
159
+ payload = @version.create('POST', @uri, data: data, headers: headers)
160
+ CallInstance.new(
161
+ @version,
162
+ payload,
163
+ account_sid: @solution[:account_sid],
164
+ )
165
+ end
166
+
167
+ ##
168
+ # Create the CallInstanceMetadata
169
+ # @param [String] to The phone number, SIP address, or client identifier to call.
170
+ # @param [String] from The phone number or client identifier to use as the caller id. If using a phone number, it must be a Twilio number or a Verified [outgoing caller id](https://www.twilio.com/docs/voice/api/outgoing-caller-ids) for your account. If the `to` parameter is a phone number, `From` must also be a phone number.
171
+ # @param [String] method The HTTP method we should use when calling the `url` parameter's value. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
172
+ # @param [String] fallback_url The URL that we call using the `fallback_method` if an error occurs when requesting or executing the TwiML at `url`. If an `application_sid` parameter is present, this parameter is ignored.
173
+ # @param [String] fallback_method The HTTP method that we should use to request the `fallback_url`. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
174
+ # @param [String] status_callback The URL we should call using the `status_callback_method` to send status information to your application. If no `status_callback_event` is specified, we will send the `completed` status. If an `application_sid` parameter is present, this parameter is ignored. URLs must contain a valid hostname (underscores are not permitted).
175
+ # @param [Array[String]] status_callback_event The call progress events that we will send to the `status_callback` URL. Can be: `initiated`, `ringing`, `answered`, and `completed`. If no event is specified, we send the `completed` status. If you want to receive multiple events, specify each one in a separate `status_callback_event` parameter. See the code sample for [monitoring call progress](https://www.twilio.com/docs/voice/api/call-resource?code-sample=code-create-a-call-resource-and-specify-a-statuscallbackevent&code-sdk-version=json). If an `application_sid` is present, this parameter is ignored.
176
+ # @param [String] status_callback_method The HTTP method we should use when calling the `status_callback` URL. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
177
+ # @param [String] send_digits The string of keys to dial after connecting to the number, with a maximum length of 32 digits. Valid digits in the string include any digit (`0`-`9`), '`A`', '`B`', '`C`', '`D`', '`#`', and '`*`'. You can also use '`w`' to insert a half-second pause and '`W`' to insert a one-second pause. For example, to pause for one second after connecting and then dial extension 1234 followed by the # key, set this parameter to `W1234#`. Be sure to URL-encode this string because the '`#`' character has special meaning in a URL. If both `SendDigits` and `MachineDetection` parameters are provided, then `MachineDetection` will be ignored.
178
+ # @param [String] timeout The integer number of seconds that we should allow the phone to ring before assuming there is no answer. The default is `60` seconds and the maximum is `600` seconds. For some call flows, we will add a 5-second buffer to the timeout value you provide. For this reason, a timeout value of 10 seconds could result in an actual timeout closer to 15 seconds. You can set this to a short time, such as `15` seconds, to hang up before reaching an answering machine or voicemail.
179
+ # @param [Boolean] record Whether to record the call. Can be `true` to record the phone call, or `false` to not. The default is `false`. The `recording_url` is sent to the `status_callback` URL.
180
+ # @param [String] recording_channels The number of channels in the final recording. Can be: `mono` or `dual`. The default is `mono`. `mono` records both legs of the call in a single channel of the recording file. `dual` records each leg to a separate channel of the recording file. The first channel of a dual-channel recording contains the parent call and the second channel contains the child call.
181
+ # @param [String] recording_status_callback The URL that we call when the recording is available to be accessed.
182
+ # @param [String] recording_status_callback_method The HTTP method we should use when calling the `recording_status_callback` URL. Can be: `GET` or `POST` and the default is `POST`.
183
+ # @param [String] sip_auth_username The username used to authenticate the caller making a SIP call.
184
+ # @param [String] sip_auth_password The password required to authenticate the user account specified in `sip_auth_username`.
185
+ # @param [String] machine_detection Whether to detect if a human, answering machine, or fax has picked up the call. Can be: `Enable` or `DetectMessageEnd`. Use `Enable` if you would like us to return `AnsweredBy` as soon as the called party is identified. Use `DetectMessageEnd`, if you would like to leave a message on an answering machine. If `send_digits` is provided, this parameter is ignored. For more information, see [Answering Machine Detection](https://www.twilio.com/docs/voice/answering-machine-detection).
186
+ # @param [String] machine_detection_timeout The number of seconds that we should attempt to detect an answering machine before timing out and sending a voice request with `AnsweredBy` of `unknown`. The default timeout is 30 seconds.
187
+ # @param [Array[String]] recording_status_callback_event The recording status events that will trigger calls to the URL specified in `recording_status_callback`. Can be: `in-progress`, `completed` and `absent`. Defaults to `completed`. Separate multiple values with a space.
188
+ # @param [String] trim Whether to trim any leading and trailing silence from the recording. Can be: `trim-silence` or `do-not-trim` and the default is `trim-silence`.
189
+ # @param [String] caller_id The phone number, SIP address, or Client identifier that made this call. Phone numbers are in [E.164 format](https://wwnw.twilio.com/docs/glossary/what-e164) (e.g., +16175551212). SIP addresses are formatted as `name@company.com`.
190
+ # @param [String] machine_detection_speech_threshold The number of milliseconds that is used as the measuring stick for the length of the speech activity, where durations lower than this value will be interpreted as a human and longer than this value as a machine. Possible Values: 1000-6000. Default: 2400.
191
+ # @param [String] machine_detection_speech_end_threshold The number of milliseconds of silence after speech activity at which point the speech activity is considered complete. Possible Values: 500-5000. Default: 1200.
192
+ # @param [String] machine_detection_silence_timeout The number of milliseconds of initial silence after which an `unknown` AnsweredBy result will be returned. Possible Values: 2000-10000. Default: 5000.
193
+ # @param [String] async_amd Select whether to perform answering machine detection in the background. Default, blocks the execution of the call until Answering Machine Detection is completed. Can be: `true` or `false`.
194
+ # @param [String] async_amd_status_callback The URL that we should call using the `async_amd_status_callback_method` to notify customer application whether the call was answered by human, machine or fax.
195
+ # @param [String] async_amd_status_callback_method The HTTP method we should use when calling the `async_amd_status_callback` URL. Can be: `GET` or `POST` and the default is `POST`.
196
+ # @param [String] byoc The SID of a BYOC (Bring Your Own Carrier) trunk to route this call with. Note that `byoc` is only meaningful when `to` is a phone number; it will otherwise be ignored. (Beta)
197
+ # @param [String] call_reason The Reason for the outgoing call. Use it to specify the purpose of the call that is presented on the called party's phone. (Branded Calls Beta)
198
+ # @param [String] call_token A token string needed to invoke a forwarded call. A call_token is generated when an incoming call is received on a Twilio number. Pass an incoming call's call_token value to a forwarded call via the call_token parameter when creating a new call. A forwarded call should bear the same CallerID of the original incoming call.
199
+ # @param [String] recording_track The audio track to record for the call. Can be: `inbound`, `outbound` or `both`. The default is `both`. `inbound` records the audio that is received by Twilio. `outbound` records the audio that is generated from Twilio. `both` records the audio that is received and generated by Twilio.
200
+ # @param [String] time_limit The maximum duration of the call in seconds. Constraints depend on account and configuration.
201
+ # @param [String] client_notification_url The URL that we should use to deliver `push call notification`.
202
+ # @param [String] url The absolute URL that returns the TwiML instructions for the call. We will call this URL using the `method` when the call connects. For more information, see the [Url Parameter](https://www.twilio.com/docs/voice/make-calls#specify-a-url-parameter) section in [Making Calls](https://www.twilio.com/docs/voice/make-calls).
203
+ # @param [String] twiml TwiML instructions for the call Twilio will use without fetching Twiml from url parameter. If both `twiml` and `url` are provided then `twiml` parameter will be ignored. Max 4000 characters.
204
+ # @param [String] application_sid The SID of the Application resource that will handle the call, if the call will be handled by an application.
205
+ # @return [CallInstance] Created CallInstance
206
+ def create_with_metadata(
207
+ to: nil,
208
+ from: nil,
209
+ method: :unset,
210
+ fallback_url: :unset,
211
+ fallback_method: :unset,
212
+ status_callback: :unset,
213
+ status_callback_event: :unset,
214
+ status_callback_method: :unset,
215
+ send_digits: :unset,
216
+ timeout: :unset,
217
+ record: :unset,
218
+ recording_channels: :unset,
219
+ recording_status_callback: :unset,
220
+ recording_status_callback_method: :unset,
221
+ sip_auth_username: :unset,
222
+ sip_auth_password: :unset,
223
+ machine_detection: :unset,
224
+ machine_detection_timeout: :unset,
225
+ recording_status_callback_event: :unset,
226
+ trim: :unset,
227
+ caller_id: :unset,
228
+ machine_detection_speech_threshold: :unset,
229
+ machine_detection_speech_end_threshold: :unset,
230
+ machine_detection_silence_timeout: :unset,
231
+ async_amd: :unset,
232
+ async_amd_status_callback: :unset,
233
+ async_amd_status_callback_method: :unset,
234
+ byoc: :unset,
235
+ call_reason: :unset,
236
+ call_token: :unset,
237
+ recording_track: :unset,
238
+ time_limit: :unset,
239
+ client_notification_url: :unset,
240
+ url: :unset,
241
+ twiml: :unset,
242
+ application_sid: :unset
243
+ )
244
+
245
+ data = Twilio::Values.of({
246
+ 'To' => to,
247
+ 'From' => from,
248
+ 'Method' => method,
249
+ 'FallbackUrl' => fallback_url,
250
+ 'FallbackMethod' => fallback_method,
251
+ 'StatusCallback' => status_callback,
252
+ 'StatusCallbackEvent' => Twilio.serialize_list(status_callback_event) { |e| e },
253
+ 'StatusCallbackMethod' => status_callback_method,
254
+ 'SendDigits' => send_digits,
255
+ 'Timeout' => timeout,
256
+ 'Record' => record,
257
+ 'RecordingChannels' => recording_channels,
258
+ 'RecordingStatusCallback' => recording_status_callback,
259
+ 'RecordingStatusCallbackMethod' => recording_status_callback_method,
260
+ 'SipAuthUsername' => sip_auth_username,
261
+ 'SipAuthPassword' => sip_auth_password,
262
+ 'MachineDetection' => machine_detection,
263
+ 'MachineDetectionTimeout' => machine_detection_timeout,
264
+ 'RecordingStatusCallbackEvent' => Twilio.serialize_list(recording_status_callback_event) { |e| e },
265
+ 'Trim' => trim,
266
+ 'CallerId' => caller_id,
267
+ 'MachineDetectionSpeechThreshold' => machine_detection_speech_threshold,
268
+ 'MachineDetectionSpeechEndThreshold' => machine_detection_speech_end_threshold,
269
+ 'MachineDetectionSilenceTimeout' => machine_detection_silence_timeout,
270
+ 'AsyncAmd' => async_amd,
271
+ 'AsyncAmdStatusCallback' => async_amd_status_callback,
272
+ 'AsyncAmdStatusCallbackMethod' => async_amd_status_callback_method,
273
+ 'Byoc' => byoc,
274
+ 'CallReason' => call_reason,
275
+ 'CallToken' => call_token,
276
+ 'RecordingTrack' => recording_track,
277
+ 'TimeLimit' => time_limit,
278
+ 'ClientNotificationUrl' => client_notification_url,
279
+ 'Url' => url,
280
+ 'Twiml' => twiml,
281
+ 'ApplicationSid' => application_sid,
282
+ })
283
+
284
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
285
+
286
+
287
+
288
+
289
+
290
+ response = @version.create_with_metadata('POST', @uri, data: data, headers: headers)
291
+ call_instance = CallInstance.new(
292
+ @version,
293
+ response.body,
294
+ account_sid: @solution[:account_sid],
295
+ )
296
+ CallInstanceMetadata.new(
297
+ @version,
298
+ call_instance,
299
+ response.headers,
300
+ response.status_code
301
+ )
302
+ end
303
+
304
+
305
+ ##
306
+ # Lists CallInstance records from the API as a list.
307
+ # Unlike stream(), this operation is eager and will load `limit` records into
308
+ # memory before returning.
309
+ # @param [String] to Only show calls made to this phone number, SIP address, Client identifier or SIM SID.
310
+ # @param [String] from Only include calls from this phone number, SIP address, Client identifier or SIM SID.
311
+ # @param [String] parent_call_sid Only include calls spawned by calls with this SID.
312
+ # @param [Status] status The status of the calls to include. Can be: `queued`, `ringing`, `in-progress`, `canceled`, `completed`, `failed`, `busy`, or `no-answer`.
313
+ # @param [Time] start_time Only include calls that started on this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that started on this date. You can also specify an inequality, such as `StartTime<=YYYY-MM-DD`, to read calls that started on or before midnight of this date, and `StartTime>=YYYY-MM-DD` to read calls that started on or after midnight of this date.
314
+ # @param [Time] start_time_before Only include calls that started before this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that started before this date.
315
+ # @param [Time] start_time_after Only include calls that started on or after this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that started on or after this date.
316
+ # @param [Time] end_time Only include calls that ended on this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that ended on this date. You can also specify an inequality, such as `EndTime<=YYYY-MM-DD`, to read calls that ended on or before midnight of this date, and `EndTime>=YYYY-MM-DD` to read calls that ended on or after midnight of this date.
317
+ # @param [Time] end_time_before Only include calls that ended before this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that ended before this date.
318
+ # @param [Time] end_time_after Only include calls that ended on or after this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that ended on or after this date.
319
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
320
+ # guarantees to never return more than limit. Default is no limit
321
+ # @param [Integer] page_size Number of records to fetch per request, when
322
+ # not set will use the default value of 50 records. If no page_size is defined
323
+ # but a limit is defined, stream() will attempt to read the limit with the most
324
+ # efficient page size, i.e. min(limit, 1000)
325
+ # @return [Array] Array of up to limit results
326
+ def list(to: :unset, from: :unset, parent_call_sid: :unset, status: :unset, start_time: :unset, start_time_before: :unset, start_time_after: :unset, end_time: :unset, end_time_before: :unset, end_time_after: :unset, limit: nil, page_size: nil)
327
+ self.stream(
328
+ to: to,
329
+ from: from,
330
+ parent_call_sid: parent_call_sid,
331
+ status: status,
332
+ start_time: start_time,
333
+ start_time_before: start_time_before,
334
+ start_time_after: start_time_after,
335
+ end_time: end_time,
336
+ end_time_before: end_time_before,
337
+ end_time_after: end_time_after,
338
+ limit: limit,
339
+ page_size: page_size
340
+ ).entries
341
+ end
342
+
343
+ ##
344
+ # Streams Instance records from the API as an Enumerable.
345
+ # This operation lazily loads records as efficiently as possible until the limit
346
+ # is reached.
347
+ # @param [String] to Only show calls made to this phone number, SIP address, Client identifier or SIM SID.
348
+ # @param [String] from Only include calls from this phone number, SIP address, Client identifier or SIM SID.
349
+ # @param [String] parent_call_sid Only include calls spawned by calls with this SID.
350
+ # @param [Status] status The status of the calls to include. Can be: `queued`, `ringing`, `in-progress`, `canceled`, `completed`, `failed`, `busy`, or `no-answer`.
351
+ # @param [Time] start_time Only include calls that started on this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that started on this date. You can also specify an inequality, such as `StartTime<=YYYY-MM-DD`, to read calls that started on or before midnight of this date, and `StartTime>=YYYY-MM-DD` to read calls that started on or after midnight of this date.
352
+ # @param [Time] start_time_before Only include calls that started before this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that started before this date.
353
+ # @param [Time] start_time_after Only include calls that started on or after this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that started on or after this date.
354
+ # @param [Time] end_time Only include calls that ended on this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that ended on this date. You can also specify an inequality, such as `EndTime<=YYYY-MM-DD`, to read calls that ended on or before midnight of this date, and `EndTime>=YYYY-MM-DD` to read calls that ended on or after midnight of this date.
355
+ # @param [Time] end_time_before Only include calls that ended before this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that ended before this date.
356
+ # @param [Time] end_time_after Only include calls that ended on or after this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that ended on or after this date.
357
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
358
+ # guarantees to never return more than limit. Default is no limit
359
+ # @param [Integer] page_size Number of records to fetch per request, when
360
+ # not set will use the default value of 50 records. If no page_size is defined
361
+ # but a limit is defined, stream() will attempt to read the limit with the most
362
+ # efficient page size, i.e. min(limit, 1000)
363
+ # @return [Enumerable] Enumerable that will yield up to limit results
364
+ def stream(to: :unset, from: :unset, parent_call_sid: :unset, status: :unset, start_time: :unset, start_time_before: :unset, start_time_after: :unset, end_time: :unset, end_time_before: :unset, end_time_after: :unset, limit: nil, page_size: nil)
365
+ limits = @version.read_limits(limit, page_size)
366
+
367
+ page = self.page(
368
+ to: to,
369
+ from: from,
370
+ parent_call_sid: parent_call_sid,
371
+ status: status,
372
+ start_time: start_time,
373
+ start_time_before: start_time_before,
374
+ start_time_after: start_time_after,
375
+ end_time: end_time,
376
+ end_time_before: end_time_before,
377
+ end_time_after: end_time_after,
378
+ page_size: limits[:page_size], )
379
+
380
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
381
+ end
382
+
383
+ ##
384
+ # Lists CallPageMetadata records from the API as a list.
385
+ # @param [String] to Only show calls made to this phone number, SIP address, Client identifier or SIM SID.
386
+ # @param [String] from Only include calls from this phone number, SIP address, Client identifier or SIM SID.
387
+ # @param [String] parent_call_sid Only include calls spawned by calls with this SID.
388
+ # @param [Status] status The status of the calls to include. Can be: `queued`, `ringing`, `in-progress`, `canceled`, `completed`, `failed`, `busy`, or `no-answer`.
389
+ # @param [Time] start_time Only include calls that started on this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that started on this date. You can also specify an inequality, such as `StartTime<=YYYY-MM-DD`, to read calls that started on or before midnight of this date, and `StartTime>=YYYY-MM-DD` to read calls that started on or after midnight of this date.
390
+ # @param [Time] start_time_before Only include calls that started before this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that started before this date.
391
+ # @param [Time] start_time_after Only include calls that started on or after this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that started on or after this date.
392
+ # @param [Time] end_time Only include calls that ended on this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that ended on this date. You can also specify an inequality, such as `EndTime<=YYYY-MM-DD`, to read calls that ended on or before midnight of this date, and `EndTime>=YYYY-MM-DD` to read calls that ended on or after midnight of this date.
393
+ # @param [Time] end_time_before Only include calls that ended before this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that ended before this date.
394
+ # @param [Time] end_time_after Only include calls that ended on or after this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that ended on or after this date.
395
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
396
+ # guarantees to never return more than limit. Default is no limit
397
+ # @param [Integer] page_size Number of records to fetch per request, when
398
+ # not set will use the default value of 50 records. If no page_size is defined
399
+ # but a limit is defined, stream() will attempt to read the limit with the most
400
+ # efficient page size, i.e. min(limit, 1000)
401
+ # @return [Array] Array of up to limit results
402
+ def list_with_metadata(to: :unset, from: :unset, parent_call_sid: :unset, status: :unset, start_time: :unset, start_time_before: :unset, start_time_after: :unset, end_time: :unset, end_time_before: :unset, end_time_after: :unset, limit: nil, page_size: nil)
403
+ limits = @version.read_limits(limit, page_size)
404
+ params = Twilio::Values.of({
405
+ 'To' => to,
406
+ 'From' => from,
407
+ 'ParentCallSid' => parent_call_sid,
408
+ 'Status' => status,
409
+ 'StartTime' => Twilio.serialize_iso8601_datetime(start_time),
410
+ 'StartTime<' => Twilio.serialize_iso8601_datetime(start_time_before),
411
+ 'StartTime>' => Twilio.serialize_iso8601_datetime(start_time_after),
412
+ 'EndTime' => Twilio.serialize_iso8601_datetime(end_time),
413
+ 'EndTime<' => Twilio.serialize_iso8601_datetime(end_time_before),
414
+ 'EndTime>' => Twilio.serialize_iso8601_datetime(end_time_after),
415
+
416
+ 'PageSize' => limits[:page_size],
417
+ });
418
+ headers = Twilio::Values.of({})
419
+
420
+ response = @version.page('GET', @uri, params: params, headers: headers)
421
+
422
+ CallPageMetadata.new(@version, response, @solution, limits[:limit])
423
+ end
424
+
425
+ ##
426
+ # When passed a block, yields CallInstance records from the API.
427
+ # This operation lazily loads records as efficiently as possible until the limit
428
+ # is reached.
429
+ def each
430
+ limits = @version.read_limits
431
+
432
+ page = self.page(page_size: limits[:page_size], )
433
+
434
+ @version.stream(page,
435
+ limit: limits[:limit],
436
+ page_limit: limits[:page_limit]).each {|x| yield x}
437
+ end
438
+
439
+ ##
440
+ # Retrieve a single page of CallInstance records from the API.
441
+ # Request is executed immediately.
442
+ # @param [String] to Only show calls made to this phone number, SIP address, Client identifier or SIM SID.
443
+ # @param [String] from Only include calls from this phone number, SIP address, Client identifier or SIM SID.
444
+ # @param [String] parent_call_sid Only include calls spawned by calls with this SID.
445
+ # @param [Status] status The status of the calls to include. Can be: `queued`, `ringing`, `in-progress`, `canceled`, `completed`, `failed`, `busy`, or `no-answer`.
446
+ # @param [Time] start_time Only include calls that started on this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that started on this date. You can also specify an inequality, such as `StartTime<=YYYY-MM-DD`, to read calls that started on or before midnight of this date, and `StartTime>=YYYY-MM-DD` to read calls that started on or after midnight of this date.
447
+ # @param [Time] start_time_before Only include calls that started before this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that started before this date.
448
+ # @param [Time] start_time_after Only include calls that started on or after this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that started on or after this date.
449
+ # @param [Time] end_time Only include calls that ended on this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that ended on this date. You can also specify an inequality, such as `EndTime<=YYYY-MM-DD`, to read calls that ended on or before midnight of this date, and `EndTime>=YYYY-MM-DD` to read calls that ended on or after midnight of this date.
450
+ # @param [Time] end_time_before Only include calls that ended before this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that ended before this date.
451
+ # @param [Time] end_time_after Only include calls that ended on or after this date. Specify a date as `YYYY-MM-DD` in UTC, for example: `2009-07-06`, to read only calls that ended on or after this date.
452
+ # @param [String] page_token PageToken provided by the API
453
+ # @param [Integer] page_number Page Number, this value is simply for client state
454
+ # @param [Integer] page_size Number of records to return, defaults to 50
455
+ # @return [Page] Page of CallInstance
456
+ def page(to: :unset, from: :unset, parent_call_sid: :unset, status: :unset, start_time: :unset, start_time_before: :unset, start_time_after: :unset, end_time: :unset, end_time_before: :unset, end_time_after: :unset, page_token: :unset, page_number: :unset,page_size: :unset)
457
+ params = Twilio::Values.of({
458
+ 'To' => to,
459
+ 'From' => from,
460
+ 'ParentCallSid' => parent_call_sid,
461
+ 'Status' => status,
462
+ 'StartTime' => Twilio.serialize_iso8601_datetime(start_time),
463
+ 'StartTime<' => Twilio.serialize_iso8601_datetime(start_time_before),
464
+ 'StartTime>' => Twilio.serialize_iso8601_datetime(start_time_after),
465
+ 'EndTime' => Twilio.serialize_iso8601_datetime(end_time),
466
+ 'EndTime<' => Twilio.serialize_iso8601_datetime(end_time_before),
467
+ 'EndTime>' => Twilio.serialize_iso8601_datetime(end_time_after),
468
+ 'PageToken' => page_token,
469
+ 'Page' => page_number,
470
+ 'PageSize' => page_size,
471
+ })
472
+ headers = Twilio::Values.of({})
473
+
474
+
475
+
476
+ response = @version.page('GET', @uri, params: params, headers: headers)
477
+
478
+ CallPage.new(@version, response, @solution)
479
+ end
480
+
481
+ ##
482
+ # Retrieve a single page of CallInstance records from the API.
483
+ # Request is executed immediately.
484
+ # @param [String] target_url API-generated URL for the requested results page
485
+ # @return [Page] Page of CallInstance
486
+ def get_page(target_url)
487
+ response = @version.domain.request(
488
+ 'GET',
489
+ target_url
490
+ )
491
+ CallPage.new(@version, response, @solution)
492
+ end
493
+
494
+
495
+
496
+ # Provide a user friendly representation
497
+ def to_s
498
+ '#<Twilio.Api.V2010.CallList>'
499
+ end
500
+ end
501
+
502
+
503
+ class CallContext < InstanceContext
504
+ ##
505
+ # Initialize the CallContext
506
+ # @param [Version] version Version that contains the resource
507
+ # @param [String] account_sid The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Call resource(s) to update.
508
+ # @param [String] sid The Twilio-provided string that uniquely identifies the Call resource to update
509
+ # @return [CallContext] CallContext
510
+ def initialize(version, account_sid, sid)
511
+ super(version)
512
+
513
+
514
+ # Path Solution
515
+ @solution = { account_sid: account_sid, sid: sid, }
516
+ @uri = "/Accounts/#{@solution[:account_sid]}/Calls/#{@solution[:sid]}.json"
517
+
518
+ # Dependents
519
+ @events = nil
520
+ @user_defined_messages = nil
521
+ @transcriptions = nil
522
+ @siprec = nil
523
+ @user_defined_message_subscriptions = nil
524
+ @payments = nil
525
+ @recordings = nil
526
+ @notifications = nil
527
+ @streams = nil
528
+ end
529
+ ##
530
+ # Delete the CallInstance
531
+ # @return [Boolean] True if delete succeeds, false otherwise
532
+ def delete
533
+
534
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
535
+
536
+
537
+
538
+
539
+ @version.delete('DELETE', @uri, headers: headers)
540
+ end
541
+
542
+ ##
543
+ # Delete the CallInstanceMetadata
544
+ # @return [Boolean] True if delete succeeds, false otherwise
545
+ def delete_with_metadata
546
+
547
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
548
+
549
+
550
+
551
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
552
+ call_instance = CallInstance.new(
553
+ @version,
554
+ response.body,
555
+ account_sid: @solution[:account_sid],
556
+ sid: @solution[:sid],
557
+ )
558
+ CallInstanceMetadata.new(@version, call_instance, response.headers, response.status_code)
559
+ end
560
+
561
+ ##
562
+ # Fetch the CallInstance
563
+ # @return [CallInstance] Fetched CallInstance
564
+ def fetch
565
+
566
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
567
+
568
+
569
+
570
+
571
+
572
+ payload = @version.fetch('GET', @uri, headers: headers)
573
+ CallInstance.new(
574
+ @version,
575
+ payload,
576
+ account_sid: @solution[:account_sid],
577
+ sid: @solution[:sid],
578
+ )
579
+ end
580
+
581
+ ##
582
+ # Fetch the CallInstanceMetadata
583
+ # @return [CallInstance] Fetched CallInstance
584
+ def fetch_with_metadata
585
+
586
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
587
+
588
+
589
+
590
+
591
+
592
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
593
+ call_instance = CallInstance.new(
594
+ @version,
595
+ response.body,
596
+ account_sid: @solution[:account_sid],
597
+ sid: @solution[:sid],
598
+ )
599
+ CallInstanceMetadata.new(
600
+ @version,
601
+ call_instance,
602
+ response.headers,
603
+ response.status_code
604
+ )
605
+ end
606
+
607
+ ##
608
+ # Update the CallInstance
609
+ # @param [String] url The absolute URL that returns the TwiML instructions for the call. We will call this URL using the `method` when the call connects. For more information, see the [Url Parameter](https://www.twilio.com/docs/voice/make-calls#specify-a-url-parameter) section in [Making Calls](https://www.twilio.com/docs/voice/make-calls).
610
+ # @param [String] method The HTTP method we should use when calling the `url`. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
611
+ # @param [UpdateStatus] status
612
+ # @param [String] fallback_url The URL that we call using the `fallback_method` if an error occurs when requesting or executing the TwiML at `url`. If an `application_sid` parameter is present, this parameter is ignored.
613
+ # @param [String] fallback_method The HTTP method that we should use to request the `fallback_url`. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
614
+ # @param [String] status_callback The URL we should call using the `status_callback_method` to send status information to your application. If no `status_callback_event` is specified, we will send the `completed` status. If an `application_sid` parameter is present, this parameter is ignored. URLs must contain a valid hostname (underscores are not permitted).
615
+ # @param [String] status_callback_method The HTTP method we should use when requesting the `status_callback` URL. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
616
+ # @param [String] twiml TwiML instructions for the call Twilio will use without fetching Twiml from url. Twiml and url parameters are mutually exclusive
617
+ # @param [String] time_limit The maximum duration of the call in seconds. Constraints depend on account and configuration.
618
+ # @return [CallInstance] Updated CallInstance
619
+ def update(
620
+ url: :unset,
621
+ method: :unset,
622
+ status: :unset,
623
+ fallback_url: :unset,
624
+ fallback_method: :unset,
625
+ status_callback: :unset,
626
+ status_callback_method: :unset,
627
+ twiml: :unset,
628
+ time_limit: :unset
629
+ )
630
+
631
+ data = Twilio::Values.of({
632
+ 'Url' => url,
633
+ 'Method' => method,
634
+ 'Status' => status,
635
+ 'FallbackUrl' => fallback_url,
636
+ 'FallbackMethod' => fallback_method,
637
+ 'StatusCallback' => status_callback,
638
+ 'StatusCallbackMethod' => status_callback_method,
639
+ 'Twiml' => twiml,
640
+ 'TimeLimit' => time_limit,
641
+ })
642
+
643
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
644
+
645
+
646
+
647
+
648
+
649
+ payload = @version.update('POST', @uri, data: data, headers: headers)
650
+ CallInstance.new(
651
+ @version,
652
+ payload,
653
+ account_sid: @solution[:account_sid],
654
+ sid: @solution[:sid],
655
+ )
656
+ end
657
+
658
+ ##
659
+ # Update the CallInstanceMetadata
660
+ # @param [String] url The absolute URL that returns the TwiML instructions for the call. We will call this URL using the `method` when the call connects. For more information, see the [Url Parameter](https://www.twilio.com/docs/voice/make-calls#specify-a-url-parameter) section in [Making Calls](https://www.twilio.com/docs/voice/make-calls).
661
+ # @param [String] method The HTTP method we should use when calling the `url`. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
662
+ # @param [UpdateStatus] status
663
+ # @param [String] fallback_url The URL that we call using the `fallback_method` if an error occurs when requesting or executing the TwiML at `url`. If an `application_sid` parameter is present, this parameter is ignored.
664
+ # @param [String] fallback_method The HTTP method that we should use to request the `fallback_url`. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
665
+ # @param [String] status_callback The URL we should call using the `status_callback_method` to send status information to your application. If no `status_callback_event` is specified, we will send the `completed` status. If an `application_sid` parameter is present, this parameter is ignored. URLs must contain a valid hostname (underscores are not permitted).
666
+ # @param [String] status_callback_method The HTTP method we should use when requesting the `status_callback` URL. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
667
+ # @param [String] twiml TwiML instructions for the call Twilio will use without fetching Twiml from url. Twiml and url parameters are mutually exclusive
668
+ # @param [String] time_limit The maximum duration of the call in seconds. Constraints depend on account and configuration.
669
+ # @return [CallInstance] Updated CallInstance
670
+ def update_with_metadata(
671
+ url: :unset,
672
+ method: :unset,
673
+ status: :unset,
674
+ fallback_url: :unset,
675
+ fallback_method: :unset,
676
+ status_callback: :unset,
677
+ status_callback_method: :unset,
678
+ twiml: :unset,
679
+ time_limit: :unset
680
+ )
681
+
682
+ data = Twilio::Values.of({
683
+ 'Url' => url,
684
+ 'Method' => method,
685
+ 'Status' => status,
686
+ 'FallbackUrl' => fallback_url,
687
+ 'FallbackMethod' => fallback_method,
688
+ 'StatusCallback' => status_callback,
689
+ 'StatusCallbackMethod' => status_callback_method,
690
+ 'Twiml' => twiml,
691
+ 'TimeLimit' => time_limit,
692
+ })
693
+
694
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
695
+
696
+
697
+
698
+
699
+
700
+ response = @version.update_with_metadata('POST', @uri, data: data, headers: headers)
701
+ call_instance = CallInstance.new(
702
+ @version,
703
+ response.body,
704
+ account_sid: @solution[:account_sid],
705
+ sid: @solution[:sid],
706
+ )
707
+ CallInstanceMetadata.new(
708
+ @version,
709
+ call_instance,
710
+ response.headers,
711
+ response.status_code
712
+ )
713
+ end
714
+
715
+ ##
716
+ # Access the events
717
+ # @return [EventList]
718
+ # @return [EventContext]
719
+ def events
720
+ unless @events
721
+ @events = EventList.new(
722
+ @version, account_sid: @solution[:account_sid], call_sid: @solution[:sid], )
723
+ end
724
+ @events
725
+ end
726
+ ##
727
+ # Access the user_defined_messages
728
+ # @return [UserDefinedMessageList]
729
+ # @return [UserDefinedMessageContext]
730
+ def user_defined_messages
731
+ unless @user_defined_messages
732
+ @user_defined_messages = UserDefinedMessageList.new(
733
+ @version, account_sid: @solution[:account_sid], call_sid: @solution[:sid], )
734
+ end
735
+ @user_defined_messages
736
+ end
737
+ ##
738
+ # Access the transcriptions
739
+ # @return [TranscriptionList]
740
+ # @return [TranscriptionContext] if sid was passed.
741
+ def transcriptions(sid=:unset)
742
+
743
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
744
+
745
+ if sid != :unset
746
+ return TranscriptionContext.new(@version, @solution[:account_sid], @solution[:sid],sid )
747
+ end
748
+
749
+ unless @transcriptions
750
+ @transcriptions = TranscriptionList.new(
751
+ @version, account_sid: @solution[:account_sid], call_sid: @solution[:sid], )
752
+ end
753
+
754
+ @transcriptions
755
+ end
756
+ ##
757
+ # Access the siprec
758
+ # @return [SiprecList]
759
+ # @return [SiprecContext] if sid was passed.
760
+ def siprec(sid=:unset)
761
+
762
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
763
+
764
+ if sid != :unset
765
+ return SiprecContext.new(@version, @solution[:account_sid], @solution[:sid],sid )
766
+ end
767
+
768
+ unless @siprec
769
+ @siprec = SiprecList.new(
770
+ @version, account_sid: @solution[:account_sid], call_sid: @solution[:sid], )
771
+ end
772
+
773
+ @siprec
774
+ end
775
+ ##
776
+ # Access the user_defined_message_subscriptions
777
+ # @return [UserDefinedMessageSubscriptionList]
778
+ # @return [UserDefinedMessageSubscriptionContext] if sid was passed.
779
+ def user_defined_message_subscriptions(sid=:unset)
780
+
781
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
782
+
783
+ if sid != :unset
784
+ return UserDefinedMessageSubscriptionContext.new(@version, @solution[:account_sid], @solution[:sid],sid )
785
+ end
786
+
787
+ unless @user_defined_message_subscriptions
788
+ @user_defined_message_subscriptions = UserDefinedMessageSubscriptionList.new(
789
+ @version, account_sid: @solution[:account_sid], call_sid: @solution[:sid], )
790
+ end
791
+
792
+ @user_defined_message_subscriptions
793
+ end
794
+ ##
795
+ # Access the payments
796
+ # @return [PaymentList]
797
+ # @return [PaymentContext] if sid was passed.
798
+ def payments(sid=:unset)
799
+
800
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
801
+
802
+ if sid != :unset
803
+ return PaymentContext.new(@version, @solution[:account_sid], @solution[:sid],sid )
804
+ end
805
+
806
+ unless @payments
807
+ @payments = PaymentList.new(
808
+ @version, account_sid: @solution[:account_sid], call_sid: @solution[:sid], )
809
+ end
810
+
811
+ @payments
812
+ end
813
+ ##
814
+ # Access the recordings
815
+ # @return [RecordingList]
816
+ # @return [RecordingContext] if sid was passed.
817
+ def recordings(sid=:unset)
818
+
819
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
820
+
821
+ if sid != :unset
822
+ return RecordingContext.new(@version, @solution[:account_sid], @solution[:sid],sid )
823
+ end
824
+
825
+ unless @recordings
826
+ @recordings = RecordingList.new(
827
+ @version, account_sid: @solution[:account_sid], call_sid: @solution[:sid], )
828
+ end
829
+
830
+ @recordings
831
+ end
832
+ ##
833
+ # Access the notifications
834
+ # @return [NotificationList]
835
+ # @return [NotificationContext] if sid was passed.
836
+ def notifications(sid=:unset)
837
+
838
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
839
+
840
+ if sid != :unset
841
+ return NotificationContext.new(@version, @solution[:account_sid], @solution[:sid],sid )
842
+ end
843
+
844
+ unless @notifications
845
+ @notifications = NotificationList.new(
846
+ @version, account_sid: @solution[:account_sid], call_sid: @solution[:sid], )
847
+ end
848
+
849
+ @notifications
850
+ end
851
+ ##
852
+ # Access the streams
853
+ # @return [StreamList]
854
+ # @return [StreamContext] if sid was passed.
855
+ def streams(sid=:unset)
856
+
857
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
858
+
859
+ if sid != :unset
860
+ return StreamContext.new(@version, @solution[:account_sid], @solution[:sid],sid )
861
+ end
862
+
863
+ unless @streams
864
+ @streams = StreamList.new(
865
+ @version, account_sid: @solution[:account_sid], call_sid: @solution[:sid], )
866
+ end
867
+
868
+ @streams
869
+ end
870
+
871
+ ##
872
+ # Provide a user friendly representation
873
+ def to_s
874
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
875
+ "#<Twilio.Api.V2010.CallContext #{context}>"
876
+ end
877
+
878
+ ##
879
+ # Provide a detailed, user friendly representation
880
+ def inspect
881
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
882
+ "#<Twilio.Api.V2010.CallContext #{context}>"
883
+ end
884
+ end
885
+
886
+ class CallInstanceMetadata < InstanceResourceMetadata
887
+ ##
888
+ # Initializes a new CallInstanceMetadata.
889
+ # @param [Version] version Version that contains the resource
890
+ # @param [}CallInstance] call_instance The instance associated with the metadata.
891
+ # @param [Hash] headers Header object with response headers.
892
+ # @param [Integer] status_code The HTTP status code of the response.
893
+ # @return [CallInstanceMetadata] The initialized instance with metadata.
894
+ def initialize(version, call_instance, headers, status_code)
895
+ super(version, headers, status_code)
896
+ @call_instance = call_instance
897
+ end
898
+
899
+ def call
900
+ @call_instance
901
+ end
902
+
903
+ def headers
904
+ @headers
905
+ end
906
+
907
+ def status_code
908
+ @status_code
909
+ end
910
+
911
+ def to_s
912
+ "<Twilio.Api.V2010.CallInstanceMetadata status=#{@status_code}>"
913
+ end
914
+ end
915
+
916
+ class CallListResponse < InstanceListResource
917
+ # @param [Array<CallInstance>] instance
918
+ # @param [Hash{String => Object}] headers
919
+ # @param [Integer] status_code
920
+ def initialize(version, payload, key)
921
+ @call_instance = payload.body[key].map do |data|
922
+ CallInstance.new(version, data)
923
+ end
924
+ @headers = payload.headers
925
+ @status_code = payload.status_code
926
+ end
927
+
928
+ def call_instance
929
+ @instance
930
+ end
931
+ end
932
+
933
+ class CallPage < Page
934
+ ##
935
+ # Initialize the CallPage
936
+ # @param [Version] version Version that contains the resource
937
+ # @param [Response] response Response from the API
938
+ # @param [Hash] solution Path solution for the resource
939
+ # @return [CallPage] CallPage
940
+ def initialize(version, response, solution)
941
+ super(version, response)
942
+
943
+
944
+ # Path Solution
945
+ @solution = solution
946
+ end
947
+
948
+ ##
949
+ # Build an instance of CallInstance
950
+ # @param [Hash] payload Payload response from the API
951
+ # @return [CallInstance] CallInstance
952
+ def get_instance(payload)
953
+ CallInstance.new(@version, payload, account_sid: @solution[:account_sid])
954
+ end
955
+
956
+ ##
957
+ # Provide a user friendly representation
958
+ def to_s
959
+ '<Twilio.Api.V2010.CallPage>'
960
+ end
961
+ end
962
+
963
+ class CallPageMetadata < PageMetadata
964
+ attr_reader :call_page
965
+
966
+ def initialize(version, response, solution, limit)
967
+ super(version, response)
968
+ @call_page = []
969
+ @limit = limit
970
+ key = get_key(response.body)
971
+ records = 0
972
+ while( limit != :unset && records < limit )
973
+ @call_page << CallListResponse.new(version, @payload, key, limit - records)
974
+ @payload = self.next_page
975
+ break unless @payload
976
+ records += @payload.body[key].size
977
+ end
978
+ # Path Solution
979
+ @solution = solution
980
+ end
981
+
982
+ def each
983
+ @call_page.each do |record|
984
+ yield record
985
+ end
986
+ end
987
+
988
+ def to_s
989
+ '<Twilio::REST::Api::V2010PageMetadata>';
990
+ end
991
+ end
992
+ class CallListResponse < InstanceListResource
993
+
994
+ # @param [Array<CallInstance>] instance
995
+ # @param [Hash{String => Object}] headers
996
+ # @param [Integer] status_code
997
+ def initialize(version, payload, key, limit = :unset)
998
+ data_list = payload.body[key]
999
+ if limit != :unset
1000
+ data_list = data_list[0, limit]
1001
+ end
1002
+ @call = data_list.map do |data|
1003
+ CallInstance.new(version, data)
1004
+ end
1005
+ @headers = payload.headers
1006
+ @status_code = payload.status_code
1007
+ end
1008
+
1009
+ def call
1010
+ @call
1011
+ end
1012
+
1013
+ def headers
1014
+ @headers
1015
+ end
1016
+
1017
+ def status_code
1018
+ @status_code
1019
+ end
1020
+ end
1021
+
1022
+ class CallInstance < InstanceResource
1023
+ ##
1024
+ # Initialize the CallInstance
1025
+ # @param [Version] version Version that contains the resource
1026
+ # @param [Hash] payload payload that contains response from Twilio
1027
+ # @param [String] account_sid The SID of the
1028
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Call
1029
+ # resource.
1030
+ # @param [String] sid The SID of the Call resource to fetch.
1031
+ # @return [CallInstance] CallInstance
1032
+ def initialize(version, payload , account_sid: nil, sid: nil)
1033
+ super(version)
1034
+
1035
+
1036
+ # Marshaled Properties
1037
+ @properties = {
1038
+ 'sid' => payload['sid'],
1039
+ 'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
1040
+ 'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
1041
+ 'parent_call_sid' => payload['parent_call_sid'],
1042
+ 'account_sid' => payload['account_sid'],
1043
+ 'to' => payload['to'],
1044
+ 'to_formatted' => payload['to_formatted'],
1045
+ 'from' => payload['from'],
1046
+ 'from_formatted' => payload['from_formatted'],
1047
+ 'phone_number_sid' => payload['phone_number_sid'],
1048
+ 'status' => payload['status'],
1049
+ 'start_time' => Twilio.deserialize_rfc2822(payload['start_time']),
1050
+ 'end_time' => Twilio.deserialize_rfc2822(payload['end_time']),
1051
+ 'duration' => payload['duration'],
1052
+ 'price' => payload['price'],
1053
+ 'price_unit' => payload['price_unit'],
1054
+ 'direction' => payload['direction'],
1055
+ 'answered_by' => payload['answered_by'],
1056
+ 'api_version' => payload['api_version'],
1057
+ 'forwarded_from' => payload['forwarded_from'],
1058
+ 'group_sid' => payload['group_sid'],
1059
+ 'caller_name' => payload['caller_name'],
1060
+ 'queue_time' => payload['queue_time'],
1061
+ 'trunk_sid' => payload['trunk_sid'],
1062
+ 'uri' => payload['uri'],
1063
+ 'subresource_uris' => payload['subresource_uris'],
1064
+ }
1065
+
1066
+ # Context
1067
+ @instance_context = nil
1068
+ @params = { 'account_sid' => account_sid ,'sid' => sid || @properties['sid'] , }
1069
+ end
1070
+
1071
+ ##
1072
+ # Generate an instance context for the instance, the context is capable of
1073
+ # performing various actions. All instance actions are proxied to the context
1074
+ # @return [CallContext] CallContext for this CallInstance
1075
+ def context
1076
+ unless @instance_context
1077
+ @instance_context = CallContext.new(@version , @params['account_sid'], @params['sid'])
1078
+ end
1079
+ @instance_context
1080
+ end
1081
+
1082
+ ##
1083
+ # @return [String] The unique string that we created to identify this Call resource.
1084
+ def sid
1085
+ @properties['sid']
1086
+ end
1087
+
1088
+ ##
1089
+ # @return [Time] The date and time in UTC that this resource was created specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
1090
+ def date_created
1091
+ @properties['date_created']
1092
+ end
1093
+
1094
+ ##
1095
+ # @return [Time] The date and time in UTC that this resource was last updated, specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
1096
+ def date_updated
1097
+ @properties['date_updated']
1098
+ end
1099
+
1100
+ ##
1101
+ # @return [String] The SID that identifies the call that created this leg.
1102
+ def parent_call_sid
1103
+ @properties['parent_call_sid']
1104
+ end
1105
+
1106
+ ##
1107
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created this Call resource.
1108
+ def account_sid
1109
+ @properties['account_sid']
1110
+ end
1111
+
1112
+ ##
1113
+ # @return [String] The phone number, SIP address, Client identifier or SIM SID that received this call. Phone numbers are in [E.164](https://www.twilio.com/docs/glossary/what-e164) format (e.g., +16175551212). SIP addresses are formatted as `name@company.com`. Client identifiers are formatted `client:name`. SIM SIDs are formatted as `sim:sid`.
1114
+ def to
1115
+ @properties['to']
1116
+ end
1117
+
1118
+ ##
1119
+ # @return [String] The phone number, SIP address or Client identifier that received this call. Formatted for display. Non-North American phone numbers are in [E.164](https://www.twilio.com/docs/glossary/what-e164) format (e.g., +442071838750).
1120
+ def to_formatted
1121
+ @properties['to_formatted']
1122
+ end
1123
+
1124
+ ##
1125
+ # @return [String] The phone number, SIP address, Client identifier or SIM SID that made this call. Phone numbers are in [E.164](https://www.twilio.com/docs/glossary/what-e164) format (e.g., +16175551212). SIP addresses are formatted as `name@company.com`. Client identifiers are formatted `client:name`. SIM SIDs are formatted as `sim:sid`.
1126
+ def from
1127
+ @properties['from']
1128
+ end
1129
+
1130
+ ##
1131
+ # @return [String] The calling phone number, SIP address, or Client identifier formatted for display. Non-North American phone numbers are in [E.164](https://www.twilio.com/docs/glossary/what-e164) format (e.g., +442071838750).
1132
+ def from_formatted
1133
+ @properties['from_formatted']
1134
+ end
1135
+
1136
+ ##
1137
+ # @return [String] If the call was inbound, this is the SID of the IncomingPhoneNumber resource that received the call. If the call was outbound, it is the SID of the OutgoingCallerId resource from which the call was placed.
1138
+ def phone_number_sid
1139
+ @properties['phone_number_sid']
1140
+ end
1141
+
1142
+ ##
1143
+ # @return [Status]
1144
+ def status
1145
+ @properties['status']
1146
+ end
1147
+
1148
+ ##
1149
+ # @return [Time] The start time of the call, given as UTC in [RFC 2822](https://www.php.net/manual/en/class.datetime.php#datetime.constants.rfc2822) format. Empty if the call has not yet been dialed.
1150
+ def start_time
1151
+ @properties['start_time']
1152
+ end
1153
+
1154
+ ##
1155
+ # @return [Time] The time the call ended, given as UTC in [RFC 2822](https://www.php.net/manual/en/class.datetime.php#datetime.constants.rfc2822) format. Empty if the call did not complete successfully.
1156
+ def end_time
1157
+ @properties['end_time']
1158
+ end
1159
+
1160
+ ##
1161
+ # @return [String] The length of the call in seconds. This value is empty for busy, failed, unanswered, or ongoing calls.
1162
+ def duration
1163
+ @properties['duration']
1164
+ end
1165
+
1166
+ ##
1167
+ # @return [String] The charge for this call, in the currency associated with the account. Populated after the call is completed. May not be immediately available. The price associated with a call only reflects the charge for connectivity. Charges for other call-related features such as Answering Machine Detection, Text-To-Speech, and SIP REFER are not included in this value.
1168
+ def price
1169
+ @properties['price']
1170
+ end
1171
+
1172
+ ##
1173
+ # @return [String] The currency in which `Price` is measured, in [ISO 4127](https://www.iso.org/iso/home/standards/currency_codes.htm) format (e.g., `USD`, `EUR`, `JPY`). Always capitalized for calls.
1174
+ def price_unit
1175
+ @properties['price_unit']
1176
+ end
1177
+
1178
+ ##
1179
+ # @return [String] A string describing the direction of the call. Can be: `inbound` for inbound calls, `outbound-api` for calls initiated via the REST API or `outbound-dial` for calls initiated by a `<Dial>` verb. Using [Elastic SIP Trunking](https://www.twilio.com/docs/sip-trunking), the values can be [`trunking-terminating`](https://www.twilio.com/docs/sip-trunking#termination) for outgoing calls from your communications infrastructure to the PSTN or [`trunking-originating`](https://www.twilio.com/docs/sip-trunking#origination) for incoming calls to your communications infrastructure from the PSTN.
1180
+ def direction
1181
+ @properties['direction']
1182
+ end
1183
+
1184
+ ##
1185
+ # @return [String] Either `human` or `machine` if this call was initiated with answering machine detection. Empty otherwise.
1186
+ def answered_by
1187
+ @properties['answered_by']
1188
+ end
1189
+
1190
+ ##
1191
+ # @return [String] The API version used to create the call.
1192
+ def api_version
1193
+ @properties['api_version']
1194
+ end
1195
+
1196
+ ##
1197
+ # @return [String] The forwarding phone number if this call was an incoming call forwarded from another number (depends on carrier supporting forwarding). Otherwise, empty.
1198
+ def forwarded_from
1199
+ @properties['forwarded_from']
1200
+ end
1201
+
1202
+ ##
1203
+ # @return [String] The Group SID associated with this call. If no Group is associated with the call, the field is empty.
1204
+ def group_sid
1205
+ @properties['group_sid']
1206
+ end
1207
+
1208
+ ##
1209
+ # @return [String] The caller's name if this call was an incoming call to a phone number with caller ID Lookup enabled. Otherwise, empty.
1210
+ def caller_name
1211
+ @properties['caller_name']
1212
+ end
1213
+
1214
+ ##
1215
+ # @return [String] The wait time in milliseconds before the call is placed.
1216
+ def queue_time
1217
+ @properties['queue_time']
1218
+ end
1219
+
1220
+ ##
1221
+ # @return [String] The unique identifier of the trunk resource that was used for this call. The field is empty if the call was not made using a SIP trunk or if the call is not terminated.
1222
+ def trunk_sid
1223
+ @properties['trunk_sid']
1224
+ end
1225
+
1226
+ ##
1227
+ # @return [String] The URI of this resource, relative to `https://api.twilio.com`.
1228
+ def uri
1229
+ @properties['uri']
1230
+ end
1231
+
1232
+ ##
1233
+ # @return [Hash] A list of subresources available to this call, identified by their URIs relative to `https://api.twilio.com`.
1234
+ def subresource_uris
1235
+ @properties['subresource_uris']
1236
+ end
1237
+
1238
+ ##
1239
+ # Delete the CallInstance
1240
+ # @return [Boolean] True if delete succeeds, false otherwise
1241
+ def delete
1242
+
1243
+ context.delete
1244
+ end
1245
+
1246
+ ##
1247
+ # Fetch the CallInstance
1248
+ # @return [CallInstance] Fetched CallInstance
1249
+ def fetch
1250
+
1251
+ context.fetch
1252
+ end
1253
+
1254
+ ##
1255
+ # Update the CallInstance
1256
+ # @param [String] url The absolute URL that returns the TwiML instructions for the call. We will call this URL using the `method` when the call connects. For more information, see the [Url Parameter](https://www.twilio.com/docs/voice/make-calls#specify-a-url-parameter) section in [Making Calls](https://www.twilio.com/docs/voice/make-calls).
1257
+ # @param [String] method The HTTP method we should use when calling the `url`. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
1258
+ # @param [UpdateStatus] status
1259
+ # @param [String] fallback_url The URL that we call using the `fallback_method` if an error occurs when requesting or executing the TwiML at `url`. If an `application_sid` parameter is present, this parameter is ignored.
1260
+ # @param [String] fallback_method The HTTP method that we should use to request the `fallback_url`. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
1261
+ # @param [String] status_callback The URL we should call using the `status_callback_method` to send status information to your application. If no `status_callback_event` is specified, we will send the `completed` status. If an `application_sid` parameter is present, this parameter is ignored. URLs must contain a valid hostname (underscores are not permitted).
1262
+ # @param [String] status_callback_method The HTTP method we should use when requesting the `status_callback` URL. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
1263
+ # @param [String] twiml TwiML instructions for the call Twilio will use without fetching Twiml from url. Twiml and url parameters are mutually exclusive
1264
+ # @param [String] time_limit The maximum duration of the call in seconds. Constraints depend on account and configuration.
1265
+ # @return [CallInstance] Updated CallInstance
1266
+ def update(
1267
+ url: :unset,
1268
+ method: :unset,
1269
+ status: :unset,
1270
+ fallback_url: :unset,
1271
+ fallback_method: :unset,
1272
+ status_callback: :unset,
1273
+ status_callback_method: :unset,
1274
+ twiml: :unset,
1275
+ time_limit: :unset
1276
+ )
1277
+
1278
+ context.update(
1279
+ url: url,
1280
+ method: method,
1281
+ status: status,
1282
+ fallback_url: fallback_url,
1283
+ fallback_method: fallback_method,
1284
+ status_callback: status_callback,
1285
+ status_callback_method: status_callback_method,
1286
+ twiml: twiml,
1287
+ time_limit: time_limit,
1288
+ )
1289
+ end
1290
+
1291
+ ##
1292
+ # Access the events
1293
+ # @return [events] events
1294
+ def events
1295
+ context.events
1296
+ end
1297
+
1298
+ ##
1299
+ # Access the user_defined_messages
1300
+ # @return [user_defined_messages] user_defined_messages
1301
+ def user_defined_messages
1302
+ context.user_defined_messages
1303
+ end
1304
+
1305
+ ##
1306
+ # Access the transcriptions
1307
+ # @return [transcriptions] transcriptions
1308
+ def transcriptions
1309
+ context.transcriptions
1310
+ end
1311
+
1312
+ ##
1313
+ # Access the siprec
1314
+ # @return [siprec] siprec
1315
+ def siprec
1316
+ context.siprec
1317
+ end
1318
+
1319
+ ##
1320
+ # Access the user_defined_message_subscriptions
1321
+ # @return [user_defined_message_subscriptions] user_defined_message_subscriptions
1322
+ def user_defined_message_subscriptions
1323
+ context.user_defined_message_subscriptions
1324
+ end
1325
+
1326
+ ##
1327
+ # Access the payments
1328
+ # @return [payments] payments
1329
+ def payments
1330
+ context.payments
1331
+ end
1332
+
1333
+ ##
1334
+ # Access the recordings
1335
+ # @return [recordings] recordings
1336
+ def recordings
1337
+ context.recordings
1338
+ end
1339
+
1340
+ ##
1341
+ # Access the notifications
1342
+ # @return [notifications] notifications
1343
+ def notifications
1344
+ context.notifications
1345
+ end
1346
+
1347
+ ##
1348
+ # Access the streams
1349
+ # @return [streams] streams
1350
+ def streams
1351
+ context.streams
1352
+ end
1353
+
1354
+ ##
1355
+ # Provide a user friendly representation
1356
+ def to_s
1357
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
1358
+ "<Twilio.Api.V2010.CallInstance #{values}>"
1359
+ end
1360
+
1361
+ ##
1362
+ # Provide a detailed, user friendly representation
1363
+ def inspect
1364
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
1365
+ "<Twilio.Api.V2010.CallInstance #{values}>"
1366
+ end
1367
+ end
1368
+
1369
+ end
932
1370
  end
933
- end
934
1371
  end
935
- end
936
1372
  end
937
- end
938
- end
1373
+ end
1374
+
1375
+