twilio-ruby 5.15.1 → 5.58.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (848) hide show
  1. checksums.yaml +5 -5
  2. data/.dockerignore +1 -0
  3. data/.gitignore +5 -0
  4. data/.rubocop.yml +22 -6
  5. data/.rubocop_todo.yml +86 -75
  6. data/.travis.yml +45 -19
  7. data/CHANGES.md +1553 -0
  8. data/CODE_OF_CONDUCT.md +73 -0
  9. data/CONTRIBUTING.md +4 -2
  10. data/Dockerfile +2 -2
  11. data/Gemfile +1 -9
  12. data/ISSUE_TEMPLATE.md +17 -13
  13. data/{LICENSE.md → LICENSE} +2 -2
  14. data/Makefile +6 -15
  15. data/PULL_REQUEST_TEMPLATE.md +30 -3
  16. data/README.md +120 -54
  17. data/Rakefile +0 -54
  18. data/VERSIONS.md +9 -10
  19. data/examples/examples.rb +1 -1
  20. data/githooks/pre-commit +0 -0
  21. data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +1 -1
  22. data/lib/twilio-ruby/framework/{error.rb → rest/error.rb} +3 -3
  23. data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  24. data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
  25. data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +0 -0
  26. data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +0 -0
  27. data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +7 -11
  28. data/lib/twilio-ruby/http/http_client.rb +29 -14
  29. data/lib/twilio-ruby/http.rb +5 -0
  30. data/lib/twilio-ruby/jwt/access_token.rb +7 -2
  31. data/lib/twilio-ruby/jwt/jwt.rb +6 -0
  32. data/lib/twilio-ruby/jwt/task_router.rb +2 -2
  33. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +186 -0
  34. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +45 -46
  35. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +44 -52
  36. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +5 -4
  37. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +200 -0
  38. data/lib/twilio-ruby/rest/accounts/v1.rb +15 -1
  39. data/lib/twilio-ruby/rest/accounts.rb +13 -1
  40. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +40 -38
  41. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +115 -121
  42. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +162 -181
  43. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +35 -32
  44. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +169 -178
  45. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +187 -85
  46. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +166 -172
  47. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +187 -85
  48. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +187 -85
  49. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +166 -172
  50. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +187 -85
  51. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +28 -23
  52. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +125 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +201 -0
  54. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +75 -70
  55. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +59 -59
  56. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +72 -67
  57. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +375 -0
  58. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +118 -103
  59. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +433 -313
  60. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +335 -201
  61. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +80 -79
  62. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +98 -81
  63. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +80 -71
  64. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +48 -41
  65. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +53 -54
  66. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +172 -127
  67. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +171 -127
  68. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +171 -127
  69. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +304 -289
  70. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +35 -36
  71. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +25 -20
  72. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +51 -47
  73. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +203 -203
  74. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +11 -15
  75. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +11 -15
  76. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +47 -55
  77. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +56 -61
  78. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +53 -38
  79. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +79 -78
  80. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +55 -48
  81. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +48 -42
  82. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +54 -41
  83. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +70 -61
  84. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +69 -70
  85. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +20 -25
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +45 -51
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +27 -36
  88. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +48 -49
  89. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +48 -49
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +15 -13
  91. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +48 -49
  92. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +13 -11
  93. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +11 -9
  94. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +47 -47
  95. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +46 -47
  96. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +179 -95
  97. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +64 -52
  98. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +31 -39
  99. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +5 -4
  100. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +16 -19
  101. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +43 -40
  102. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +70 -50
  103. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +70 -50
  104. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +70 -53
  105. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +70 -50
  106. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +70 -50
  107. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +70 -50
  108. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +70 -50
  109. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +70 -50
  110. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +67 -53
  111. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +107 -114
  112. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +3 -2
  113. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +40 -45
  114. data/lib/twilio-ruby/rest/api/v2010/account.rb +38 -28
  115. data/lib/twilio-ruby/rest/api/v2010.rb +10 -5
  116. data/lib/twilio-ruby/rest/api.rb +38 -27
  117. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +29 -24
  118. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +29 -20
  119. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +65 -59
  120. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +60 -59
  121. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +60 -58
  122. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +113 -87
  123. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +27 -24
  124. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +60 -51
  125. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +90 -76
  126. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +41 -30
  127. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +35 -22
  128. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +76 -66
  129. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +420 -0
  130. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +132 -88
  131. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +194 -0
  132. data/lib/twilio-ruby/rest/autopilot/v1.rb +15 -6
  133. data/lib/twilio-ruby/rest/autopilot.rb +8 -2
  134. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +286 -0
  135. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +286 -0
  136. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +255 -0
  137. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +243 -0
  138. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +226 -0
  139. data/lib/twilio-ruby/rest/bulkexports/v1.rb +62 -0
  140. data/lib/twilio-ruby/rest/bulkexports.rb +56 -0
  141. data/lib/twilio-ruby/rest/chat/v1/credential.rb +91 -80
  142. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +74 -68
  143. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +94 -97
  144. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +81 -73
  145. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +82 -74
  146. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +62 -62
  147. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +20 -18
  148. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +74 -81
  149. data/lib/twilio-ruby/rest/chat/v1/service.rb +338 -357
  150. data/lib/twilio-ruby/rest/chat/v1.rb +15 -11
  151. data/lib/twilio-ruby/rest/chat/v2/credential.rb +77 -84
  152. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +66 -56
  153. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +72 -74
  154. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +171 -141
  155. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +143 -135
  156. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +115 -69
  157. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +134 -117
  158. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +64 -59
  159. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +72 -67
  160. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +95 -53
  161. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +93 -88
  162. data/lib/twilio-ruby/rest/chat/v2/service.rb +224 -185
  163. data/lib/twilio-ruby/rest/chat/v2.rb +13 -11
  164. data/lib/twilio-ruby/rest/chat.rb +3 -3
  165. data/lib/twilio-ruby/rest/client.rb +196 -69
  166. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -0
  167. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +260 -0
  168. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +355 -0
  169. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +502 -0
  170. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +502 -0
  171. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +410 -0
  172. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +562 -0
  173. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +419 -0
  174. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +312 -0
  175. data/lib/twilio-ruby/rest/conversations/v1/role.rb +366 -0
  176. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +380 -0
  177. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +307 -0
  178. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +278 -0
  179. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +386 -0
  180. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +548 -0
  181. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +541 -0
  182. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +449 -0
  183. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +595 -0
  184. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +324 -0
  185. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +387 -0
  186. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +466 -0
  187. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +481 -0
  188. data/lib/twilio-ruby/rest/{authy → conversations}/v1/service.rb +171 -92
  189. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +442 -0
  190. data/lib/twilio-ruby/rest/conversations/v1/user.rb +451 -0
  191. data/lib/twilio-ruby/rest/conversations/v1.rb +126 -0
  192. data/lib/twilio-ruby/rest/conversations.rb +95 -0
  193. data/lib/twilio-ruby/rest/events/v1/event_type.rb +298 -0
  194. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +290 -0
  195. data/lib/twilio-ruby/rest/events/v1/schema.rb +226 -0
  196. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +115 -0
  197. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +119 -0
  198. data/lib/twilio-ruby/rest/events/v1/sink.rb +418 -0
  199. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +346 -0
  200. data/lib/twilio-ruby/rest/events/v1/subscription.rb +397 -0
  201. data/lib/twilio-ruby/rest/events/v1.rb +94 -0
  202. data/lib/twilio-ruby/rest/events.rb +72 -0
  203. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +35 -36
  204. data/lib/twilio-ruby/rest/fax/v1/fax.rb +113 -108
  205. data/lib/twilio-ruby/rest/fax/v1.rb +8 -6
  206. data/lib/twilio-ruby/rest/fax.rb +3 -2
  207. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +340 -0
  208. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +462 -0
  209. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +565 -0
  210. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +341 -0
  211. data/lib/twilio-ruby/rest/flex_api/v1.rb +83 -0
  212. data/lib/twilio-ruby/rest/flex_api.rb +71 -0
  213. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +233 -0
  214. data/lib/twilio-ruby/rest/frontline_api/v1.rb +45 -0
  215. data/lib/twilio-ruby/rest/frontline_api.rb +47 -0
  216. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +262 -0
  217. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +252 -0
  218. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +307 -0
  219. data/lib/twilio-ruby/rest/insights/v1/call.rb +236 -0
  220. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +434 -0
  221. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +378 -0
  222. data/lib/twilio-ruby/rest/insights/v1/room.rb +499 -0
  223. data/lib/twilio-ruby/rest/insights/v1.rb +67 -0
  224. data/lib/twilio-ruby/rest/insights.rb +60 -0
  225. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +47 -75
  226. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +40 -66
  227. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +47 -93
  228. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +41 -61
  229. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +50 -69
  230. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +39 -59
  231. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +6 -10
  232. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +47 -76
  233. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +69 -203
  234. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +15 -13
  235. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +50 -94
  236. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +39 -56
  237. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +40 -69
  238. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +95 -141
  239. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +87 -133
  240. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +29 -39
  241. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +85 -118
  242. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +39 -56
  243. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +38 -63
  244. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +67 -54
  245. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +68 -87
  246. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +76 -126
  247. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +15 -13
  248. data/lib/twilio-ruby/rest/ip_messaging.rb +7 -9
  249. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +63 -56
  250. data/lib/twilio-ruby/rest/lookups/v1.rb +9 -6
  251. data/lib/twilio-ruby/rest/lookups.rb +4 -4
  252. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +346 -0
  253. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +164 -0
  254. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +150 -0
  255. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +44 -46
  256. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +44 -44
  257. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +44 -44
  258. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +426 -0
  259. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +129 -0
  260. data/lib/twilio-ruby/rest/messaging/v1/service.rb +245 -127
  261. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +111 -0
  262. data/lib/twilio-ruby/rest/messaging/v1.rb +44 -6
  263. data/lib/twilio-ruby/rest/messaging.rb +29 -2
  264. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +75 -88
  265. data/lib/twilio-ruby/rest/monitor/v1/event.rb +61 -65
  266. data/lib/twilio-ruby/rest/monitor/v1.rb +13 -11
  267. data/lib/twilio-ruby/rest/monitor.rb +5 -3
  268. data/lib/twilio-ruby/rest/notify/v1/credential.rb +82 -81
  269. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +100 -94
  270. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +126 -124
  271. data/lib/twilio-ruby/rest/notify/v1/service.rb +176 -142
  272. data/lib/twilio-ruby/rest/notify/v1.rb +15 -11
  273. data/lib/twilio-ruby/rest/notify.rb +5 -3
  274. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +309 -0
  275. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +320 -0
  276. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +512 -0
  277. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +358 -0
  278. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +273 -0
  279. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +314 -0
  280. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +371 -0
  281. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +273 -0
  282. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +189 -0
  283. data/lib/twilio-ruby/rest/numbers/v2.rb +35 -0
  284. data/lib/twilio-ruby/rest/numbers.rb +44 -0
  285. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +97 -14
  286. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +275 -0
  287. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +249 -0
  288. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +65 -17
  289. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +35 -28
  290. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +15 -11
  291. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +23 -33
  292. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +23 -33
  293. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +23 -33
  294. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +23 -33
  295. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +23 -33
  296. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +6 -5
  297. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +15 -14
  298. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +46 -51
  299. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +32 -42
  300. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +11 -9
  301. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +28 -26
  302. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +23 -26
  303. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +32 -34
  304. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +50 -63
  305. data/lib/twilio-ruby/rest/preview/marketplace.rb +20 -20
  306. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +20 -25
  307. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +29 -36
  308. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +36 -39
  309. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +20 -25
  310. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +22 -28
  311. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +36 -39
  312. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +20 -25
  313. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +22 -28
  314. data/lib/twilio-ruby/rest/preview/sync/service.rb +23 -33
  315. data/lib/twilio-ruby/rest/preview/sync.rb +6 -5
  316. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +165 -0
  317. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +225 -0
  318. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +195 -0
  319. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +186 -0
  320. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +277 -0
  321. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +65 -0
  322. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +12 -15
  323. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +12 -15
  324. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +11 -10
  325. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +22 -28
  326. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +23 -33
  327. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +23 -33
  328. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +23 -33
  329. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +12 -15
  330. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +24 -30
  331. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +23 -33
  332. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +12 -15
  333. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +11 -10
  334. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +23 -33
  335. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +23 -33
  336. data/lib/twilio-ruby/rest/preview/understand.rb +6 -5
  337. data/lib/twilio-ruby/rest/preview/wireless/command.rb +17 -23
  338. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +25 -35
  339. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +11 -8
  340. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +15 -20
  341. data/lib/twilio-ruby/rest/preview/wireless.rb +16 -13
  342. data/lib/twilio-ruby/rest/preview.rb +52 -30
  343. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +26 -23
  344. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +4 -2
  345. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +26 -23
  346. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +4 -2
  347. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +26 -23
  348. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +20 -19
  349. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +5 -3
  350. data/lib/twilio-ruby/rest/pricing/v1.rb +1 -1
  351. data/lib/twilio-ruby/rest/pricing/v2/country.rb +280 -0
  352. data/lib/twilio-ruby/rest/pricing/v2/number.rb +225 -0
  353. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +26 -25
  354. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +35 -22
  355. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +11 -8
  356. data/lib/twilio-ruby/rest/pricing/v2.rb +38 -1
  357. data/lib/twilio-ruby/rest/pricing.rb +20 -1
  358. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +72 -65
  359. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +61 -83
  360. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +62 -61
  361. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +79 -72
  362. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +127 -107
  363. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +55 -56
  364. data/lib/twilio-ruby/rest/proxy/v1/service.rb +167 -105
  365. data/lib/twilio-ruby/rest/proxy/v1.rb +8 -6
  366. data/lib/twilio-ruby/rest/proxy.rb +3 -2
  367. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +334 -0
  368. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +387 -0
  369. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +219 -0
  370. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +391 -0
  371. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +349 -0
  372. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +394 -0
  373. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +407 -0
  374. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +454 -0
  375. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +241 -0
  376. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +364 -0
  377. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +387 -0
  378. data/lib/twilio-ruby/rest/{verify → serverless}/v1/service.rb +182 -116
  379. data/lib/twilio-ruby/rest/serverless/v1.rb +44 -0
  380. data/lib/twilio-ruby/rest/serverless.rb +47 -0
  381. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +22 -21
  382. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +26 -27
  383. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +34 -35
  384. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +45 -50
  385. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +23 -21
  386. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +29 -27
  387. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +35 -35
  388. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +104 -58
  389. data/lib/twilio-ruby/rest/studio/v1/flow.rb +30 -31
  390. data/lib/twilio-ruby/rest/studio/v1.rb +7 -6
  391. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +211 -0
  392. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +228 -0
  393. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +372 -0
  394. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +449 -0
  395. data/lib/twilio-ruby/rest/{preview/authy/service/entity.rb → studio/v2/flow/flow_revision.rb} +118 -117
  396. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +199 -0
  397. data/lib/twilio-ruby/rest/studio/v2/flow.rb +482 -0
  398. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +117 -0
  399. data/lib/twilio-ruby/rest/studio/v2.rb +51 -0
  400. data/lib/twilio-ruby/rest/studio.rb +19 -5
  401. data/lib/twilio-ruby/rest/supersim/v1/command.rb +368 -0
  402. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +494 -0
  403. data/lib/twilio-ruby/rest/supersim/v1/network.rb +307 -0
  404. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +339 -0
  405. data/lib/twilio-ruby/rest/{preview/acc_security/service.rb → supersim/v1/network_access_profile.rb} +116 -143
  406. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +231 -0
  407. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +443 -0
  408. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +371 -0
  409. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +338 -0
  410. data/lib/twilio-ruby/rest/supersim/v1.rb +131 -0
  411. data/lib/twilio-ruby/rest/supersim.rb +97 -0
  412. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +60 -69
  413. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +71 -75
  414. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +155 -107
  415. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +59 -69
  416. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +77 -73
  417. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +161 -109
  418. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +57 -69
  419. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +76 -73
  420. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +18 -27
  421. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +57 -67
  422. data/lib/twilio-ruby/rest/sync/v1/service.rb +141 -87
  423. data/lib/twilio-ruby/rest/sync/v1.rb +7 -6
  424. data/lib/twilio-ruby/rest/sync.rb +3 -2
  425. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +83 -77
  426. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +131 -85
  427. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +298 -194
  428. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +217 -176
  429. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +114 -26
  430. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +79 -69
  431. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +59 -29
  432. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +57 -54
  433. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +61 -70
  434. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +119 -122
  435. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +309 -155
  436. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +56 -59
  437. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +50 -41
  438. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +43 -39
  439. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +27 -19
  440. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +53 -50
  441. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +131 -117
  442. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +70 -59
  443. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +42 -26
  444. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +65 -54
  445. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +108 -107
  446. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +59 -54
  447. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +34 -24
  448. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +55 -50
  449. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +124 -128
  450. data/lib/twilio-ruby/rest/taskrouter/v1.rb +7 -6
  451. data/lib/twilio-ruby/rest/taskrouter.rb +3 -2
  452. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +42 -43
  453. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +40 -45
  454. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +74 -83
  455. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +65 -62
  456. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +198 -0
  457. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +149 -134
  458. data/lib/twilio-ruby/rest/trunking/v1.rb +8 -6
  459. data/lib/twilio-ruby/rest/trunking.rb +3 -3
  460. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +359 -0
  461. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +330 -0
  462. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +328 -0
  463. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +523 -0
  464. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +356 -0
  465. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +271 -0
  466. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +262 -0
  467. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +369 -0
  468. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +271 -0
  469. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +359 -0
  470. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +330 -0
  471. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +328 -0
  472. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +523 -0
  473. data/lib/twilio-ruby/rest/trusthub/v1.rb +146 -0
  474. data/lib/twilio-ruby/rest/trusthub.rb +100 -0
  475. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/form.rb +30 -29
  476. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +124 -0
  477. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +201 -0
  478. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +529 -0
  479. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/service/entity/factor.rb +108 -129
  480. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +299 -0
  481. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/service/entity.rb +96 -43
  482. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +370 -0
  483. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +399 -0
  484. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +391 -0
  485. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +356 -0
  486. data/lib/twilio-ruby/rest/verify/{v1 → v2}/service/verification_check.rb +59 -36
  487. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +427 -0
  488. data/lib/twilio-ruby/rest/verify/v2/service.rb +761 -0
  489. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +329 -0
  490. data/lib/twilio-ruby/rest/verify/v2.rb +78 -0
  491. data/lib/twilio-ruby/rest/verify.rb +28 -9
  492. data/lib/twilio-ruby/rest/video/v1/composition.rb +125 -129
  493. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +260 -229
  494. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +54 -63
  495. data/lib/twilio-ruby/rest/video/v1/recording.rb +81 -69
  496. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +54 -63
  497. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +64 -53
  498. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +39 -37
  499. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +175 -0
  500. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +132 -105
  501. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +104 -77
  502. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +144 -0
  503. data/lib/twilio-ruby/rest/video/v1/room.rb +118 -85
  504. data/lib/twilio-ruby/rest/video/v1.rb +35 -34
  505. data/lib/twilio-ruby/rest/video.rb +16 -16
  506. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +496 -0
  507. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +441 -0
  508. data/lib/twilio-ruby/rest/{preview/authy/service.rb → voice/v1/connection_policy.rb} +115 -117
  509. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/bulk_country_update.rb +8 -13
  510. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/country/highrisk_special_prefix.rb +9 -11
  511. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/country.rb +59 -58
  512. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +197 -0
  513. data/lib/twilio-ruby/rest/voice/v1/{voice_permission.rb → dialing_permissions.rb} +21 -23
  514. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +349 -0
  515. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +329 -0
  516. data/lib/twilio-ruby/rest/voice/v1.rb +73 -5
  517. data/lib/twilio-ruby/rest/voice.rb +40 -4
  518. data/lib/twilio-ruby/rest/wireless/v1/command.rb +86 -67
  519. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +86 -88
  520. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +37 -40
  521. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +42 -38
  522. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +198 -151
  523. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +229 -0
  524. data/lib/twilio-ruby/rest/wireless/v1.rb +26 -16
  525. data/lib/twilio-ruby/rest/wireless.rb +10 -4
  526. data/lib/twilio-ruby/rest.rb +13 -0
  527. data/lib/twilio-ruby/security/request_validator.rb +64 -11
  528. data/lib/twilio-ruby/twiml/fax_response.rb +6 -3
  529. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  530. data/lib/twilio-ruby/twiml/twiml.rb +4 -0
  531. data/lib/twilio-ruby/twiml/voice_response.rb +278 -34
  532. data/lib/twilio-ruby/util/configuration.rb +22 -5
  533. data/lib/twilio-ruby/version.rb +1 -1
  534. data/lib/twilio-ruby.rb +8 -24
  535. data/sonar-project.properties +13 -0
  536. data/twilio-ruby.gemspec +13 -8
  537. metadata +296 -647
  538. data/lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb +0 -405
  539. data/lib/twilio-ruby/rest/authy/v1.rb +0 -59
  540. data/lib/twilio-ruby/rest/authy.rb +0 -55
  541. data/lib/twilio-ruby/rest/preview/acc_security/service/verification.rb +0 -185
  542. data/lib/twilio-ruby/rest/preview/acc_security/service/verification_check.rb +0 -182
  543. data/lib/twilio-ruby/rest/preview/acc_security.rb +0 -43
  544. data/lib/twilio-ruby/rest/preview/authy.rb +0 -43
  545. data/lib/twilio-ruby/rest/verify/v1/service/verification.rb +0 -192
  546. data/lib/twilio-ruby/rest/verify/v1.rb +0 -43
  547. data/spec/framework/request_spec.rb +0 -36
  548. data/spec/framework/serialize_spec.rb +0 -80
  549. data/spec/holodeck/holodeck.rb +0 -61
  550. data/spec/holodeck/hologram.rb +0 -4
  551. data/spec/http/http_client_spec.rb +0 -122
  552. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -226
  553. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -226
  554. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  555. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -107
  556. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  557. data/spec/integration/api/v2010/account/application_spec.rb +0 -280
  558. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -139
  559. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -103
  560. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -103
  561. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -102
  562. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -103
  563. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -103
  564. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -102
  565. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -103
  566. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -130
  567. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -139
  568. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -151
  569. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -181
  570. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
  571. data/spec/integration/api/v2010/account/call_spec.rb +0 -314
  572. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -350
  573. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -237
  574. data/spec/integration/api/v2010/account/conference_spec.rb +0 -179
  575. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -179
  576. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -137
  577. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -223
  578. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -185
  579. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -185
  580. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -185
  581. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -341
  582. data/spec/integration/api/v2010/account/key_spec.rb +0 -180
  583. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -50
  584. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -164
  585. data/spec/integration/api/v2010/account/message_spec.rb +0 -290
  586. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -47
  587. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -47
  588. data/spec/integration/api/v2010/account/notification_spec.rb +0 -174
  589. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -195
  590. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -169
  591. data/spec/integration/api/v2010/account/queue_spec.rb +0 -242
  592. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -177
  593. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -168
  594. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -176
  595. data/spec/integration/api/v2010/account/recording_spec.rb +0 -187
  596. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -182
  597. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -180
  598. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -256
  599. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -244
  600. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -220
  601. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -220
  602. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  603. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -220
  604. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  605. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  606. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -210
  607. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -220
  608. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -287
  609. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -258
  610. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -254
  611. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  612. data/spec/integration/api/v2010/account/token_spec.rb +0 -58
  613. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -169
  614. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  615. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  616. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  617. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  618. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  619. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  620. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  621. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  622. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  623. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -285
  624. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  625. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  626. data/spec/integration/api/v2010/account_spec.rb +0 -272
  627. data/spec/integration/authy/v1/form_spec.rb +0 -48
  628. data/spec/integration/authy/v1/service/entity/factor/challenge_spec.rb +0 -267
  629. data/spec/integration/authy/v1/service/entity/factor_spec.rb +0 -269
  630. data/spec/integration/authy/v1/service/entity_spec.rb +0 -201
  631. data/spec/integration/authy/v1/service_spec.rb +0 -227
  632. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -81
  633. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -47
  634. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -210
  635. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -246
  636. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -241
  637. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -306
  638. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -81
  639. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -207
  640. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -253
  641. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -87
  642. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -50
  643. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -262
  644. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -270
  645. data/spec/integration/chat/v1/credential_spec.rb +0 -223
  646. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -210
  647. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -284
  648. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -294
  649. data/spec/integration/chat/v1/service/channel_spec.rb +0 -277
  650. data/spec/integration/chat/v1/service/role_spec.rb +0 -263
  651. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -94
  652. data/spec/integration/chat/v1/service/user_spec.rb +0 -266
  653. data/spec/integration/chat/v1/service_spec.rb +0 -299
  654. data/spec/integration/chat/v2/credential_spec.rb +0 -223
  655. data/spec/integration/chat/v2/service/binding_spec.rb +0 -177
  656. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -210
  657. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -257
  658. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -405
  659. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -307
  660. data/spec/integration/chat/v2/service/channel_spec.rb +0 -281
  661. data/spec/integration/chat/v2/service/role_spec.rb +0 -263
  662. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -180
  663. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -192
  664. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  665. data/spec/integration/chat/v2/service_spec.rb +0 -354
  666. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -128
  667. data/spec/integration/fax/v1/fax_spec.rb +0 -271
  668. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -223
  669. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -210
  670. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -284
  671. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -294
  672. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -277
  673. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -263
  674. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -94
  675. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -266
  676. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -299
  677. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -223
  678. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -177
  679. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -210
  680. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -257
  681. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -405
  682. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -307
  683. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -281
  684. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -263
  685. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -180
  686. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -192
  687. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  688. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -354
  689. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -71
  690. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -170
  691. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -201
  692. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -173
  693. data/spec/integration/messaging/v1/service_spec.rb +0 -263
  694. data/spec/integration/monitor/v1/alert_spec.rb +0 -163
  695. data/spec/integration/monitor/v1/event_spec.rb +0 -150
  696. data/spec/integration/notify/v1/credential_spec.rb +0 -223
  697. data/spec/integration/notify/v1/service/binding_spec.rb +0 -225
  698. data/spec/integration/notify/v1/service/notification_spec.rb +0 -99
  699. data/spec/integration/notify/v1/service_spec.rb +0 -286
  700. data/spec/integration/preview/acc_security/service/verification_check_spec.rb +0 -52
  701. data/spec/integration/preview/acc_security/service/verification_spec.rb +0 -52
  702. data/spec/integration/preview/acc_security/service_spec.rb +0 -185
  703. data/spec/integration/preview/authy/service/entity_spec.rb +0 -173
  704. data/spec/integration/preview/authy/service_spec.rb +0 -201
  705. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -58
  706. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -79
  707. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -45
  708. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -238
  709. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -233
  710. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -249
  711. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -237
  712. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -246
  713. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -111
  714. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -227
  715. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -393
  716. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -123
  717. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -144
  718. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -164
  719. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -254
  720. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -204
  721. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  722. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -254
  723. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -204
  724. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -209
  725. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -254
  726. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -204
  727. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -209
  728. data/spec/integration/preview/sync/service_spec.rb +0 -246
  729. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -81
  730. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -81
  731. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -47
  732. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -210
  733. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -246
  734. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -241
  735. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -306
  736. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -81
  737. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -207
  738. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -253
  739. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -87
  740. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -50
  741. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -262
  742. data/spec/integration/preview/understand/assistant_spec.rb +0 -274
  743. data/spec/integration/preview/wireless/command_spec.rb +0 -169
  744. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -262
  745. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -51
  746. data/spec/integration/preview/wireless/sim_spec.rb +0 -210
  747. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -139
  748. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  749. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -130
  750. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  751. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -140
  752. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -56
  753. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  754. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -181
  755. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -62
  756. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  757. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -232
  758. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -136
  759. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -166
  760. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -181
  761. data/spec/integration/proxy/v1/service/session_spec.rb +0 -230
  762. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -229
  763. data/spec/integration/proxy/v1/service_spec.rb +0 -215
  764. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -51
  765. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -54
  766. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -101
  767. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -171
  768. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -51
  769. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -54
  770. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -101
  771. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -171
  772. data/spec/integration/studio/v1/flow_spec.rb +0 -117
  773. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -204
  774. data/spec/integration/sync/v1/service/document_spec.rb +0 -257
  775. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  776. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -204
  777. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -257
  778. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  779. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -204
  780. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -257
  781. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  782. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -249
  783. data/spec/integration/sync/v1/service_spec.rb +0 -254
  784. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -236
  785. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -159
  786. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -225
  787. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -129
  788. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -96
  789. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -81
  790. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -108
  791. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -146
  792. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -294
  793. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -326
  794. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -194
  795. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -188
  796. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -92
  797. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -89
  798. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -70
  799. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -116
  800. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -294
  801. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -97
  802. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  803. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -71
  804. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -272
  805. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -94
  806. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  807. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -105
  808. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -295
  809. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -192
  810. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -192
  811. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -252
  812. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -267
  813. data/spec/integration/trunking/v1/trunk_spec.rb +0 -282
  814. data/spec/integration/verify/v1/service/verification_check_spec.rb +0 -52
  815. data/spec/integration/verify/v1/service/verification_spec.rb +0 -52
  816. data/spec/integration/verify/v1/service_spec.rb +0 -215
  817. data/spec/integration/video/v1/composition_hook_spec.rb +0 -410
  818. data/spec/integration/video/v1/composition_settings_spec.rb +0 -86
  819. data/spec/integration/video/v1/composition_spec.rb +0 -325
  820. data/spec/integration/video/v1/recording_settings_spec.rb +0 -86
  821. data/spec/integration/video/v1/recording_spec.rb +0 -179
  822. data/spec/integration/video/v1/room/recording_spec.rb +0 -188
  823. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -96
  824. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -134
  825. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  826. data/spec/integration/video/v1/room_spec.rb +0 -257
  827. data/spec/integration/voice/v1/voice_permission/bulk_country_update_spec.rb +0 -45
  828. data/spec/integration/voice/v1/voice_permission/country/highrisk_special_prefix_spec.rb +0 -61
  829. data/spec/integration/voice/v1/voice_permission/country_spec.rb +0 -112
  830. data/spec/integration/voice/v1/voice_permission_spec.rb +0 -12
  831. data/spec/integration/wireless/v1/command_spec.rb +0 -263
  832. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -270
  833. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -87
  834. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -67
  835. data/spec/integration/wireless/v1/sim_spec.rb +0 -216
  836. data/spec/jwt/access_token_spec.rb +0 -151
  837. data/spec/jwt/client_capability_spec.rb +0 -104
  838. data/spec/jwt/task_router_spec.rb +0 -172
  839. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  840. data/spec/rest/client_spec.rb +0 -61
  841. data/spec/security/request_validator_spec.rb +0 -86
  842. data/spec/spec_helper.rb +0 -38
  843. data/spec/support/fakeweb.rb +0 -2
  844. data/spec/twilio_spec.rb +0 -15
  845. data/spec/twiml/messaging_response_spec.rb +0 -235
  846. data/spec/twiml/voice_response_spec.rb +0 -847
  847. data/spec/util/configuration_spec.rb +0 -15
  848. data/spec/util/url_encode_spec.rb +0 -12
