twilio-ruby 5.5.1 → 5.58.3

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 (811) hide show
  1. checksums.yaml +5 -5
  2. data/.dockerignore +1 -0
  3. data/.gitignore +5 -0
  4. data/.rubocop.yml +22 -3
  5. data/.rubocop_todo.yml +86 -75
  6. data/.travis.yml +51 -16
  7. data/CHANGES.md +2000 -0
  8. data/CODE_OF_CONDUCT.md +73 -0
  9. data/CONTRIBUTING.md +4 -2
  10. data/Dockerfile +9 -0
  11. data/Gemfile +1 -8
  12. data/ISSUE_TEMPLATE.md +17 -13
  13. data/{LICENSE.md → LICENSE} +2 -2
  14. data/Makefile +18 -14
  15. data/PULL_REQUEST_TEMPLATE.md +31 -0
  16. data/README.md +121 -53
  17. data/Rakefile +0 -54
  18. data/VERSIONS.md +9 -10
  19. data/examples/examples.rb +1 -1
  20. data/examples/print_call_log.rb +1 -1
  21. data/githooks/pre-commit +0 -0
  22. data/lib/rack/twilio_webhook_authentication.rb +2 -0
  23. data/lib/twilio-ruby/framework/request.rb +2 -0
  24. data/lib/twilio-ruby/framework/response.rb +2 -0
  25. data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +3 -1
  26. data/lib/twilio-ruby/framework/rest/error.rb +51 -0
  27. data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +2 -0
  28. data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +2 -0
  29. data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +3 -1
  30. data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +2 -0
  31. data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +10 -21
  32. data/lib/twilio-ruby/framework/serialize.rb +2 -0
  33. data/lib/twilio-ruby/framework/twilio_response.rb +2 -0
  34. data/lib/twilio-ruby/framework/values.rb +2 -0
  35. data/lib/twilio-ruby/http/http_client.rb +32 -15
  36. data/lib/twilio-ruby/http.rb +5 -0
  37. data/lib/twilio-ruby/jwt/access_token.rb +12 -3
  38. data/lib/twilio-ruby/jwt/client_capability.rb +3 -1
  39. data/lib/twilio-ruby/jwt/jwt.rb +8 -0
  40. data/lib/twilio-ruby/jwt/task_router.rb +4 -2
  41. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +186 -0
  42. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +57 -56
  43. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +56 -62
  44. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +11 -8
  45. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +200 -0
  46. data/lib/twilio-ruby/rest/accounts/v1.rb +16 -0
  47. data/lib/twilio-ruby/rest/accounts.rb +14 -0
  48. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +43 -37
  49. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +124 -93
  50. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +181 -176
  51. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +40 -35
  52. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +189 -85
  53. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +500 -0
  54. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +189 -85
  55. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +500 -0
  56. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +500 -0
  57. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +189 -85
  58. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +500 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +129 -26
  60. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +125 -0
  61. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +201 -0
  62. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +80 -63
  63. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +65 -55
  64. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +76 -69
  65. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +375 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +184 -63
  67. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +461 -261
  68. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +341 -117
  69. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +469 -0
  70. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +154 -79
  71. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +97 -70
  72. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +51 -42
  73. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +58 -57
  74. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +176 -79
  75. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +175 -79
  76. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +175 -79
  77. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +318 -259
  78. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +46 -43
  79. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +27 -20
  80. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +54 -46
  81. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +218 -156
  82. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +15 -17
  83. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +15 -17
  84. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +58 -54
  85. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +64 -61
  86. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +59 -42
  87. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +98 -91
  88. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +58 -49
  89. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +52 -44
  90. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +58 -43
  91. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +110 -70
  92. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +88 -78
  93. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +40 -33
  94. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +63 -57
  95. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +49 -51
  96. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +348 -0
  97. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +348 -0
  98. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +163 -0
  99. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +348 -0
  100. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +137 -0
  101. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +135 -0
  102. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +59 -55
  103. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +58 -55
  104. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +220 -103
  105. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +101 -63
  106. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +45 -51
  107. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +15 -11
  108. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +20 -21
  109. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +50 -43
  110. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +82 -33
  111. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +82 -33
  112. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +82 -33
  113. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +82 -33
  114. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +82 -33
  115. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +82 -33
  116. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +82 -33
  117. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +82 -33
  118. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +85 -54
  119. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +117 -104
  120. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +8 -5
  121. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +43 -32
  122. data/lib/twilio-ruby/rest/api/v2010/account.rb +114 -92
  123. data/lib/twilio-ruby/rest/api/v2010.rb +11 -4
  124. data/lib/twilio-ruby/rest/api.rb +39 -26
  125. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +220 -0
  126. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +214 -0
  127. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +399 -0
  128. data/lib/twilio-ruby/rest/{preview/understand/service/intent.rb → autopilot/v1/assistant/field_type.rb} +145 -148
  129. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +392 -0
  130. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +469 -0
  131. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +218 -0
  132. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +386 -0
  133. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +456 -0
  134. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +255 -0
  135. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +237 -0
  136. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +507 -0
  137. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +420 -0
  138. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +650 -0
  139. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +194 -0
  140. data/lib/twilio-ruby/rest/autopilot/v1.rb +52 -0
  141. data/lib/twilio-ruby/rest/autopilot.rb +53 -0
  142. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +286 -0
  143. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +286 -0
  144. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +255 -0
  145. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +243 -0
  146. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +226 -0
  147. data/lib/twilio-ruby/rest/bulkexports/v1.rb +62 -0
  148. data/lib/twilio-ruby/rest/bulkexports.rb +56 -0
  149. data/lib/twilio-ruby/rest/chat/v1/credential.rb +101 -70
  150. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +82 -54
  151. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +100 -65
  152. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +89 -69
  153. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +96 -77
  154. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +74 -62
  155. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +25 -19
  156. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +85 -71
  157. data/lib/twilio-ruby/rest/chat/v1/service.rb +355 -342
  158. data/lib/twilio-ruby/rest/chat/v1.rb +16 -10
  159. data/lib/twilio-ruby/rest/chat/v2/credential.rb +99 -70
  160. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +83 -50
  161. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +77 -54
  162. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +175 -79
  163. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +150 -85
  164. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +478 -0
  165. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +178 -91
  166. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +76 -62
  167. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +77 -46
  168. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +206 -22
  169. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +112 -77
  170. data/lib/twilio-ruby/rest/chat/v2/service.rb +251 -166
  171. data/lib/twilio-ruby/rest/chat/v2.rb +14 -10
  172. data/lib/twilio-ruby/rest/chat.rb +6 -2
  173. data/lib/twilio-ruby/rest/client.rb +216 -43
  174. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -0
  175. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +260 -0
  176. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +355 -0
  177. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +502 -0
  178. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +502 -0
  179. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +410 -0
  180. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +562 -0
  181. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +419 -0
  182. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +312 -0
  183. data/lib/twilio-ruby/rest/conversations/v1/role.rb +366 -0
  184. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +380 -0
  185. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +307 -0
  186. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +278 -0
  187. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +386 -0
  188. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +548 -0
  189. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +541 -0
  190. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +449 -0
  191. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +595 -0
  192. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +324 -0
  193. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +387 -0
  194. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +466 -0
  195. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +481 -0
  196. data/lib/twilio-ruby/rest/{preview/proxy → conversations/v1}/service.rb +165 -170
  197. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +442 -0
  198. data/lib/twilio-ruby/rest/conversations/v1/user.rb +451 -0
  199. data/lib/twilio-ruby/rest/conversations/v1.rb +126 -0
  200. data/lib/twilio-ruby/rest/conversations.rb +95 -0
  201. data/lib/twilio-ruby/rest/events/v1/event_type.rb +298 -0
  202. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +290 -0
  203. data/lib/twilio-ruby/rest/events/v1/schema.rb +226 -0
  204. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +115 -0
  205. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +119 -0
  206. data/lib/twilio-ruby/rest/events/v1/sink.rb +418 -0
  207. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +346 -0
  208. data/lib/twilio-ruby/rest/events/v1/subscription.rb +397 -0
  209. data/lib/twilio-ruby/rest/events/v1.rb +94 -0
  210. data/lib/twilio-ruby/rest/events.rb +72 -0
  211. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +43 -42
  212. data/lib/twilio-ruby/rest/fax/v1/fax.rb +128 -114
  213. data/lib/twilio-ruby/rest/fax/v1.rb +9 -5
  214. data/lib/twilio-ruby/rest/fax.rb +4 -1
  215. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +340 -0
  216. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +462 -0
  217. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +565 -0
  218. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +341 -0
  219. data/lib/twilio-ruby/rest/flex_api/v1.rb +83 -0
  220. data/lib/twilio-ruby/rest/flex_api.rb +71 -0
  221. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +233 -0
  222. data/lib/twilio-ruby/rest/frontline_api/v1.rb +45 -0
  223. data/lib/twilio-ruby/rest/frontline_api.rb +47 -0
  224. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +262 -0
  225. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +252 -0
  226. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +307 -0
  227. data/lib/twilio-ruby/rest/insights/v1/call.rb +236 -0
  228. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +434 -0
  229. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +378 -0
  230. data/lib/twilio-ruby/rest/insights/v1/room.rb +499 -0
  231. data/lib/twilio-ruby/rest/insights/v1.rb +67 -0
  232. data/lib/twilio-ruby/rest/insights.rb +60 -0
  233. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +33 -41
  234. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +30 -34
  235. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +32 -40
  236. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +30 -38
  237. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +40 -48
  238. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +39 -47
  239. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +7 -7
  240. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +34 -42
  241. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +45 -147
  242. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +16 -12
  243. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +33 -41
  244. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +40 -34
  245. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +30 -34
  246. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +64 -44
  247. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +52 -41
  248. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +422 -0
  249. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +90 -53
  250. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +39 -47
  251. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +28 -27
  252. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +167 -12
  253. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +59 -48
  254. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +51 -55
  255. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +16 -12
  256. data/lib/twilio-ruby/rest/ip_messaging.rb +6 -4
  257. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +70 -35
  258. data/lib/twilio-ruby/rest/lookups/v1.rb +10 -5
  259. data/lib/twilio-ruby/rest/lookups.rb +5 -1
  260. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +388 -0
  261. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +164 -0
  262. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +150 -0
  263. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +58 -49
  264. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +58 -50
  265. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +54 -51
  266. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +433 -0
  267. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +129 -0
  268. data/lib/twilio-ruby/rest/messaging/v1/service.rb +261 -117
  269. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +111 -0
  270. data/lib/twilio-ruby/rest/messaging/v1.rb +45 -5
  271. data/lib/twilio-ruby/rest/messaging.rb +30 -1
  272. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +82 -66
  273. data/lib/twilio-ruby/rest/monitor/v1/event.rb +84 -56
  274. data/lib/twilio-ruby/rest/monitor/v1.rb +14 -10
  275. data/lib/twilio-ruby/rest/monitor.rb +6 -2
  276. data/lib/twilio-ruby/rest/notify/v1/credential.rb +98 -70
  277. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +113 -72
  278. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +129 -50
  279. data/lib/twilio-ruby/rest/notify/v1/service.rb +191 -163
  280. data/lib/twilio-ruby/rest/notify/v1.rb +16 -10
  281. data/lib/twilio-ruby/rest/notify.rb +6 -2
  282. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +309 -0
  283. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +320 -0
  284. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +517 -0
  285. data/lib/twilio-ruby/rest/{preview/proxy/service/phone_number.rb → numbers/v2/regulatory_compliance/end_user.rb} +143 -125
  286. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +273 -0
  287. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +314 -0
  288. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +371 -0
  289. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +273 -0
  290. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +189 -0
  291. data/lib/twilio-ruby/rest/numbers/v2.rb +35 -0
  292. data/lib/twilio-ruby/rest/numbers.rb +44 -0
  293. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +101 -16
  294. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +275 -0
  295. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +249 -0
  296. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +72 -22
  297. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +43 -34
  298. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +16 -10
  299. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +35 -43
  300. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +36 -44
  301. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +33 -41
  302. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +36 -44
  303. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +43 -51
  304. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +7 -4
  305. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +403 -0
  306. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +122 -72
  307. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +154 -72
  308. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +12 -8
  309. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +33 -29
  310. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +33 -34
  311. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +39 -39
  312. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +65 -74
  313. data/lib/twilio-ruby/rest/preview/marketplace.rb +14 -12
  314. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +26 -29
  315. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +42 -47
  316. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +42 -43
  317. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +26 -29
  318. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +34 -38
  319. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +43 -44
  320. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +26 -29
  321. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +34 -38
  322. data/lib/twilio-ruby/rest/preview/sync/service.rb +39 -47
  323. data/lib/twilio-ruby/rest/preview/sync.rb +7 -4
  324. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +165 -0
  325. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +225 -0
  326. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +195 -0
  327. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +186 -0
  328. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +277 -0
  329. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +65 -0
  330. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +212 -0
  331. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +212 -0
  332. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +206 -0
  333. data/lib/twilio-ruby/rest/preview/understand/{service → assistant}/field_type/field_value.rb +77 -66
  334. data/lib/twilio-ruby/rest/preview/understand/{service → assistant}/field_type.rb +79 -71
  335. data/lib/twilio-ruby/rest/preview/understand/{service → assistant}/model_build.rb +88 -66
  336. data/lib/twilio-ruby/rest/preview/understand/{service → assistant}/query.rb +105 -90
  337. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +212 -0
  338. data/lib/twilio-ruby/rest/preview/understand/{service/intent → assistant/task}/field.rb +75 -73
  339. data/lib/twilio-ruby/rest/preview/understand/{service/intent → assistant/task}/sample.rb +114 -93
  340. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +241 -0
  341. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +225 -0
  342. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +495 -0
  343. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +629 -0
  344. data/lib/twilio-ruby/rest/preview/understand.rb +13 -9
  345. data/lib/twilio-ruby/rest/preview/wireless/command.rb +25 -29
  346. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +37 -45
  347. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +19 -14
  348. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +24 -27
  349. data/lib/twilio-ruby/rest/preview/wireless.rb +17 -12
  350. data/lib/twilio-ruby/rest/preview.rb +53 -34
  351. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +35 -30
  352. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +9 -5
  353. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +34 -29
  354. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +9 -5
  355. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +35 -30
  356. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +27 -24
  357. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +12 -8
  358. data/lib/twilio-ruby/rest/pricing/v1.rb +2 -0
  359. data/lib/twilio-ruby/rest/pricing/v2/country.rb +280 -0
  360. data/lib/twilio-ruby/rest/pricing/v2/number.rb +225 -0
  361. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +282 -0
  362. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +227 -0
  363. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +146 -0
  364. data/lib/twilio-ruby/rest/pricing/v2.rb +72 -0
  365. data/lib/twilio-ruby/rest/pricing.rb +30 -2
  366. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +116 -57
  367. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +64 -96
  368. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +67 -60
  369. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +83 -118
  370. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +138 -127
  371. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +87 -53
  372. data/lib/twilio-ruby/rest/proxy/v1/service.rb +183 -101
  373. data/lib/twilio-ruby/rest/proxy/v1.rb +9 -5
  374. data/lib/twilio-ruby/rest/proxy.rb +4 -1
  375. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +334 -0
  376. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +387 -0
  377. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +219 -0
  378. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +391 -0
  379. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +349 -0
  380. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +394 -0
  381. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +407 -0
  382. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +454 -0
  383. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +241 -0
  384. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +364 -0
  385. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +387 -0
  386. data/lib/twilio-ruby/rest/{preview/understand → serverless/v1}/service.rb +172 -179
  387. data/lib/twilio-ruby/rest/serverless/v1.rb +44 -0
  388. data/lib/twilio-ruby/rest/serverless.rb +47 -0
  389. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +210 -0
  390. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +225 -0
  391. data/lib/twilio-ruby/rest/{preview/studio → studio/v1}/flow/engagement/step.rb +69 -51
  392. data/lib/twilio-ruby/rest/{preview/studio → studio/v1}/flow/engagement.rb +94 -77
  393. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +211 -0
  394. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +228 -0
  395. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +372 -0
  396. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +456 -0
  397. data/lib/twilio-ruby/rest/{preview/studio → studio/v1}/flow.rb +73 -61
  398. data/lib/twilio-ruby/rest/studio/v1.rb +44 -0
  399. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +211 -0
  400. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +228 -0
  401. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +372 -0
  402. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +449 -0
  403. data/lib/twilio-ruby/rest/{preview/proxy/service/short_code.rb → studio/v2/flow/flow_revision.rb} +116 -129
  404. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +199 -0
  405. data/lib/twilio-ruby/rest/studio/v2/flow.rb +482 -0
  406. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +117 -0
  407. data/lib/twilio-ruby/rest/studio/v2.rb +51 -0
  408. data/lib/twilio-ruby/rest/studio.rb +60 -0
  409. data/lib/twilio-ruby/rest/supersim/v1/command.rb +368 -0
  410. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +494 -0
  411. data/lib/twilio-ruby/rest/supersim/v1/network.rb +307 -0
  412. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +339 -0
  413. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +361 -0
  414. data/lib/twilio-ruby/rest/{notify/v1/service/segment.rb → supersim/v1/sim/billing_period.rb} +66 -58
  415. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +443 -0
  416. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +371 -0
  417. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +338 -0
  418. data/lib/twilio-ruby/rest/supersim/v1.rb +131 -0
  419. data/lib/twilio-ruby/rest/supersim.rb +97 -0
  420. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +66 -72
  421. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +83 -78
  422. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +159 -87
  423. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +65 -72
  424. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +89 -78
  425. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +169 -89
  426. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +63 -72
  427. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +88 -78
  428. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +21 -24
  429. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +79 -74
  430. data/lib/twilio-ruby/rest/sync/v1/service.rb +159 -85
  431. data/lib/twilio-ruby/rest/sync/v1.rb +8 -5
  432. data/lib/twilio-ruby/rest/sync.rb +4 -1
  433. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +105 -66
  434. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +139 -70
  435. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +317 -156
  436. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +227 -113
  437. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +121 -31
  438. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +82 -46
  439. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +66 -30
  440. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +60 -31
  441. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +64 -32
  442. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +137 -92
  443. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +313 -156
  444. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +62 -56
  445. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +59 -29
  446. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +61 -36
  447. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +36 -24
  448. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +59 -34
  449. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +158 -100
  450. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +84 -47
  451. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +49 -27
  452. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +68 -31
  453. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +130 -84
  454. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +85 -46
  455. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +44 -28
  456. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +61 -30
  457. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +163 -98
  458. data/lib/twilio-ruby/rest/taskrouter/v1.rb +8 -5
  459. data/lib/twilio-ruby/rest/taskrouter.rb +4 -1
  460. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +57 -48
  461. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +49 -48
  462. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +97 -71
  463. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +75 -68
  464. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +198 -0
  465. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +185 -89
  466. data/lib/twilio-ruby/rest/trunking/v1.rb +9 -5
  467. data/lib/twilio-ruby/rest/trunking.rb +4 -1
  468. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +359 -0
  469. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +330 -0
  470. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +328 -0
  471. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +523 -0
  472. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +356 -0
  473. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +271 -0
  474. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +262 -0
  475. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +369 -0
  476. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +271 -0
  477. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +359 -0
  478. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +330 -0
  479. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +328 -0
  480. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +523 -0
  481. data/lib/twilio-ruby/rest/trusthub/v1.rb +146 -0
  482. data/lib/twilio-ruby/rest/trusthub.rb +100 -0
  483. data/lib/twilio-ruby/rest/verify/v2/form.rb +191 -0
  484. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +124 -0
  485. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +205 -0
  486. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +533 -0
  487. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +455 -0
  488. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +299 -0
  489. data/lib/twilio-ruby/rest/{notify/v1/service/user.rb → verify/v2/service/entity.rb} +153 -143
  490. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +370 -0
  491. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +399 -0
  492. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +391 -0
  493. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +356 -0
  494. data/lib/twilio-ruby/rest/{preview/acc_security → verify/v2}/service/verification_check.rb +62 -37
  495. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +427 -0
  496. data/lib/twilio-ruby/rest/verify/v2/service.rb +761 -0
  497. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +329 -0
  498. data/lib/twilio-ruby/rest/verify/v2/verification_template.rb +206 -0
  499. data/lib/twilio-ruby/rest/verify/v2.rb +85 -0
  500. data/lib/twilio-ruby/rest/verify.rb +71 -0
  501. data/lib/twilio-ruby/rest/video/v1/composition.rb +496 -0
  502. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +657 -0
  503. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +269 -0
  504. data/lib/twilio-ruby/rest/video/v1/recording.rb +101 -59
  505. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +269 -0
  506. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +97 -56
  507. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +43 -34
  508. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +175 -0
  509. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +340 -0
  510. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +136 -60
  511. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +144 -0
  512. data/lib/twilio-ruby/rest/video/v1/room.rb +139 -86
  513. data/lib/twilio-ruby/rest/video/v1.rb +60 -10
  514. data/lib/twilio-ruby/rest/video.rb +36 -2
  515. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +496 -0
  516. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +441 -0
  517. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +362 -0
  518. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +128 -0
  519. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +190 -0
  520. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +404 -0
  521. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +197 -0
  522. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +129 -0
  523. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +349 -0
  524. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +329 -0
  525. data/lib/twilio-ruby/rest/voice/v1.rb +103 -0
  526. data/lib/twilio-ruby/rest/voice.rb +80 -0
  527. data/lib/twilio-ruby/rest/wireless/v1/command.rb +133 -69
  528. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +98 -85
  529. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +40 -43
  530. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +46 -30
  531. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +210 -110
  532. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +229 -0
  533. data/lib/twilio-ruby/rest/wireless/v1.rb +27 -15
  534. data/lib/twilio-ruby/rest/wireless.rb +14 -3
  535. data/lib/twilio-ruby/rest.rb +13 -0
  536. data/lib/twilio-ruby/security/request_validator.rb +104 -8
  537. data/lib/twilio-ruby/twiml/fax_response.rb +7 -2
  538. data/lib/twilio-ruby/twiml/messaging_response.rb +5 -2
  539. data/lib/twilio-ruby/twiml/twiml.rb +63 -12
  540. data/lib/twilio-ruby/twiml/voice_response.rb +720 -49
  541. data/lib/twilio-ruby/util/configuration.rb +24 -5
  542. data/lib/twilio-ruby/util.rb +2 -0
  543. data/lib/twilio-ruby/version.rb +1 -1
  544. data/lib/twilio-ruby.rb +10 -24
  545. data/sonar-project.properties +13 -0
  546. data/twilio-ruby.gemspec +15 -10
  547. metadata +368 -556
  548. data/lib/twilio-ruby/framework/error.rb +0 -33
  549. data/lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb +0 -260
  550. data/lib/twilio-ruby/rest/notify/v1/service/user/user_binding.rb +0 -431
  551. data/lib/twilio-ruby/rest/preview/acc_security/service/verification.rb +0 -183
  552. data/lib/twilio-ruby/rest/preview/acc_security/service.rb +0 -386
  553. data/lib/twilio-ruby/rest/preview/acc_security.rb +0 -41
  554. data/lib/twilio-ruby/rest/preview/proxy/service/session/interaction.rb +0 -435
  555. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant/message_interaction.rb +0 -453
  556. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant.rb +0 -512
  557. data/lib/twilio-ruby/rest/preview/proxy/service/session.rb +0 -495
  558. data/lib/twilio-ruby/rest/preview/proxy.rb +0 -41
  559. data/lib/twilio-ruby/rest/preview/studio.rb +0 -41
  560. data/spec/framework/request_spec.rb +0 -36
  561. data/spec/framework/serialize_spec.rb +0 -80
  562. data/spec/holodeck/holodeck.rb +0 -61
  563. data/spec/holodeck/hologram.rb +0 -4
  564. data/spec/http/http_client_spec.rb +0 -122
  565. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -224
  566. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -224
  567. data/spec/integration/accounts/v1/credential_spec.rb +0 -10
  568. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -105
  569. data/spec/integration/api/v2010/account/address_spec.rb +0 -267
  570. data/spec/integration/api/v2010/account/application_spec.rb +0 -284
  571. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -137
  572. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -101
  573. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -100
  574. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -100
  575. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -128
  576. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -137
  577. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -149
  578. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -179
  579. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -186
  580. data/spec/integration/api/v2010/account/call_spec.rb +0 -312
  581. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -280
  582. data/spec/integration/api/v2010/account/conference_spec.rb +0 -174
  583. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -177
  584. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -135
  585. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -221
  586. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -183
  587. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -183
  588. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -183
  589. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -339
  590. data/spec/integration/api/v2010/account/key_spec.rb +0 -178
  591. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -48
  592. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -162
  593. data/spec/integration/api/v2010/account/message_spec.rb +0 -293
  594. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -45
  595. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -45
  596. data/spec/integration/api/v2010/account/notification_spec.rb +0 -172
  597. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -193
  598. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -167
  599. data/spec/integration/api/v2010/account/queue_spec.rb +0 -240
  600. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -175
  601. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -166
  602. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -174
  603. data/spec/integration/api/v2010/account/recording_spec.rb +0 -179
  604. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -180
  605. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -178
  606. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -254
  607. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -242
  608. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -208
  609. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -218
  610. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -285
  611. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -258
  612. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -252
  613. data/spec/integration/api/v2010/account/sip_spec.rb +0 -10
  614. data/spec/integration/api/v2010/account/token_spec.rb +0 -56
  615. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -167
  616. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -111
  617. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -111
  618. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -111
  619. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -111
  620. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -111
  621. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -111
  622. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -111
  623. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -111
  624. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -108
  625. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -283
  626. data/spec/integration/api/v2010/account/usage_spec.rb +0 -10
  627. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -46
  628. data/spec/integration/api/v2010/account_spec.rb +0 -254
  629. data/spec/integration/chat/v1/credential_spec.rb +0 -221
  630. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -208
  631. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -282
  632. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -292
  633. data/spec/integration/chat/v1/service/channel_spec.rb +0 -275
  634. data/spec/integration/chat/v1/service/role_spec.rb +0 -261
  635. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -92
  636. data/spec/integration/chat/v1/service/user_spec.rb +0 -264
  637. data/spec/integration/chat/v1/service_spec.rb +0 -297
  638. data/spec/integration/chat/v2/credential_spec.rb +0 -221
  639. data/spec/integration/chat/v2/service/binding_spec.rb +0 -175
  640. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -208
  641. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -255
  642. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -403
  643. data/spec/integration/chat/v2/service/channel_spec.rb +0 -275
  644. data/spec/integration/chat/v2/service/role_spec.rb +0 -261
  645. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -178
  646. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -92
  647. data/spec/integration/chat/v2/service/user_spec.rb +0 -268
  648. data/spec/integration/chat/v2/service_spec.rb +0 -351
  649. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -126
  650. data/spec/integration/fax/v1/fax_spec.rb +0 -269
  651. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -221
  652. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -208
  653. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -282
  654. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -292
  655. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -275
  656. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -261
  657. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -92
  658. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -264
  659. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -297
  660. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -221
  661. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -175
  662. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -208
  663. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -255
  664. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -403
  665. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -275
  666. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -261
  667. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -178
  668. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -92
  669. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -268
  670. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -351
  671. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -60
  672. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -168
  673. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -199
  674. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -171
  675. data/spec/integration/messaging/v1/service_spec.rb +0 -261
  676. data/spec/integration/monitor/v1/alert_spec.rb +0 -161
  677. data/spec/integration/monitor/v1/event_spec.rb +0 -148
  678. data/spec/integration/notify/v1/credential_spec.rb +0 -221
  679. data/spec/integration/notify/v1/service/binding_spec.rb +0 -223
  680. data/spec/integration/notify/v1/service/notification_spec.rb +0 -97
  681. data/spec/integration/notify/v1/service/segment_spec.rb +0 -84
  682. data/spec/integration/notify/v1/service/user/segment_memberships_spec.rb +0 -116
  683. data/spec/integration/notify/v1/service/user/user_binding_spec.rb +0 -266
  684. data/spec/integration/notify/v1/service/user_spec.rb +0 -211
  685. data/spec/integration/notify/v1/service_spec.rb +0 -280
  686. data/spec/integration/preview/acc_security/service/verification_check_spec.rb +0 -50
  687. data/spec/integration/preview/acc_security/service/verification_spec.rb +0 -50
  688. data/spec/integration/preview/acc_security/service_spec.rb +0 -183
  689. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -56
  690. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -77
  691. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -43
  692. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -236
  693. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -231
  694. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -247
  695. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -235
  696. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -244
  697. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -211
  698. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -307
  699. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -121
  700. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -142
  701. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -162
  702. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -252
  703. data/spec/integration/preview/proxy/service/phone_number_spec.rb +0 -171
  704. data/spec/integration/preview/proxy/service/session/interaction_spec.rb +0 -104
  705. data/spec/integration/preview/proxy/service/session/participant/message_interaction_spec.rb +0 -164
  706. data/spec/integration/preview/proxy/service/session/participant_spec.rb +0 -224
  707. data/spec/integration/preview/proxy/service/session_spec.rb +0 -216
  708. data/spec/integration/preview/proxy/service/short_code_spec.rb +0 -171
  709. data/spec/integration/preview/proxy/service_spec.rb +0 -200
  710. data/spec/integration/preview/studio/flow/engagement/step_spec.rb +0 -96
  711. data/spec/integration/preview/studio/flow/engagement_spec.rb +0 -171
  712. data/spec/integration/preview/studio/flow_spec.rb +0 -115
  713. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -202
  714. data/spec/integration/preview/sync/service/document_spec.rb +0 -252
  715. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -252
  716. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -202
  717. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -207
  718. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -252
  719. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -202
  720. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -207
  721. data/spec/integration/preview/sync/service_spec.rb +0 -244
  722. data/spec/integration/preview/understand/service/field_type/field_value_spec.rb +0 -205
  723. data/spec/integration/preview/understand/service/field_type_spec.rb +0 -244
  724. data/spec/integration/preview/understand/service/intent/field_spec.rb +0 -205
  725. data/spec/integration/preview/understand/service/intent/sample_spec.rb +0 -247
  726. data/spec/integration/preview/understand/service/intent_spec.rb +0 -252
  727. data/spec/integration/preview/understand/service/model_build_spec.rb +0 -231
  728. data/spec/integration/preview/understand/service/query_spec.rb +0 -300
  729. data/spec/integration/preview/understand/service_spec.rb +0 -256
  730. data/spec/integration/preview/wireless/command_spec.rb +0 -167
  731. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -260
  732. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -49
  733. data/spec/integration/preview/wireless/sim_spec.rb +0 -208
  734. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -137
  735. data/spec/integration/pricing/v1/messaging_spec.rb +0 -10
  736. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -128
  737. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -10
  738. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -266
  739. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -54
  740. data/spec/integration/pricing/v1/voice_spec.rb +0 -10
  741. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -182
  742. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -134
  743. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -164
  744. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -227
  745. data/spec/integration/proxy/v1/service/session_spec.rb +0 -228
  746. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -180
  747. data/spec/integration/proxy/v1/service_spec.rb +0 -213
  748. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -202
  749. data/spec/integration/sync/v1/service/document_spec.rb +0 -255
  750. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -255
  751. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -202
  752. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -255
  753. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -255
  754. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -202
  755. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -255
  756. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -45
  757. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -247
  758. data/spec/integration/sync/v1/service_spec.rb +0 -252
  759. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -234
  760. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -157
  761. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -192
  762. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -127
  763. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -94
  764. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -79
  765. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -106
  766. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -144
  767. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -296
  768. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -324
  769. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -192
  770. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -201
  771. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -90
  772. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -87
  773. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -68
  774. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -114
  775. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -292
  776. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -95
  777. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -55
  778. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -69
  779. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -270
  780. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -92
  781. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -70
  782. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -103
  783. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -293
  784. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -190
  785. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -190
  786. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -250
  787. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -265
  788. data/spec/integration/trunking/v1/trunk_spec.rb +0 -276
  789. data/spec/integration/video/v1/recording_spec.rb +0 -169
  790. data/spec/integration/video/v1/room/recording_spec.rb +0 -146
  791. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -94
  792. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -182
  793. data/spec/integration/video/v1/room_spec.rb +0 -255
  794. data/spec/integration/wireless/v1/command_spec.rb +0 -164
  795. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -268
  796. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -85
  797. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -65
  798. data/spec/integration/wireless/v1/sim_spec.rb +0 -214
  799. data/spec/jwt/access_token_spec.rb +0 -149
  800. data/spec/jwt/client_capability_spec.rb +0 -104
  801. data/spec/jwt/task_router_spec.rb +0 -172
  802. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  803. data/spec/rest/client_spec.rb +0 -49
  804. data/spec/security/request_validator_spec.rb +0 -113
  805. data/spec/spec_helper.rb +0 -32
  806. data/spec/support/fakeweb.rb +0 -2
  807. data/spec/twilio_spec.rb +0 -15
  808. data/spec/twiml/messaging_response_spec.rb +0 -95
  809. data/spec/twiml/voice_response_spec.rb +0 -479
  810. data/spec/util/configuration_spec.rb +0 -15
  811. data/spec/util/url_encode_spec.rb +0 -12
