twilio-ruby 5.6.0 → 5.33.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 (846) hide show
  1. checksums.yaml +5 -5
  2. data/.dockerignore +1 -0
  3. data/.gitignore +3 -0
  4. data/.rubocop.yml +14 -3
  5. data/.rubocop_todo.yml +87 -55
  6. data/.travis.yml +25 -10
  7. data/CHANGES.md +1134 -0
  8. data/CODE_OF_CONDUCT.md +73 -0
  9. data/CONTRIBUTING.md +2 -0
  10. data/Dockerfile +9 -0
  11. data/Gemfile +0 -8
  12. data/ISSUE_TEMPLATE.md +13 -13
  13. data/LICENSE.md +2 -2
  14. data/Makefile +17 -13
  15. data/PULL_REQUEST_TEMPLATE.md +31 -0
  16. data/README.md +59 -52
  17. data/Rakefile +0 -54
  18. data/VERSIONS.md +9 -10
  19. data/examples/print_call_log.rb +1 -1
  20. data/githooks/pre-commit +0 -0
  21. data/lib/rack/twilio_webhook_authentication.rb +2 -0
  22. data/lib/twilio-ruby/framework/domain.rb +3 -1
  23. data/lib/twilio-ruby/framework/error.rb +33 -15
  24. data/lib/twilio-ruby/framework/helper.rb +2 -0
  25. data/lib/twilio-ruby/framework/obsolete_client.rb +2 -0
  26. data/lib/twilio-ruby/framework/page.rb +3 -1
  27. data/lib/twilio-ruby/framework/request.rb +2 -0
  28. data/lib/twilio-ruby/framework/resource.rb +2 -0
  29. data/lib/twilio-ruby/framework/response.rb +2 -0
  30. data/lib/twilio-ruby/framework/serialize.rb +2 -0
  31. data/lib/twilio-ruby/framework/twilio_response.rb +2 -0
  32. data/lib/twilio-ruby/framework/values.rb +2 -0
  33. data/lib/twilio-ruby/framework/version.rb +3 -10
  34. data/lib/twilio-ruby/http/http_client.rb +17 -12
  35. data/lib/twilio-ruby/jwt/access_token.rb +5 -1
  36. data/lib/twilio-ruby/jwt/client_capability.rb +3 -1
  37. data/lib/twilio-ruby/jwt/jwt.rb +2 -0
  38. data/lib/twilio-ruby/jwt/task_router.rb +4 -2
  39. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +44 -26
  40. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +43 -32
  41. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +11 -8
  42. data/lib/twilio-ruby/rest/accounts/v1.rb +2 -0
  43. data/lib/twilio-ruby/rest/accounts.rb +2 -0
  44. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +40 -32
  45. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +111 -63
  46. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +167 -147
  47. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +34 -21
  48. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +177 -80
  49. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +177 -80
  50. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +177 -80
  51. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +177 -80
  52. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +177 -80
  53. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +177 -80
  54. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +177 -80
  55. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +27 -12
  56. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +131 -0
  57. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +58 -25
  58. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +54 -33
  59. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +70 -55
  60. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +359 -0
  61. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +163 -37
  62. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +340 -167
  63. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +272 -91
  64. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +481 -0
  65. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +134 -61
  66. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +92 -53
  67. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +45 -28
  68. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +46 -32
  69. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +156 -66
  70. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +155 -66
  71. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +155 -66
  72. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +291 -229
  73. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +36 -21
  74. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +22 -12
  75. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +45 -29
  76. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +137 -68
  77. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +12 -9
  78. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +12 -9
  79. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +53 -41
  80. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +54 -39
  81. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +52 -23
  82. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +61 -37
  83. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +49 -32
  84. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +43 -27
  85. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +49 -26
  86. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +91 -50
  87. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +81 -59
  88. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +31 -12
  89. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +50 -27
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +36 -21
  91. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +361 -0
  92. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +361 -0
  93. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +163 -0
  94. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +361 -0
  95. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +137 -0
  96. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +135 -0
  97. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +41 -24
  98. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +40 -24
  99. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +169 -73
  100. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +87 -32
  101. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +32 -21
  102. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +15 -11
  103. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +16 -12
  104. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +41 -26
  105. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +79 -28
  106. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +79 -28
  107. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +79 -28
  108. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +79 -28
  109. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +79 -28
  110. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +79 -28
  111. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +79 -28
  112. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +79 -28
  113. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +82 -49
  114. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +103 -74
  115. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +8 -5
  116. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +31 -15
  117. data/lib/twilio-ruby/rest/api/v2010/account.rb +104 -65
  118. data/lib/twilio-ruby/rest/api/v2010.rb +6 -0
  119. data/lib/twilio-ruby/rest/api.rb +39 -26
  120. data/lib/twilio-ruby/rest/authy/v1/form.rb +197 -0
  121. data/lib/twilio-ruby/rest/{preview/proxy/service/session/participant/message_interaction.rb → authy/v1/service/entity/factor/challenge.rb} +204 -163
  122. data/lib/twilio-ruby/rest/{preview/proxy/service/session/participant.rb → authy/v1/service/entity/factor.rb} +196 -208
  123. data/lib/twilio-ruby/rest/{preview/proxy/service/short_code.rb → authy/v1/service/entity.rb} +122 -83
  124. data/lib/twilio-ruby/rest/{preview/acc_security → authy/v1}/service.rb +97 -79
  125. data/lib/twilio-ruby/rest/authy/v1.rb +59 -0
  126. data/lib/twilio-ruby/rest/authy.rb +55 -0
  127. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +230 -0
  128. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +220 -0
  129. data/lib/twilio-ruby/rest/autopilot/v1/assistant/export_assistant.rb +222 -0
  130. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +408 -0
  131. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +435 -0
  132. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +409 -0
  133. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +470 -0
  134. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +228 -0
  135. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +399 -0
  136. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +466 -0
  137. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +265 -0
  138. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +243 -0
  139. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +524 -0
  140. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +437 -0
  141. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +683 -0
  142. data/lib/twilio-ruby/rest/autopilot/v1.rb +44 -0
  143. data/lib/twilio-ruby/rest/autopilot.rb +47 -0
  144. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +316 -0
  145. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +298 -0
  146. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +253 -0
  147. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +254 -0
  148. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +242 -0
  149. data/lib/twilio-ruby/rest/bulkexports/v1.rb +58 -0
  150. data/lib/twilio-ruby/rest/bulkexports.rb +54 -0
  151. data/lib/twilio-ruby/rest/chat/v1/credential.rb +88 -40
  152. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +70 -29
  153. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +87 -35
  154. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +76 -39
  155. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +83 -47
  156. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +61 -32
  157. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +22 -14
  158. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +72 -41
  159. data/lib/twilio-ruby/rest/chat/v1/service.rb +342 -312
  160. data/lib/twilio-ruby/rest/chat/v1.rb +6 -2
  161. data/lib/twilio-ruby/rest/chat/v2/credential.rb +86 -40
  162. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +74 -33
  163. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +65 -29
  164. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +144 -46
  165. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +118 -51
  166. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +492 -0
  167. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +144 -55
  168. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +63 -32
  169. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +68 -29
  170. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +213 -17
  171. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +83 -44
  172. data/lib/twilio-ruby/rest/chat/v2/service.rb +238 -136
  173. data/lib/twilio-ruby/rest/chat/v2.rb +4 -2
  174. data/lib/twilio-ruby/rest/chat.rb +6 -2
  175. data/lib/twilio-ruby/rest/client.rb +142 -36
  176. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +456 -0
  177. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +431 -0
  178. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +432 -0
  179. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +505 -0
  180. data/lib/twilio-ruby/rest/conversations/v1/webhook.rb +272 -0
  181. data/lib/twilio-ruby/rest/conversations/v1.rb +51 -0
  182. data/lib/twilio-ruby/rest/conversations.rb +53 -0
  183. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +34 -25
  184. data/lib/twilio-ruby/rest/fax/v1/fax.rb +114 -84
  185. data/lib/twilio-ruby/rest/fax/v1.rb +4 -1
  186. data/lib/twilio-ruby/rest/fax.rb +4 -1
  187. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +352 -0
  188. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +466 -0
  189. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +555 -0
  190. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +358 -0
  191. data/lib/twilio-ruby/rest/flex_api/v1.rb +80 -0
  192. data/lib/twilio-ruby/rest/flex_api.rb +71 -0
  193. data/lib/twilio-ruby/rest/{notify/v1/service/segment.rb → insights/v1/call/event.rb} +103 -62
  194. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +254 -0
  195. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +305 -0
  196. data/lib/twilio-ruby/rest/insights/v1/call.rb +242 -0
  197. data/lib/twilio-ruby/rest/insights/v1.rb +43 -0
  198. data/lib/twilio-ruby/rest/insights.rb +46 -0
  199. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +88 -40
  200. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +70 -29
  201. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +87 -35
  202. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +76 -39
  203. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +83 -47
  204. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +61 -32
  205. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +22 -14
  206. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +72 -41
  207. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +342 -312
  208. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +6 -2
  209. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +86 -40
  210. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +74 -33
  211. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +65 -29
  212. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +144 -46
  213. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +118 -51
  214. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +492 -0
  215. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +144 -55
  216. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +63 -32
  217. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +68 -29
  218. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +213 -17
  219. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +83 -44
  220. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +238 -136
  221. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +4 -2
  222. data/lib/twilio-ruby/rest/ip_messaging.rb +8 -4
  223. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +63 -24
  224. data/lib/twilio-ruby/rest/lookups/v1.rb +5 -1
  225. data/lib/twilio-ruby/rest/lookups.rb +5 -1
  226. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +47 -25
  227. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +47 -26
  228. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +42 -26
  229. data/lib/twilio-ruby/rest/messaging/v1/service.rb +150 -84
  230. data/lib/twilio-ruby/rest/messaging/v1.rb +3 -1
  231. data/lib/twilio-ruby/rest/messaging.rb +4 -1
  232. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +74 -50
  233. data/lib/twilio-ruby/rest/monitor/v1/event.rb +78 -42
  234. data/lib/twilio-ruby/rest/monitor/v1.rb +4 -2
  235. data/lib/twilio-ruby/rest/monitor.rb +6 -2
  236. data/lib/twilio-ruby/rest/notify/v1/credential.rb +79 -40
  237. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +100 -47
  238. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +118 -42
  239. data/lib/twilio-ruby/rest/notify/v1/service.rb +158 -132
  240. data/lib/twilio-ruby/rest/notify/v1.rb +6 -2
  241. data/lib/twilio-ruby/rest/notify.rb +6 -2
  242. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +333 -0
  243. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +482 -0
  244. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +361 -0
  245. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +281 -0
  246. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +322 -0
  247. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +374 -0
  248. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +281 -0
  249. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +189 -0
  250. data/lib/twilio-ruby/rest/numbers/v2.rb +35 -0
  251. data/lib/twilio-ruby/rest/numbers.rb +44 -0
  252. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +122 -15
  253. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +298 -0
  254. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +253 -0
  255. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +66 -13
  256. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +37 -20
  257. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +4 -2
  258. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +22 -13
  259. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +23 -14
  260. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +20 -11
  261. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +23 -14
  262. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +30 -21
  263. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +2 -0
  264. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +402 -0
  265. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +97 -35
  266. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +97 -36
  267. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +2 -0
  268. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +27 -15
  269. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +27 -20
  270. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +32 -20
  271. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +52 -44
  272. data/lib/twilio-ruby/rest/preview/marketplace.rb +4 -4
  273. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +16 -7
  274. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +24 -15
  275. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +17 -8
  276. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +16 -7
  277. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +22 -13
  278. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +18 -9
  279. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +16 -7
  280. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +22 -13
  281. data/lib/twilio-ruby/rest/preview/sync/service.rb +26 -17
  282. data/lib/twilio-ruby/rest/preview/sync.rb +2 -0
  283. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_call.rb +248 -0
  284. data/lib/twilio-ruby/rest/preview/trusted_comms/business/insights/impressions_rate.rb +264 -0
  285. data/lib/twilio-ruby/rest/preview/trusted_comms/business/insights.rb +111 -0
  286. data/lib/twilio-ruby/rest/preview/trusted_comms/business.rb +219 -0
  287. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +186 -0
  288. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +263 -0
  289. data/lib/twilio-ruby/rest/preview/trusted_comms/phone_call.rb +347 -0
  290. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +72 -0
  291. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +222 -0
  292. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +222 -0
  293. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +212 -0
  294. data/lib/twilio-ruby/rest/preview/understand/{service → assistant}/field_type/field_value.rb +64 -40
  295. data/lib/twilio-ruby/rest/preview/understand/{service → assistant}/field_type.rb +67 -42
  296. data/lib/twilio-ruby/rest/preview/understand/{service → assistant}/model_build.rb +76 -37
  297. data/lib/twilio-ruby/rest/preview/understand/{service → assistant}/query.rb +92 -60
  298. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +222 -0
  299. data/lib/twilio-ruby/rest/preview/understand/{service/intent → assistant/task}/field.rb +63 -48
  300. data/lib/twilio-ruby/rest/preview/understand/{service/intent → assistant/task}/sample.rb +100 -62
  301. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +251 -0
  302. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +231 -0
  303. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +512 -0
  304. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +646 -0
  305. data/lib/twilio-ruby/rest/preview/understand.rb +10 -7
  306. data/lib/twilio-ruby/rest/preview/wireless/command.rb +16 -7
  307. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +22 -13
  308. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +16 -7
  309. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +17 -8
  310. data/lib/twilio-ruby/rest/preview/wireless.rb +2 -0
  311. data/lib/twilio-ruby/rest/preview.rb +58 -34
  312. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +29 -16
  313. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +9 -5
  314. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +28 -15
  315. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +9 -5
  316. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +29 -16
  317. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +24 -15
  318. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +12 -8
  319. data/lib/twilio-ruby/rest/pricing/v1.rb +2 -0
  320. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +290 -0
  321. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +231 -0
  322. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +146 -0
  323. data/lib/twilio-ruby/rest/pricing/v2.rb +35 -0
  324. data/lib/twilio-ruby/rest/pricing.rb +11 -2
  325. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +106 -32
  326. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +55 -79
  327. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +58 -38
  328. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +57 -92
  329. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +88 -101
  330. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +80 -29
  331. data/lib/twilio-ruby/rest/proxy/v1/service.rb +170 -71
  332. data/lib/twilio-ruby/rest/proxy/v1.rb +4 -1
  333. data/lib/twilio-ruby/rest/proxy.rb +4 -1
  334. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +342 -0
  335. data/lib/twilio-ruby/rest/{preview/understand/service/intent.rb → serverless/v1/service/asset.rb} +132 -149
  336. data/lib/twilio-ruby/rest/{preview/proxy/service/phone_number.rb → serverless/v1/service/build.rb} +130 -101
  337. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +362 -0
  338. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +395 -0
  339. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +424 -0
  340. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +469 -0
  341. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +247 -0
  342. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +372 -0
  343. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +404 -0
  344. data/lib/twilio-ruby/rest/{preview/understand → serverless/v1}/service.rb +159 -149
  345. data/lib/twilio-ruby/rest/{preview/proxy.rb → serverless/v1.rb} +10 -8
  346. data/lib/twilio-ruby/rest/serverless.rb +47 -0
  347. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +216 -0
  348. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +231 -0
  349. data/lib/twilio-ruby/rest/{preview/studio → studio/v1}/flow/engagement/step.rb +63 -37
  350. data/lib/twilio-ruby/rest/{preview/studio → studio/v1}/flow/engagement.rb +82 -52
  351. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +217 -0
  352. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +234 -0
  353. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +380 -0
  354. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +447 -0
  355. data/lib/twilio-ruby/rest/{preview/studio → studio/v1}/flow.rb +64 -44
  356. data/lib/twilio-ruby/rest/{preview/studio.rb → studio/v1.rb} +10 -8
  357. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +224 -0
  358. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +239 -0
  359. data/lib/twilio-ruby/rest/{notify/v1/service/user/user_binding.rb → studio/v2/flow/execution/execution_step.rb} +126 -170
  360. data/lib/twilio-ruby/rest/{notify/v1/service/user.rb → studio/v2/flow/execution.rb} +167 -159
  361. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +343 -0
  362. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +215 -0
  363. data/lib/twilio-ruby/rest/studio/v2/flow.rb +500 -0
  364. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +126 -0
  365. data/lib/twilio-ruby/rest/studio/v2.rb +50 -0
  366. data/lib/twilio-ruby/rest/studio.rb +60 -0
  367. data/lib/twilio-ruby/rest/supersim/v1/command.rb +381 -0
  368. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +390 -0
  369. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +380 -0
  370. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +274 -0
  371. data/lib/twilio-ruby/rest/supersim/v1.rb +80 -0
  372. data/lib/twilio-ruby/rest/supersim.rb +70 -0
  373. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +56 -42
  374. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +70 -38
  375. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +128 -45
  376. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +55 -42
  377. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +79 -39
  378. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +140 -47
  379. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +53 -42
  380. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +78 -39
  381. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +18 -10
  382. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +73 -37
  383. data/lib/twilio-ruby/rest/sync/v1/service.rb +146 -47
  384. data/lib/twilio-ruby/rest/sync/v1.rb +3 -1
  385. data/lib/twilio-ruby/rest/sync.rb +4 -1
  386. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +85 -37
  387. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +127 -56
  388. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +304 -135
  389. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +182 -78
  390. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +126 -19
  391. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +79 -39
  392. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +63 -23
  393. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +57 -24
  394. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +61 -27
  395. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +124 -62
  396. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +300 -135
  397. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +55 -37
  398. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +56 -22
  399. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +58 -29
  400. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +33 -17
  401. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +56 -27
  402. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +146 -68
  403. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +81 -40
  404. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +46 -20
  405. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +65 -24
  406. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +118 -55
  407. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +82 -39
  408. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +41 -21
  409. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +58 -23
  410. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +141 -68
  411. data/lib/twilio-ruby/rest/taskrouter/v1.rb +3 -1
  412. data/lib/twilio-ruby/rest/taskrouter.rb +4 -1
  413. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +46 -24
  414. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +36 -23
  415. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +85 -42
  416. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +62 -43
  417. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +154 -56
  418. data/lib/twilio-ruby/rest/trunking/v1.rb +4 -1
  419. data/lib/twilio-ruby/rest/trunking.rb +4 -1
  420. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +387 -0
  421. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +416 -0
  422. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +408 -0
  423. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +366 -0
  424. data/lib/twilio-ruby/rest/{preview/acc_security → verify/v2}/service/verification_check.rb +59 -29
  425. data/lib/twilio-ruby/rest/verify/v2/service.rb +574 -0
  426. data/lib/twilio-ruby/rest/{preview/acc_security.rb → verify/v2.rb} +11 -8
  427. data/lib/twilio-ruby/rest/verify.rb +47 -0
  428. data/lib/twilio-ruby/rest/video/v1/composition.rb +512 -0
  429. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +673 -0
  430. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +285 -0
  431. data/lib/twilio-ruby/rest/video/v1/recording.rb +92 -42
  432. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +285 -0
  433. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +92 -43
  434. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +37 -20
  435. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +191 -0
  436. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +348 -0
  437. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +129 -41
  438. data/lib/twilio-ruby/rest/video/v1/room.rb +100 -58
  439. data/lib/twilio-ruby/rest/video/v1.rb +48 -2
  440. data/lib/twilio-ruby/rest/video.rb +36 -2
  441. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +133 -0
  442. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +192 -0
  443. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +412 -0
  444. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +207 -0
  445. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +132 -0
  446. data/lib/twilio-ruby/rest/voice/v1.rb +35 -0
  447. data/lib/twilio-ruby/rest/voice.rb +44 -0
  448. data/lib/twilio-ruby/rest/wireless/v1/command.rb +125 -48
  449. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +84 -55
  450. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +45 -32
  451. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +43 -25
  452. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +203 -91
  453. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +231 -0
  454. data/lib/twilio-ruby/rest/wireless/v1.rb +12 -3
  455. data/lib/twilio-ruby/rest/wireless.rb +14 -3
  456. data/lib/twilio-ruby/security/request_validator.rb +104 -8
  457. data/lib/twilio-ruby/twiml/fax_response.rb +7 -2
  458. data/lib/twilio-ruby/twiml/messaging_response.rb +2 -0
  459. data/lib/twilio-ruby/twiml/twiml.rb +59 -12
  460. data/lib/twilio-ruby/twiml/voice_response.rb +677 -45
  461. data/lib/twilio-ruby/util/configuration.rb +12 -5
  462. data/lib/twilio-ruby/util.rb +2 -0
  463. data/lib/twilio-ruby/version.rb +1 -1
  464. data/lib/twilio-ruby.rb +11 -7
  465. data/spec/http/http_client_spec.rb +2 -2
  466. data/spec/integration/accounts/v1/credential/aws_spec.rb +14 -12
  467. data/spec/integration/accounts/v1/credential/public_key_spec.rb +14 -12
  468. data/spec/integration/accounts/v1/credential_spec.rb +2 -0
  469. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +9 -7
  470. data/spec/integration/api/v2010/account/address_spec.rb +36 -30
  471. data/spec/integration/api/v2010/account/application_spec.rb +32 -37
  472. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +11 -9
  473. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +9 -7
  474. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +9 -7
  475. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +9 -7
  476. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +9 -7
  477. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +9 -7
  478. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +9 -7
  479. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +9 -7
  480. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +11 -9
  481. data/spec/integration/api/v2010/account/balance_spec.rb +45 -0
  482. data/spec/integration/api/v2010/account/call/feedback_spec.rb +19 -17
  483. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +15 -13
  484. data/spec/integration/api/v2010/account/call/notification_spec.rb +24 -58
  485. data/spec/integration/api/v2010/account/call/payment_spec.rb +135 -0
  486. data/spec/integration/api/v2010/account/call/recording_spec.rb +124 -23
  487. data/spec/integration/api/v2010/account/call_spec.rb +419 -77
  488. data/spec/integration/api/v2010/account/conference/participant_spec.rb +309 -54
  489. data/spec/integration/api/v2010/account/conference/recording_spec.rb +237 -0
  490. data/spec/integration/api/v2010/account/conference_spec.rb +292 -36
  491. data/spec/integration/api/v2010/account/connect_app_spec.rb +44 -20
  492. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +21 -19
  493. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +31 -29
  494. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +20 -12
  495. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +20 -12
  496. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +20 -12
  497. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +32 -26
  498. data/spec/integration/api/v2010/account/key_spec.rb +21 -19
  499. data/spec/integration/api/v2010/account/message/feedback_spec.rb +7 -5
  500. data/spec/integration/api/v2010/account/message/media_spec.rb +23 -21
  501. data/spec/integration/api/v2010/account/message_spec.rb +247 -67
  502. data/spec/integration/api/v2010/account/new_key_spec.rb +5 -3
  503. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +5 -3
  504. data/spec/integration/api/v2010/account/notification_spec.rb +14 -46
  505. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +21 -19
  506. data/spec/integration/api/v2010/account/queue/member_spec.rb +74 -31
  507. data/spec/integration/api/v2010/account/queue_spec.rb +43 -35
  508. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +30 -28
  509. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +23 -21
  510. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +23 -21
  511. data/spec/integration/api/v2010/account/recording_spec.rb +16 -16
  512. data/spec/integration/api/v2010/account/short_code_spec.rb +16 -14
  513. data/spec/integration/api/v2010/account/signing_key_spec.rb +21 -19
  514. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +38 -36
  515. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +28 -26
  516. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +220 -0
  517. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +220 -0
  518. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +12 -0
  519. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +220 -0
  520. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +12 -0
  521. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +12 -0
  522. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +31 -29
  523. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +31 -29
  524. data/spec/integration/api/v2010/account/sip/domain_spec.rb +54 -40
  525. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +50 -50
  526. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +28 -26
  527. data/spec/integration/api/v2010/account/sip_spec.rb +2 -0
  528. data/spec/integration/api/v2010/account/token_spec.rb +8 -4
  529. data/spec/integration/api/v2010/account/transcription_spec.rb +16 -14
  530. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +7 -4
  531. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +7 -4
  532. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +7 -4
  533. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +7 -4
  534. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +7 -4
  535. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +7 -4
  536. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +7 -4
  537. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +7 -4
  538. data/spec/integration/api/v2010/account/usage/record_spec.rb +7 -4
  539. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +29 -27
  540. data/spec/integration/api/v2010/account/usage_spec.rb +2 -0
  541. data/spec/integration/api/v2010/account/validation_request_spec.rb +8 -6
  542. data/spec/integration/api/v2010/account_spec.rb +152 -75
  543. data/spec/integration/authy/v1/form_spec.rb +48 -0
  544. data/spec/integration/authy/v1/service/entity/factor/challenge_spec.rb +353 -0
  545. data/spec/integration/authy/v1/service/entity/factor_spec.rb +298 -0
  546. data/spec/integration/authy/v1/service/entity_spec.rb +201 -0
  547. data/spec/integration/authy/v1/service_spec.rb +231 -0
  548. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +81 -0
  549. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +47 -0
  550. data/spec/integration/autopilot/v1/assistant/export_assistant_spec.rb +49 -0
  551. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +210 -0
  552. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +246 -0
  553. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +241 -0
  554. data/spec/integration/autopilot/v1/assistant/query_spec.rb +294 -0
  555. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +81 -0
  556. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +207 -0
  557. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +253 -0
  558. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +87 -0
  559. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +50 -0
  560. data/spec/integration/autopilot/v1/assistant/task_spec.rb +262 -0
  561. data/spec/integration/autopilot/v1/assistant/webhook_spec.rb +246 -0
  562. data/spec/integration/autopilot/v1/assistant_spec.rb +286 -0
  563. data/spec/integration/bulkexports/v1/export/day_spec.rb +117 -0
  564. data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +129 -0
  565. data/spec/integration/bulkexports/v1/export/job_spec.rb +80 -0
  566. data/spec/integration/bulkexports/v1/export_configuration_spec.rb +79 -0
  567. data/spec/integration/bulkexports/v1/export_spec.rb +45 -0
  568. data/spec/integration/chat/v1/credential_spec.rb +14 -12
  569. data/spec/integration/chat/v1/service/channel/invite_spec.rb +35 -33
  570. data/spec/integration/chat/v1/service/channel/member_spec.rb +41 -39
  571. data/spec/integration/chat/v1/service/channel/message_spec.rb +41 -39
  572. data/spec/integration/chat/v1/service/channel_spec.rb +24 -22
  573. data/spec/integration/chat/v1/service/role_spec.rb +29 -27
  574. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +9 -7
  575. data/spec/integration/chat/v1/service/user_spec.rb +27 -25
  576. data/spec/integration/chat/v1/service_spec.rb +14 -12
  577. data/spec/integration/chat/v2/credential_spec.rb +14 -12
  578. data/spec/integration/chat/v2/service/binding_spec.rb +16 -14
  579. data/spec/integration/chat/v2/service/channel/invite_spec.rb +35 -33
  580. data/spec/integration/chat/v2/service/channel/member_spec.rb +42 -36
  581. data/spec/integration/chat/v2/service/channel/message_spec.rb +43 -41
  582. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +307 -0
  583. data/spec/integration/chat/v2/service/channel_spec.rb +28 -22
  584. data/spec/integration/chat/v2/service/role_spec.rb +29 -27
  585. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +23 -21
  586. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +166 -7
  587. data/spec/integration/chat/v2/service/user_spec.rb +27 -25
  588. data/spec/integration/chat/v2/service_spec.rb +15 -12
  589. data/spec/integration/conversations/v1/conversation/message_spec.rb +293 -0
  590. data/spec/integration/conversations/v1/conversation/participant_spec.rb +290 -0
  591. data/spec/integration/conversations/v1/conversation/webhook_spec.rb +286 -0
  592. data/spec/integration/conversations/v1/conversation_spec.rb +222 -0
  593. data/spec/integration/conversations/v1/webhook_spec.rb +88 -0
  594. data/spec/integration/fax/v1/fax/fax_media_spec.rb +15 -13
  595. data/spec/integration/fax/v1/fax_spec.rb +18 -16
  596. data/spec/integration/flex_api/v1/channel_spec.rb +191 -0
  597. data/spec/integration/flex_api/v1/configuration_spec.rb +602 -0
  598. data/spec/integration/flex_api/v1/flex_flow_spec.rb +263 -0
  599. data/spec/integration/flex_api/v1/web_channel_spec.rb +220 -0
  600. data/spec/integration/insights/v1/call/event_spec.rb +167 -0
  601. data/spec/integration/insights/v1/call/metric_spec.rb +155 -0
  602. data/spec/integration/insights/v1/call/summary_spec.rb +63 -0
  603. data/spec/integration/insights/v1/call_spec.rb +47 -0
  604. data/spec/integration/ip_messaging/v1/credential_spec.rb +16 -14
  605. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +35 -33
  606. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +41 -39
  607. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +41 -39
  608. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +24 -22
  609. data/spec/integration/ip_messaging/v1/service/role_spec.rb +29 -27
  610. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +9 -7
  611. data/spec/integration/ip_messaging/v1/service/user_spec.rb +27 -25
  612. data/spec/integration/ip_messaging/v1/service_spec.rb +16 -14
  613. data/spec/integration/ip_messaging/v2/credential_spec.rb +16 -14
  614. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +16 -14
  615. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +35 -33
  616. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +42 -36
  617. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +43 -41
  618. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +307 -0
  619. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +28 -22
  620. data/spec/integration/ip_messaging/v2/service/role_spec.rb +29 -27
  621. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +23 -21
  622. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +166 -7
  623. data/spec/integration/ip_messaging/v2/service/user_spec.rb +27 -25
  624. data/spec/integration/ip_messaging/v2/service_spec.rb +17 -14
  625. data/spec/integration/lookups/v1/phone_number_spec.rb +283 -6
  626. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +30 -22
  627. data/spec/integration/messaging/v1/service/phone_number_spec.rb +23 -21
  628. data/spec/integration/messaging/v1/service/short_code_spec.rb +30 -22
  629. data/spec/integration/messaging/v1/service_spec.rb +26 -16
  630. data/spec/integration/monitor/v1/alert_spec.rb +16 -37
  631. data/spec/integration/monitor/v1/event_spec.rb +5 -3
  632. data/spec/integration/notify/v1/credential_spec.rb +14 -12
  633. data/spec/integration/notify/v1/service/binding_spec.rb +26 -24
  634. data/spec/integration/notify/v1/service/notification_spec.rb +6 -4
  635. data/spec/integration/notify/v1/service_spec.rb +19 -9
  636. data/spec/integration/numbers/v2/regulatory_compliance/bundle/item_assignment_spec.rb +198 -0
  637. data/spec/integration/numbers/v2/regulatory_compliance/bundle_spec.rb +226 -0
  638. data/spec/integration/numbers/v2/regulatory_compliance/end_user_spec.rb +214 -0
  639. data/spec/integration/numbers/v2/regulatory_compliance/end_user_type_spec.rb +143 -0
  640. data/spec/integration/numbers/v2/regulatory_compliance/regulation_spec.rb +183 -0
  641. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_spec.rb +226 -0
  642. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_type_spec.rb +133 -0
  643. data/spec/integration/numbers/v2/regulatory_compliance_spec.rb +12 -0
  644. data/spec/integration/preview/bulk_exports/export/day_spec.rb +71 -10
  645. data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +129 -0
  646. data/spec/integration/preview/bulk_exports/export/job_spec.rb +80 -0
  647. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +6 -4
  648. data/spec/integration/preview/bulk_exports/export_spec.rb +4 -2
  649. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +27 -25
  650. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +24 -22
  651. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +24 -22
  652. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +24 -22
  653. data/spec/integration/preview/deployed_devices/fleet_spec.rb +11 -9
  654. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +111 -0
  655. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +28 -12
  656. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +69 -28
  657. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +11 -9
  658. data/spec/integration/preview/marketplace/available_add_on_spec.rb +5 -3
  659. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +17 -15
  660. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +14 -12
  661. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +31 -29
  662. data/spec/integration/preview/sync/service/document_spec.rb +25 -23
  663. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +39 -37
  664. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +31 -29
  665. data/spec/integration/preview/sync/service/sync_list_spec.rb +19 -17
  666. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +43 -41
  667. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +31 -29
  668. data/spec/integration/preview/sync/service/sync_map_spec.rb +19 -17
  669. data/spec/integration/preview/sync/service_spec.rb +11 -9
  670. data/spec/integration/preview/trusted_comms/branded_call_spec.rb +59 -0
  671. data/spec/integration/preview/trusted_comms/business/insights/impressions_rate_spec.rb +57 -0
  672. data/spec/integration/preview/trusted_comms/business/insights_spec.rb +12 -0
  673. data/spec/integration/preview/trusted_comms/business_spec.rb +46 -0
  674. data/spec/integration/preview/trusted_comms/cps_spec.rb +43 -0
  675. data/spec/integration/preview/trusted_comms/current_call_spec.rb +54 -0
  676. data/spec/integration/preview/trusted_comms/phone_call_spec.rb +59 -0
  677. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +81 -0
  678. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +81 -0
  679. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +47 -0
  680. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +210 -0
  681. data/spec/integration/preview/understand/{service → assistant}/field_type_spec.rb +43 -41
  682. data/spec/integration/preview/understand/{service → assistant}/model_build_spec.rb +50 -40
  683. data/spec/integration/preview/understand/{service → assistant}/query_spec.rb +55 -49
  684. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +81 -0
  685. data/spec/integration/preview/understand/{service/intent → assistant/task}/field_spec.rb +44 -42
  686. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +253 -0
  687. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +87 -0
  688. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +50 -0
  689. data/spec/integration/preview/understand/assistant/task_spec.rb +262 -0
  690. data/spec/integration/preview/understand/assistant_spec.rb +274 -0
  691. data/spec/integration/preview/wireless/command_spec.rb +12 -10
  692. data/spec/integration/preview/wireless/rate_plan_spec.rb +11 -9
  693. data/spec/integration/preview/wireless/sim/usage_spec.rb +5 -3
  694. data/spec/integration/preview/wireless/sim_spec.rb +12 -10
  695. data/spec/integration/pricing/v1/messaging/country_spec.rb +16 -14
  696. data/spec/integration/pricing/v1/messaging_spec.rb +2 -0
  697. data/spec/integration/pricing/v1/phone_number/country_spec.rb +21 -19
  698. data/spec/integration/pricing/v1/phone_number_spec.rb +2 -0
  699. data/spec/integration/pricing/v1/voice/country_spec.rb +25 -151
  700. data/spec/integration/pricing/v1/voice/number_spec.rb +9 -7
  701. data/spec/integration/pricing/v1/voice_spec.rb +2 -0
  702. data/spec/integration/pricing/v2/voice/country_spec.rb +181 -0
  703. data/spec/integration/pricing/v2/voice/number_spec.rb +62 -0
  704. data/spec/integration/pricing/v2/voice_spec.rb +12 -0
  705. data/spec/integration/proxy/v1/service/phone_number_spec.rb +75 -21
  706. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +22 -20
  707. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +27 -25
  708. data/spec/integration/proxy/v1/service/session/participant_spec.rb +95 -79
  709. data/spec/integration/proxy/v1/service/session_spec.rb +31 -29
  710. data/spec/integration/proxy/v1/service/short_code_spec.rb +71 -22
  711. data/spec/integration/proxy/v1/service_spec.rb +20 -15
  712. data/spec/integration/serverless/v1/service/asset/asset_version_spec.rb +95 -0
  713. data/spec/integration/serverless/v1/service/asset_spec.rb +205 -0
  714. data/spec/integration/serverless/v1/service/build_spec.rb +212 -0
  715. data/spec/integration/serverless/v1/service/environment/deployment_spec.rb +136 -0
  716. data/spec/integration/serverless/v1/service/environment/log_spec.rb +98 -0
  717. data/spec/integration/serverless/v1/service/environment/variable_spec.rb +211 -0
  718. data/spec/integration/serverless/v1/service/environment_spec.rb +173 -0
  719. data/spec/integration/serverless/v1/service/function/function_version/function_version_content_spec.rb +52 -0
  720. data/spec/integration/serverless/v1/service/function/function_version_spec.rb +98 -0
  721. data/spec/integration/serverless/v1/service/function_spec.rb +205 -0
  722. data/spec/integration/serverless/v1/service_spec.rb +209 -0
  723. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +51 -0
  724. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +54 -0
  725. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +101 -0
  726. data/spec/integration/{preview/studio → studio/v1}/flow/engagement_spec.rb +32 -32
  727. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +51 -0
  728. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +54 -0
  729. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +101 -0
  730. data/spec/integration/studio/v1/flow/execution_spec.rb +171 -0
  731. data/spec/integration/{preview/studio → studio/v1}/flow_spec.rb +16 -14
  732. data/spec/integration/studio/v2/flow/execution/execution_context_spec.rb +51 -0
  733. data/spec/integration/studio/v2/flow/execution/execution_step/execution_step_context_spec.rb +54 -0
  734. data/spec/integration/studio/v2/flow/execution/execution_step_spec.rb +101 -0
  735. data/spec/integration/studio/v2/flow/execution_spec.rb +169 -0
  736. data/spec/integration/studio/v2/flow/flow_revision_spec.rb +112 -0
  737. data/spec/integration/studio/v2/flow/test_user_spec.rb +86 -0
  738. data/spec/integration/studio/v2/flow_spec.rb +250 -0
  739. data/spec/integration/studio/v2/flow_validate_spec.rb +46 -0
  740. data/spec/integration/supersim/v1/command_spec.rb +186 -0
  741. data/spec/integration/supersim/v1/fleet_spec.rb +208 -0
  742. data/spec/integration/supersim/v1/sim_spec.rb +231 -0
  743. data/spec/integration/supersim/v1/usage_record_spec.rb +203 -0
  744. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +31 -29
  745. data/spec/integration/sync/v1/service/document_spec.rb +24 -22
  746. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +36 -34
  747. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +31 -29
  748. data/spec/integration/sync/v1/service/sync_list_spec.rb +24 -22
  749. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +42 -40
  750. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +31 -29
  751. data/spec/integration/sync/v1/service/sync_map_spec.rb +24 -22
  752. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +10 -8
  753. data/spec/integration/sync/v1/service/sync_stream_spec.rb +24 -22
  754. data/spec/integration/sync/v1/service_spec.rb +27 -13
  755. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +27 -25
  756. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +21 -13
  757. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +54 -21
  758. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +208 -19
  759. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +13 -5
  760. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +10 -5
  761. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +8 -6
  762. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +11 -9
  763. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +31 -33
  764. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +35 -29
  765. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +23 -21
  766. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +23 -36
  767. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +7 -5
  768. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +7 -5
  769. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +7 -5
  770. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +5 -3
  771. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +31 -29
  772. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +7 -5
  773. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +8 -5
  774. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +8 -6
  775. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +31 -31
  776. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +5 -3
  777. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +6 -3
  778. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +6 -4
  779. data/spec/integration/taskrouter/v1/workspace_spec.rb +18 -16
  780. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +31 -29
  781. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +37 -35
  782. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +43 -41
  783. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +22 -20
  784. data/spec/integration/trunking/v1/trunk_spec.rb +43 -37
  785. data/spec/integration/verify/v2/service/messaging_configuration_spec.rb +231 -0
  786. data/spec/integration/verify/v2/service/rate_limit/bucket_spec.rb +249 -0
  787. data/spec/integration/verify/v2/service/rate_limit_spec.rb +221 -0
  788. data/spec/integration/verify/v2/service/verification_check_spec.rb +80 -0
  789. data/spec/integration/verify/v2/service/verification_spec.rb +319 -0
  790. data/spec/integration/verify/v2/service_spec.rb +247 -0
  791. data/spec/integration/video/v1/composition_hook_spec.rb +410 -0
  792. data/spec/integration/video/v1/composition_settings_spec.rb +86 -0
  793. data/spec/integration/video/v1/composition_spec.rb +350 -0
  794. data/spec/integration/video/v1/recording_settings_spec.rb +86 -0
  795. data/spec/integration/video/v1/recording_spec.rb +20 -10
  796. data/spec/integration/video/v1/room/recording_spec.rb +53 -11
  797. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +14 -12
  798. data/spec/integration/video/v1/room/room_participant/room_participant_subscribe_rule_spec.rb +105 -0
  799. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +97 -0
  800. data/spec/integration/video/v1/room/room_participant_spec.rb +27 -19
  801. data/spec/integration/video/v1/room_spec.rb +11 -9
  802. data/spec/integration/voice/v1/dialing_permissions/bulk_country_update_spec.rb +45 -0
  803. data/spec/integration/voice/v1/dialing_permissions/country/highrisk_special_prefix_spec.rb +61 -0
  804. data/spec/integration/voice/v1/dialing_permissions/country_spec.rb +112 -0
  805. data/spec/integration/voice/v1/dialing_permissions/settings_spec.rb +77 -0
  806. data/spec/integration/voice/v1/dialing_permissions_spec.rb +12 -0
  807. data/spec/integration/wireless/v1/command_spec.rb +137 -12
  808. data/spec/integration/wireless/v1/rate_plan_spec.rb +35 -21
  809. data/spec/integration/wireless/v1/sim/data_session_spec.rb +11 -7
  810. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +58 -8
  811. data/spec/integration/wireless/v1/sim_spec.rb +125 -10
  812. data/spec/integration/wireless/v1/usage_record_spec.rb +111 -0
  813. data/spec/jwt/access_token_spec.rb +2 -0
  814. data/spec/rest/client_spec.rb +34 -0
  815. data/spec/security/request_validator_spec.rb +73 -61
  816. data/spec/spec_helper.rb +6 -0
  817. data/spec/twilio_spec.rb +3 -1
  818. data/spec/twiml/messaging_response_spec.rb +186 -46
  819. data/spec/twiml/voice_response_spec.rb +625 -257
  820. data/spec/util/configuration_spec.rb +6 -0
  821. data/twilio-ruby.gemspec +10 -6
  822. metadata +521 -91
  823. data/lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb +0 -260
  824. data/lib/twilio-ruby/rest/preview/acc_security/service/verification.rb +0 -183
  825. data/lib/twilio-ruby/rest/preview/proxy/service/session/interaction.rb +0 -435
  826. data/lib/twilio-ruby/rest/preview/proxy/service/session.rb +0 -495
  827. data/lib/twilio-ruby/rest/preview/proxy/service.rb +0 -462
  828. data/spec/integration/notify/v1/service/segment_spec.rb +0 -84
  829. data/spec/integration/notify/v1/service/user/segment_memberships_spec.rb +0 -116
  830. data/spec/integration/notify/v1/service/user/user_binding_spec.rb +0 -266
  831. data/spec/integration/notify/v1/service/user_spec.rb +0 -211
  832. data/spec/integration/preview/acc_security/service/verification_check_spec.rb +0 -50
  833. data/spec/integration/preview/acc_security/service/verification_spec.rb +0 -50
  834. data/spec/integration/preview/acc_security/service_spec.rb +0 -183
  835. data/spec/integration/preview/proxy/service/phone_number_spec.rb +0 -171
  836. data/spec/integration/preview/proxy/service/session/interaction_spec.rb +0 -104
  837. data/spec/integration/preview/proxy/service/session/participant/message_interaction_spec.rb +0 -164
  838. data/spec/integration/preview/proxy/service/session/participant_spec.rb +0 -224
  839. data/spec/integration/preview/proxy/service/session_spec.rb +0 -216
  840. data/spec/integration/preview/proxy/service/short_code_spec.rb +0 -171
  841. data/spec/integration/preview/proxy/service_spec.rb +0 -200
  842. data/spec/integration/preview/studio/flow/engagement/step_spec.rb +0 -96
  843. data/spec/integration/preview/understand/service/field_type/field_value_spec.rb +0 -205
  844. data/spec/integration/preview/understand/service/intent/sample_spec.rb +0 -247
  845. data/spec/integration/preview/understand/service/intent_spec.rb +0 -252
  846. data/spec/integration/preview/understand/service_spec.rb +0 -256