@@ -3,7 +3,7 @@
3
3
  # \ / _ _ _| _ _
4
4
  # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
5
  # / /
6
- #
6
+ #
7
7
  # frozen_string_literal: true
8
8
 
9
9
  module Twilio
@@ -15,9 +15,9 @@ module Twilio
15
15
  ##
16
16
  # Initialize the CallList
17
17
  # @param [Version] version Version that contains the resource
18
- # @param [String] account_sid The unique id of the
19
- # [Account](https://www.twilio.com/docs/api/rest/account) responsible for creating
20
- # this Call.
18
+ # @param [String] account_sid The SID of the
19
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Call
20
+ # resource.
21
21
  # @return [CallList] CallList
22
22
  def initialize(version, account_sid: nil)
23
23
  super(version)
@@ -31,107 +31,145 @@ module Twilio
31
31
  end
32
32
 
33
33
  ##
34
- # Retrieve a single page of CallInstance records from the API.
35
- # Request is executed immediately.
34
+ # Create the CallInstance
36
35
  # @param [String] to The phone number, SIP address, or client identifier to call.
37
36
  # @param [String] from The phone number or client identifier to use as the caller
38
- # id. If using a phone number, it must be a Twilio number or a Verified [outgoing
39
- # caller id](https://www.twilio.com/docs/voice/api/outgoing-caller-ids) for your
40
- # account. If the `To` parameter is a phone number, `From` must also be a phone
37
+ # id. If using a phone number, it must be a Twilio number or a Verified {outgoing
38
+ # caller id}[https://www.twilio.com/docs/voice/api/outgoing-caller-ids] for your
39
+ # account. If the `to` parameter is a phone number, `From` must also be a phone
41
40
  # number.