@@ -0,0 +1,449 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ module Twilio
10
+ module REST
11
+ class Studio < Domain
12
+ class V2 < Version
13
+ class FlowContext < InstanceContext
14
+ class ExecutionList < ListResource
15
+ ##
16
+ # Initialize the ExecutionList
17
+ # @param [Version] version Version that contains the resource
18
+ # @param [String] flow_sid The SID of the Flow.
19
+ # @return [ExecutionList] ExecutionList
20
+ def initialize(version, flow_sid: nil)
21
+ super(version)
22
+
23
+ # Path Solution
24
+ @solution = {flow_sid: flow_sid}
25
+ @uri = "/Flows/#{@solution[:flow_sid]}/Executions"
26
+ end
27
+
28
+ ##
29
+ # Lists ExecutionInstance records from the API as a list.
30
+ # Unlike stream(), this operation is eager and will load `limit` records into
31
+ # memory before returning.
32
+ # @param [Time] date_created_from Only show Execution resources starting on or
33
+ # after this {ISO 8601}[https://en.wikipedia.org/wiki/ISO_8601] date-time, given
34
+ # as `YYYY-MM-DDThh:mm:ss-hh:mm`.
35
+ # @param [Time] date_created_to Only show Execution resources starting before this
36
+ # {ISO 8601}[https://en.wikipedia.org/wiki/ISO_8601] date-time, given as
37
+ # `YYYY-MM-DDThh:mm:ss-hh:mm`.
38
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
39
+ # guarantees to never return more than limit. Default is no limit
40
+ # @param [Integer] page_size Number of records to fetch per request, when
41
+ # not set will use the default value of 50 records. If no page_size is defined
42
+ # but a limit is defined, stream() will attempt to read the limit with the most
43
+ # efficient page size, i.e. min(limit, 1000)
44
+ # @return [Array] Array of up to limit results
45
+ def list(date_created_from: :unset, date_created_to: :unset, limit: nil, page_size: nil)
46
+ self.stream(
47
+ date_created_from: date_created_from,
48
+ date_created_to: date_created_to,
49
+ limit: limit,
50
+ page_size: page_size
51
+ ).entries
52
+ end
53
+
54
+ ##
55
+ # Streams ExecutionInstance records from the API as an Enumerable.
56
+ # This operation lazily loads records as efficiently as possible until the limit
57
+ # is reached.
58
+ # @param [Time] date_created_from Only show Execution resources starting on or
59
+ # after this {ISO 8601}[https://en.wikipedia.org/wiki/ISO_8601] date-time, given
60
+ # as `YYYY-MM-DDThh:mm:ss-hh:mm`.
61
+ # @param [Time] date_created_to Only show Execution resources starting before this
62
+ # {ISO 8601}[https://en.wikipedia.org/wiki/ISO_8601] date-time, given as
63
+ # `YYYY-MM-DDThh:mm:ss-hh:mm`.
64
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
65
+ # guarantees to never return more than limit. Default is no limit.
66
+ # @param [Integer] page_size Number of records to fetch per request, when
67
+ # not set will use the default value of 50 records. If no page_size is defined
68
+ # but a limit is defined, stream() will attempt to read the limit with the most
69
+ # efficient page size, i.e. min(limit, 1000)
70
+ # @return [Enumerable] Enumerable that will yield up to limit results
71
+ def stream(date_created_from: :unset, date_created_to: :unset, limit: nil, page_size: nil)
72
+ limits = @version.read_limits(limit, page_size)
73
+
74
+ page = self.page(
75
+ date_created_from: date_created_from,
76
+ date_created_to: date_created_to,
77
+ page_size: limits[:page_size],
78
+ )
79
+
80
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
81
+ end
82
+
83
+ ##
84
+ # When passed a block, yields ExecutionInstance records from the API.
85
+ # This operation lazily loads records as efficiently as possible until the limit
86
+ # is reached.
87
+ def each
88
+ limits = @version.read_limits
89
+
90
+ page = self.page(page_size: limits[:page_size], )
91
+
92
+ @version.stream(page,
93
+ limit: limits[:limit],
94
+ page_limit: limits[:page_limit]).each {|x| yield x}
95
+ end
96
+
97
+ ##
98
+ # Retrieve a single page of ExecutionInstance records from the API.
99
+ # Request is executed immediately.
100
+ # @param [Time] date_created_from Only show Execution resources starting on or
101
+ # after this {ISO 8601}[https://en.wikipedia.org/wiki/ISO_8601] date-time, given
102
+ # as `YYYY-MM-DDThh:mm:ss-hh:mm`.
103
+ # @param [Time] date_created_to Only show Execution resources starting before this
104
+ # {ISO 8601}[https://en.wikipedia.org/wiki/ISO_8601] date-time, given as
105
+ # `YYYY-MM-DDThh:mm:ss-hh:mm`.
106
+ # @param [String] page_token PageToken provided by the API
107
+ # @param [Integer] page_number Page Number, this value is simply for client state
108
+ # @param [Integer] page_size Number of records to return, defaults to 50
109
+ # @return [Page] Page of ExecutionInstance
110
+ def page(date_created_from: :unset, date_created_to: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
111
+ params = Twilio::Values.of({
112
+ 'DateCreatedFrom' => Twilio.serialize_iso8601_datetime(date_created_from),
113
+ 'DateCreatedTo' => Twilio.serialize_iso8601_datetime(date_created_to),
114
+ 'PageToken' => page_token,
115
+ 'Page' => page_number,
116
+ 'PageSize' => page_size,
117
+ })
118
+
119
+ response = @version.page('GET', @uri, params: params)
120
+
121
+ ExecutionPage.new(@version, response, @solution)
122
+ end
123
+
124
+ ##
125
+ # Retrieve a single page of ExecutionInstance records from the API.
126
+ # Request is executed immediately.
127
+ # @param [String] target_url API-generated URL for the requested results page
128
+ # @return [Page] Page of ExecutionInstance
129
+ def get_page(target_url)
130
+ response = @version.domain.request(
131
+ 'GET',
132
+ target_url
133
+ )
134
+ ExecutionPage.new(@version, response, @solution)
135
+ end
136
+
137
+ ##
138
+ # Create the ExecutionInstance
139
+ # @param [String] to The Contact phone number to start a Studio Flow Execution,
140
+ # available as variable `{{contact.channel.address}}`.
141
+ # @param [String] from The Twilio phone number to send messages or initiate calls
142
+ # from during the Flow's Execution. Available as variable
143
+ # `{{flow.channel.address}}`. For SMS, this can also be a Messaging Service SID.
144
+ # @param [Hash] parameters JSON data that will be added to the Flow's context and
145
+ # that can be accessed as variables inside your Flow. For example, if you pass in
146
+ # `Parameters={"name":"Zeke"}`, a widget in your Flow can reference the variable
147
+ # `{{flow.data.name}}`, which returns "Zeke". Note: the JSON value must explicitly
148
+ # be passed as a string, not as a hash object. Depending on your particular HTTP
149
+ # library, you may need to add quotes or URL encode the JSON string.
150
+ # @return [ExecutionInstance] Created ExecutionInstance
151
+ def create(to: nil, from: nil, parameters: :unset)
152
+ data = Twilio::Values.of({
153
+ 'To' => to,
154
+ 'From' => from,
155
+ 'Parameters' => Twilio.serialize_object(parameters),
156
+ })
157
+
158
+ payload = @version.create('POST', @uri, data: data)
159
+
160
+ ExecutionInstance.new(@version, payload, flow_sid: @solution[:flow_sid], )
161
+ end
162
+
163
+ ##
164
+ # Provide a user friendly representation
165
+ def to_s
166
+ '#<Twilio.Studio.V2.ExecutionList>'
167
+ end
168
+ end
169
+
170
+ class ExecutionPage < Page
171
+ ##
172
+ # Initialize the ExecutionPage
173
+ # @param [Version] version Version that contains the resource
174
+ # @param [Response] response Response from the API
175
+ # @param [Hash] solution Path solution for the resource
176
+ # @return [ExecutionPage] ExecutionPage
177
+ def initialize(version, response, solution)
178
+ super(version, response)
179
+
180
+ # Path Solution
181
+ @solution = solution
182
+ end
183
+
184
+ ##
185
+ # Build an instance of ExecutionInstance
186
+ # @param [Hash] payload Payload response from the API
187
+ # @return [ExecutionInstance] ExecutionInstance
188
+ def get_instance(payload)
189
+ ExecutionInstance.new(@version, payload, flow_sid: @solution[:flow_sid], )
190
+ end
191
+
192
+ ##
193
+ # Provide a user friendly representation
194
+ def to_s
195
+ '<Twilio.Studio.V2.ExecutionPage>'
196
+ end
197
+ end
198
+
199
+ class ExecutionContext < InstanceContext
200
+ ##
201
+ # Initialize the ExecutionContext
202
+ # @param [Version] version Version that contains the resource
203
+ # @param [String] flow_sid The SID of the Flow with the Execution resource to
204
+ # fetch
205
+ # @param [String] sid The SID of the Execution resource to fetch.
206
+ # @return [ExecutionContext] ExecutionContext
207
+ def initialize(version, flow_sid, sid)
208
+ super(version)
209
+
210
+ # Path Solution
211
+ @solution = {flow_sid: flow_sid, sid: sid, }
212
+ @uri = "/Flows/#{@solution[:flow_sid]}/Executions/#{@solution[:sid]}"
213
+
214
+ # Dependents
215
+ @steps = nil
216
+ @execution_context = nil
217
+ end
218
+
219
+ ##
220
+ # Fetch the ExecutionInstance
221
+ # @return [ExecutionInstance] Fetched ExecutionInstance
222
+ def fetch
223
+ payload = @version.fetch('GET', @uri)
224
+
225
+ ExecutionInstance.new(@version, payload, flow_sid: @solution[:flow_sid], sid: @solution[:sid], )
226
+ end
227
+
228
+ ##
229
+ # Delete the ExecutionInstance
230
+ # @return [Boolean] true if delete succeeds, false otherwise
231
+ def delete
232
+ @version.delete('DELETE', @uri)
233
+ end
234
+
235
+ ##
236
+ # Update the ExecutionInstance
237
+ # @param [execution.Status] status The status of the Execution. Can only be
238
+ # `ended`.
239
+ # @return [ExecutionInstance] Updated ExecutionInstance
240
+ def update(status: nil)
241
+ data = Twilio::Values.of({'Status' => status, })
242
+
243
+ payload = @version.update('POST', @uri, data: data)
244
+
245
+ ExecutionInstance.new(@version, payload, flow_sid: @solution[:flow_sid], sid: @solution[:sid], )
246
+ end
247
+
248
+ ##
249
+ # Access the steps
250
+ # @return [ExecutionStepList]
251
+ # @return [ExecutionStepContext] if sid was passed.
252
+ def steps(sid=:unset)
253
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
254
+
255
+ if sid != :unset
256
+ return ExecutionStepContext.new(@version, @solution[:flow_sid], @solution[:sid], sid, )
257
+ end
258
+
259
+ unless @steps
260
+ @steps = ExecutionStepList.new(
261
+ @version,
262
+ flow_sid: @solution[:flow_sid],
263
+ execution_sid: @solution[:sid],
264
+ )
265
+ end
266
+
267
+ @steps
268
+ end
269
+
270
+ ##
271
+ # Access the execution_context
272
+ # @return [ExecutionContextList]
273
+ # @return [ExecutionContextContext]
274
+ def execution_context
275
+ ExecutionContextContext.new(@version, @solution[:flow_sid], @solution[:sid], )
276
+ end
277
+
278
+ ##
279
+ # Provide a user friendly representation
280
+ def to_s
281
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
282
+ "#<Twilio.Studio.V2.ExecutionContext #{context}>"
283
+ end
284
+
285
+ ##
286
+ # Provide a detailed, user friendly representation
287
+ def inspect
288
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
289
+ "#<Twilio.Studio.V2.ExecutionContext #{context}>"
290
+ end
291
+ end
292
+
293
+ class ExecutionInstance < InstanceResource
294
+ ##
295
+ # Initialize the ExecutionInstance
296
+ # @param [Version] version Version that contains the resource
297
+ # @param [Hash] payload payload that contains response from Twilio
298
+ # @param [String] flow_sid The SID of the Flow.
299
+ # @param [String] sid The SID of the Execution resource to fetch.
300
+ # @return [ExecutionInstance] ExecutionInstance
301
+ def initialize(version, payload, flow_sid: nil, sid: nil)
302
+ super(version)
303
+
304
+ # Marshaled Properties
305
+ @properties = {
306
+ 'sid' => payload['sid'],
307
+ 'account_sid' => payload['account_sid'],
308
+ 'flow_sid' => payload['flow_sid'],
309
+ 'contact_channel_address' => payload['contact_channel_address'],
310
+ 'context' => payload['context'],
311
+ 'status' => payload['status'],
312
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
313
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
314
+ 'url' => payload['url'],
315
+ 'links' => payload['links'],
316
+ }
317
+
318
+ # Context
319
+ @instance_context = nil
320
+ @params = {'flow_sid' => flow_sid, 'sid' => sid || @properties['sid'], }
321
+ end
322
+
323
+ ##
324
+ # Generate an instance context for the instance, the context is capable of
325
+ # performing various actions. All instance actions are proxied to the context
326
+ # @return [ExecutionContext] ExecutionContext for this ExecutionInstance
327
+ def context
328
+ unless @instance_context
329
+ @instance_context = ExecutionContext.new(@version, @params['flow_sid'], @params['sid'], )
330
+ end
331
+ @instance_context
332
+ end
333
+
334
+ ##
335
+ # @return [String] The unique string that identifies the resource
336
+ def sid
337
+ @properties['sid']
338
+ end
339
+
340
+ ##
341
+ # @return [String] The SID of the Account that created the resource
342
+ def account_sid
343
+ @properties['account_sid']
344
+ end
345
+
346
+ ##
347
+ # @return [String] The SID of the Flow
348
+ def flow_sid
349
+ @properties['flow_sid']
350
+ end
351
+
352
+ ##
353
+ # @return [String] The phone number, SIP address or Client identifier that triggered the Execution
354
+ def contact_channel_address
355
+ @properties['contact_channel_address']
356
+ end
357
+
358
+ ##
359
+ # @return [Hash] The current state of the flow
360
+ def context
361
+ @properties['context']
362
+ end
363
+
364
+ ##
365
+ # @return [execution.Status] The status of the Execution
366
+ def status
367
+ @properties['status']
368
+ end
369
+
370
+ ##
371
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was created
372
+ def date_created
373
+ @properties['date_created']
374
+ end
375
+
376
+ ##
377
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
378
+ def date_updated
379
+ @properties['date_updated']
380
+ end
381
+
382
+ ##
383
+ # @return [String] The absolute URL of the resource
384
+ def url
385
+ @properties['url']
386
+ end
387
+
388
+ ##
389
+ # @return [String] Nested resource URLs
390
+ def links
391
+ @properties['links']
392
+ end
393
+
394
+ ##
395
+ # Fetch the ExecutionInstance
396
+ # @return [ExecutionInstance] Fetched ExecutionInstance
397
+ def fetch
398
+ context.fetch
399
+ end
400
+
401
+ ##
402
+ # Delete the ExecutionInstance
403
+ # @return [Boolean] true if delete succeeds, false otherwise
404
+ def delete
405
+ context.delete
406
+ end
407
+
408
+ ##
409
+ # Update the ExecutionInstance
410
+ # @param [execution.Status] status The status of the Execution. Can only be
411
+ # `ended`.
412
+ # @return [ExecutionInstance] Updated ExecutionInstance
413
+ def update(status: nil)
414
+ context.update(status: status, )
415
+ end
416
+
417
+ ##
418
+ # Access the steps
419
+ # @return [steps] steps
420
+ def steps
421
+ context.steps
422
+ end
423
+
424
+ ##
425
+ # Access the execution_context
426
+ # @return [execution_context] execution_context
427
+ def execution_context
428
+ context.execution_context
429
+ end
430
+
431
+ ##
432
+ # Provide a user friendly representation
433
+ def to_s
434
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
435
+ "<Twilio.Studio.V2.ExecutionInstance #{values}>"
436
+ end
437
+
438
+ ##
439
+ # Provide a detailed, user friendly representation
440
+ def inspect
441
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
442
+ "<Twilio.Studio.V2.ExecutionInstance #{values}>"
443
+ end
444
+ end
445
+ end
446
+ end
447
+ end
448
+ end
449
+ end