twilio-ruby 5.40.3 → 5.44.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (353) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +113 -0
  3. data/{LICENSE.md → LICENSE} +0 -0
  4. data/PULL_REQUEST_TEMPLATE.md +3 -3
  5. data/README.md +18 -2
  6. data/lib/twilio-ruby.rb +1 -1
  7. data/lib/twilio-ruby/jwt/access_token.rb +7 -2
  8. data/lib/twilio-ruby/rest/accounts.rb +12 -0
  9. data/lib/twilio-ruby/rest/accounts/v1.rb +14 -0
  10. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +186 -0
  11. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +200 -0
  12. data/lib/twilio-ruby/rest/api.rb +1 -1
  13. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +3 -3
  14. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +2 -2
  15. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +3 -3
  16. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +3 -3
  17. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +3 -3
  18. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +29 -29
  19. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +29 -29
  20. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +29 -29
  21. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +29 -29
  22. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +29 -29
  23. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +29 -29
  24. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +29 -29
  25. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +40 -20
  26. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +201 -0
  27. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +3 -3
  28. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +3 -3
  29. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +6 -6
  30. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +16 -16
  31. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +15 -8
  32. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +3 -3
  33. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +26 -22
  34. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +3 -3
  35. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +3 -3
  36. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +10 -10
  37. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +3 -3
  38. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +3 -3
  39. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +3 -3
  40. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +3 -3
  41. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +3 -3
  42. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +1 -1
  43. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +25 -25
  44. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +4 -4
  45. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +3 -3
  46. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +3 -3
  47. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +3 -3
  48. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +3 -3
  49. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +5 -5
  50. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +6 -6
  51. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +3 -3
  52. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +3 -3
  53. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +6 -6
  54. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +3 -3
  55. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +1 -1
  56. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +2 -2
  57. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +2 -2
  58. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +3 -3
  59. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +3 -3
  60. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +2 -2
  61. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +3 -3
  62. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +1 -1
  63. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +1 -1
  64. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +1 -1
  65. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +2 -2
  66. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +3 -3
  67. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +6 -6
  68. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +6 -6
  69. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +6 -6
  70. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +6 -6
  71. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +6 -6
  72. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +6 -6
  73. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +6 -6
  74. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +6 -6
  75. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +6 -6
  76. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +18 -18
  77. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +3 -3
  78. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +12 -12
  79. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +3 -3
  80. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +3 -3
  81. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +3 -3
  82. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +11 -11
  83. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +3 -3
  84. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +26 -26
  85. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +3 -3
  86. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +6 -6
  87. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +9 -9
  88. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +24 -24
  89. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +8 -8
  90. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +6 -6
  91. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +3 -3
  92. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +5 -22
  93. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +25 -40
  94. data/lib/twilio-ruby/rest/chat/v1/service.rb +36 -36
  95. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +3 -3
  96. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +19 -19
  97. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +28 -28
  98. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +7 -7
  99. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +5 -5
  100. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +8 -8
  101. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +2 -2
  102. data/lib/twilio-ruby/rest/chat/v2/service.rb +36 -36
  103. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +18 -18
  104. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +15 -15
  105. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +19 -19
  106. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +54 -54
  107. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +25 -25
  108. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +15 -15
  109. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +5 -5
  110. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +8 -8
  111. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +18 -18
  112. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +20 -20
  113. data/lib/twilio-ruby/rest/client.rb +30 -4
  114. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +10 -18
  115. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +0 -8
  116. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +17 -17
  117. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +5 -13
  118. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +7 -15
  119. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +12 -20
  120. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +3 -11
  121. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +0 -8
  122. data/lib/twilio-ruby/rest/conversations/v1/role.rb +4 -12
  123. data/lib/twilio-ruby/rest/conversations/v1/service.rb +1 -9
  124. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +24 -32
  125. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +14 -22
  126. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +2 -10
  127. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +24 -22
  128. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +10 -18
  129. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +13 -21
  130. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +18 -26
  131. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +9 -17
  132. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +10 -18
  133. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +41 -30
  134. data/lib/twilio-ruby/rest/conversations/v1/user.rb +35 -24
  135. data/lib/twilio-ruby/rest/events/v1/subscription.rb +12 -5
  136. data/lib/twilio-ruby/rest/fax/v1/fax.rb +27 -27
  137. data/lib/twilio-ruby/rest/insights.rb +8 -0
  138. data/lib/twilio-ruby/rest/insights/v1.rb +15 -0
  139. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +7 -0
  140. data/lib/twilio-ruby/rest/insights/v1/room.rb +487 -0
  141. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +378 -0
  142. data/lib/twilio-ruby/rest/ip_messaging.rb +8 -10
  143. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +6 -8
  144. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +29 -68
  145. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +198 -313
  146. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +32 -59
  147. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +23 -55
  148. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +28 -71
  149. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +31 -59
  150. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +19 -39
  151. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +29 -51
  152. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +12 -18
  153. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +6 -6
  154. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +29 -66
  155. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +116 -205
  156. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +23 -50
  157. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +41 -91
  158. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +23 -50
  159. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +42 -118
  160. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +46 -100
  161. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +36 -89
  162. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +19 -41
  163. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +29 -53
  164. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +23 -53
  165. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +27 -56
  166. data/lib/twilio-ruby/rest/lookups.rb +1 -1
  167. data/lib/twilio-ruby/rest/lookups/v1.rb +1 -1
  168. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +10 -10
  169. data/lib/twilio-ruby/rest/messaging/v1/service.rb +36 -36
  170. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +3 -3
  171. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +3 -3
  172. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +3 -3
  173. data/lib/twilio-ruby/rest/monitor/v1/event.rb +15 -15
  174. data/lib/twilio-ruby/rest/notify/v1/service.rb +24 -24
  175. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +10 -10
  176. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +17 -17
  177. data/lib/twilio-ruby/rest/preview.rb +8 -0
  178. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +5 -22
  179. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +21 -39
  180. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +10 -10
  181. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +6 -6
  182. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +1 -1
  183. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +15 -0
  184. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_call.rb +4 -4
  185. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +225 -0
  186. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +165 -0
  187. data/lib/twilio-ruby/rest/preview/trusted_comms/business.rb +0 -26
  188. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +4 -4
  189. data/lib/twilio-ruby/rest/preview/trusted_comms/phone_call.rb +52 -52
  190. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +2 -2
  191. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +2 -2
  192. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +4 -4
  193. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +2 -2
  194. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +4 -4
  195. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +2 -2
  196. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +4 -4
  197. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +3 -3
  198. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +4 -4
  199. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +4 -4
  200. data/lib/twilio-ruby/rest/proxy/v1/service.rb +15 -15
  201. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +11 -11
  202. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +6 -6
  203. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +6 -6
  204. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +6 -6
  205. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +9 -9
  206. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +8 -8
  207. data/lib/twilio-ruby/rest/serverless/v1/service.rb +5 -5
  208. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +4 -4
  209. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +4 -4
  210. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +29 -4
  211. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +219 -0
  212. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +4 -4
  213. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +4 -4
  214. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +4 -4
  215. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +4 -4
  216. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +4 -4
  217. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +4 -4
  218. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +4 -4
  219. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +6 -6
  220. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +6 -6
  221. data/lib/twilio-ruby/rest/supersim/v1/command.rb +7 -7
  222. data/lib/twilio-ruby/rest/supersim/v1/network.rb +6 -6
  223. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +7 -7
  224. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +6 -6
  225. data/lib/twilio-ruby/rest/sync/v1/service.rb +3 -3
  226. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +21 -11
  227. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +6 -6
  228. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +21 -11
  229. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +34 -11
  230. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +6 -6
  231. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +21 -11
  232. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +40 -17
  233. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +6 -6
  234. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +21 -11
  235. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +4 -4
  236. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +4 -4
  237. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +6 -6
  238. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +12 -9
  239. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +12 -12
  240. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +16 -16
  241. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +8 -8
  242. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +6 -6
  243. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +6 -6
  244. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +9 -9
  245. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +3 -3
  246. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +12 -12
  247. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +4 -4
  248. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +4 -4
  249. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +6 -6
  250. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +12 -12
  251. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +4 -4
  252. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +6 -6
  253. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +4 -4
  254. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +6 -6
  255. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +27 -27
  256. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +2 -2
  257. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +2 -2
  258. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +2 -2
  259. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +21 -24
  260. data/lib/twilio-ruby/rest/verify/v2/form.rb +4 -4
  261. data/lib/twilio-ruby/rest/verify/v2/service.rb +54 -33
  262. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +3 -3
  263. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +23 -35
  264. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +36 -61
  265. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +59 -61
  266. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +12 -12
  267. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +3 -3
  268. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +3 -3
  269. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +12 -12
  270. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +5 -5
  271. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +4 -4
  272. data/lib/twilio-ruby/rest/video/v1/composition.rb +9 -9
  273. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +24 -24
  274. data/lib/twilio-ruby/rest/video/v1/recording.rb +6 -6
  275. data/lib/twilio-ruby/rest/video/v1/room.rb +26 -9
  276. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +6 -6
  277. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +9 -9
  278. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +2 -2
  279. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +150 -0
  280. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +9 -9
  281. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +2 -2
  282. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +22 -22
  283. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +4 -4
  284. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +2 -2
  285. data/lib/twilio-ruby/rest/wireless/v1/command.rb +7 -7
  286. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +7 -7
  287. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +22 -22
  288. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +4 -4
  289. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +10 -10
  290. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +6 -6
  291. data/lib/twilio-ruby/twiml/voice_response.rb +4 -2
  292. data/lib/twilio-ruby/util/configuration.rb +5 -1
  293. data/lib/twilio-ruby/version.rb +1 -1
  294. data/spec/integration/accounts/v1/auth_token_promotion_spec.rb +44 -0
  295. data/spec/integration/accounts/v1/secondary_auth_token_spec.rb +69 -0
  296. data/spec/integration/api/v2010/account/call/event_spec.rb +102 -0
  297. data/spec/integration/api/v2010/account/call/recording_spec.rb +4 -0
  298. data/spec/integration/api/v2010/account/call_spec.rb +20 -10
  299. data/spec/integration/api/v2010/account/conference/participant_spec.rb +60 -0
  300. data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +4 -2
  301. data/spec/integration/conversations/v1/conversation_spec.rb +1 -1
  302. data/spec/integration/conversations/v1/service/conversation_spec.rb +1 -1
  303. data/spec/integration/conversations/v1/service/user_spec.rb +9 -3
  304. data/spec/integration/conversations/v1/user_spec.rb +9 -3
  305. data/spec/integration/events/v1/sink/sink_test_spec.rb +1 -1
  306. data/spec/integration/events/v1/subscription_spec.rb +49 -0
  307. data/spec/integration/insights/v1/call/summary_spec.rb +1 -0
  308. data/spec/integration/insights/v1/room/participant_spec.rb +147 -0
  309. data/spec/integration/insights/v1/room_spec.rb +164 -0
  310. data/spec/integration/ip_messaging/v1/credential_spec.rb +13 -13
  311. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +11 -11
  312. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +14 -14
  313. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +14 -14
  314. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +25 -25
  315. data/spec/integration/ip_messaging/v1/service/role_spec.rb +13 -13
  316. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +7 -7
  317. data/spec/integration/ip_messaging/v1/service/user_spec.rb +17 -17
  318. data/spec/integration/ip_messaging/v1/service_spec.rb +9 -9
  319. data/spec/integration/ip_messaging/v2/credential_spec.rb +13 -13
  320. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +11 -11
  321. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +11 -11
  322. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +13 -13
  323. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +17 -17
  324. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +15 -15
  325. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +29 -29
  326. data/spec/integration/ip_messaging/v2/service/role_spec.rb +13 -13
  327. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +9 -9
  328. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +20 -20
  329. data/spec/integration/ip_messaging/v2/service/user_spec.rb +21 -21
  330. data/spec/integration/ip_messaging/v2/service_spec.rb +29 -29
  331. data/spec/integration/lookups/v1/phone_number_spec.rb +7 -7
  332. data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +4 -2
  333. data/spec/integration/preview/trusted_comms/{business/brand/branded_channel → branded_channel}/channel_spec.rb +4 -8
  334. data/spec/integration/preview/trusted_comms/{business/brand/branded_channel_spec.rb → branded_channel_spec.rb} +5 -9
  335. data/spec/integration/preview/trusted_comms/business_spec.rb +0 -1
  336. data/spec/integration/serverless/v1/service/build/build_status_spec.rb +48 -0
  337. data/spec/integration/serverless/v1/service/build_spec.rb +8 -2
  338. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +1 -1
  339. data/spec/integration/trunking/v1/trunk/recording_spec.rb +2 -6
  340. data/spec/integration/verify/v2/service/entity/challenge_spec.rb +56 -20
  341. data/spec/integration/verify/v2/service/entity/factor_spec.rb +11 -26
  342. data/spec/integration/verify/v2/service/entity_spec.rb +4 -12
  343. data/spec/integration/verify/v2/service_spec.rb +8 -4
  344. data/spec/integration/video/v1/room/room_recording_rule_spec.rb +89 -0
  345. data/spec/integration/video/v1/room_spec.rb +12 -7
  346. data/spec/jwt/access_token_spec.rb +9 -1
  347. data/spec/rest/client_spec.rb +24 -2
  348. data/twilio-ruby.gemspec +2 -1
  349. metadata +45 -13
  350. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand.rb +0 -233
  351. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel.rb +0 -260
  352. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel/channel.rb +0 -189
  353. data/spec/integration/preview/trusted_comms/business/brand_spec.rb +0 -48