42
- # @param [String] method The HTTP method Twilio should use when making its request
43
- # to the `Url` parameter's value. Defaults to `POST`. If an `ApplicationSid`
44
- # parameter is present, this parameter is ignored.
45
- # @param [String] fallback_url A URL that Twilio will request if an error occurs
46
- # requesting or executing the TwiML at `Url`. If an `ApplicationSid` parameter is
47
- # present, this parameter is ignored.
48
- # @param [String] fallback_method The HTTP method that Twilio should use to
49
- # request the `FallbackUrl`. Must be either `GET` or `POST`. Defaults to `POST`.
50
- # If an `ApplicationSid` parameter is present, this parameter is ignored.
51
- # @param [String] status_callback A URL that Twilio will send asynchronous webhook
52
- # requests to on every call event specified in the `StatusCallbackEvent`
53
- # parameter. If no event is specified, Twilio will send `completed` by default. If
54
- # an `ApplicationSid` parameter is present, this parameter is ignored. URLs must
41
+ # @param [String] method The HTTP method we should use when calling the `url`
42
+ # parameter's value. Can be: `GET` or `POST` and the default is `POST`. If an
43
+ # `application_sid` parameter is present, this parameter is ignored.
44
+ # @param [String] fallback_url The URL that we call using the `fallback_method` if
45
+ # an error occurs when requesting or executing the TwiML at `url`. If an
46
+ # `application_sid` parameter is present, this parameter is ignored.
47
+ # @param [String] fallback_method The HTTP method that we should use to request
48
+ # the `fallback_url`. Can be: `GET` or `POST` and the default is `POST`. If an
49
+ # `application_sid` parameter is present, this parameter is ignored.
50
+ # @param [String] status_callback The URL we should call using the
51
+ # `status_callback_method` to send status information to your application. If no
52
+ # `status_callback_event` is specified, we will send the `completed` status. If an
53
+ # `application_sid` parameter is present, this parameter is ignored. URLs must
55
54
  # contain a valid hostname (underscores are not permitted).
