twilio-ruby 4.6.1 → 6.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (834) hide show
  1. checksums.yaml +4 -4
  2. data/.dockerignore +1 -0
  3. data/.github/workflows/pr-lint.yml +21 -0
  4. data/.github/workflows/test-and-deploy.yml +139 -0
  5. data/.gitignore +14 -1
  6. data/.rubocop.yml +59 -0
  7. data/.rubocop_todo.yml +261 -0
  8. data/AUTHORS.md +46 -32
  9. data/CHANGES.md +3355 -22
  10. data/CODE_OF_CONDUCT.md +73 -0
  11. data/CONTRIBUTING.md +163 -0
  12. data/Dockerfile +9 -0
  13. data/Gemfile +1 -8
  14. data/ISSUE_TEMPLATE.md +30 -0
  15. data/{LICENSE.md → LICENSE} +12 -12
  16. data/Makefile +28 -6
  17. data/PULL_REQUEST_TEMPLATE.md +31 -0
  18. data/README.md +233 -143
  19. data/UPGRADE.md +40 -0
  20. data/VERSIONS.md +35 -0
  21. data/advanced-examples/custom-http-client.md +170 -0
  22. data/cluster_spec.rb +77 -0
  23. data/examples/examples.rb +47 -58
  24. data/examples/{print-call-log.rb → print_call_log.rb} +6 -6
  25. data/githooks/pre-commit +1 -0
  26. data/lib/rack/twilio_webhook_authentication.rb +32 -7
  27. data/lib/twilio-ruby/base/client_base.rb +121 -0
  28. data/lib/twilio-ruby/framework/request.rb +41 -0
  29. data/lib/twilio-ruby/framework/response.rb +18 -0
  30. data/lib/twilio-ruby/framework/rest/domain.rb +36 -0
  31. data/lib/twilio-ruby/framework/rest/error.rb +39 -0
  32. data/lib/twilio-ruby/framework/rest/helper.rb +11 -0
  33. data/lib/twilio-ruby/framework/rest/obsolete_client.rb +12 -0
  34. data/lib/twilio-ruby/framework/rest/page.rb +103 -0
  35. data/lib/twilio-ruby/framework/rest/resource.rb +23 -0
  36. data/lib/twilio-ruby/framework/rest/version.rb +153 -0
  37. data/lib/twilio-ruby/framework/serialize.rb +81 -0
  38. data/lib/twilio-ruby/framework/values.rb +9 -0
  39. data/lib/twilio-ruby/http/http_client.rb +79 -0
  40. data/lib/twilio-ruby/http.rb +5 -0
  41. data/lib/twilio-ruby/jwt/access_token.rb +226 -0
  42. data/lib/twilio-ruby/jwt/client_capability.rb +102 -0
  43. data/lib/twilio-ruby/jwt/jwt.rb +59 -0
  44. data/lib/twilio-ruby/jwt/task_router.rb +172 -0
  45. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +206 -0
  46. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +378 -0
  47. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +378 -0
  48. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +129 -0
  49. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +169 -0
  50. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +222 -0
  51. data/lib/twilio-ruby/rest/accounts/v1.rb +58 -0
  52. data/lib/twilio-ruby/rest/accounts.rb +20 -10
  53. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  54. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +377 -0
  55. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +558 -0
  56. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +622 -0
  57. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +320 -0
  58. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +394 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +394 -0
  60. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +394 -0
  61. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +394 -0
  62. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +394 -0
  63. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +394 -0
  64. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +394 -0
  65. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +432 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +143 -0
  67. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +209 -0
  68. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +264 -0
  69. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +328 -0
  70. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +411 -0
  71. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +324 -0
  72. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +505 -0
  73. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +872 -0
  74. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +872 -0
  75. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +163 -0
  76. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +239 -0
  77. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +959 -0
  78. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +663 -0
  79. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +462 -0
  80. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +496 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +433 -0
  82. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +337 -0
  83. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +411 -0
  84. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +543 -0
  85. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +543 -0
  86. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +543 -0
  87. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +848 -0
  88. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +342 -0
  89. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +174 -0
  90. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +351 -0
  91. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +622 -0
  92. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +164 -0
  93. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +164 -0
  94. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +407 -0
  95. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +375 -0
  96. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +351 -0
  97. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +433 -0
  98. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +365 -0
  99. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +381 -0
  100. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +375 -0
  101. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +514 -0
  102. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +424 -0
  103. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +342 -0
  104. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +394 -0
  105. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +412 -0
  106. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +346 -0
  107. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +346 -0
  108. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +140 -0
  109. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +346 -0
  110. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +126 -0
  111. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +126 -0
  112. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +356 -0
  113. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +356 -0
  114. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +664 -0
  115. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +423 -0
  116. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +412 -0
  117. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +148 -0
  118. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +178 -0
  119. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +371 -0
  120. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +326 -0
  121. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +326 -0
  122. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +326 -0
  123. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +326 -0
  124. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +326 -0
  125. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +326 -0
  126. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +326 -0
  127. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +326 -0
  128. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +388 -0
  129. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +496 -0
  130. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +128 -0
  131. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +179 -0
  132. data/lib/twilio-ruby/rest/api/v2010/account.rb +989 -0
  133. data/lib/twilio-ruby/rest/api/v2010.rb +132 -0
  134. data/lib/twilio-ruby/rest/api.rb +238 -0
  135. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  136. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +241 -0
  137. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +217 -0
  138. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +389 -0
  139. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +435 -0
  140. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +409 -0
  141. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +473 -0
  142. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +241 -0
  143. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +373 -0
  144. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +436 -0
  145. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +253 -0
  146. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +226 -0
  147. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +525 -0
  148. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +433 -0
  149. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +683 -0
  150. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +207 -0
  151. data/lib/twilio-ruby/rest/autopilot/v1.rb +55 -0
  152. data/lib/twilio-ruby/rest/autopilot.rb +22 -0
  153. data/lib/twilio-ruby/rest/autopilot_base.rb +38 -0
  154. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +306 -0
  155. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +305 -0
  156. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +278 -0
  157. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +254 -0
  158. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +253 -0
  159. data/lib/twilio-ruby/rest/bulkexports/v1.rb +64 -0
  160. data/lib/twilio-ruby/rest/bulkexports.rb +25 -0
  161. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  162. data/lib/twilio-ruby/rest/chat/v1/credential.rb +429 -0
  163. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +385 -0
  164. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +433 -0
  165. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +449 -0
  166. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +541 -0
  167. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +403 -0
  168. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +251 -0
  169. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +472 -0
  170. data/lib/twilio-ruby/rest/chat/v1/service.rb +871 -0
  171. data/lib/twilio-ruby/rest/chat/v1.rb +64 -0
  172. data/lib/twilio-ruby/rest/chat/v2/credential.rb +429 -0
  173. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +378 -0
  174. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +385 -0
  175. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +497 -0
  176. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +524 -0
  177. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +451 -0
  178. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +613 -0
  179. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +403 -0
  180. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +375 -0
  181. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +417 -0
  182. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +516 -0
  183. data/lib/twilio-ruby/rest/chat/v2/service.rb +774 -0
  184. data/lib/twilio-ruby/rest/chat/v2.rb +64 -0
  185. data/lib/twilio-ruby/rest/chat/v3/channel.rb +297 -0
  186. data/lib/twilio-ruby/rest/chat/v3.rb +71 -0
  187. data/lib/twilio-ruby/rest/chat.rb +35 -0
  188. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  189. data/lib/twilio-ruby/rest/client.rb +340 -164
  190. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +208 -0
  191. data/lib/twilio-ruby/rest/content/v1/content.rb +363 -0
  192. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +251 -0
  193. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +265 -0
  194. data/lib/twilio-ruby/rest/content/v1.rb +61 -0
  195. data/lib/twilio-ruby/rest/content.rb +15 -0
  196. data/lib/twilio-ruby/rest/content_base.rb +38 -0
  197. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +482 -0
  198. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +281 -0
  199. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +287 -0
  200. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +345 -0
  201. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +544 -0
  202. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +505 -0
  203. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +432 -0
  204. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +630 -0
  205. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +435 -0
  206. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +312 -0
  207. data/lib/twilio-ruby/rest/conversations/v1/role.rb +394 -0
  208. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +371 -0
  209. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +334 -0
  210. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +280 -0
  211. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +314 -0
  212. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +356 -0
  213. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +557 -0
  214. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +518 -0
  215. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +445 -0
  216. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +639 -0
  217. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +317 -0
  218. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +403 -0
  219. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +457 -0
  220. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +491 -0
  221. data/lib/twilio-ruby/rest/conversations/v1/service.rb +486 -0
  222. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +452 -0
  223. data/lib/twilio-ruby/rest/conversations/v1/user.rb +482 -0
  224. data/lib/twilio-ruby/rest/conversations/v1.rb +136 -0
  225. data/lib/twilio-ruby/rest/conversations.rb +79 -0
  226. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  227. data/lib/twilio-ruby/rest/events/v1/event_type.rb +312 -0
  228. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +299 -0
  229. data/lib/twilio-ruby/rest/events/v1/schema.rb +235 -0
  230. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +129 -0
  231. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +136 -0
  232. data/lib/twilio-ruby/rest/events/v1/sink.rb +444 -0
  233. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +372 -0
  234. data/lib/twilio-ruby/rest/events/v1/subscription.rb +426 -0
  235. data/lib/twilio-ruby/rest/events/v1.rb +94 -0
  236. data/lib/twilio-ruby/rest/events.rb +43 -0
  237. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  238. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +448 -0
  239. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +375 -0
  240. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +518 -0
  241. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +573 -0
  242. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +327 -0
  243. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +228 -0
  244. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +442 -0
  245. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +358 -0
  246. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +443 -0
  247. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +361 -0
  248. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +217 -0
  249. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +155 -0
  250. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +141 -0
  251. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +196 -0
  252. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +251 -0
  253. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +339 -0
  254. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +406 -0
  255. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +267 -0
  256. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +187 -0
  257. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +388 -0
  258. data/lib/twilio-ruby/rest/flex_api/v1.rb +208 -0
  259. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +146 -0
  260. data/lib/twilio-ruby/rest/flex_api/v2.rb +40 -0
  261. data/lib/twilio-ruby/rest/flex_api.rb +73 -0
  262. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  263. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +275 -0
  264. data/lib/twilio-ruby/rest/frontline_api/v1.rb +49 -0
  265. data/lib/twilio-ruby/rest/frontline_api.rb +15 -0
  266. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  267. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +319 -0
  268. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +350 -0
  269. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +276 -0
  270. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +268 -0
  271. data/lib/twilio-ruby/rest/insights/v1/call.rb +268 -0
  272. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +493 -0
  273. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +488 -0
  274. data/lib/twilio-ruby/rest/insights/v1/conference.rb +505 -0
  275. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +385 -0
  276. data/lib/twilio-ruby/rest/insights/v1/room.rb +500 -0
  277. data/lib/twilio-ruby/rest/insights/v1/setting.rb +254 -0
  278. data/lib/twilio-ruby/rest/insights/v1.rb +91 -0
  279. data/lib/twilio-ruby/rest/insights.rb +46 -0
  280. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  281. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +510 -0
  282. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +226 -0
  283. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +388 -0
  284. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +248 -0
  285. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +520 -0
  286. data/lib/twilio-ruby/rest/intelligence/v2.rb +64 -0
  287. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  288. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  289. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +429 -0
  290. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +385 -0
  291. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +433 -0
  292. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +449 -0
  293. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +541 -0
  294. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +403 -0
  295. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +251 -0
  296. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +472 -0
  297. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +871 -0
  298. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +64 -0
  299. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +429 -0
  300. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +378 -0
  301. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +385 -0
  302. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +497 -0
  303. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +524 -0
  304. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +451 -0
  305. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +613 -0
  306. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +403 -0
  307. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +375 -0
  308. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +408 -0
  309. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +516 -0
  310. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +774 -0
  311. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +64 -0
  312. data/lib/twilio-ruby/rest/ip_messaging.rb +23 -0
  313. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  314. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +251 -0
  315. data/lib/twilio-ruby/rest/lookups/v1.rb +49 -0
  316. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +370 -0
  317. data/lib/twilio-ruby/rest/lookups/v2.rb +49 -0
  318. data/lib/twilio-ruby/rest/lookups.rb +16 -0
  319. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  320. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +420 -0
  321. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +404 -0
  322. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +252 -0
  323. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +432 -0
  324. data/lib/twilio-ruby/rest/media/v1.rb +79 -0
  325. data/lib/twilio-ruby/rest/media.rb +28 -7
  326. data/lib/twilio-ruby/rest/media_base.rb +38 -0
  327. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +136 -0
  328. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +365 -0
  329. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +497 -0
  330. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +189 -0
  331. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +280 -0
  332. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +289 -0
  333. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +238 -0
  334. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +161 -0
  335. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +214 -0
  336. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +196 -0
  337. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +358 -0
  338. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +329 -0
  339. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +365 -0
  340. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +365 -0
  341. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +513 -0
  342. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +135 -0
  343. data/lib/twilio-ruby/rest/messaging/v1/service.rb +777 -0
  344. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +777 -0
  345. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +123 -0
  346. data/lib/twilio-ruby/rest/messaging/v1.rb +194 -0
  347. data/lib/twilio-ruby/rest/messaging.rb +74 -0
  348. data/lib/twilio-ruby/rest/messaging_base.rb +38 -0
  349. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +358 -0
  350. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +351 -0
  351. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +208 -0
  352. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +349 -0
  353. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +374 -0
  354. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +367 -0
  355. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +427 -0
  356. data/lib/twilio-ruby/rest/microvisor/v1.rb +94 -0
  357. data/lib/twilio-ruby/rest/microvisor.rb +24 -0
  358. data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
  359. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +408 -0
  360. data/lib/twilio-ruby/rest/monitor/v1/event.rb +391 -0
  361. data/lib/twilio-ruby/rest/monitor/v1.rb +64 -0
  362. data/lib/twilio-ruby/rest/monitor.rb +25 -0
  363. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  364. data/lib/twilio-ruby/rest/notify/v1/credential.rb +431 -0
  365. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +444 -0
  366. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +320 -0
  367. data/lib/twilio-ruby/rest/notify/v1/service.rb +636 -0
  368. data/lib/twilio-ruby/rest/notify/v1.rb +64 -0
  369. data/lib/twilio-ruby/rest/notify.rb +25 -0
  370. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  371. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +224 -0
  372. data/lib/twilio-ruby/rest/numbers/v1/porting_bulk_portability.rb +229 -0
  373. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_fetch.rb +245 -0
  374. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +263 -0
  375. data/lib/twilio-ruby/rest/numbers/v1.rb +94 -0
  376. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +343 -0
  377. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +403 -0
  378. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +249 -0
  379. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +502 -0
  380. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +285 -0
  381. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +335 -0
  382. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +344 -0
  383. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +201 -0
  384. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +608 -0
  385. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +398 -0
  386. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +297 -0
  387. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +329 -0
  388. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +419 -0
  389. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +297 -0
  390. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +185 -0
  391. data/lib/twilio-ruby/rest/numbers/v2.rb +85 -0
  392. data/lib/twilio-ruby/rest/numbers.rb +12 -0
  393. data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
  394. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +417 -0
  395. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +401 -0
  396. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +456 -0
  397. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +414 -0
  398. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +504 -0
  399. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +49 -0
  400. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +377 -0
  401. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +456 -0
  402. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +620 -0
  403. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +64 -0
  404. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +308 -0
  405. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +335 -0
  406. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +349 -0
  407. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +439 -0
  408. data/lib/twilio-ruby/rest/preview/marketplace.rb +64 -0
  409. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +389 -0
  410. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +449 -0
  411. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +445 -0
  412. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +389 -0
  413. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +426 -0
  414. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +448 -0
  415. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +389 -0
  416. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +426 -0
  417. data/lib/twilio-ruby/rest/preview/sync/service.rb +505 -0
  418. data/lib/twilio-ruby/rest/preview/sync.rb +49 -0
  419. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +241 -0
  420. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +241 -0
  421. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +217 -0
  422. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +389 -0
  423. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +435 -0
  424. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +409 -0
  425. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +463 -0
  426. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +241 -0
  427. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +373 -0
  428. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +436 -0
  429. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +253 -0
  430. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +226 -0
  431. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +525 -0
  432. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +663 -0
  433. data/lib/twilio-ruby/rest/preview/understand.rb +49 -0
  434. data/lib/twilio-ruby/rest/preview/wireless/command.rb +397 -0
  435. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +458 -0
  436. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +260 -0
  437. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +584 -0
  438. data/lib/twilio-ruby/rest/preview/wireless.rb +79 -0
  439. data/lib/twilio-ruby/rest/preview.rb +102 -0
  440. data/lib/twilio-ruby/rest/preview_base.rb +63 -0
  441. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +304 -0
  442. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +115 -0
  443. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +297 -0
  444. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +115 -0
  445. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +304 -0
  446. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +227 -0
  447. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +129 -0
  448. data/lib/twilio-ruby/rest/pricing/v1.rb +52 -0
  449. data/lib/twilio-ruby/rest/pricing/v2/country.rb +299 -0
  450. data/lib/twilio-ruby/rest/pricing/v2/number.rb +240 -0
  451. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +304 -0
  452. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +245 -0
  453. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +129 -0
  454. data/lib/twilio-ruby/rest/pricing/v2.rb +70 -0
  455. data/lib/twilio-ruby/rest/pricing.rb +43 -2
  456. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  457. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +426 -0
  458. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +419 -0
  459. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +439 -0
  460. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +434 -0
  461. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +529 -0
  462. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +406 -0
  463. data/lib/twilio-ruby/rest/proxy/v1/service.rb +569 -0
  464. data/lib/twilio-ruby/rest/proxy/v1.rb +49 -0
  465. data/lib/twilio-ruby/rest/proxy.rb +15 -0
  466. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  467. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +268 -0
  468. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +268 -0
  469. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +268 -0
  470. data/lib/twilio-ruby/rest/routes/v2.rb +79 -0
  471. data/lib/twilio-ruby/rest/routes.rb +32 -0
  472. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  473. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +326 -0
  474. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +419 -0
  475. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +219 -0
  476. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +414 -0
  477. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +347 -0
  478. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +372 -0
  479. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +414 -0
  480. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +463 -0
  481. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +230 -0
  482. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +353 -0
  483. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +419 -0
  484. data/lib/twilio-ruby/rest/serverless/v1/service.rb +533 -0
  485. data/lib/twilio-ruby/rest/serverless/v1.rb +49 -0
  486. data/lib/twilio-ruby/rest/serverless.rb +15 -0
  487. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  488. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +217 -0
  489. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +228 -0
  490. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +372 -0
  491. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +429 -0
  492. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +217 -0
  493. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +228 -0
  494. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +372 -0
  495. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +475 -0
  496. data/lib/twilio-ruby/rest/studio/v1/flow.rb +390 -0
  497. data/lib/twilio-ruby/rest/studio/v1.rb +49 -0
  498. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +217 -0
  499. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +228 -0
  500. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +372 -0
  501. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +468 -0
  502. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +348 -0
  503. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +232 -0
  504. data/lib/twilio-ruby/rest/studio/v2/flow.rb +529 -0
  505. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +139 -0
  506. data/lib/twilio-ruby/rest/studio/v2.rb +55 -0
  507. data/lib/twilio-ruby/rest/studio.rb +22 -0
  508. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  509. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +403 -0
  510. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +482 -0
  511. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +408 -0
  512. data/lib/twilio-ruby/rest/supersim/v1/network.rb +312 -0
  513. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +344 -0
  514. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +390 -0
  515. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +256 -0
  516. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +249 -0
  517. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +207 -0
  518. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +470 -0
  519. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +368 -0
  520. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +313 -0
  521. data/lib/twilio-ruby/rest/supersim/v1.rb +151 -0
  522. data/lib/twilio-ruby/rest/supersim.rb +88 -0
  523. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  524. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +387 -0
  525. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +463 -0
  526. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +477 -0
  527. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +387 -0
  528. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +477 -0
  529. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +480 -0
  530. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +387 -0
  531. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +477 -0
  532. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +146 -0
  533. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +426 -0
  534. data/lib/twilio-ruby/rest/sync/v1/service.rb +585 -0
  535. data/lib/twilio-ruby/rest/sync/v1.rb +49 -0
  536. data/lib/twilio-ruby/rest/sync.rb +15 -0
  537. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  538. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +412 -0
  539. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +449 -0
  540. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +716 -0
  541. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +630 -0
  542. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +416 -0
  543. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +371 -0
  544. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +291 -0
  545. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +259 -0
  546. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +266 -0
  547. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +581 -0
  548. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +698 -0
  549. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +400 -0
  550. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +246 -0
  551. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +293 -0
  552. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +226 -0
  553. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +262 -0
  554. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +630 -0
  555. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +371 -0
  556. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +256 -0
  557. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +259 -0
  558. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +530 -0
  559. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +360 -0
  560. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +259 -0
  561. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +248 -0
  562. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +730 -0
  563. data/lib/twilio-ruby/rest/taskrouter/v1.rb +49 -0
  564. data/lib/twilio-ruby/rest/taskrouter.rb +15 -0
  565. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  566. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +349 -0
  567. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +349 -0
  568. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +447 -0
  569. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +482 -0
  570. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +231 -0
  571. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +633 -0
  572. data/lib/twilio-ruby/rest/trunking/v1.rb +49 -0
  573. data/lib/twilio-ruby/rest/trunking.rb +15 -0
  574. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  575. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +232 -0
  576. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +211 -0
  577. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +364 -0
  578. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +342 -0
  579. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +340 -0
  580. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +535 -0
  581. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +393 -0
  582. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +292 -0
  583. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +285 -0
  584. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +407 -0
  585. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +292 -0
  586. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +364 -0
  587. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +342 -0
  588. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +340 -0
  589. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +535 -0
  590. data/lib/twilio-ruby/rest/trusthub/v1.rb +160 -0
  591. data/lib/twilio-ruby/rest/trusthub.rb +74 -0
  592. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  593. data/lib/twilio-ruby/rest/verify/v2/form.rb +203 -0
  594. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +231 -0
  595. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +279 -0
  596. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +198 -0
  597. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +508 -0
  598. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +458 -0
  599. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +269 -0
  600. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +429 -0
  601. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +386 -0
  602. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +412 -0
  603. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +427 -0
  604. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +387 -0
  605. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +225 -0
  606. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +454 -0
  607. data/lib/twilio-ruby/rest/verify/v2/service.rb +792 -0
  608. data/lib/twilio-ruby/rest/verify/v2/template.rb +229 -0
  609. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +382 -0
  610. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +247 -0
  611. data/lib/twilio-ruby/rest/verify/v2.rb +106 -0
  612. data/lib/twilio-ruby/rest/verify.rb +58 -0
  613. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  614. data/lib/twilio-ruby/rest/video/v1/composition.rb +487 -0
  615. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +535 -0
  616. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +289 -0
  617. data/lib/twilio-ruby/rest/video/v1/recording.rb +436 -0
  618. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +289 -0
  619. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +259 -0
  620. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +331 -0
  621. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +181 -0
  622. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +338 -0
  623. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +498 -0
  624. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +170 -0
  625. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +423 -0
  626. data/lib/twilio-ruby/rest/video/v1/room.rb +616 -0
  627. data/lib/twilio-ruby/rest/video/v1.rb +106 -0
  628. data/lib/twilio-ruby/rest/video.rb +59 -0
  629. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  630. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +168 -0
  631. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +511 -0
  632. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +447 -0
  633. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +401 -0
  634. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +142 -0
  635. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +202 -0
  636. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +382 -0
  637. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +224 -0
  638. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +130 -0
  639. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +387 -0
  640. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +370 -0
  641. data/lib/twilio-ruby/rest/voice/v1.rb +137 -0
  642. data/lib/twilio-ruby/rest/voice.rb +61 -0
  643. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  644. data/lib/twilio-ruby/rest/wireless/v1/command.rb +418 -0
  645. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +473 -0
  646. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +305 -0
  647. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +246 -0
  648. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +644 -0
  649. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +234 -0
  650. data/lib/twilio-ruby/rest/wireless/v1.rb +85 -0
  651. data/lib/twilio-ruby/rest/wireless.rb +42 -0
  652. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  653. data/lib/twilio-ruby/rest.rb +14 -0
  654. data/lib/twilio-ruby/security/request_validator.rb +150 -0
  655. data/lib/twilio-ruby/twiml/fax_response.rb +45 -0
  656. data/lib/twilio-ruby/twiml/messaging_response.rb +107 -0
  657. data/lib/twilio-ruby/twiml/twiml.rb +126 -0
  658. data/lib/twilio-ruby/twiml/voice_response.rb +1952 -0
  659. data/lib/twilio-ruby/util/configuration.rb +27 -1
  660. data/lib/twilio-ruby/util.rb +5 -1
  661. data/lib/twilio-ruby/version.rb +1 -1
  662. data/lib/twilio-ruby.rb +18 -95
  663. data/sonar-project.properties +13 -0
  664. data/twilio-ruby.gemspec +22 -15
  665. metadata +807 -248
  666. data/.travis.yml +0 -31
  667. data/conf/cacert.pem +0 -3376
  668. data/docs/Makefile +0 -130
  669. data/docs/_themes/LICENSE +0 -45
  670. data/docs/_themes/README.rst +0 -25
  671. data/docs/_themes/flask_theme_support.py +0 -86
  672. data/docs/_themes/kr/layout.html +0 -32
  673. data/docs/_themes/kr/relations.html +0 -19
  674. data/docs/_themes/kr/static/flasky.css_t +0 -469
  675. data/docs/_themes/kr/static/small_flask.css +0 -70
  676. data/docs/_themes/kr/theme.conf +0 -7
  677. data/docs/_themes/kr_small/layout.html +0 -22
  678. data/docs/_themes/kr_small/static/flasky.css_t +0 -287
  679. data/docs/_themes/kr_small/theme.conf +0 -10
  680. data/docs/changelog.rst +0 -1
  681. data/docs/conf.py +0 -266
  682. data/docs/faq.rst +0 -42
  683. data/docs/getting-started.rst +0 -117
  684. data/docs/index.rst +0 -135
  685. data/docs/make.bat +0 -170
  686. data/docs/src/pip-delete-this-directory.txt +0 -5
  687. data/docs/usage/accounts.rst +0 -89
  688. data/docs/usage/addresses.rst +0 -101
  689. data/docs/usage/applications.rst +0 -108
  690. data/docs/usage/basics.rst +0 -115
  691. data/docs/usage/caller-ids.rst +0 -47
  692. data/docs/usage/conferences.rst +0 -108
  693. data/docs/usage/errors.rst +0 -29
  694. data/docs/usage/lookups.rst +0 -62
  695. data/docs/usage/messages.rst +0 -137
  696. data/docs/usage/notifications.rst +0 -72
  697. data/docs/usage/phone-calls.rst +0 -185
  698. data/docs/usage/phone-numbers.rst +0 -189
  699. data/docs/usage/pricing.rst +0 -169
  700. data/docs/usage/queues.rst +0 -112
  701. data/docs/usage/recordings.rst +0 -98
  702. data/docs/usage/sip.rst +0 -104
  703. data/docs/usage/taskrouter-tokens.rst +0 -98
  704. data/docs/usage/taskrouter.rst +0 -440
  705. data/docs/usage/token-generation.rst +0 -115
  706. data/docs/usage/transcriptions.rst +0 -32
  707. data/docs/usage/twiml.rst +0 -69
  708. data/docs/usage/validation.rst +0 -107
  709. data/examples/taskrouter.examples.rb +0 -86
  710. data/lib/twilio-ruby/rest/addresses/dependent_phone_numbers.rb +0 -6
  711. data/lib/twilio-ruby/rest/addresses.rb +0 -12
  712. data/lib/twilio-ruby/rest/applications.rb +0 -6
  713. data/lib/twilio-ruby/rest/authorized_connect_apps.rb +0 -6
  714. data/lib/twilio-ruby/rest/available_phone_numbers/country.rb +0 -10
  715. data/lib/twilio-ruby/rest/available_phone_numbers/local.rb +0 -11
  716. data/lib/twilio-ruby/rest/available_phone_numbers/mobile.rb +0 -11
  717. data/lib/twilio-ruby/rest/available_phone_numbers/toll_free.rb +0 -11
  718. data/lib/twilio-ruby/rest/available_phone_numbers.rb +0 -13
  719. data/lib/twilio-ruby/rest/base_client.rb +0 -130
  720. data/lib/twilio-ruby/rest/call_feedback.rb +0 -28
  721. data/lib/twilio-ruby/rest/call_feedback_summary.rb +0 -13
  722. data/lib/twilio-ruby/rest/calls.rb +0 -33
  723. data/lib/twilio-ruby/rest/conferences/participants.rb +0 -23
  724. data/lib/twilio-ruby/rest/conferences.rb +0 -12
  725. data/lib/twilio-ruby/rest/connect_apps.rb +0 -6
  726. data/lib/twilio-ruby/rest/errors.rb +0 -14
  727. data/lib/twilio-ruby/rest/incoming_phone_numbers/local.rb +0 -13
  728. data/lib/twilio-ruby/rest/incoming_phone_numbers/mobile.rb +0 -13
  729. data/lib/twilio-ruby/rest/incoming_phone_numbers/toll_free.rb +0 -13
  730. data/lib/twilio-ruby/rest/incoming_phone_numbers.rb +0 -17
  731. data/lib/twilio-ruby/rest/instance_resource.rb +0 -87
  732. data/lib/twilio-ruby/rest/keys.rb +0 -6
  733. data/lib/twilio-ruby/rest/list_resource.rb +0 -100
  734. data/lib/twilio-ruby/rest/lookups/phone_numbers.rb +0 -17
  735. data/lib/twilio-ruby/rest/lookups_client.rb +0 -99
  736. data/lib/twilio-ruby/rest/messages.rb +0 -22
  737. data/lib/twilio-ruby/rest/monitor/alerts.rb +0 -8
  738. data/lib/twilio-ruby/rest/monitor/events.rb +0 -8
  739. data/lib/twilio-ruby/rest/monitor_client.rb +0 -101
  740. data/lib/twilio-ruby/rest/next_gen_list_resource.rb +0 -36
  741. data/lib/twilio-ruby/rest/notifications.rb +0 -6
  742. data/lib/twilio-ruby/rest/outgoing_caller_ids.rb +0 -25
  743. data/lib/twilio-ruby/rest/pricing/countries.rb +0 -21
  744. data/lib/twilio-ruby/rest/pricing/messaging.rb +0 -15
  745. data/lib/twilio-ruby/rest/pricing/phone_numbers.rb +0 -14
  746. data/lib/twilio-ruby/rest/pricing/voice/numbers.rb +0 -19
  747. data/lib/twilio-ruby/rest/pricing/voice.rb +0 -15
  748. data/lib/twilio-ruby/rest/pricing_client.rb +0 -108
  749. data/lib/twilio-ruby/rest/queues/members.rb +0 -29
  750. data/lib/twilio-ruby/rest/queues.rb +0 -12
  751. data/lib/twilio-ruby/rest/recordings.rb +0 -35
  752. data/lib/twilio-ruby/rest/sandbox.rb +0 -5
  753. data/lib/twilio-ruby/rest/sip/credential_lists/credentials.rb +0 -6
  754. data/lib/twilio-ruby/rest/sip/credential_lists.rb +0 -11
  755. data/lib/twilio-ruby/rest/sip/domains/credential_list_mappings.rb +0 -6
  756. data/lib/twilio-ruby/rest/sip/domains/ip_access_control_list_mappings.rb +0 -6
  757. data/lib/twilio-ruby/rest/sip/domains.rb +0 -12
  758. data/lib/twilio-ruby/rest/sip/ip_access_control_lists/ip_addresses.rb +0 -6
  759. data/lib/twilio-ruby/rest/sip/ip_access_control_lists.rb +0 -11
  760. data/lib/twilio-ruby/rest/sip.rb +0 -10
  761. data/lib/twilio-ruby/rest/sms/messages.rb +0 -38
  762. data/lib/twilio-ruby/rest/sms/short_codes.rb +0 -8
  763. data/lib/twilio-ruby/rest/sms.rb +0 -11
  764. data/lib/twilio-ruby/rest/task_router/activities.rb +0 -8
  765. data/lib/twilio-ruby/rest/task_router/events.rb +0 -8
  766. data/lib/twilio-ruby/rest/task_router/reservations.rb +0 -8
  767. data/lib/twilio-ruby/rest/task_router/statistics.rb +0 -26
  768. data/lib/twilio-ruby/rest/task_router/task_queues.rb +0 -17
  769. data/lib/twilio-ruby/rest/task_router/task_queues_statistics.rb +0 -15
  770. data/lib/twilio-ruby/rest/task_router/tasks.rb +0 -15
  771. data/lib/twilio-ruby/rest/task_router/workers.rb +0 -19
  772. data/lib/twilio-ruby/rest/task_router/workers_statistics.rb +0 -8
  773. data/lib/twilio-ruby/rest/task_router/workflow_statistics.rb +0 -7
  774. data/lib/twilio-ruby/rest/task_router/workflows.rb +0 -11
  775. data/lib/twilio-ruby/rest/task_router/workspace_statistics.rb +0 -7
  776. data/lib/twilio-ruby/rest/task_router/workspaces.rb +0 -17
  777. data/lib/twilio-ruby/rest/task_router_client.rb +0 -176
  778. data/lib/twilio-ruby/rest/tokens.rb +0 -7
  779. data/lib/twilio-ruby/rest/transcriptions.rb +0 -6
  780. data/lib/twilio-ruby/rest/trunking/credential_lists.rb +0 -8
  781. data/lib/twilio-ruby/rest/trunking/ip_access_control_lists.rb +0 -8
  782. data/lib/twilio-ruby/rest/trunking/origination_urls.rb +0 -8
  783. data/lib/twilio-ruby/rest/trunking/phone_numbers.rb +0 -8
  784. data/lib/twilio-ruby/rest/trunking/trunks.rb +0 -19
  785. data/lib/twilio-ruby/rest/trunking_client.rb +0 -106
  786. data/lib/twilio-ruby/rest/usage/records.rb +0 -21
  787. data/lib/twilio-ruby/rest/usage/triggers.rb +0 -12
  788. data/lib/twilio-ruby/rest/usage.rb +0 -10
  789. data/lib/twilio-ruby/rest/utils.rb +0 -49
  790. data/lib/twilio-ruby/task_router/capability.rb +0 -224
  791. data/lib/twilio-ruby/task_router/workflow_builder.rb +0 -129
  792. data/lib/twilio-ruby/task_router.rb +0 -0
  793. data/lib/twilio-ruby/twiml/response.rb +0 -16
  794. data/lib/twilio-ruby/util/capability.rb +0 -64
  795. data/lib/twilio-ruby/util/client_config.rb +0 -29
  796. data/lib/twilio-ruby/util/request_validator.rb +0 -37
  797. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -110
  798. data/spec/rest/account_spec.rb +0 -89
  799. data/spec/rest/address_spec.rb +0 -11
  800. data/spec/rest/call_feedback_spec.rb +0 -12
  801. data/spec/rest/call_feedback_summary_spec.rb +0 -9
  802. data/spec/rest/call_spec.rb +0 -22
  803. data/spec/rest/client_spec.rb +0 -277
  804. data/spec/rest/conference_spec.rb +0 -11
  805. data/spec/rest/instance_resource_spec.rb +0 -15
  806. data/spec/rest/key_spec.rb +0 -11
  807. data/spec/rest/lookups/phone_number_spec.rb +0 -28
  808. data/spec/rest/message_spec.rb +0 -12
  809. data/spec/rest/monitor_client_spec.rb +0 -17
  810. data/spec/rest/numbers_spec.rb +0 -58
  811. data/spec/rest/pricing_client_spec.rb +0 -45
  812. data/spec/rest/queue_spec.rb +0 -11
  813. data/spec/rest/recording_spec.rb +0 -11
  814. data/spec/rest/sms/message_spec.rb +0 -37
  815. data/spec/rest/sms/messages_spec.rb +0 -31
  816. data/spec/rest/task_router/reservation_spec.rb +0 -14
  817. data/spec/rest/task_router/statistics_spec.rb +0 -37
  818. data/spec/rest/task_router/task_queue_spec.rb +0 -9
  819. data/spec/rest/token_spec.rb +0 -7
  820. data/spec/rest/trunking/trunk_spec.rb +0 -36
  821. data/spec/rest/utils_spec.rb +0 -45
  822. data/spec/spec_helper.rb +0 -15
  823. data/spec/support/fakeweb.rb +0 -2
  824. data/spec/task_router_deprecated_spec.rb +0 -130
  825. data/spec/task_router_spec.rb +0 -110
  826. data/spec/task_router_taskqueue_spec.rb +0 -111
  827. data/spec/task_router_worker_spec.rb +0 -129
  828. data/spec/task_router_workspace_spec.rb +0 -110
  829. data/spec/twilio_spec.rb +0 -15
  830. data/spec/util/capability_spec.rb +0 -186
  831. data/spec/util/client_config_spec.rb +0 -21
  832. data/spec/util/configuration_spec.rb +0 -15
  833. data/spec/util/request_validator_spec.rb +0 -113
  834. data/spec/util/url_encode_spec.rb +0 -12