@@ -3,6 +3,8 @@
3
3
  # \ / _ _ _| _ _
4
4
  # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
5
  # / /
6
+ #
7
+ # frozen_string_literal: true
6
8
 
7
9
  module Twilio
8
10
  module REST
@@ -14,8 +16,10 @@ module Twilio
14
16
  ##
15
17
  # Initialize the PublishedTrackList
16
18
  # @param [Version] version Version that contains the resource
17
- # @param [String] room_sid The room_sid
18
- # @param [String] participant_sid The participant_sid
19
+ # @param [String] room_sid The SID of the Room resource where the track is
20
+ # published.
21
+ # @param [String] participant_sid The SID of the Participant resource with the
22
+ # published track.
19
23
  # @return [PublishedTrackList] PublishedTrackList
20
24
  def initialize(version, room_sid: nil, participant_sid: nil)
21
25
  super(version)
@@ -54,7 +58,7 @@ module Twilio
54
58
  def stream(limit: nil, page_size: nil)
55
59
  limits = @version.read_limits(limit, page_size)
56
60
 
57
- page = self.page(page_size: limits[:page_size])
61
+ page = self.page(page_size: limits[:page_size], )
58
62
 
59
63
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
60
64
  end
@@ -66,7 +70,7 @@ module Twilio
66
70
  def each