56
- # @param [String] status_callback_event The call progress events that will trigger
57
- # a webhook from Twilio. Available values are `initiated`, `ringing`, `answered`,
58
- # and `completed`. If no event is specified, defaults to `completed`. If you want
59
- # to receive multiple events, please provide multiple `StatusCallbackEvent` values
60
- # as individual parameters in the `POST` request. See the code sample for
61
- # [monitoring call
62
- # progress](https://www.twilio.com/docs/voice/api/call?code-sample=code-create-a-call-and-specify-a-statuscallbackevent). If an `ApplicationSid` is present, this parameter is ignored.
63
- # @param [String] status_callback_method The HTTP method Twilio should use when
64
- # requesting the `StatusCallback` URL. Defaults to `POST`. If an `ApplicationSid`
65
- # parameter is present, this parameter is ignored.
55
+ # @param [Array[String]] status_callback_event The call progress events that we
56
+ # will send to the `status_callback` URL. Can be: `initiated`, `ringing`,
57
+ # `answered`, and `completed`. If no event is specified, we send the `completed`
58
+ # status. If you want to receive multiple events, specify each one in a separate
59
+ # `status_callback_event` parameter. See the code sample for {monitoring call
60
+ # progress}[https://www.twilio.com/docs/voice/api/call-resource?code-sample=code-create-a-call-resource-and-specify-a-statuscallbackevent&code-sdk-version=json].
61
+ # If an `application_sid` is present, this parameter is ignored.
62
+ # @param [String] status_callback_method The HTTP method we should use when
63
+ # calling the `status_callback` URL. Can be: `GET` or `POST` and the default is
64
+ # `POST`. If an `application_sid` parameter is present, this parameter is ignored.
66
65
  # @param [String] send_digits A string of keys to dial after connecting to the
67
66
  # number, maximum of 32 digits. Valid digits in the string include: any digit
68
- # (`0`-`9`), '`#`', '`*`' and '`w`' (to insert a half second pause). For example,
67
+ # (`0`-`9`), '`#`', '`*`' and '`w`', to insert a half second pause. For example,
69
68
  # if you connected to a company phone number and wanted to pause for one second,
70
- # dial extension 1234, and then the pound key, use `SendDigits=ww1234#`. Remember
71
- # to URL-encode this string, since the '`#`' character has special meaning in a
72
- # URL. If both `SendDigits` and `MachineDetection` parameters are provided, then
73
- # `MachineDetection` will be ignored.
74
- # @param [String] if_machine The if_machine
75
- # @param [String] timeout The integer number of seconds that Twilio should allow
76
- # the phone to ring before assuming there is no answer. Default is `60` seconds,
77
- # the maximum is `600` seconds. For some call flows, Twilio will add a 5-second
78
- # buffer to the timeout value provided, so if you enter a timeout value of 10
79
- # seconds, you could see actual timeout closer to 15 seconds. Note, you could set
80
- # this to a low value like `15` to hang up before reaching an answering machine or
81
- # voicemail.
82
- # @param [Boolean] record Set this parameter to `true` to record the entirety of a
83
- # phone call. The `RecordingUrl` will be sent to the `StatusCallback` URL.
84
- # Defaults to false.
85
- # @param [String] recording_channels `mono` or `dual` defaults to `mono`. Set
86
- # this parameter to specify the number of channels in the final recording. In a
87
- # mono-channel recording, both legs of the call are mixed down into a single
88
- # channel within a single recording file. With dual-channel recording, both legs
89
- # use separate channels within a single recording file. In dual-channel
90
- # recordings, the parent call will always be in the first channel, and the child
91
- # call will always be in the second channel.
92
- # @param [String] recording_status_callback A URL that Twilio will send a webhook
93
- # request to when the recording is available for access.
94
- # @param [String] recording_status_callback_method The HTTP method Twilio should
95
- # use when requesting the `RecordingStatusCallback` URL. Defaults to `POST`.
96
- # @param [String] sip_auth_username The sip_auth_username
97
- # @param [String] sip_auth_password The sip_auth_password
98
- # @param [String] machine_detection Detect if a human, answering machine, or fax
99
- # has picked up the call. Use `Enable` if you would like Twilio to return an
100
- # `AnsweredBy` value as soon as it identifies the called party. If you would like
101
- # to leave a message on an answering machine, specify `DetectMessageEnd`. If both
102
- # `SendDigits` and `MachineDetection` parameters are provided, then
103
- # MachineDetection will be ignored. [Detailed documentation is
104
- # here](https://www.twilio.com/docs/voice/answering-machine-detection).
105
- # @param [String] machine_detection_timeout The number of seconds that Twilio
106
- # should attempt to perform answering machine detection before timing out and
107
- # firing a voice request with `AnsweredBy` of `unknown`. Defaults to 30 seconds.
108
- # @param [String] recording_status_callback_event The recording status events that
109
- # will trigger Twilio to send webhooks on to the URL specified in
110
- # `RecordingStatusCallback`. The available values are `in-progress`, `completed`,
111
- # and `failed`. Defaults are `completed` and `failed`. To specify multiple values,
112
- # separate them with a space. If any values are specified, the defaults are no
113
- # longer applicable.
114
- # @param [String] trim `trim-silence` or `do-not-trim`. Set this parameter to
115
- # define whether leading and trailing silence is trimmed from the recording.
116
- # Defaults to `trim-silence`.
69
+ # and then dial extension 1234 followed by the pound key, the value of this
70
+ # parameter would be `ww1234#`. Remember to URL-encode this string, since the
71
+ # '`#`' character has special meaning in a URL. If both `SendDigits` and
72
+ # `MachineDetection` parameters are provided, then `MachineDetection` will be
73
+ # ignored.
74
+ # @param [String] timeout The integer number of seconds that we should allow the
75
+ # phone to ring before assuming there is no answer. The default is `60` seconds
76
+ # and the maximum is `600` seconds. For some call flows, we will add a 5-second
77
+ # buffer to the timeout value you provide. For this reason, a timeout value of 10
78
+ # seconds could result in an actual timeout closer to 15 seconds. You can set this
79
+ # to a short time, such as `15` seconds, to hang up before reaching an answering
80
+ # machine or voicemail.
81
+ # @param [Boolean] record Whether to record the call. Can be `true` to record the
82
+ # phone call, or `false` to not. The default is `false`. The `recording_url` is
83
+ # sent to the `status_callback` URL.
84
+ # @param [String] recording_channels The number of channels in the final
85
+ # recording. Can be: `mono` or `dual`. The default is `mono`. `mono` records both
86
+ # legs of the call in a single channel of the recording file. `dual` records each
87
+ # leg to a separate channel of the recording file. The first channel of a
88
+ # dual-channel recording contains the parent call and the second channel contains
89
+ # the child call.
90
+ # @param [String] recording_status_callback The URL that we call when the
91
+ # recording is available to be accessed.
92
+ # @param [String] recording_status_callback_method The HTTP method we should use
93
+ # when calling the `recording_status_callback` URL. Can be: `GET` or `POST` and
94
+ # the default is `POST`.
95
+ # @param [String] sip_auth_username The username used to authenticate the caller
96
+ # making a SIP call.
97
+ # @param [String] sip_auth_password The password required to authenticate the user
98
+ # account specified in `sip_auth_username`.
99
+ # @param [String] machine_detection Whether to detect if a human, answering
100
+ # machine, or fax has picked up the call. Can be: `Enable` or `DetectMessageEnd`.
101
+ # Use `Enable` if you would like us to return `AnsweredBy` as soon as the called
102
+ # party is identified. Use `DetectMessageEnd`, if you would like to leave a
103
+ # message on an answering machine. If `send_digits` is provided, this parameter is
104
+ # ignored. For more information, see {Answering Machine
105
+ # Detection}[https://www.twilio.com/docs/voice/answering-machine-detection].
106
+ # @param [String] machine_detection_timeout The number of seconds that we should
107
+ # attempt to detect an answering machine before timing out and sending a voice
108
+ # request with `AnsweredBy` of `unknown`. The default timeout is 30 seconds.
109
+ # @param [Array[String]] recording_status_callback_event The recording status
110
+ # events that will trigger calls to the URL specified in
111
+ # `recording_status_callback`. Can be: `in-progress`, `completed` and `absent`.
112
+ # Defaults to `completed`. Separate multiple values with a space.
113
+ # @param [String] trim Whether to trim any leading and trailing silence from the
114
+ # recording. Can be: `trim-silence` or `do-not-trim` and the default is
115
+ # `trim-silence`.
117
116
  # @param [String] caller_id The phone number, SIP address, or Client identifier
