twilio-ruby 5.72.0 → 6.0.2

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