67
71
  limits = @version.read_limits
68
72
 
69
- page = self.page(page_size: limits[:page_size])
73
+ page = self.page(page_size: limits[:page_size], )
70
74
 
71
75
  @version.stream(page,
72
76
  limit: limits[:limit],
@@ -152,15 +156,18 @@ module Twilio
152
156
  ##
153
157
  # Initialize the PublishedTrackContext
154
158
  # @param [Version] version Version that contains the resource
155
- # @param [String] room_sid The room_sid
156
- # @param [String] participant_sid The participant_sid
157
- # @param [String] sid The sid
159
+ # @param [String] room_sid The SID of the Room resource where the Track resource
160
+ # to fetch is published.
161
+ # @param [String] participant_sid The SID of the Participant resource with the
162
+ # published track to fetch.
163
+ # @param [String] sid The SID of the RoomParticipantPublishedTrack resource to
164
+ # fetch.
158
165
  # @return [PublishedTrackContext] PublishedTrackContext
159
166
  def initialize(version, room_sid, participant_sid, sid)
160
167
  super(version)
161
168
 
162
169
  # Path Solution
163
- @solution = {room_sid: room_sid, participant_sid: participant_sid, sid: sid}
170
+ @solution = {room_sid: room_sid, participant_sid: participant_sid, sid: sid, }
164
171
  @uri = "/Rooms/#{@solution[:room_sid]}/Participants/#{@solution[:participant_sid]}/PublishedTracks/#{@solution[:sid]}"
165
172
  end
166
173
 
@@ -191,6 +198,13 @@ module Twilio
191
198
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
192
199
  "#<Twilio.Video.V1.PublishedTrackContext #{context}>"
193
200
  end
201
+
202
+ ##
203
+ # Provide a detailed, user friendly representation
204
+ def inspect
205
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
206
+ "#<Twilio.Video.V1.PublishedTrackContext #{context}>"
207
+ end
194
208
  end
195
209
 
196
210
  class PublishedTrackInstance < InstanceResource
@@ -198,9 +212,12 @@ module Twilio
198
212
  # Initialize the PublishedTrackInstance
199
213
  # @param [Version] version Version that contains the resource
200
214
  # @param [Hash] payload payload that contains response from Twilio
201
- # @param [String] room_sid The room_sid
202
- # @param [String] participant_sid The participant_sid
203
- # @param [String] sid The sid
215
+ # @param [String] room_sid The SID of the Room resource where the track is
216
+ # published.
217
+ # @param [String] participant_sid The SID of the Participant resource with the
218
+ # published track.
219
+ # @param [String] sid The SID of the RoomParticipantPublishedTrack resource to
220
+ # fetch.
204
221
  # @return [PublishedTrackInstance] PublishedTrackInstance
205
222
  def initialize(version, payload, room_sid: nil, participant_sid: nil, sid: nil)
206
223
  super(version)
@@ -244,55 +261,55 @@ module Twilio
244
261
  end
245
262
 
246
263
  ##
247
- # @return [String] The sid
264
+ # @return [String] The unique string that identifies the resource
248
265
  def sid
249
266
  @properties['sid']
250
267
  end
251
268
 
252
269
  ##
253
- # @return [String] The participant_sid
270
+ # @return [String] The SID of the Participant resource with the published track
254
271
  def participant_sid
255
272
  @properties['participant_sid']
256
273
  end
257
274
 
258
275
  ##
259
- # @return [String] The room_sid
276
+ # @return [String] The SID of the Room resource where the track is published
260
277
  def room_sid
261
278
  @properties['room_sid']
262
279
  end
263
280
 
264
281
  ##
265
- # @return [String] The name
282
+ # @return [String] The track name
266
283
  def name
267
284
  @properties['name']
268
285
  end
269
286
 
270
287
  ##
271
- # @return [Time] The date_created
288
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was created
272
289
  def date_created
273
290
  @properties['date_created']
274
291
  end
275
292
 
276
293
  ##
277
- # @return [Time] The date_updated
294
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
278
295
  def date_updated
279
296
  @properties['date_updated']
280
297
  end
281
298
 
282
299
  ##
283
- # @return [Boolean] The enabled
300
+ # @return [Boolean] Whether the track is enabled
284
301
  def enabled
285
302
  @properties['enabled']
286
303
  end
287
304
 
288
305
  ##
289
- # @return [published_track.Kind] The kind
306
+ # @return [published_track.Kind] The track type
290
307
  def kind
291
308
  @properties['kind']
292
309
  end
293
310
 
294
311
  ##
295
- # @return [String] The url
312
+ # @return [String] The absolute URL of the resource
296
313
  def url
297
314
  @properties['url']
298
315
  end
@@ -0,0 +1,191 @@
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 Video < Domain
12
+ class V1 < Version
13
+ class RoomContext < InstanceContext
14
+ class ParticipantContext < InstanceContext
15
+ ##
16
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
17
+ class SubscribeRulesList < ListResource
18
+ ##
19
+ # Initialize the SubscribeRulesList
20
+ # @param [Version] version Version that contains the resource
21
+ # @param [String] room_sid The SID of the Room resource for the Subscribe Rules
22
+ # @param [String] participant_sid The SID of the Participant resource for the
23
+ # Subscribe Rules.
24
+ # @return [SubscribeRulesList] SubscribeRulesList
25
+ def initialize(version, room_sid: nil, participant_sid: nil)
26
+ super(version)
27
+
28
+ # Path Solution
29
+ @solution = {room_sid: room_sid, participant_sid: participant_sid}
30
+ @uri = "/Rooms/#{@solution[:room_sid]}/Participants/#{@solution[:participant_sid]}/SubscribeRules"
31
+ end
32
+
33
+ ##
34
+ # Fetch a SubscribeRulesInstance
35
+ # @return [SubscribeRulesInstance] Fetched SubscribeRulesInstance
36
+ def fetch
37
+ params = Twilio::Values.of({})
38
+
39
+ payload = @version.fetch(
40
+ 'GET',
41
+ @uri,
42
+ params,
43
+ )
44
+
45
+ SubscribeRulesInstance.new(
46
+ @version,
47
+ payload,
48
+ room_sid: @solution[:room_sid],
49
+ participant_sid: @solution[:participant_sid],
50
+ )
51
+ end
52
+
53
+ ##
54
+ # Update the SubscribeRulesInstance
55
+ # @param [Hash] rules A JSON-encoded array of subscribe rules. See the [Specifying
56
+ # Subscribe
57
+ # Rules](https://www.twilio.com/docs/video/api/track-subscriptions#specifying-sr)
58
+ # section for further information.
59
+ # @return [SubscribeRulesInstance] Updated SubscribeRulesInstance
60
+ def update(rules: :unset)
61
+ data = Twilio::Values.of({'Rules' => Twilio.serialize_object(rules), })
62
+
63
+ payload = @version.update(
64
+ 'POST',
65
+ @uri,
66
+ data: data,
67
+ )
68
+
69
+ SubscribeRulesInstance.new(
70
+ @version,
71
+ payload,
72
+ room_sid: @solution[:room_sid],
73
+ participant_sid: @solution[:participant_sid],
74
+ )
75
+ end
76
+
77
+ ##
78
+ # Provide a user friendly representation
79
+ def to_s
80
+ '#<Twilio.Video.V1.SubscribeRulesList>'
81
+ end
82
+ end
83
+
84
+ ##
85
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
86
+ class SubscribeRulesPage < Page
87
+ ##
88
+ # Initialize the SubscribeRulesPage
89
+ # @param [Version] version Version that contains the resource
90
+ # @param [Response] response Response from the API
91
+ # @param [Hash] solution Path solution for the resource
92
+ # @return [SubscribeRulesPage] SubscribeRulesPage
93
+ def initialize(version, response, solution)
94
+ super(version, response)
95
+
96
+ # Path Solution
97
+ @solution = solution
98
+ end
99
+
100
+ ##
101
+ # Build an instance of SubscribeRulesInstance
102
+ # @param [Hash] payload Payload response from the API
103
+ # @return [SubscribeRulesInstance] SubscribeRulesInstance
104
+ def get_instance(payload)
105
+ SubscribeRulesInstance.new(
106
+ @version,
107
+ payload,
108
+ room_sid: @solution[:room_sid],
109
+ participant_sid: @solution[:participant_sid],
110
+ )
111
+ end
112
+
113
+ ##
114
+ # Provide a user friendly representation
115
+ def to_s
116
+ '<Twilio.Video.V1.SubscribeRulesPage>'
117
+ end
118
+ end
119
+
120
+ ##
121
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
122
+ class SubscribeRulesInstance < InstanceResource
123
+ ##
124
+ # Initialize the SubscribeRulesInstance
125
+ # @param [Version] version Version that contains the resource
126
+ # @param [Hash] payload payload that contains response from Twilio
127
+ # @param [String] room_sid The SID of the Room resource for the Subscribe Rules
128
+ # @param [String] participant_sid The SID of the Participant resource for the
129
+ # Subscribe Rules.
130
+ # @return [SubscribeRulesInstance] SubscribeRulesInstance
131
+ def initialize(version, payload, room_sid: nil, participant_sid: nil)
132
+ super(version)
133
+
134
+ # Marshaled Properties
135
+ @properties = {
136
+ 'participant_sid' => payload['participant_sid'],
137
+ 'room_sid' => payload['room_sid'],
138
+ 'rules' => payload['rules'],
139
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
140
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
141
+ }
142
+ end
143
+
144
+ ##
145
+ # @return [String] The SID of the Participant resource for the Subscribe Rules
146
+ def participant_sid
147
+ @properties['participant_sid']
148
+ end
149
+
150
+ ##
151
+ # @return [String] The SID of the Room resource for the Subscribe Rules
152
+ def room_sid
153
+ @properties['room_sid']
154
+ end
155
+
156
+ ##
157
+ # @return [String] A collection of Subscribe Rules that describe how to include or exclude matching tracks
158
+ def rules
159
+ @properties['rules']
160
+ end
161
+
162
+ ##
163
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was created
164
+ def date_created
165
+ @properties['date_created']
166
+ end
167
+
168
+ ##
169
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
170
+ def date_updated
171
+ @properties['date_updated']
172
+ end
173
+
174
+ ##
175
+ # Provide a user friendly representation
176
+ def to_s
177
+ "<Twilio.Video.V1.SubscribeRulesInstance>"
178
+ end
179
+
180
+ ##
181
+ # Provide a detailed, user friendly representation
182
+ def inspect
183
+ "<Twilio.Video.V1.SubscribeRulesInstance>"
184
+ end
185
+ end
186
+ end
187
+ end
188
+ end
189
+ end
190
+ end
191
+ end
@@ -0,0 +1,348 @@
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 Video < Domain
12
+ class V1 < Version
13
+ class RoomContext < InstanceContext
14
+ class ParticipantContext < InstanceContext
15
+ class SubscribedTrackList < ListResource
16
+ ##
17
+ # Initialize the SubscribedTrackList
18
+ # @param [Version] version Version that contains the resource
19
+ # @param [String] room_sid The SID of the room where the track is published.
20
+ # @param [String] participant_sid The SID of the participant that subscribes to
21
+ # the track.
22
+ # @return [SubscribedTrackList] SubscribedTrackList
23
+ def initialize(version, room_sid: nil, participant_sid: nil)
24
+ super(version)
25
+
26
+ # Path Solution
27
+ @solution = {room_sid: room_sid, participant_sid: participant_sid}
28
+ @uri = "/Rooms/#{@solution[:room_sid]}/Participants/#{@solution[:participant_sid]}/SubscribedTracks"
29
+ end
30
+
31
+ ##
32
+ # Lists SubscribedTrackInstance records from the API as a list.
33
+ # Unlike stream(), this operation is eager and will load `limit` records into
34
+ # memory before returning.
35
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
36
+ # guarantees to never return more than limit. Default is no limit
37
+ # @param [Integer] page_size Number of records to fetch per request, when
38
+ # not set will use the default value of 50 records. If no page_size is defined
39
+ # but a limit is defined, stream() will attempt to read the limit with the most
40
+ # efficient page size, i.e. min(limit, 1000)
41
+ # @return [Array] Array of up to limit results
42
+ def list(limit: nil, page_size: nil)
43
+ self.stream(limit: limit, page_size: page_size).entries
44
+ end
45
+
46
+ ##
47
+ # Streams SubscribedTrackInstance records from the API as an Enumerable.
48
+ # This operation lazily loads records as efficiently as possible until the limit
49
+ # is reached.
50
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
51
+ # guarantees to never return more than limit. Default is no limit.
52
+ # @param [Integer] page_size Number of records to fetch per request, when
53
+ # not set will use the default value of 50 records. If no page_size is defined
54
+ # but a limit is defined, stream() will attempt to read the limit with the most
55
+ # efficient page size, i.e. min(limit, 1000)
56
+ # @return [Enumerable] Enumerable that will yield up to limit results
57
+ def stream(limit: nil, page_size: nil)
58
+ limits = @version.read_limits(limit, page_size)
59
+
60
+ page = self.page(page_size: limits[:page_size], )
61
+
62
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
63
+ end
64
+
65
+ ##
66
+ # When passed a block, yields SubscribedTrackInstance records from the API.
67
+ # This operation lazily loads records as efficiently as possible until the limit
68
+ # is reached.
69
+ def each
70
+ limits = @version.read_limits
71
+
72
+ page = self.page(page_size: limits[:page_size], )
73
+
74
+ @version.stream(page,
75
+ limit: limits[:limit],
76
+ page_limit: limits[:page_limit]).each {|x| yield x}
77
+ end
78
+
79
+ ##
80
+ # Retrieve a single page of SubscribedTrackInstance records from the API.
81
+ # Request is executed immediately.
82
+ # @param [String] page_token PageToken provided by the API
83
+ # @param [Integer] page_number Page Number, this value is simply for client state
84
+ # @param [Integer] page_size Number of records to return, defaults to 50
85
+ # @return [Page] Page of SubscribedTrackInstance
86
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
87
+ params = Twilio::Values.of({
88
+ 'PageToken' => page_token,
89
+ 'Page' => page_number,
90
+ 'PageSize' => page_size,
91
+ })
92
+ response = @version.page(
93
+ 'GET',
94
+ @uri,
95
+ params
96
+ )
97
+ SubscribedTrackPage.new(@version, response, @solution)
98
+ end
99
+
100
+ ##
101
+ # Retrieve a single page of SubscribedTrackInstance records from the API.
102
+ # Request is executed immediately.
103
+ # @param [String] target_url API-generated URL for the requested results page
104
+ # @return [Page] Page of SubscribedTrackInstance
105
+ def get_page(target_url)
106
+ response = @version.domain.request(
107
+ 'GET',
108
+ target_url
109
+ )
110
+ SubscribedTrackPage.new(@version, response, @solution)
111
+ end
112
+
113
+ ##
114
+ # Provide a user friendly representation
115
+ def to_s
116
+ '#<Twilio.Video.V1.SubscribedTrackList>'
117
+ end
118
+ end
119
+
120
+ class SubscribedTrackPage < Page
121
+ ##
122
+ # Initialize the SubscribedTrackPage
123
+ # @param [Version] version Version that contains the resource
124
+ # @param [Response] response Response from the API
125
+ # @param [Hash] solution Path solution for the resource
126
+ # @return [SubscribedTrackPage] SubscribedTrackPage
127
+ def initialize(version, response, solution)
128
+ super(version, response)
129
+
130
+ # Path Solution
131
+ @solution = solution
132
+ end
133
+
134
+ ##
135
+ # Build an instance of SubscribedTrackInstance
136
+ # @param [Hash] payload Payload response from the API
137
+ # @return [SubscribedTrackInstance] SubscribedTrackInstance
138
+ def get_instance(payload)
139
+ SubscribedTrackInstance.new(
140
+ @version,
141
+ payload,
142
+ room_sid: @solution[:room_sid],
143
+ participant_sid: @solution[:participant_sid],
144
+ )
145
+ end
146
+
147
+ ##
148
+ # Provide a user friendly representation
149
+ def to_s
150
+ '<Twilio.Video.V1.SubscribedTrackPage>'
151
+ end
152
+ end
153
+
154
+ class SubscribedTrackContext < InstanceContext
155
+ ##
156
+ # Initialize the SubscribedTrackContext
157
+ # @param [Version] version Version that contains the resource
158
+ # @param [String] room_sid The SID of the Room where the Track resource to fetch
159
+ # is subscribed.
160
+ # @param [String] participant_sid The SID of the participant that subscribes to
161
+ # the Track resource to fetch.
162
+ # @param [String] sid The SID of the RoomParticipantSubscribedTrack resource to
163
+ # fetch.
164
+ # @return [SubscribedTrackContext] SubscribedTrackContext
165
+ def initialize(version, room_sid, participant_sid, sid)
166
+ super(version)
167
+
168
+ # Path Solution
169
+ @solution = {room_sid: room_sid, participant_sid: participant_sid, sid: sid, }
170
+ @uri = "/Rooms/#{@solution[:room_sid]}/Participants/#{@solution[:participant_sid]}/SubscribedTracks/#{@solution[:sid]}"
171
+ end
172
+
173
+ ##
174
+ # Fetch a SubscribedTrackInstance
175
+ # @return [SubscribedTrackInstance] Fetched SubscribedTrackInstance
176
+ def fetch
177
+ params = Twilio::Values.of({})
178
+
179
+ payload = @version.fetch(
180
+ 'GET',
181
+ @uri,
182
+ params,
183
+ )
184
+
185
+ SubscribedTrackInstance.new(
186
+ @version,
187
+ payload,
188
+ room_sid: @solution[:room_sid],
189
+ participant_sid: @solution[:participant_sid],
190
+ sid: @solution[:sid],
191
+ )
192
+ end
193
+
194
+ ##
195
+ # Provide a user friendly representation
196
+ def to_s
197
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
198
+ "#<Twilio.Video.V1.SubscribedTrackContext #{context}>"
199
+ end
200
+
201
+ ##
202
+ # Provide a detailed, user friendly representation
203
+ def inspect
204
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
205
+ "#<Twilio.Video.V1.SubscribedTrackContext #{context}>"
206
+ end
207
+ end
208
+
209
+ class SubscribedTrackInstance < InstanceResource
210
+ ##
211
+ # Initialize the SubscribedTrackInstance
212
+ # @param [Version] version Version that contains the resource
213
+ # @param [Hash] payload payload that contains response from Twilio
214
+ # @param [String] room_sid The SID of the room where the track is published.
215
+ # @param [String] participant_sid The SID of the participant that subscribes to
216
+ # the track.
217
+ # @param [String] sid The SID of the RoomParticipantSubscribedTrack resource to
218
+ # fetch.
219
+ # @return [SubscribedTrackInstance] SubscribedTrackInstance
220
+ def initialize(version, payload, room_sid: nil, participant_sid: nil, sid: nil)
221
+ super(version)
222
+
223
+ # Marshaled Properties
224
+ @properties = {
225
+ 'sid' => payload['sid'],
226
+ 'participant_sid' => payload['participant_sid'],
227
+ 'publisher_sid' => payload['publisher_sid'],
228
+ 'room_sid' => payload['room_sid'],
229
+ 'name' => payload['name'],
230
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
231
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
232
+ 'enabled' => payload['enabled'],
233
+ 'kind' => payload['kind'],
234
+ 'url' => payload['url'],
235
+ }
236
+
237
+ # Context
238
+ @instance_context = nil
239
+ @params = {
240
+ 'room_sid' => room_sid,
241
+ 'participant_sid' => participant_sid,
242
+ 'sid' => sid || @properties['sid'],
243
+ }
244
+ end
245
+
246
+ ##
247
+ # Generate an instance context for the instance, the context is capable of
248
+ # performing various actions. All instance actions are proxied to the context
249
+ # @return [SubscribedTrackContext] SubscribedTrackContext for this SubscribedTrackInstance
250
+ def context
251
+ unless @instance_context
252
+ @instance_context = SubscribedTrackContext.new(
253
+ @version,
254
+ @params['room_sid'],
255
+ @params['participant_sid'],
256
+ @params['sid'],
257
+ )
258
+ end
259
+ @instance_context
260
+ end
261
+
262
+ ##
263
+ # @return [String] The unique string that identifies the resource
264
+ def sid
265
+ @properties['sid']
266
+ end
267
+
268
+ ##
269
+ # @return [String] The SID of the participant that subscribes to the track
270
+ def participant_sid
271
+ @properties['participant_sid']
272
+ end
273
+
274
+ ##
275
+ # @return [String] The SID of the participant that publishes the track
276
+ def publisher_sid
277
+ @properties['publisher_sid']
278
+ end
279
+
280
+ ##
281
+ # @return [String] The SID of the room where the track is published
282
+ def room_sid
283
+ @properties['room_sid']
284
+ end
285
+
286
+ ##
287
+ # @return [String] The track name
288
+ def name
289
+ @properties['name']
290
+ end
291
+
292
+ ##
293
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was created
294
+ def date_created
295
+ @properties['date_created']
296
+ end
297
+
298
+ ##
299
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
300
+ def date_updated
301
+ @properties['date_updated']
302
+ end
303
+
304
+ ##
305
+ # @return [Boolean] Whether the track is enabled
306
+ def enabled
307
+ @properties['enabled']
308
+ end
309
+
310
+ ##
311
+ # @return [subscribed_track.Kind] The track type
312
+ def kind
313
+ @properties['kind']
314
+ end
315
+
316
+ ##
317
+ # @return [String] The absolute URL of the resource
318
+ def url
319
+ @properties['url']
320
+ end
321
+
322
+ ##
323
+ # Fetch a SubscribedTrackInstance
324
+ # @return [SubscribedTrackInstance] Fetched SubscribedTrackInstance
325
+ def fetch
326
+ context.fetch
327
+ end
328
+
329
+ ##
330
+ # Provide a user friendly representation
331
+ def to_s
332
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
333
+ "<Twilio.Video.V1.SubscribedTrackInstance #{values}>"
334
+ end
335
+
336
+ ##
337
+ # Provide a detailed, user friendly representation
338
+ def inspect
339
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
340
+ "<Twilio.Video.V1.SubscribedTrackInstance #{values}>"
341
+ end
342
+ end
343
+ end
344
+ end
345
+ end
346
+ end
347
+ end
348
+ end