118
- # that made this Call. Phone numbers are in [E.164
119
- # format](https://www.twilio.com/docs/glossary/what-e164) (e.g., +16175551212).
117
+ # that made this call. Phone numbers are in {E.164
118
+ # format}[https://wwnw.twilio.com/docs/glossary/what-e164] (e.g., +16175551212).
120
119
  # SIP addresses are formatted as `name@company.com`.
121
- # @param [String] url The fully qualified URL that hosts instructions for the
122
- # call. Twilio will consult this URL when the call connects. See the [Url
123
- # Parameter](https://www.twilio.com/docs/voice/make-calls#specify-a-url-parameter) details in [Making Calls](https://www.twilio.com/docs/voice/make-calls) for more details.
124
- # @param [String] application_sid The 34-character SID of the application Twilio
125
- # should use to handle this phone call. If this parameter is present, Twilio will
126
- # ignore all of the voice URLs passed and use the URLs set on the application. See
127
- # the [ApplicationSid
128
- # Parameter](https://www.twilio.com/docs/voice/make-calls#specify-an-applicationsid-parameter) section in [Making Calls](https://www.twilio.com/docs/voice/make-calls) for more details.
129
- # @return [CallInstance] Newly created CallInstance
130
- def create(to: nil, from: nil, method: :unset, fallback_url: :unset, fallback_method: :unset, status_callback: :unset, status_callback_event: :unset, status_callback_method: :unset, send_digits: :unset, if_machine: :unset, timeout: :unset, record: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, sip_auth_username: :unset, sip_auth_password: :unset, machine_detection: :unset, machine_detection_timeout: :unset, recording_status_callback_event: :unset, trim: :unset, caller_id: :unset, url: :unset, application_sid: :unset)
120
+ # @param [String] machine_detection_speech_threshold The number of milliseconds
121
+ # that is used as the measuring stick for the length of the speech activity, where
122
+ # durations lower than this value will be interpreted as a human and longer than
123
+ # this value as a machine. Possible Values: 1000-6000. Default: 2400.
124
+ # @param [String] machine_detection_speech_end_threshold The number of
125
+ # milliseconds of silence after speech activity at which point the speech activity
126
+ # is considered complete. Possible Values: 500-5000. Default: 1200.
127
+ # @param [String] machine_detection_silence_timeout The number of milliseconds of
128
+ # initial silence after which an `unknown` AnsweredBy result will be returned.
129
+ # Possible Values: 2000-10000. Default: 5000.
130
+ # @param [String] async_amd Select whether to perform answering machine detection
131
+ # in the background. Default, blocks the execution of the call until Answering
132
+ # Machine Detection is completed. Can be: `true` or `false`.
133
+ # @param [String] async_amd_status_callback The URL that we should call using the
134
+ # `async_amd_status_callback_method` to notify customer application whether the
135
+ # call was answered by human, machine or fax.
136
+ # @param [String] async_amd_status_callback_method The HTTP method we should use
137
+ # when calling the `async_amd_status_callback` URL. Can be: `GET` or `POST` and
138
+ # the default is `POST`.
139
+ # @param [String] byoc The SID of a BYOC (Bring Your Own Carrier) trunk to route
140
+ # this call with. Note that `byoc` is only meaningful when `to` is a phone number;
141
+ # it will otherwise be ignored. (Beta)
142
+ # @param [String] call_reason The Reason for the outgoing call. Use it to specify
143
+ # the purpose of the call that is presented on the called party's phone. (Branded
144
+ # Calls Beta)
145
+ # @param [String] call_token A token string needed to invoke a forwarded call. A
146
+ # call_token is generated when an incoming call is received on a Twilio number.
147
+ # this field should be populated by the incoming call's call_token to make this
148
+ # outgoing call as a forwarded call of incoming call. A forwarded call should bear
149
+ # the same caller-id of incoming call.
150
+ # @param [String] recording_track The audio track to record for the call. Can be:
151
+ # `inbound`, `outbound` or `both`. The default is `both`. `inbound` records the
152
+ # audio that is received by Twilio. `outbound` records the audio that is generated
153
+ # from Twilio. `both` records the audio that is received and generated by Twilio.
154
+ # @param [String] time_limit The maximum duration of the call in seconds.
155
+ # Constraints depend on account and configuration.
156
+ # @param [String] url The absolute URL that returns the TwiML instructions for the
157
+ # call. We will call this URL using the `method` when the call connects. For more
158
+ # information, see the {Url
159
+ # Parameter}[https://www.twilio.com/docs/voice/make-calls#specify-a-url-parameter]
160
+ # section in {Making Calls}[https://www.twilio.com/docs/voice/make-calls].
161
+ # @param [String] twiml TwiML instructions for the call Twilio will use without
162
+ # fetching Twiml from url parameter. If both `twiml` and `url` are provided then
163
+ # `twiml` parameter will be ignored.
164
+ # @param [String] application_sid The SID of the Application resource that will
165
+ # handle the call, if the call will be handled by an application.
166
+ # @return [CallInstance] Created CallInstance
167
+ def create(to: nil, from: nil, method: :unset, fallback_url: :unset, fallback_method: :unset, status_callback: :unset, status_callback_event: :unset, status_callback_method: :unset, send_digits: :unset, timeout: :unset, record: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, sip_auth_username: :unset, sip_auth_password: :unset, machine_detection: :unset, machine_detection_timeout: :unset, recording_status_callback_event: :unset, trim: :unset, caller_id: :unset, machine_detection_speech_threshold: :unset, machine_detection_speech_end_threshold: :unset, machine_detection_silence_timeout: :unset, async_amd: :unset, async_amd_status_callback: :unset, async_amd_status_callback_method: :unset, byoc: :unset, call_reason: :unset, call_token: :unset, recording_track: :unset, time_limit: :unset, url: :unset, twiml: :unset, application_sid: :unset)
131
168
  data = Twilio::Values.of({
132
169
  'To' => to,
133
170
  'From' => from,
134
171
  'Url' => url,
172
+ 'Twiml' => twiml,
135
173
  'ApplicationSid' => application_sid,
136
174
  'Method' => method,
137
175
  'FallbackUrl' => fallback_url,
@@ -140,7 +178,6 @@ module Twilio
140
178
  'StatusCallbackEvent' => Twilio.serialize_list(status_callback_event) { |e| e },
141
179
  'StatusCallbackMethod' => status_callback_method,
142
180
  'SendDigits' => send_digits,
143
- 'IfMachine' => if_machine,
144
181
  'Timeout' => timeout,
145
182
  'Record' => record,
146
183
  'RecordingChannels' => recording_channels,
@@ -153,13 +190,20 @@ module Twilio
153
190
  'RecordingStatusCallbackEvent' => Twilio.serialize_list(recording_status_callback_event) { |e| e },
154
191
  'Trim' => trim,
155
192
  'CallerId' => caller_id,
193
+ 'MachineDetectionSpeechThreshold' => machine_detection_speech_threshold,
194
+ 'MachineDetectionSpeechEndThreshold' => machine_detection_speech_end_threshold,
195
+ 'MachineDetectionSilenceTimeout' => machine_detection_silence_timeout,
196
+ 'AsyncAmd' => async_amd,
197
+ 'AsyncAmdStatusCallback' => async_amd_status_callback,
198
+ 'AsyncAmdStatusCallbackMethod' => async_amd_status_callback_method,
199
+ 'Byoc' => byoc,
200
+ 'CallReason' => call_reason,
201
+ 'CallToken' => call_token,
202
+ 'RecordingTrack' => recording_track,
203
+ 'TimeLimit' => time_limit,
156
204
  })
157
205
 
158
- payload = @version.create(
159
- 'POST',
160
- @uri,
161
- data: data
162
- )
206
+ payload = @version.create('POST', @uri, data: data)
163
207
 
164
208
  CallInstance.new(@version, payload, account_sid: @solution[:account_sid], )
165
209
  end
@@ -168,21 +212,21 @@ module Twilio
168
212
  # Lists CallInstance records from the API as a list.
169
213
  # Unlike stream(), this operation is eager and will load `limit` records into
170
214
  # memory before returning.
171
- # @param [String] to Only show calls to this phone number, SIP address, Client
172
- # identifier or SIM SID.
173
- # @param [String] from Only show calls from this phone number, SIP address, Client
174
- # identifier or SIM SID.
175
- # @param [String] parent_call_sid Only show calls spawned by the Call with this
215
+ # @param [String] to Only show calls made to this phone number, SIP address,
216
+ # Client identifier or SIM SID.
217
+ # @param [String] from Only include calls from this phone number, SIP address,
218
+ # Client identifier or SIM SID.
219
+ # @param [String] parent_call_sid Only include calls spawned by calls with this
176
220
  # SID.
177
- # @param [call.Status] status Only show calls currently in the specified status.
178
- # May be `queued`, `ringing`, `in-progress`, `canceled`, `completed`, `failed`,
179
- # `busy`, or `no-answer`.
180
- # @param [Time] start_time_before StartTime to filter on
181
- # @param [Time] start_time StartTime to filter on
182
- # @param [Time] start_time_after StartTime to filter on
183
- # @param [Time] end_time_before EndTime to filter on
184
- # @param [Time] end_time EndTime to filter on
185
- # @param [Time] end_time_after EndTime to filter on
221
+ # @param [call.Status] status The status of the calls to include. Can be:
222
+ # `queued`, `ringing`, `in-progress`, `canceled`, `completed`, `failed`, `busy`,
223
+ # or `no-answer`.
224
+ # @param [Time] start_time_before Only include calls that started on this date
225
+ # @param [Time] start_time Only include calls that started on this date
226
+ # @param [Time] start_time_after Only include calls that started on this date
227
+ # @param [Time] end_time_before Only include calls that ended on this date
228
+ # @param [Time] end_time Only include calls that ended on this date
229
+ # @param [Time] end_time_after Only include calls that ended on this date
186
230
  # @param [Integer] limit Upper limit for the number of records to return. stream()