@@ -0,0 +1,557 @@
1
+ ##
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio - Conversations
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.
13
+ #
14
+
15
+
16
+ module Twilio
17
+ module REST
18
+ class Conversations < ConversationsBase
19
+ class V1 < Version
20
+ class ServiceContext < InstanceContext
21
+ class ConversationContext < InstanceContext
22
+
23
+ class MessageList < ListResource
24
+ ##
25
+ # Initialize the MessageList
26
+ # @param [Version] version Version that contains the resource
27
+ # @return [MessageList] MessageList
28
+ def initialize(version, chat_service_sid: nil, conversation_sid: nil)
29
+ super(version)
30
+ # Path Solution
31
+ @solution = { chat_service_sid: chat_service_sid, conversation_sid: conversation_sid }
32
+ @uri = "/Services/#{@solution[:chat_service_sid]}/Conversations/#{@solution[:conversation_sid]}/Messages"
33
+
34
+ end
35
+ ##
36
+ # Create the MessageInstance
37
+ # @param [String] author The channel specific identifier of the message's author. Defaults to `system`.
38
+ # @param [String] body The content of the message, can be up to 1,600 characters long.
39
+ # @param [Time] date_created The date that this resource was created.
40
+ # @param [Time] date_updated The date that this resource was last updated. `null` if the message has not been edited.
41
+ # @param [String] attributes A string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \\\"{}\\\" will be returned.
42
+ # @param [String] media_sid The Media SID to be attached to the new Message.
43
+ # @param [String] content_sid The unique ID of the multi-channel [Rich Content](https://www.twilio.com/docs/content) template, required for template-generated messages. **Note** that if this field is set, `Body` and `MediaSid` parameters are ignored.
44
+ # @param [String] content_variables A structurally valid JSON string that contains values to resolve Rich Content template variables.
45
+ # @param [String] subject The subject of the message, can be up to 256 characters long.
46
+ # @param [ServiceConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
47
+ # @return [MessageInstance] Created MessageInstance
48
+ def create(
49
+ author: :unset,
50
+ body: :unset,
51
+ date_created: :unset,
52
+ date_updated: :unset,
53
+ attributes: :unset,
54
+ media_sid: :unset,
55
+ content_sid: :unset,
56
+ content_variables: :unset,
57
+ subject: :unset,
58
+ x_twilio_webhook_enabled: :unset
59
+ )
60
+
61
+ data = Twilio::Values.of({
62
+ 'Author' => author,
63
+ 'Body' => body,
64
+ 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
65
+ 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
66
+ 'Attributes' => attributes,
67
+ 'MediaSid' => media_sid,
68
+ 'ContentSid' => content_sid,
69
+ 'ContentVariables' => content_variables,
70
+ 'Subject' => subject,
71
+ })
72
+
73
+ headers = Twilio::Values.of({ 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
74
+ payload = @version.create('POST', @uri, data: data, headers: headers)
75
+ MessageInstance.new(
76
+ @version,
77
+ payload,
78
+ chat_service_sid: @solution[:chat_service_sid],
79
+ conversation_sid: @solution[:conversation_sid],
80
+ )
81
+ end
82
+
83
+
84
+ ##
85
+ # Lists MessageInstance records from the API as a list.
86
+ # Unlike stream(), this operation is eager and will load `limit` records into
87
+ # memory before returning.
88
+ # @param [OrderType] order The sort order of the returned messages. Can be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
89
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
90
+ # guarantees to never return more than limit. Default is no limit
91
+ # @param [Integer] page_size Number of records to fetch per request, when
92
+ # not set will use the default value of 50 records. If no page_size is defined
93
+ # but a limit is defined, stream() will attempt to read the limit with the most
94
+ # efficient page size, i.e. min(limit, 1000)
95
+ # @return [Array] Array of up to limit results
96
+ def list(order: :unset, limit: nil, page_size: nil)
97
+ self.stream(
98
+ order: order,
99
+ limit: limit,
100
+ page_size: page_size
101
+ ).entries
102
+ end
103
+
104
+ ##
105
+ # Streams Instance records from the API as an Enumerable.
106
+ # This operation lazily loads records as efficiently as possible until the limit
107
+ # is reached.
108
+ # @param [OrderType] order The sort order of the returned messages. Can be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
109
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
110
+ # guarantees to never return more than limit. Default is no limit
111
+ # @param [Integer] page_size Number of records to fetch per request, when
112
+ # not set will use the default value of 50 records. If no page_size is defined
113
+ # but a limit is defined, stream() will attempt to read the limit with the most
114
+ # efficient page size, i.e. min(limit, 1000)
115
+ # @return [Enumerable] Enumerable that will yield up to limit results
116
+ def stream(order: :unset, limit: nil, page_size: nil)
117
+ limits = @version.read_limits(limit, page_size)
118
+
119
+ page = self.page(
120
+ order: order,
121
+ page_size: limits[:page_size], )
122
+
123
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
124
+ end
125
+
126
+ ##
127
+ # When passed a block, yields MessageInstance records from the API.
128
+ # This operation lazily loads records as efficiently as possible until the limit
129
+ # is reached.
130
+ def each
131
+ limits = @version.read_limits
132
+
133
+ page = self.page(page_size: limits[:page_size], )
134
+
135
+ @version.stream(page,
136
+ limit: limits[:limit],
137
+ page_limit: limits[:page_limit]).each {|x| yield x}
138
+ end
139
+
140
+ ##
141
+ # Retrieve a single page of MessageInstance records from the API.
142
+ # Request is executed immediately.
143
+ # @param [OrderType] order The sort order of the returned messages. Can be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
144
+ # @param [String] page_token PageToken provided by the API
145
+ # @param [Integer] page_number Page Number, this value is simply for client state
146
+ # @param [Integer] page_size Number of records to return, defaults to 50
147
+ # @return [Page] Page of MessageInstance
148
+ def page(order: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
149
+ params = Twilio::Values.of({
150
+ 'Order' => order,
151
+ 'PageToken' => page_token,
152
+ 'Page' => page_number,
153
+ 'PageSize' => page_size,
154
+ })
155
+
156
+ response = @version.page('GET', @uri, params: params)
157
+
158
+ MessagePage.new(@version, response, @solution)
159
+ end
160
+
161
+ ##
162
+ # Retrieve a single page of MessageInstance records from the API.
163
+ # Request is executed immediately.
164
+ # @param [String] target_url API-generated URL for the requested results page
165
+ # @return [Page] Page of MessageInstance
166
+ def get_page(target_url)
167
+ response = @version.domain.request(
168
+ 'GET',
169
+ target_url
170
+ )
171
+ MessagePage.new(@version, response, @solution)
172
+ end
173
+
174
+
175
+
176
+ # Provide a user friendly representation
177
+ def to_s
178
+ '#<Twilio.Conversations.V1.MessageList>'
179
+ end
180
+ end
181
+
182
+
183
+ class MessageContext < InstanceContext
184
+ ##
185
+ # Initialize the MessageContext
186
+ # @param [Version] version Version that contains the resource
187
+ # @param [String] chat_service_sid The SID of the [Conversation Service](https://www.twilio.com/docs/conversations/api/service-resource) the Participant resource is associated with.
188
+ # @param [String] conversation_sid The unique ID of the [Conversation](https://www.twilio.com/docs/conversations/api/conversation-resource) for this message.
189
+ # @param [String] sid A 34 character string that uniquely identifies this resource.
190
+ # @return [MessageContext] MessageContext
191
+ def initialize(version, chat_service_sid, conversation_sid, sid)
192
+ super(version)
193
+
194
+ # Path Solution
195
+ @solution = { chat_service_sid: chat_service_sid, conversation_sid: conversation_sid, sid: sid, }
196
+ @uri = "/Services/#{@solution[:chat_service_sid]}/Conversations/#{@solution[:conversation_sid]}/Messages/#{@solution[:sid]}"
197
+
198
+ # Dependents
199
+ @delivery_receipts = nil
200
+ end
201
+ ##
202
+ # Delete the MessageInstance
203
+ # @param [ServiceConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
204
+ # @return [Boolean] True if delete succeeds, false otherwise
205
+ def delete(
206
+ x_twilio_webhook_enabled: :unset
207
+ )
208
+
209
+ headers = Twilio::Values.of({ 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
210
+ @version.delete('DELETE', @uri, headers: headers)
211
+ end
212
+
213
+ ##
214
+ # Fetch the MessageInstance
215
+ # @return [MessageInstance] Fetched MessageInstance
216
+ def fetch
217
+
218
+ payload = @version.fetch('GET', @uri)
219
+ MessageInstance.new(
220
+ @version,
221
+ payload,
222
+ chat_service_sid: @solution[:chat_service_sid],
223
+ conversation_sid: @solution[:conversation_sid],
224
+ sid: @solution[:sid],
225
+ )
226
+ end
227
+
228
+ ##
229
+ # Update the MessageInstance
230
+ # @param [String] author The channel specific identifier of the message's author. Defaults to `system`.
231
+ # @param [String] body The content of the message, can be up to 1,600 characters long.
232
+ # @param [Time] date_created The date that this resource was created.
233
+ # @param [Time] date_updated The date that this resource was last updated. `null` if the message has not been edited.
234
+ # @param [String] attributes A string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \\\"{}\\\" will be returned.
235
+ # @param [String] subject The subject of the message, can be up to 256 characters long.
236
+ # @param [ServiceConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
237
+ # @return [MessageInstance] Updated MessageInstance
238
+ def update(
239
+ author: :unset,
240
+ body: :unset,
241
+ date_created: :unset,
242
+ date_updated: :unset,
243
+ attributes: :unset,
244
+ subject: :unset,
245
+ x_twilio_webhook_enabled: :unset
246
+ )
247
+
248
+ data = Twilio::Values.of({
249
+ 'Author' => author,
250
+ 'Body' => body,
251
+ 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
252
+ 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
253
+ 'Attributes' => attributes,
254
+ 'Subject' => subject,
255
+ })
256
+
257
+ headers = Twilio::Values.of({ 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
258
+ payload = @version.update('POST', @uri, data: data, headers: headers)
259
+ MessageInstance.new(
260
+ @version,
261
+ payload,
262
+ chat_service_sid: @solution[:chat_service_sid],
263
+ conversation_sid: @solution[:conversation_sid],
264
+ sid: @solution[:sid],
265
+ )
266
+ end
267
+
268
+ ##
269
+ # Access the delivery_receipts
270
+ # @return [DeliveryReceiptList]
271
+ # @return [DeliveryReceiptContext] if sid was passed.
272
+ def delivery_receipts(sid=:unset)
273
+
274
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
275
+
276
+ if sid != :unset
277
+ return DeliveryReceiptContext.new(@version, @solution[:chat_service_sid], @solution[:conversation_sid], @solution[:sid],sid )
278
+ end
279
+
280
+ unless @delivery_receipts
281
+ @delivery_receipts = DeliveryReceiptList.new(
282
+ @version, chat_service_sid: @solution[:chat_service_sid], conversation_sid: @solution[:conversation_sid], message_sid: @solution[:sid], )
283
+ end
284
+
285
+ @delivery_receipts
286
+ end
287
+
288
+ ##
289
+ # Provide a user friendly representation
290
+ def to_s
291
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
292
+ "#<Twilio.Conversations.V1.MessageContext #{context}>"
293
+ end
294
+
295
+ ##
296
+ # Provide a detailed, user friendly representation
297
+ def inspect
298
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
299
+ "#<Twilio.Conversations.V1.MessageContext #{context}>"
300
+ end
301
+ end
302
+
303
+ class MessagePage < Page
304
+ ##
305
+ # Initialize the MessagePage
306
+ # @param [Version] version Version that contains the resource
307
+ # @param [Response] response Response from the API
308
+ # @param [Hash] solution Path solution for the resource
309
+ # @return [MessagePage] MessagePage
310
+ def initialize(version, response, solution)
311
+ super(version, response)
312
+
313
+ # Path Solution
314
+ @solution = solution
315
+ end
316
+
317
+ ##
318
+ # Build an instance of MessageInstance
319
+ # @param [Hash] payload Payload response from the API
320
+ # @return [MessageInstance] MessageInstance
321
+ def get_instance(payload)
322
+ MessageInstance.new(@version, payload, chat_service_sid: @solution[:chat_service_sid], conversation_sid: @solution[:conversation_sid])
323
+ end
324
+
325
+ ##
326
+ # Provide a user friendly representation
327
+ def to_s
328
+ '<Twilio.Conversations.V1.MessagePage>'
329
+ end
330
+ end
331
+ class MessageInstance < InstanceResource
332
+ ##
333
+ # Initialize the MessageInstance
334
+ # @param [Version] version Version that contains the resource
335
+ # @param [Hash] payload payload that contains response from Twilio
336
+ # @param [String] account_sid The SID of the
337
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Message
338
+ # resource.
339
+ # @param [String] sid The SID of the Call resource to fetch.
340
+ # @return [MessageInstance] MessageInstance
341
+ def initialize(version, payload , chat_service_sid: nil, conversation_sid: nil, sid: nil)
342
+ super(version)
343
+
344
+ # Marshaled Properties
345
+ @properties = {
346
+ 'account_sid' => payload['account_sid'],
347
+ 'chat_service_sid' => payload['chat_service_sid'],
348
+ 'conversation_sid' => payload['conversation_sid'],
349
+ 'sid' => payload['sid'],
350
+ 'index' => payload['index'] == nil ? payload['index'] : payload['index'].to_i,
351
+ 'author' => payload['author'],
352
+ 'body' => payload['body'],
353
+ 'media' => payload['media'],
354
+ 'attributes' => payload['attributes'],
355
+ 'participant_sid' => payload['participant_sid'],
356
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
357
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
358
+ 'delivery' => payload['delivery'],
359
+ 'url' => payload['url'],
360
+ 'links' => payload['links'],
361
+ 'content_sid' => payload['content_sid'],
362
+ }
363
+
364
+ # Context
365
+ @instance_context = nil
366
+ @params = { 'chat_service_sid' => chat_service_sid || @properties['chat_service_sid'] ,'conversation_sid' => conversation_sid || @properties['conversation_sid'] ,'sid' => sid || @properties['sid'] , }
367
+ end
368
+
369
+ ##
370
+ # Generate an instance context for the instance, the context is capable of
371
+ # performing various actions. All instance actions are proxied to the context
372
+ # @return [MessageContext] CallContext for this CallInstance
373
+ def context
374
+ unless @instance_context
375
+ @instance_context = MessageContext.new(@version , @params['chat_service_sid'], @params['conversation_sid'], @params['sid'])
376
+ end
377
+ @instance_context
378
+ end
379
+
380
+ ##
381
+ # @return [String] The unique ID of the [Account](https://www.twilio.com/docs/iam/api/account) responsible for this message.
382
+ def account_sid
383
+ @properties['account_sid']
384
+ end
385
+
386
+ ##
387
+ # @return [String] The SID of the [Conversation Service](https://www.twilio.com/docs/conversations/api/service-resource) the Participant resource is associated with.
388
+ def chat_service_sid
389
+ @properties['chat_service_sid']
390
+ end
391
+
392
+ ##
393
+ # @return [String] The unique ID of the [Conversation](https://www.twilio.com/docs/conversations/api/conversation-resource) for this message.
394
+ def conversation_sid
395
+ @properties['conversation_sid']
396
+ end
397
+
398
+ ##
399
+ # @return [String] A 34 character string that uniquely identifies this resource.
400
+ def sid
401
+ @properties['sid']
402
+ end
403
+
404
+ ##
405
+ # @return [String] The index of the message within the [Conversation](https://www.twilio.com/docs/conversations/api/conversation-resource).
406
+ def index
407
+ @properties['index']
408
+ end
409
+
410
+ ##
411
+ # @return [String] The channel specific identifier of the message's author. Defaults to `system`.
412
+ def author
413
+ @properties['author']
414
+ end
415
+
416
+ ##
417
+ # @return [String] The content of the message, can be up to 1,600 characters long.
418
+ def body
419
+ @properties['body']
420
+ end
421
+
422
+ ##
423
+ # @return [Array<Hash>] An array of objects that describe the Message's media, if the message contains media. Each object contains these fields: `content_type` with the MIME type of the media, `filename` with the name of the media, `sid` with the SID of the Media resource, and `size` with the media object's file size in bytes. If the Message has no media, this value is `null`.
424
+ def media
425
+ @properties['media']
426
+ end
427
+
428
+ ##
429
+ # @return [String] A string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \"{}\" will be returned.
430
+ def attributes
431
+ @properties['attributes']
432
+ end
433
+
434
+ ##
435
+ # @return [String] The unique ID of messages's author participant. Null in case of `system` sent message.
436
+ def participant_sid
437
+ @properties['participant_sid']
438
+ end
439
+
440
+ ##
441
+ # @return [Time] The date that this resource was created.
442
+ def date_created
443
+ @properties['date_created']
444
+ end
445
+
446
+ ##
447
+ # @return [Time] The date that this resource was last updated. `null` if the message has not been edited.
448
+ def date_updated
449
+ @properties['date_updated']
450
+ end
451
+
452
+ ##
453
+ # @return [Hash] An object that contains the summary of delivery statuses for the message to non-chat participants.
454
+ def delivery
455
+ @properties['delivery']
456
+ end
457
+
458
+ ##
459
+ # @return [String] An absolute API resource URL for this message.
460
+ def url
461
+ @properties['url']
462
+ end
463
+
464
+ ##
465
+ # @return [Hash] Contains an absolute API resource URL to access the delivery & read receipts of this message.
466
+ def links
467
+ @properties['links']
468
+ end
469
+
470
+ ##
471
+ # @return [String] The unique ID of the multi-channel [Rich Content](https://www.twilio.com/docs/content) template.
472
+ def content_sid
473
+ @properties['content_sid']
474
+ end
475
+
476
+ ##
477
+ # Delete the MessageInstance
478
+ # @param [ServiceConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
479
+ # @return [Boolean] True if delete succeeds, false otherwise
480
+ def delete(
481
+ x_twilio_webhook_enabled: :unset
482
+ )
483
+
484
+ context.delete(
485
+ x_twilio_webhook_enabled: x_twilio_webhook_enabled,
486
+ )
487
+ end
488
+
489
+ ##
490
+ # Fetch the MessageInstance
491
+ # @return [MessageInstance] Fetched MessageInstance
492
+ def fetch
493
+
494
+ context.fetch
495
+ end
496
+
497
+ ##
498
+ # Update the MessageInstance
499
+ # @param [String] author The channel specific identifier of the message's author. Defaults to `system`.
500
+ # @param [String] body The content of the message, can be up to 1,600 characters long.
501
+ # @param [Time] date_created The date that this resource was created.
502
+ # @param [Time] date_updated The date that this resource was last updated. `null` if the message has not been edited.
503
+ # @param [String] attributes A string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \\\"{}\\\" will be returned.
504
+ # @param [String] subject The subject of the message, can be up to 256 characters long.
505
+ # @param [ServiceConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
506
+ # @return [MessageInstance] Updated MessageInstance
507
+ def update(
508
+ author: :unset,
509
+ body: :unset,
510
+ date_created: :unset,
511
+ date_updated: :unset,
512
+ attributes: :unset,
513
+ subject: :unset,
514
+ x_twilio_webhook_enabled: :unset
515
+ )
516
+
517
+ context.update(
518
+ author: author,
519
+ body: body,
520
+ date_created: date_created,
521
+ date_updated: date_updated,
522
+ attributes: attributes,
523
+ subject: subject,
524
+ x_twilio_webhook_enabled: x_twilio_webhook_enabled,
525
+ )
526
+ end
527
+
528
+ ##
529
+ # Access the delivery_receipts
530
+ # @return [delivery_receipts] delivery_receipts
531
+ def delivery_receipts
532
+ context.delivery_receipts
533
+ end
534
+
535
+ ##
536
+ # Provide a user friendly representation
537
+ def to_s
538
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
539
+ "<Twilio.Conversations.V1.MessageInstance #{values}>"
540
+ end
541
+
542
+ ##
543
+ # Provide a detailed, user friendly representation
544
+ def inspect
545
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
546
+ "<Twilio.Conversations.V1.MessageInstance #{values}>"
547
+ end
548
+ end
549
+
550
+ end
551
+ end
552
+ end
553
+ end
554
+ end
555
+ end
556
+
557
+