@@ -14,17 +14,15 @@ describe 'Entity' do
14
14
 
15
15
  expect {
16
16
  @client.verify.v2.services('VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
17
- .entities.create(identity: 'identity', twilio_sandbox_mode: 'twilio_sandbox_mode')
17
+ .entities.create(identity: 'identity')
18
18
  }.to raise_exception(Twilio::REST::TwilioError)
19
19
 
20
20
  values = {'Identity' => 'identity', }
21
- headers = {'Twilio-Sandbox-Mode' => 'twilio_sandbox_mode', }
22
21
  expect(
23
22
  @holodeck.has_request?(Holodeck::Request.new(
24
23
  method: 'post',
25
24
  url: 'https://verify.twilio.com/v2/Services/VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Entities',
26
25
  data: values,
27
- headers: headers,
28
26
  ))).to eq(true)
29
27
  end
30
28
 
@@ -59,15 +57,13 @@ describe 'Entity' do
59
57
 
60
58
  expect {
61
59
  @client.verify.v2.services('VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
62
- .entities('identity').delete(twilio_sandbox_mode: 'twilio_sandbox_mode')
60
+ .entities('identity').delete()
63
61
  }.to raise_exception(Twilio::REST::TwilioError)
64
62
 
65
- headers = {'Twilio-Sandbox-Mode' => 'twilio_sandbox_mode', }
66
63
  expect(
67
64
  @holodeck.has_request?(Holodeck::Request.new(
68
65
  method: 'delete',
69
66
  url: 'https://verify.twilio.com/v2/Services/VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Entities/identity',
70
- headers: headers,
71
67
  ))).to eq(true)
72
68
  end
73
69
 
@@ -88,15 +84,13 @@ describe 'Entity' do
88
84
 
89
85
  expect {
90
86
  @client.verify.v2.services('VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
91
- .entities('identity').fetch(twilio_sandbox_mode: 'twilio_sandbox_mode')
87
+ .entities('identity').fetch()
92
88
  }.to raise_exception(Twilio::REST::TwilioError)
93
89
 
94
- headers = {'Twilio-Sandbox-Mode' => 'twilio_sandbox_mode', }
95
90
  expect(
96
91
  @holodeck.has_request?(Holodeck::Request.new(
97
92
  method: 'get',
98
93
  url: 'https://verify.twilio.com/v2/Services/VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Entities/identity',
99
- headers: headers,
100
94
  ))).to eq(true)
101
95
  end
102
96
 
@@ -131,15 +125,13 @@ describe 'Entity' do
131
125
 
132
126
  expect {
133
127
  @client.verify.v2.services('VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
134
- .entities.list(twilio_sandbox_mode: 'twilio_sandbox_mode')
128
+ .entities.list()
135
129
  }.to raise_exception(Twilio::REST::TwilioError)
136
130
 
137
- headers = {'Twilio-Sandbox-Mode' => 'twilio_sandbox_mode', }
138
131
  expect(
139
132
  @holodeck.has_request?(Holodeck::Request.new(
140
133
  method: 'get',
141
134
  url: 'https://verify.twilio.com/v2/Services/VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Entities',
142
- headers: headers,
143
135
  ))).to eq(true)
144
136
  end
145
137
 
@@ -44,7 +44,8 @@ describe 'Service' do
44
44
  "custom_code_enabled": true,
45
45
  "push": {
46
46
  "include_date": true,
47
- "notify_service_sid": null
47
+ "apn_credential_sid": "CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
48
+ "fcm_credential_sid": null
48
49
  },
49
50
  "date_created": "2015-07-30T20:00:00Z",
50
51
  "date_updated": "2015-07-30T20:00:00Z",
@@ -100,7 +101,8 @@ describe 'Service' do
100
101
  "custom_code_enabled": true,
101
102
  "push": {
102
103
  "include_date": true,
103
- "notify_service_sid": null
104
+ "apn_credential_sid": null,
105
+ "fcm_credential_sid": null
104
106
  },
105
107
  "date_created": "2015-07-30T20:00:00Z",
106
108
  "date_updated": "2015-07-30T20:00:00Z",
@@ -192,7 +194,8 @@ describe 'Service' do
192
194
  "custom_code_enabled": true,
193
195
  "push": {
194
196
  "include_date": true,
195
- "notify_service_sid": null
197
+ "apn_credential_sid": null,
198
+ "fcm_credential_sid": null
196
199
  },
197
200
  "date_created": "2015-07-30T20:00:00Z",
198
201
  "date_updated": "2015-07-30T20:00:00Z",
@@ -250,7 +253,8 @@ describe 'Service' do
250
253
  "custom_code_enabled": true,
251
254
  "push": {
252
255
  "include_date": true,
253
- "notify_service_sid": null
256
+ "apn_credential_sid": null,
257
+ "fcm_credential_sid": "CRbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
254
258
  },
255
259
  "date_created": "2015-07-30T20:00:00Z",
256
260
  "date_updated": "2015-07-30T20:00:00Z",
@@ -0,0 +1,89 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ require 'spec_helper.rb'
10
+
11
+ describe 'RecordingRules' do
12
+ it "can fetch" do
13
+ @holodeck.mock(Twilio::Response.new(500, ''))
14
+
15
+ expect {
16
+ @client.video.v1.rooms('RMXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
17
+ .recording_rules.fetch()
18
+ }.to raise_exception(Twilio::REST::TwilioError)
19
+
20
+ expect(
21
+ @holodeck.has_request?(Holodeck::Request.new(
22
+ method: 'get',
23
+ url: 'https://video.twilio.com/v1/Rooms/RMXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/RecordingRules',
24
+ ))).to eq(true)
25
+ end
26
+
27
+ it "receives fetch responses" do
28
+ @holodeck.mock(Twilio::Response.new(
29
+ 200,
30
+ %q[
31
+ {
32
+ "room_sid": "RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
33
+ "date_created": "2015-07-30T20:00:00Z",
34
+ "date_updated": "2015-07-30T20:00:00Z",
35
+ "rules": [
36
+ {
37
+ "type": "include",
38
+ "all": true
39
+ }
40
+ ]
41
+ }
42
+ ]
43
+ ))
44
+
45
+ actual = @client.video.v1.rooms('RMXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
46
+ .recording_rules.fetch()
47
+
48
+ expect(actual).to_not eq(nil)
49
+ end
50
+
51
+ it "can update" do
52
+ @holodeck.mock(Twilio::Response.new(500, ''))
53
+
54
+ expect {
55
+ @client.video.v1.rooms('RMXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
56
+ .recording_rules.update()
57
+ }.to raise_exception(Twilio::REST::TwilioError)
58
+
59
+ expect(
60
+ @holodeck.has_request?(Holodeck::Request.new(
61
+ method: 'post',
62
+ url: 'https://video.twilio.com/v1/Rooms/RMXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/RecordingRules',
63
+ ))).to eq(true)
64
+ end
65
+
66
+ it "receives update responses" do
67
+ @holodeck.mock(Twilio::Response.new(
68
+ 200,
69
+ %q[
70
+ {
71
+ "room_sid": "RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
72
+ "date_created": "2015-07-30T20:00:00Z",
73
+ "date_updated": "2015-07-30T20:00:00Z",
74
+ "rules": [
75
+ {
76
+ "type": "include",
77
+ "all": true
78
+ }
79
+ ]
80
+ }
81
+ ]
82
+ ))
83
+
84
+ actual = @client.video.v1.rooms('RMXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
85
+ .recording_rules.update()
86
+
87
+ expect(actual).to_not eq(nil)
88
+ end
89
+ end
@@ -49,7 +49,8 @@ describe 'Room' do
49
49
  "url": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
50
50
  "links": {
51
51
  "participants": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Participants",
52
- "recordings": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings"
52
+ "recordings": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings",
53
+ "recording_rules": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/RecordingRules"
53
54
  }
54
55
  }
55
56
  ]
@@ -100,7 +101,8 @@ describe 'Room' do
100
101
  "url": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
101
102
  "links": {
102
103
  "participants": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Participants",
103
- "recordings": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings"
104
+ "recordings": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings",
105
+ "recording_rules": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/RecordingRules"
104
106
  }
105
107
  }
106
108
  ]
@@ -111,7 +113,7 @@ describe 'Room' do
111
113
  expect(actual).to_not eq(nil)
112
114
  end
113
115
 
114
- it "receives create_p2p_basic responses" do
116
+ it "receives create_webrtc_go responses" do
115
117
  @holodeck.mock(Twilio::Response.new(
116
118
  201,
117
119
  %q[
@@ -120,7 +122,7 @@ describe 'Room' do
120
122
  "date_created": "2015-07-30T20:00:00Z",
121
123
  "date_updated": "2015-07-30T20:00:00Z",
122
124
  "status": "in-progress",
123
- "type": "peer-to-peer-basic",
125
+ "type": "go",
124
126
  "sid": "RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
125
127
  "enable_turn": true,
126
128
  "unique_name": "room1",
@@ -137,7 +139,8 @@ describe 'Room' do
137
139
  "url": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
138
140
  "links": {
139
141
  "participants": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Participants",
140
- "recordings": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings"
142
+ "recordings": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings",
143
+ "recording_rules": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/RecordingRules"
141
144
  }
142
145
  }
143
146
  ]
@@ -214,7 +217,8 @@ describe 'Room' do
214
217
  "url": "https://video.twilio.com/v1/Rooms/RM4070b618362c1682b2385b1f9982833c",
215
218
  "links": {
216
219
  "participants": "https://video.twilio.com/v1/Rooms/RM4070b618362c1682b2385b1f9982833c/Participants",
217
- "recordings": "https://video.twilio.com/v1/Rooms/RM4070b618362c1682b2385b1f9982833c/Recordings"
220
+ "recordings": "https://video.twilio.com/v1/Rooms/RM4070b618362c1682b2385b1f9982833c/Recordings",
221
+ "recording_rules": "https://video.twilio.com/v1/Rooms/RM4070b618362c1682b2385b1f9982833c/RecordingRules"
218
222
  }
219
223
  }
220
224
  ],
@@ -278,7 +282,8 @@ describe 'Room' do
278
282
  "url": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
279
283
  "links": {
280
284
  "participants": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Participants",
281
- "recordings": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings"
285
+ "recordings": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings",
286
+ "recording_rules": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/RecordingRules"
282
287
  }
283
288
  }
284
289
  ]
@@ -14,10 +14,18 @@ describe Twilio::JWT::AccessToken do
14
14
  expect(payload['grants'].count).to eq(0)
15
15
  end
16
16
 
17
- it 'should add the proper headers' do
17
+ it 'should add the proper headers without region' do
18
18
  scat = Twilio::JWT::AccessToken.new 'AC123', 'SK123', 'secret'
19
19
  _, headers = JWT.decode scat.to_s, 'secret'
20
20
  expect(headers['cty']).to eq('twilio-fpa;v=1')
21
+ expect(headers['twr']).to be_nil
22
+ end
23
+
24
+ it 'should add the proper headers with region' do
25
+ scat = Twilio::JWT::AccessToken.new 'AC123', 'SK123', 'secret', region: 'foo'
26
+ _, headers = JWT.decode scat.to_s, 'secret'
27
+ expect(headers['cty']).to eq('twilio-fpa;v=1')
28
+ expect(headers['twr']).to eq('foo')
21
29
  end
22
30
 
23
31
  it 'identity should exist in the grants' do
@@ -1,4 +1,5 @@
1
1
  require 'spec_helper'
2
+ require 'logger'
2
3
 
3
4
  describe Twilio::REST::ObsoleteClient do
4
5
  it 'raise an exception' do
@@ -57,6 +58,7 @@ describe Twilio::REST::Client do
57
58
  config.http_client = 'someClient'
58
59
  config.region = 'someRegion'
59
60
  config.edge = 'someEdge'
61
+ config.logger = 'someLogger'
60
62
  end
61
63
  end
62
64
 
@@ -67,16 +69,18 @@ describe Twilio::REST::Client do
67
69
  expect(@client.http_client).to eq('someClient')
68
70
  expect(@client.region).to eq('someRegion')
69
71
  expect(@client.edge).to eq('someEdge')
72
+ expect(@client.logger).to eq('someLogger')
70
73
  end
71
74
 
72
75
  it 'uses the arguments over global configuration' do
73
- @client = Twilio::REST::Client.new('myUser', 'myPassword', nil, 'myRegion', 'myClient')
76
+ @client = Twilio::REST::Client.new('myUser', 'myPassword', nil, 'myRegion', 'myClient', 'myLogger')
74
77
  @client.edge = 'myEdge'
75
78
  expect(@client.account_sid).to eq('myUser')
76
79
  expect(@client.auth_token).to eq('myPassword')
77
80
  expect(@client.http_client).to eq('myClient')
78
81
  expect(@client.region).to eq('myRegion')
79
82
  expect(@client.edge).to eq('myEdge')
83
+ expect(@client.logger).to eq('myLogger')
80
84
  end
81
85
 
82
86
  class MyVersion < Twilio::REST::Version
@@ -97,13 +101,14 @@ describe Twilio::REST::Client do
97
101
  end
98
102
 
99
103
  context 'validation' do
100
- before do
104
+ before :all do
101
105
  Twilio.configure do |config|
102
106
  config.account_sid = 'someSid'
103
107
  config.auth_token = 'someToken'
104
108
  config.http_client = 'someClient'
105
109
  config.region = nil
106
110
  config.edge = nil
111
+ config.logger = nil
107
112
  end
108
113
  end
109
114
 
@@ -142,6 +147,23 @@ describe Twilio::REST::Client do
142
147
  end
143
148
  end
144
149
 
150
+ context 'logging' do
151
+ it 'logs the call details' do
152
+ @client.logger = Logger.new(STDOUT)
153
+ @holodeck.mock Twilio::Response.new(200, {})
154
+ expect {
155
+ @client.request('host', 'port', 'GET', 'http://foobar.com')
156
+ }.to output(/Host:foobar.com/).to_stdout_from_any_process
157
+ end
158
+
159
+ it 'does not log when the logger instance is not passed' do
160
+ @holodeck.mock Twilio::Response.new(200, {})
161
+ expect {
162
+ @client.request('host', 'port', 'GET', 'http://foobar.com')
163
+ }.to_not output(/Host:foobar.com/).to_stdout_from_any_process
164
+ end
165
+ end
166
+
145
167
  describe '#build_uri' do
146
168
  before(:all) do
147
169
  Twilio.configure do |config|
@@ -21,7 +21,7 @@ Gem::Specification.new do |spec|
21
21
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
22
22
  spec.require_paths = ['lib']
23
23
  spec.required_ruby_version = '>= 2.0.0'
24
- spec.extra_rdoc_files = ['README.md', 'LICENSE.md']
24
+ spec.extra_rdoc_files = ['README.md', 'LICENSE']
25
25
  spec.rdoc_options = ['--line-numbers', '--inline-source', '--title', 'twilio-ruby', '--main', 'README.md']
26
26
 
27
27
  spec.add_dependency('jwt', '>= 1.5', '<= 2.5')
@@ -38,4 +38,5 @@ Gem::Specification.new do |spec|
38
38
  spec.add_development_dependency 'rspec', '~> 3.0'
39
39
  spec.add_development_dependency 'rubocop', '~> 0.82.0'
40
40
  spec.add_development_dependency 'yard', '~> 0.9.9'
41
+ spec.add_development_dependency 'logger', '~> 1.4.2'
41
42
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twilio-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.40.3
4
+ version: 5.44.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Twilio API Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-09-21 00:00:00.000000000 Z
11
+ date: 2020-12-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jwt
@@ -188,6 +188,20 @@ dependencies:
188
188
  - - "~>"
189
189
  - !ruby/object:Gem::Version
190
190
  version: 0.9.9
191
+ - !ruby/object:Gem::Dependency
192
+ name: logger
193
+ requirement: !ruby/object:Gem::Requirement
194
+ requirements:
195
+ - - "~>"
196
+ - !ruby/object:Gem::Version
197
+ version: 1.4.2
198
+ type: :development
199
+ prerelease: false
200
+ version_requirements: !ruby/object:Gem::Requirement
201
+ requirements:
202
+ - - "~>"
203
+ - !ruby/object:Gem::Version
204
+ version: 1.4.2
191
205
  description: The official library for communicating with the Twilio REST API, building
192
206
  TwiML, and generating Twilio JWT Capability Tokens
193
207
  email:
@@ -195,7 +209,7 @@ executables: []
195
209
  extensions: []
196
210
  extra_rdoc_files:
197
211
  - README.md
198
- - LICENSE.md
212
+ - LICENSE
199
213
  files:
200
214
  - ".dockerignore"
201
215
  - ".gitignore"
@@ -209,7 +223,7 @@ files:
209
223
  - Dockerfile
210
224
  - Gemfile
211
225
  - ISSUE_TEMPLATE.md
212
- - LICENSE.md
226
+ - LICENSE
213
227
  - Makefile
214
228
  - PULL_REQUEST_TEMPLATE.md
215
229
  - README.md
@@ -241,9 +255,11 @@ files:
241
255
  - lib/twilio-ruby/jwt/task_router.rb
242
256
  - lib/twilio-ruby/rest/accounts.rb
243
257
  - lib/twilio-ruby/rest/accounts/v1.rb
258
+ - lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb
244
259
  - lib/twilio-ruby/rest/accounts/v1/credential.rb
245
260
  - lib/twilio-ruby/rest/accounts/v1/credential/aws.rb
246
261
  - lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb
262
+ - lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb
247
263
  - lib/twilio-ruby/rest/api.rb
248
264
  - lib/twilio-ruby/rest/api/v2010.rb
249
265
  - lib/twilio-ruby/rest/api/v2010/account.rb
@@ -261,6 +277,7 @@ files:
261
277
  - lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb
262
278
  - lib/twilio-ruby/rest/api/v2010/account/balance.rb
263
279
  - lib/twilio-ruby/rest/api/v2010/account/call.rb
280
+ - lib/twilio-ruby/rest/api/v2010/account/call/event.rb
264
281
  - lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb
265
282
  - lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb
266
283
  - lib/twilio-ruby/rest/api/v2010/account/call/notification.rb
@@ -418,6 +435,8 @@ files:
418
435
  - lib/twilio-ruby/rest/insights/v1/call/event.rb
419
436
  - lib/twilio-ruby/rest/insights/v1/call/metric.rb
420
437
  - lib/twilio-ruby/rest/insights/v1/call/summary.rb
438
+ - lib/twilio-ruby/rest/insights/v1/room.rb
439
+ - lib/twilio-ruby/rest/insights/v1/room/participant.rb
421
440
  - lib/twilio-ruby/rest/ip_messaging.rb
422
441
  - lib/twilio-ruby/rest/ip_messaging/v1.rb
423
442
  - lib/twilio-ruby/rest/ip_messaging/v1/credential.rb
@@ -507,11 +526,10 @@ files:
507
526
  - lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb
508
527
  - lib/twilio-ruby/rest/preview/trusted_comms.rb
509
528
  - lib/twilio-ruby/rest/preview/trusted_comms/branded_call.rb
529
+ - lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb
530
+ - lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb
510
531
  - lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb
511
532
  - lib/twilio-ruby/rest/preview/trusted_comms/business.rb
512
- - lib/twilio-ruby/rest/preview/trusted_comms/business/brand.rb
513
- - lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel.rb
514
- - lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel/channel.rb
515
533
  - lib/twilio-ruby/rest/preview/trusted_comms/business/insights.rb
516
534
  - lib/twilio-ruby/rest/preview/trusted_comms/business/insights/impressions_rate.rb
517
535
  - lib/twilio-ruby/rest/preview/trusted_comms/cps.rb
@@ -565,6 +583,7 @@ files:
565
583
  - lib/twilio-ruby/rest/serverless/v1/service/asset.rb
566
584
  - lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb
567
585
  - lib/twilio-ruby/rest/serverless/v1/service/build.rb
586
+ - lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb
568
587
  - lib/twilio-ruby/rest/serverless/v1/service/environment.rb
569
588
  - lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb
570
589
  - lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb
@@ -676,6 +695,7 @@ files:
676
695
  - lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb
677
696
  - lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb
678
697
  - lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb
698
+ - lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb
679
699
  - lib/twilio-ruby/rest/voice.rb
680
700
  - lib/twilio-ruby/rest/voice/v1.rb
681
701
  - lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb
@@ -710,9 +730,11 @@ files:
710
730
  - spec/holodeck/holodeck.rb
711
731
  - spec/holodeck/hologram.rb
712
732
  - spec/http/http_client_spec.rb
733
+ - spec/integration/accounts/v1/auth_token_promotion_spec.rb
713
734
  - spec/integration/accounts/v1/credential/aws_spec.rb
714
735
  - spec/integration/accounts/v1/credential/public_key_spec.rb
715
736
  - spec/integration/accounts/v1/credential_spec.rb
737
+ - spec/integration/accounts/v1/secondary_auth_token_spec.rb
716
738
  - spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb
717
739
  - spec/integration/api/v2010/account/address_spec.rb
718
740
  - spec/integration/api/v2010/account/application_spec.rb
@@ -726,6 +748,7 @@ files:
726
748
  - spec/integration/api/v2010/account/available_phone_number/voip_spec.rb
727
749
  - spec/integration/api/v2010/account/available_phone_number_spec.rb
728
750
  - spec/integration/api/v2010/account/balance_spec.rb
751
+ - spec/integration/api/v2010/account/call/event_spec.rb
729
752
  - spec/integration/api/v2010/account/call/feedback_spec.rb
730
753
  - spec/integration/api/v2010/account/call/feedback_summary_spec.rb
731
754
  - spec/integration/api/v2010/account/call/notification_spec.rb
@@ -867,6 +890,8 @@ files:
867
890
  - spec/integration/insights/v1/call/metric_spec.rb
868
891
  - spec/integration/insights/v1/call/summary_spec.rb
869
892
  - spec/integration/insights/v1/call_spec.rb
893
+ - spec/integration/insights/v1/room/participant_spec.rb
894
+ - spec/integration/insights/v1/room_spec.rb
870
895
  - spec/integration/ip_messaging/v1/credential_spec.rb
871
896
  - spec/integration/ip_messaging/v1/service/channel/invite_spec.rb
872
897
  - spec/integration/ip_messaging/v1/service/channel/member_spec.rb
@@ -936,10 +961,9 @@ files:
936
961
  - spec/integration/preview/sync/service/sync_map_spec.rb
937
962
  - spec/integration/preview/sync/service_spec.rb
938
963
  - spec/integration/preview/trusted_comms/branded_call_spec.rb
964
+ - spec/integration/preview/trusted_comms/branded_channel/channel_spec.rb
965
+ - spec/integration/preview/trusted_comms/branded_channel_spec.rb
939
966
  - spec/integration/preview/trusted_comms/brands_information_spec.rb
940
- - spec/integration/preview/trusted_comms/business/brand/branded_channel/channel_spec.rb
941
- - spec/integration/preview/trusted_comms/business/brand/branded_channel_spec.rb
942
- - spec/integration/preview/trusted_comms/business/brand_spec.rb
943
967
  - spec/integration/preview/trusted_comms/business/insights/impressions_rate_spec.rb
944
968
  - spec/integration/preview/trusted_comms/business/insights_spec.rb
945
969
  - spec/integration/preview/trusted_comms/business_spec.rb
@@ -983,6 +1007,7 @@ files:
983
1007
  - spec/integration/proxy/v1/service_spec.rb
984
1008
  - spec/integration/serverless/v1/service/asset/asset_version_spec.rb
985
1009
  - spec/integration/serverless/v1/service/asset_spec.rb
1010
+ - spec/integration/serverless/v1/service/build/build_status_spec.rb
986
1011
  - spec/integration/serverless/v1/service/build_spec.rb
987
1012
  - spec/integration/serverless/v1/service/environment/deployment_spec.rb
988
1013
  - spec/integration/serverless/v1/service/environment/log_spec.rb
@@ -1080,6 +1105,7 @@ files:
1080
1105
  - spec/integration/video/v1/room/room_participant/room_participant_subscribe_rule_spec.rb
1081
1106
  - spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb
1082
1107
  - spec/integration/video/v1/room/room_participant_spec.rb
1108
+ - spec/integration/video/v1/room/room_recording_rule_spec.rb
1083
1109
  - spec/integration/video/v1/room_spec.rb
1084
1110
  - spec/integration/voice/v1/byoc_trunk_spec.rb
1085
1111
  - spec/integration/voice/v1/connection_policy/connection_policy_target_spec.rb
@@ -1149,9 +1175,11 @@ test_files:
1149
1175
  - spec/holodeck/holodeck.rb
1150
1176
  - spec/holodeck/hologram.rb
1151
1177
  - spec/http/http_client_spec.rb
1178
+ - spec/integration/accounts/v1/auth_token_promotion_spec.rb
1152
1179
  - spec/integration/accounts/v1/credential/aws_spec.rb
1153
1180
  - spec/integration/accounts/v1/credential/public_key_spec.rb
1154
1181
  - spec/integration/accounts/v1/credential_spec.rb
1182
+ - spec/integration/accounts/v1/secondary_auth_token_spec.rb
1155
1183
  - spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb
1156
1184
  - spec/integration/api/v2010/account/address_spec.rb
1157
1185
  - spec/integration/api/v2010/account/application_spec.rb
@@ -1165,6 +1193,7 @@ test_files:
1165
1193
  - spec/integration/api/v2010/account/available_phone_number/voip_spec.rb
1166
1194
  - spec/integration/api/v2010/account/available_phone_number_spec.rb
1167
1195
  - spec/integration/api/v2010/account/balance_spec.rb
1196
+ - spec/integration/api/v2010/account/call/event_spec.rb
1168
1197
  - spec/integration/api/v2010/account/call/feedback_spec.rb
1169
1198
  - spec/integration/api/v2010/account/call/feedback_summary_spec.rb
1170
1199
  - spec/integration/api/v2010/account/call/notification_spec.rb
@@ -1306,6 +1335,8 @@ test_files:
1306
1335
  - spec/integration/insights/v1/call/metric_spec.rb
1307
1336
  - spec/integration/insights/v1/call/summary_spec.rb
1308
1337
  - spec/integration/insights/v1/call_spec.rb
1338
+ - spec/integration/insights/v1/room/participant_spec.rb
1339
+ - spec/integration/insights/v1/room_spec.rb
1309
1340
  - spec/integration/ip_messaging/v1/credential_spec.rb
1310
1341
  - spec/integration/ip_messaging/v1/service/channel/invite_spec.rb
1311
1342
  - spec/integration/ip_messaging/v1/service/channel/member_spec.rb
@@ -1375,10 +1406,9 @@ test_files:
1375
1406
  - spec/integration/preview/sync/service/sync_map_spec.rb
1376
1407
  - spec/integration/preview/sync/service_spec.rb
1377
1408
  - spec/integration/preview/trusted_comms/branded_call_spec.rb
1409
+ - spec/integration/preview/trusted_comms/branded_channel/channel_spec.rb
1410
+ - spec/integration/preview/trusted_comms/branded_channel_spec.rb
1378
1411
  - spec/integration/preview/trusted_comms/brands_information_spec.rb
1379
- - spec/integration/preview/trusted_comms/business/brand/branded_channel/channel_spec.rb
1380
- - spec/integration/preview/trusted_comms/business/brand/branded_channel_spec.rb
1381
- - spec/integration/preview/trusted_comms/business/brand_spec.rb
1382
1412
  - spec/integration/preview/trusted_comms/business/insights/impressions_rate_spec.rb
1383
1413
  - spec/integration/preview/trusted_comms/business/insights_spec.rb
1384
1414
  - spec/integration/preview/trusted_comms/business_spec.rb
@@ -1422,6 +1452,7 @@ test_files:
1422
1452
  - spec/integration/proxy/v1/service_spec.rb
1423
1453
  - spec/integration/serverless/v1/service/asset/asset_version_spec.rb
1424
1454
  - spec/integration/serverless/v1/service/asset_spec.rb
1455
+ - spec/integration/serverless/v1/service/build/build_status_spec.rb
1425
1456
  - spec/integration/serverless/v1/service/build_spec.rb
1426
1457
  - spec/integration/serverless/v1/service/environment/deployment_spec.rb
1427
1458
  - spec/integration/serverless/v1/service/environment/log_spec.rb
@@ -1519,6 +1550,7 @@ test_files:
1519
1550
  - spec/integration/video/v1/room/room_participant/room_participant_subscribe_rule_spec.rb
1520
1551
  - spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb
1521
1552
  - spec/integration/video/v1/room/room_participant_spec.rb
1553
+ - spec/integration/video/v1/room/room_recording_rule_spec.rb
1522
1554
  - spec/integration/video/v1/room_spec.rb
1523
1555
  - spec/integration/voice/v1/byoc_trunk_spec.rb
1524
1556
  - spec/integration/voice/v1/connection_policy/connection_policy_target_spec.rb