187
231
  # guarantees to never return more than limit. Default is no limit
188
232
  # @param [Integer] page_size Number of records to fetch per request, when
@@ -211,21 +255,21 @@ module Twilio
211
255
  # Streams CallInstance records from the API as an Enumerable.
212
256
  # This operation lazily loads records as efficiently as possible until the limit
213
257
  # is reached.
214
- # @param [String] to Only show calls to this phone number, SIP address, Client
215
- # identifier or SIM SID.
216
- # @param [String] from Only show calls from this phone number, SIP address, Client
217
- # identifier or SIM SID.
218
- # @param [String] parent_call_sid Only show calls spawned by the Call with this
258
+ # @param [String] to Only show calls made to this phone number, SIP address,
259
+ # Client identifier or SIM SID.
260
+ # @param [String] from Only include calls from this phone number, SIP address,
261
+ # Client identifier or SIM SID.
262
+ # @param [String] parent_call_sid Only include calls spawned by calls with this
219
263
  # SID.
220
- # @param [call.Status] status Only show calls currently in the specified status.
221
- # May be `queued`, `ringing`, `in-progress`, `canceled`, `completed`, `failed`,
222
- # `busy`, or `no-answer`.
223
- # @param [Time] start_time_before StartTime to filter on
224
- # @param [Time] start_time StartTime to filter on
225
- # @param [Time] start_time_after StartTime to filter on
226
- # @param [Time] end_time_before EndTime to filter on
227
- # @param [Time] end_time EndTime to filter on
228
- # @param [Time] end_time_after EndTime to filter on
264
+ # @param [call.Status] status The status of the calls to include. Can be:
265
+ # `queued`, `ringing`, `in-progress`, `canceled`, `completed`, `failed`, `busy`,
266
+ # or `no-answer`.
267
+ # @param [Time] start_time_before Only include calls that started on this date
268
+ # @param [Time] start_time Only include calls that started on this date
269
+ # @param [Time] start_time_after Only include calls that started on this date
270
+ # @param [Time] end_time_before Only include calls that ended on this date
271
+ # @param [Time] end_time Only include calls that ended on this date
272
+ # @param [Time] end_time_after Only include calls that ended on this date
229
273
  # @param [Integer] limit Upper limit for the number of records to return. stream()
230
274
  # guarantees to never return more than limit. Default is no limit.
231
275
  # @param [Integer] page_size Number of records to fetch per request, when
@@ -270,21 +314,21 @@ module Twilio
270
314
  ##
271
315
  # Retrieve a single page of CallInstance records from the API.
272
316
  # Request is executed immediately.
273
- # @param [String] to Only show calls to this phone number, SIP address, Client
274
- # identifier or SIM SID.
275
- # @param [String] from Only show calls from this phone number, SIP address, Client
276
- # identifier or SIM SID.
277
- # @param [String] parent_call_sid Only show calls spawned by the Call with this
317
+ # @param [String] to Only show calls made to this phone number, SIP address,
318
+ # Client identifier or SIM SID.
319
+ # @param [String] from Only include calls from this phone number, SIP address,
320
+ # Client identifier or SIM SID.
321
+ # @param [String] parent_call_sid Only include calls spawned by calls with this
278
322
  # SID.
279
- # @param [call.Status] status Only show calls currently in the specified status.
280
- # May be `queued`, `ringing`, `in-progress`, `canceled`, `completed`, `failed`,
281
- # `busy`, or `no-answer`.
282
- # @param [Time] start_time_before StartTime to filter on
283
- # @param [Time] start_time StartTime to filter on
284
- # @param [Time] start_time_after StartTime to filter on
285
- # @param [Time] end_time_before EndTime to filter on
286
- # @param [Time] end_time EndTime to filter on
287
- # @param [Time] end_time_after EndTime to filter on
323
+ # @param [call.Status] status The status of the calls to include. Can be:
324
+ # `queued`, `ringing`, `in-progress`, `canceled`, `completed`, `failed`, `busy`,
325
+ # or `no-answer`.
326
+ # @param [Time] start_time_before Only include calls that started on this date
327
+ # @param [Time] start_time Only include calls that started on this date
328
+ # @param [Time] start_time_after Only include calls that started on this date
329
+ # @param [Time] end_time_before Only include calls that ended on this date
330
+ # @param [Time] end_time Only include calls that ended on this date
331
+ # @param [Time] end_time_after Only include calls that ended on this date
288
332
  # @param [String] page_token PageToken provided by the API
289
333
  # @param [Integer] page_number Page Number, this value is simply for client state
290
334
  # @param [Integer] page_size Number of records to return, defaults to 50
@@ -305,11 +349,9 @@ module Twilio
305
349
  'Page' => page_number,
306
350
  'PageSize' => page_size,
307
351
  })
308
- response = @version.page(
309
- 'GET',
310
- @uri,
311
- params
312
- )
352
+
353
+ response = @version.page('GET', @uri, params: params)
354
+
313
355
  CallPage.new(@version, response, @solution)
314
356
  end
315
357
 
@@ -328,7 +370,8 @@ module Twilio
328
370
 
329
371
  ##
330
372
  # Access the feedback_summaries
331
- # @param [String] sid The sid
373
+ # @param [String] sid A 34 character string that uniquely identifies this
374
+ # resource.
332
375
  # @return [FeedbackSummaryList]
333
376
  # @return [FeedbackSummaryContext] if sid was passed.
334
377
  def feedback_summaries(sid=:unset)
@@ -381,8 +424,10 @@ module Twilio
381
424
  ##
382
425
  # Initialize the CallContext
383
426
  # @param [Version] version Version that contains the resource
384
- # @param [String] account_sid The account_sid
385
- # @param [String] sid The Call Sid that uniquely identifies the Call to fetch
427
+ # @param [String] account_sid The SID of the
428
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created the Call
429
+ # resource(s) to fetch.
430
+ # @param [String] sid The SID of the Call resource to fetch.
386
431
  # @return [CallContext] CallContext
387
432
  def initialize(version, account_sid, sid)
388
433
  super(version)
@@ -395,60 +440,61 @@ module Twilio
395
440
  @recordings = nil
396
441
  @notifications = nil
397
442
  @feedback = nil
443
+ @events = nil
444
+ @payments = nil
398
445
  end
399
446
 
400
447
  ##
401
- # Deletes the CallInstance
402
- # @return [Boolean] true if delete succeeds, true otherwise
448
+ # Delete the CallInstance
449
+ # @return [Boolean] true if delete succeeds, false otherwise
403
450
  def delete
404
- @version.delete('delete', @uri)
451
+ @version.delete('DELETE', @uri)
405
452
  end
406
453
 
407
454
  ##
408
- # Fetch a CallInstance
455
+ # Fetch the CallInstance
409
456
  # @return [CallInstance] Fetched CallInstance
410
457
  def fetch
411
- params = Twilio::Values.of({})
412
-
413
- payload = @version.fetch(
414
- 'GET',
415
- @uri,
416
- params,
417
- )
458
+ payload = @version.fetch('GET', @uri)
418
459
 
419
460
  CallInstance.new(@version, payload, account_sid: @solution[:account_sid], sid: @solution[:sid], )
420
461
  end
421
462
 
422
463
  ##
423
464
  # Update the CallInstance
424
- # @param [String] url that hosts instructions for the call. Twilio will consult
425
- # this URL when the call connects. See the [Url
426
- # Parameter](https://www.twilio.com/docs/voice/make-calls#specify-a-url-parameter)
427
- # section in [Making Calls](https://www.twilio.com/docs/voice/make-calls) for more
428
- # details.
429
- # @param [String] method The HTTP method Twilio should use when making its request
430
- # to the `Url` parameter's value. Defaults to `POST`. If an `ApplicationSid`
431
- # parameter is present, this parameter is ignored.
432
- # @param [call.UpdateStatus] status Either `canceled` or `completed`.
433
- # Specifying `canceled` will attempt to hang up calls that are queued or ringing,
434
- # but will not affect calls already in progress. Specifying `completed` will
435
- # attempt to hang up a call even if it's already in progress.
436
- # @param [String] fallback_url A URL that Twilio will request if an error occurs
437
- # when requesting or executing the TwiML at `Url`. If an `ApplicationSid`
438
- # parameter is present, this parameter is ignored.
439
- # @param [String] fallback_method The HTTP method that Twilio should use to
440
- # request the `FallbackUrl`. Must be either `GET` or `POST`. Defaults to `POST`.
441
- # If an `ApplicationSid` parameter is present, this parameter is ignored.
442
- # @param [String] status_callback A URL that Twilio will send asynchronous webhook
443
- # requests to on every call event specified in the `StatusCallbackEvent`
444
- # parameter. If no event is specified, Twilio will send `completed` by default. If
445
- # an `ApplicationSid` parameter is present, this parameter is ignored. URLs must
465
+ # @param [String] url The absolute URL that returns the TwiML instructions for the
466
+ # call. We will call this URL using the `method` when the call connects. For more
467
+ # information, see the {Url
468
+ # Parameter}[https://www.twilio.com/docs/voice/make-calls#specify-a-url-parameter]
469
+ # section in {Making Calls}[https://www.twilio.com/docs/voice/make-calls].
470
+ # @param [String] method The HTTP method we should use when calling the `url`. Can
471
+ # be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter
472
+ # is present, this parameter is ignored.
473
+ # @param [call.UpdateStatus] status The new status of the resource. Can be:
474
+ # `canceled` or `completed`. Specifying `canceled` will attempt to hang up calls
475
+ # that are queued or ringing; however, it will not affect calls already in
476
+ # progress. Specifying `completed` will attempt to hang up a call even if it's
477
+ # already in progress.
478
+ # @param [String] fallback_url The URL that we call using the `fallback_method` if
479
+ # an error occurs when requesting or executing the TwiML at `url`. If an
480
+ # `application_sid` parameter is present, this parameter is ignored.
481
+ # @param [String] fallback_method The HTTP method that we should use to request
482
+ # the `fallback_url`. Can be: `GET` or `POST` and the default is `POST`. If an
483
+ # `application_sid` parameter is present, this parameter is ignored.
484
+ # @param [String] status_callback The URL we should call using the
485
+ # `status_callback_method` to send status information to your application. If no
486
+ # `status_callback_event` is specified, we will send the `completed` status. If an
487
+ # `application_sid` parameter is present, this parameter is ignored. URLs must
446
488
  # contain a valid hostname (underscores are not permitted).
447
- # @param [String] status_callback_method The HTTP method Twilio should use when
448
- # requesting the `StatusCallback` URL. Defaults to `POST`. If an `ApplicationSid`
449
- # parameter is present, this parameter is ignored.
489
+ # @param [String] status_callback_method The HTTP method we should use when
490
+ # requesting the `status_callback` URL. Can be: `GET` or `POST` and the default is
491
+ # `POST`. If an `application_sid` parameter is present, this parameter is ignored.
492
+ # @param [String] twiml TwiML instructions for the call Twilio will use without
493
+ # fetching Twiml from url. Twiml and url parameters are mutually exclusive
494
+ # @param [String] time_limit The maximum duration of the call in seconds.
495
+ # Constraints depend on account and configuration.
450
496
  # @return [CallInstance] Updated CallInstance
451
- def update(url: :unset, method: :unset, status: :unset, fallback_url: :unset, fallback_method: :unset, status_callback: :unset, status_callback_method: :unset)
497
+ def update(url: :unset, method: :unset, status: :unset, fallback_url: :unset, fallback_method: :unset, status_callback: :unset, status_callback_method: :unset, twiml: :unset, time_limit: :unset)
452
498
  data = Twilio::Values.of({
453
499
  'Url' => url,
454
500
  'Method' => method,
@@ -457,13 +503,11 @@ module Twilio
457
503
  'FallbackMethod' => fallback_method,
458
504
  'StatusCallback' => status_callback,
459
505
  'StatusCallbackMethod' => status_callback_method,
506
+ 'Twiml' => twiml,
507
+ 'TimeLimit' => time_limit,
460
508
  })
461
509
 
462
- payload = @version.update(
463
- 'POST',
464
- @uri,
465
- data: data,
466
- )
510
+ payload = @version.update('POST', @uri, data: data)
467
511
 
468
512
  CallInstance.new(@version, payload, account_sid: @solution[:account_sid], sid: @solution[:sid], )
469
513
  end
@@ -520,12 +564,53 @@ module Twilio
520
564
  FeedbackContext.new(@version, @solution[:account_sid], @solution[:sid], )
521
565
  end
522
566
 
567
+ ##
568
+ # Access the events
569
+ # @return [EventList]
570
+ # @return [EventContext]
571
+ def events
572
+ unless @events
573
+ @events = EventList.new(@version, account_sid: @solution[:account_sid], call_sid: @solution[:sid], )
574
+ end
575
+
576
+ @events
577
+ end
578
+
579
+ ##
580
+ # Access the payments
581
+ # @return [PaymentList]
582
+ # @return [PaymentContext] if sid was passed.
583
+ def payments(sid=:unset)
584
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
585
+
586
+ if sid != :unset
587
+ return PaymentContext.new(@version, @solution[:account_sid], @solution[:sid], sid, )
588
+ end
589
+
590
+ unless @payments
591
+ @payments = PaymentList.new(
592
+ @version,
593
+ account_sid: @solution[:account_sid],
594
+ call_sid: @solution[:sid],
595
+ )
596
+ end
597
+
598
+ @payments
599
+ end
600
+
523
601
  ##
524
602
  # Provide a user friendly representation
525
603
  def to_s
526
604
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
527
605
  "#<Twilio.Api.V2010.CallContext #{context}>"
528
606
  end
607
+
608
+ ##
609
+ # Provide a detailed, user friendly representation
610
+ def inspect
611
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
612
+ "#<Twilio.Api.V2010.CallContext #{context}>"
613
+ end
529
614
  end
530
615
 
531
616
  class CallInstance < InstanceResource
@@ -533,41 +618,43 @@ module Twilio
533
618
  # Initialize the CallInstance
534
619
  # @param [Version] version Version that contains the resource
535
620
  # @param [Hash] payload payload that contains response from Twilio
536
- # @param [String] account_sid The unique id of the
537
- # [Account](https://www.twilio.com/docs/api/rest/account) responsible for creating
538
- # this Call.
539
- # @param [String] sid The Call Sid that uniquely identifies the Call to fetch
621
+ # @param [String] account_sid The SID of the
622
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Call
623
+ # resource.
624
+ # @param [String] sid The SID of the Call resource to fetch.
540
625
  # @return [CallInstance] CallInstance
541
626
  def initialize(version, payload, account_sid: nil, sid: nil)
542
627
  super(version)
543
628
 
544
629
  # Marshaled Properties
545
630
  @properties = {
546
- 'account_sid' => payload['account_sid'],
547
- 'annotation' => payload['annotation'],
548
- 'answered_by' => payload['answered_by'],
549
- 'api_version' => payload['api_version'],
550
- 'caller_name' => payload['caller_name'],
631
+ 'sid' => payload['sid'],
551
632
  'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
552
633
  'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
553
- 'direction' => payload['direction'],
554
- 'duration' => payload['duration'],
555
- 'end_time' => Twilio.deserialize_rfc2822(payload['end_time']),
556
- 'forwarded_from' => payload['forwarded_from'],
634
+ 'parent_call_sid' => payload['parent_call_sid'],
635
+ 'account_sid' => payload['account_sid'],
636
+ 'to' => payload['to'],
637
+ 'to_formatted' => payload['to_formatted'],
557
638
  'from' => payload['from'],
558
639
  'from_formatted' => payload['from_formatted'],
559
- 'group_sid' => payload['group_sid'],
560
- 'parent_call_sid' => payload['parent_call_sid'],
561
640
  'phone_number_sid' => payload['phone_number_sid'],
562
- 'price' => payload['price'].to_f,
563
- 'price_unit' => payload['price_unit'],
564
- 'sid' => payload['sid'],
565
- 'start_time' => Twilio.deserialize_rfc2822(payload['start_time']),
566
641
  'status' => payload['status'],
567
- 'subresource_uris' => payload['subresource_uris'],
568
- 'to' => payload['to'],
569
- 'to_formatted' => payload['to_formatted'],
642
+ 'start_time' => Twilio.deserialize_rfc2822(payload['start_time']),
643
+ 'end_time' => Twilio.deserialize_rfc2822(payload['end_time']),
644
+ 'duration' => payload['duration'],
645
+ 'price' => payload['price'],
646
+ 'price_unit' => payload['price_unit'],
647
+ 'direction' => payload['direction'],
648
+ 'answered_by' => payload['answered_by'],
649
+ 'annotation' => payload['annotation'],
650
+ 'api_version' => payload['api_version'],
651
+ 'forwarded_from' => payload['forwarded_from'],
652
+ 'group_sid' => payload['group_sid'],
653
+ 'caller_name' => payload['caller_name'],
654
+ 'queue_time' => payload['queue_time'],
655
+ 'trunk_sid' => payload['trunk_sid'],
570
656
  'uri' => payload['uri'],
657
+ 'subresource_uris' => payload['subresource_uris'],
571
658
  }
572
659
 
573
660
  # Context
@@ -587,103 +674,91 @@ module Twilio
587
674
  end
588
675
 
589
676
  ##
590
- # @return [String] The unique id of the Account responsible for creating this Call
591
- def account_sid
592
- @properties['account_sid']
593
- end
594
-
595
- ##
596
- # @return [String] The annotation provided for the Call
597
- def annotation
598
- @properties['annotation']
599
- end
600
-
601
- ##
602
- # @return [String] Either `human` or `machine` if this Call was initiated with answering machine detection. Empty otherwise.
603
- def answered_by
604
- @properties['answered_by']
605
- end
606
-
607
- ##
608
- # @return [String] The API Version used to create the Call
609
- def api_version
610
- @properties['api_version']
611
- end
612
-
613
- ##
614
- # @return [String] The caller's name if this Call was an incoming call to a phone number with Caller ID Lookup enabled. Empty otherwise.
615
- def caller_name
616
- @properties['caller_name']
677
+ # @return [String] The unique string that identifies this resource
678
+ def sid
679
+ @properties['sid']
617
680
  end
618
681
 
619
682
  ##
620
- # @return [Time] The date that this resource was created
683
+ # @return [Time] The RFC 2822 date and time in GMT that this resource was created
621
684
  def date_created
622
685
  @properties['date_created']
623
686
  end
624
687
 
625
688
  ##
626
- # @return [Time] The date that this resource was last updated
689
+ # @return [Time] The RFC 2822 date and time in GMT that this resource was last updated
627
690
  def date_updated
628
691
  @properties['date_updated']
629
692
  end
630
693
 
631
694
  ##
632
- # @return [String] A string describing the direction of the Call. `inbound` for inbound calls, `outbound-api` for calls initiated via the REST API or `outbound-dial` for calls initiated by a `Dial` verb.
633
- def direction
634
- @properties['direction']
695
+ # @return [String] The SID that identifies the call that created this leg.
696
+ def parent_call_sid
697
+ @properties['parent_call_sid']
635
698
  end
636
699
 
637
700
  ##
638
- # @return [String] The length of the Call in seconds.
639
- def duration
640
- @properties['duration']
701
+ # @return [String] The SID of the Account that created this resource
702
+ def account_sid
703
+ @properties['account_sid']
641
704
  end
642
705
 
643
706
  ##
644
- # @return [Time] The end time of the Call. Null if the call did not complete successfully.
645
- def end_time
646
- @properties['end_time']
707
+ # @return [String] The phone number, SIP address or Client identifier that received this call. Phone numbers are in E.164 format (e.g., +16175551212). SIP addresses are formatted as `name@company.com`. Client identifiers are formatted `client:name`.
708
+ def to
709
+ @properties['to']
647
710
  end
648
711
 
649
712
  ##
650
- # @return [String] The forwarding phone number if this Call was an incoming call forwarded from another number (depends on carrier supporting forwarding). Empty otherwise.
651
- def forwarded_from
652
- @properties['forwarded_from']
713
+ # @return [String] The phone number, SIP address or Client identifier that received this call. Formatted for display.
714
+ def to_formatted
715
+ @properties['to_formatted']
653
716
  end
654
717
 
655
718
  ##
656
- # @return [String] The phone number, SIP address or Client identifier that made this Call. Phone numbers are in E.164 format (e.g., +16175551212). SIP addresses are formatted as `name@company.com`. Client identifiers are formatted `client:name`.
719
+ # @return [String] The phone number, SIP address or Client identifier that made this call. Phone numbers are in E.164 format (e.g., +16175551212). SIP addresses are formatted as `name@company.com`. Client identifiers are formatted `client:name`.
657
720
  def from
658
721
  @properties['from']
659
722
  end
660
723
 
661
724
  ##
662
- # @return [String] The phone number, SIP address or Client identifier that made this Call. Formatted for display.
725
+ # @return [String] The calling phone number, SIP address, or Client identifier formatted for display.
663
726
  def from_formatted
664
727
  @properties['from_formatted']
665
728
  end
666
729
 
667
730
  ##
668
- # @return [String] A 34-character Group Sid associated with this Call. Empty if no Group is associated with the Call.
669
- def group_sid
670
- @properties['group_sid']
731
+ # @return [String] If the call was inbound, this is the SID of the IncomingPhoneNumber resource that received the call. If the call was outbound, it is the SID of the OutgoingCallerId resource from which the call was placed.
732
+ def phone_number_sid
733
+ @properties['phone_number_sid']
671
734
  end
672
735
 
673
736
  ##
674
- # @return [String] A 34-character string that uniquely identifies the Call that created this leg.
675
- def parent_call_sid
676
- @properties['parent_call_sid']
737
+ # @return [call.Status] The status of this call.
738
+ def status
739
+ @properties['status']
677
740
  end
678
741
 
679
742
  ##
680
- # @return [String] If the call was inbound, this is the Sid of the `IncomingPhoneNumber` that received the call. If the call was outbound, it is the Sid of the `OutgoingCallerId` from which the call was placed.
681
- def phone_number_sid
682
- @properties['phone_number_sid']
743
+ # @return [Time] The start time of the call. Null if the call has not yet been dialed.
744
+ def start_time
745
+ @properties['start_time']
746
+ end
747
+
748
+ ##
749
+ # @return [Time] The end time of the call. Null if the call did not complete successfully.
750
+ def end_time
751
+ @properties['end_time']
683
752
  end
684
753
 
685
754
  ##
686
- # @return [String] The charge for this Call, in the currency associated with the account. Populated after the call is completed. May not be immediately available.
755
+ # @return [String] The length of the call in seconds.
756
+ def duration
757
+ @properties['duration']
758
+ end
759
+
760
+ ##
761
+ # @return [String] The charge for this call, in the currency associated with the account. Populated after the call is completed. May not be immediately available.
687
762
  def price
688
763
  @properties['price']
689
764
  end
@@ -695,56 +770,80 @@ module Twilio
695
770
  end
696
771
 
697
772
  ##
698
- # @return [String] A 34-character string that uniquely identifies the Call resource.
699
- def sid
700
- @properties['sid']
773
+ # @return [String] A string describing the direction of the call. `inbound` for inbound calls, `outbound-api` for calls initiated via the REST API or `outbound-dial` for calls initiated by a `Dial` verb.
774
+ def direction
775
+ @properties['direction']
701
776
  end
702
777
 
703
778
  ##
704
- # @return [Time] The start time of the Call. Null if the call has not yet been dialed.
705
- def start_time
706
- @properties['start_time']
779
+ # @return [String] Either `human` or `machine` if this call was initiated with answering machine detection. Empty otherwise.
780
+ def answered_by
781
+ @properties['answered_by']
707
782
  end
708
783
 
709
784
  ##
710
- # @return [call.Status] A string representing the status of the Call.
711
- def status
712
- @properties['status']
785
+ # @return [String] The annotation provided for the call
786
+ def annotation
787
+ @properties['annotation']
713
788
  end
714
789
 
715
790
  ##
716
- # @return [String] Call Instance Subresources
717
- def subresource_uris
718
- @properties['subresource_uris']
791
+ # @return [String] The API Version used to create the call
792
+ def api_version
793
+ @properties['api_version']
719
794
  end
720
795
 
721
796
  ##
722
- # @return [String] The phone number, SIP address or Client identifier that received this Call. Phone numbers are in E.164 format (e.g., +16175551212). SIP addresses are formatted as `name@company.com`. Client identifiers are formatted `client:name`.
723
- def to
724
- @properties['to']
797
+ # @return [String] The forwarding phone number if this call was an incoming call forwarded from another number (depends on carrier supporting forwarding). Otherwise, empty.
798
+ def forwarded_from
799
+ @properties['forwarded_from']
725
800
  end
726
801
 
727
802
  ##
728
- # @return [String] The phone number, SIP address or Client identifier that received this Call. Formatted for display.
729
- def to_formatted
730
- @properties['to_formatted']
803
+ # @return [String] The Group SID associated with this call. If no Group is associated with the call, the field is empty.
804
+ def group_sid
805
+ @properties['group_sid']
731
806
  end
732
807
 
733
808
  ##
734
- # @return [String] The URI for this resource, relative to `https://api.twilio.com`
809
+ # @return [String] The caller's name if this call was an incoming call to a phone number with caller ID Lookup enabled. Otherwise, empty.
810
+ def caller_name
811
+ @properties['caller_name']
812
+ end
813
+
814
+ ##
815
+ # @return [String] The wait time in milliseconds before the call is placed.
816
+ def queue_time
817
+ @properties['queue_time']
818
+ end
819
+
820
+ ##
821
+ # @return [String] The (optional) unique identifier of the trunk resource that was used for this call.
822
+ def trunk_sid
823
+ @properties['trunk_sid']
824
+ end
825
+
826
+ ##
827
+ # @return [String] The URI of this resource, relative to `https://api.twilio.com`
735
828
  def uri
736
829
  @properties['uri']
737
830
  end
738
831
 
739
832
  ##
740
- # Deletes the CallInstance
741
- # @return [Boolean] true if delete succeeds, true otherwise
833
+ # @return [String] A list of related subresources identified by their relative URIs
834
+ def subresource_uris
835
+ @properties['subresource_uris']
836
+ end
837
+
838
+ ##
839
+ # Delete the CallInstance
840
+ # @return [Boolean] true if delete succeeds, false otherwise
742
841
  def delete
743
842
  context.delete
744
843
  end
745
844
 
746
845
  ##
747
- # Fetch a CallInstance
846
+ # Fetch the CallInstance
748
847
  # @return [CallInstance] Fetched CallInstance
749
848
  def fetch
750
849
  context.fetch
@@ -752,34 +851,39 @@ module Twilio
752
851
 
753
852
  ##
754
853
  # Update the CallInstance
755
- # @param [String] url that hosts instructions for the call. Twilio will consult
756
- # this URL when the call connects. See the [Url
757
- # Parameter](https://www.twilio.com/docs/voice/make-calls#specify-a-url-parameter)
758
- # section in [Making Calls](https://www.twilio.com/docs/voice/make-calls) for more
759
- # details.
760
- # @param [String] method The HTTP method Twilio should use when making its request
761
- # to the `Url` parameter's value. Defaults to `POST`. If an `ApplicationSid`
762
- # parameter is present, this parameter is ignored.
763
- # @param [call.UpdateStatus] status Either `canceled` or `completed`.
764
- # Specifying `canceled` will attempt to hang up calls that are queued or ringing,
765
- # but will not affect calls already in progress. Specifying `completed` will
766
- # attempt to hang up a call even if it's already in progress.
767
- # @param [String] fallback_url A URL that Twilio will request if an error occurs
768
- # when requesting or executing the TwiML at `Url`. If an `ApplicationSid`
769
- # parameter is present, this parameter is ignored.
770
- # @param [String] fallback_method The HTTP method that Twilio should use to
771
- # request the `FallbackUrl`. Must be either `GET` or `POST`. Defaults to `POST`.
772
- # If an `ApplicationSid` parameter is present, this parameter is ignored.
773
- # @param [String] status_callback A URL that Twilio will send asynchronous webhook
774
- # requests to on every call event specified in the `StatusCallbackEvent`
775
- # parameter. If no event is specified, Twilio will send `completed` by default. If
776
- # an `ApplicationSid` parameter is present, this parameter is ignored. URLs must
854
+ # @param [String] url The absolute URL that returns the TwiML instructions for the
855
+ # call. We will call this URL using the `method` when the call connects. For more
856
+ # information, see the {Url
857
+ # Parameter}[https://www.twilio.com/docs/voice/make-calls#specify-a-url-parameter]
858
+ # section in {Making Calls}[https://www.twilio.com/docs/voice/make-calls].
859
+ # @param [String] method The HTTP method we should use when calling the `url`. Can
860
+ # be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter
861
+ # is present, this parameter is ignored.
862
+ # @param [call.UpdateStatus] status The new status of the resource. Can be:
863
+ # `canceled` or `completed`. Specifying `canceled` will attempt to hang up calls
864
+ # that are queued or ringing; however, it will not affect calls already in
865
+ # progress. Specifying `completed` will attempt to hang up a call even if it's
866
+ # already in progress.
867
+ # @param [String] fallback_url The URL that we call using the `fallback_method` if
868
+ # an error occurs when requesting or executing the TwiML at `url`. If an
869
+ # `application_sid` parameter is present, this parameter is ignored.
870
+ # @param [String] fallback_method The HTTP method that we should use to request
871
+ # the `fallback_url`. Can be: `GET` or `POST` and the default is `POST`. If an
872
+ # `application_sid` parameter is present, this parameter is ignored.
873
+ # @param [String] status_callback The URL we should call using the
874
+ # `status_callback_method` to send status information to your application. If no
875
+ # `status_callback_event` is specified, we will send the `completed` status. If an
876
+ # `application_sid` parameter is present, this parameter is ignored. URLs must
777
877
  # contain a valid hostname (underscores are not permitted).
778
- # @param [String] status_callback_method The HTTP method Twilio should use when
779
- # requesting the `StatusCallback` URL. Defaults to `POST`. If an `ApplicationSid`
780
- # parameter is present, this parameter is ignored.
878
+ # @param [String] status_callback_method The HTTP method we should use when
879
+ # requesting the `status_callback` URL. Can be: `GET` or `POST` and the default is
880
+ # `POST`. If an `application_sid` parameter is present, this parameter is ignored.
881
+ # @param [String] twiml TwiML instructions for the call Twilio will use without
882
+ # fetching Twiml from url. Twiml and url parameters are mutually exclusive
883
+ # @param [String] time_limit The maximum duration of the call in seconds.
884
+ # Constraints depend on account and configuration.
781
885
  # @return [CallInstance] Updated CallInstance
782
- def update(url: :unset, method: :unset, status: :unset, fallback_url: :unset, fallback_method: :unset, status_callback: :unset, status_callback_method: :unset)
886
+ def update(url: :unset, method: :unset, status: :unset, fallback_url: :unset, fallback_method: :unset, status_callback: :unset, status_callback_method: :unset, twiml: :unset, time_limit: :unset)
783
887
  context.update(
784
888
  url: url,
785
889
  method: method,
@@ -788,6 +892,8 @@ module Twilio
788
892
  fallback_method: fallback_method,
789
893
  status_callback: status_callback,
790
894
  status_callback_method: status_callback_method,
895
+ twiml: twiml,
896
+ time_limit: time_limit,
791
897
  )
792
898
  end
793
899
 
@@ -812,6 +918,20 @@ module Twilio
812
918
  context.feedback
813
919
  end
814
920
 
921
+ ##
922
+ # Access the events
923
+ # @return [events] events
924
+ def events
925
+ context.events
926
+ end
927
+
928
+ ##
929
+ # Access the payments
930
+ # @return [payments] payments
931
+ def payments
932
+ context.payments
933
+ end
934
+
815
935
  ##
816
936
  # Provide a user friendly representation
817
937
  def to_s