twilio-ruby 5.40.2 → 5.43.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (369) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +111 -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/framework/version.rb +2 -1
  8. data/lib/twilio-ruby/jwt/access_token.rb +7 -2
  9. data/lib/twilio-ruby/rest/accounts.rb +12 -0
  10. data/lib/twilio-ruby/rest/accounts/v1.rb +14 -0
  11. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +186 -0
  12. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +200 -0
  13. data/lib/twilio-ruby/rest/api.rb +1 -1
  14. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +3 -3
  15. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +2 -2
  16. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +3 -3
  17. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +3 -3
  18. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +3 -3
  19. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +32 -23
  20. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +32 -23
  21. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +32 -23
  22. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +32 -23
  23. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +32 -23
  24. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +32 -23
  25. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +32 -23
  26. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +41 -20
  27. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +201 -0
  28. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +3 -3
  29. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +3 -3
  30. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +6 -6
  31. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +20 -14
  32. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +8 -8
  33. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +3 -3
  34. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +29 -22
  35. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +3 -3
  36. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +3 -3
  37. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +10 -10
  38. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +3 -3
  39. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +3 -3
  40. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +3 -3
  41. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +3 -3
  42. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +3 -3
  43. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +1 -1
  44. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +28 -21
  45. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +6 -4
  46. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +3 -3
  47. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +3 -3
  48. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +3 -3
  49. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +3 -3
  50. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +5 -5
  51. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +6 -6
  52. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +3 -3
  53. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +3 -3
  54. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +6 -6
  55. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +3 -3
  56. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +1 -1
  57. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +2 -2
  58. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +2 -2
  59. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +3 -3
  60. 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
  61. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +2 -2
  62. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +3 -3
  63. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +1 -1
  64. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +1 -1
  65. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +1 -1
  66. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +2 -2
  67. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +3 -3
  68. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +6 -6
  69. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +6 -6
  70. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +6 -6
  71. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +6 -6
  72. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +6 -6
  73. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +6 -6
  74. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +6 -6
  75. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +6 -6
  76. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +6 -6
  77. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +19 -18
  78. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +3 -3
  79. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +12 -12
  80. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +3 -3
  81. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +3 -3
  82. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +3 -3
  83. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +15 -11
  84. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +3 -3
  85. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +33 -26
  86. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +3 -3
  87. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +6 -6
  88. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +9 -9
  89. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +31 -24
  90. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +8 -8
  91. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +6 -6
  92. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +3 -3
  93. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +5 -22
  94. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +25 -40
  95. data/lib/twilio-ruby/rest/chat/v1/service.rb +36 -36
  96. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +3 -3
  97. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +19 -19
  98. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +28 -28
  99. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +7 -7
  100. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +5 -5
  101. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +8 -8
  102. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +2 -2
  103. data/lib/twilio-ruby/rest/chat/v2/service.rb +36 -36
  104. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +18 -18
  105. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +15 -15
  106. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +19 -19
  107. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +54 -54
  108. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +25 -25
  109. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +15 -15
  110. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +5 -5
  111. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +8 -8
  112. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +18 -18
  113. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +20 -20
  114. data/lib/twilio-ruby/rest/client.rb +30 -4
  115. data/lib/twilio-ruby/rest/conversations.rb +0 -16
  116. data/lib/twilio-ruby/rest/conversations/v1.rb +0 -24
  117. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +23 -21
  118. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -0
  119. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +20 -20
  120. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +15 -20
  121. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +23 -25
  122. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +42 -44
  123. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +14 -19
  124. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +1 -9
  125. data/lib/twilio-ruby/rest/conversations/v1/role.rb +5 -11
  126. data/lib/twilio-ruby/rest/conversations/v1/service.rb +2 -10
  127. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +34 -39
  128. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +32 -28
  129. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +307 -0
  130. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +27 -25
  131. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +24 -29
  132. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +33 -35
  133. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +52 -54
  134. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +24 -29
  135. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +14 -20
  136. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +53 -42
  137. data/lib/twilio-ruby/rest/conversations/v1/user.rb +44 -33
  138. data/lib/twilio-ruby/rest/events.rb +10 -1
  139. data/lib/twilio-ruby/rest/events/v1.rb +17 -1
  140. data/lib/twilio-ruby/rest/events/v1/event_type.rb +8 -8
  141. data/lib/twilio-ruby/rest/events/v1/schema.rb +226 -0
  142. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +290 -0
  143. data/lib/twilio-ruby/rest/events/v1/subscription.rb +40 -13
  144. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +3 -109
  145. data/lib/twilio-ruby/rest/fax/v1/fax.rb +28 -27
  146. data/lib/twilio-ruby/rest/insights.rb +8 -0
  147. data/lib/twilio-ruby/rest/insights/v1.rb +15 -0
  148. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +7 -0
  149. data/lib/twilio-ruby/rest/insights/v1/room.rb +487 -0
  150. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +378 -0
  151. data/lib/twilio-ruby/rest/ip_messaging.rb +8 -10
  152. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +6 -8
  153. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +29 -68
  154. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +198 -313
  155. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +32 -59
  156. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +23 -55
  157. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +28 -71
  158. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +31 -59
  159. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +19 -39
  160. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +29 -51
  161. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +12 -18
  162. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +6 -6
  163. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +29 -66
  164. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +116 -205
  165. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +23 -50
  166. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +41 -91
  167. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +23 -50
  168. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +42 -118
  169. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +46 -100
  170. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +36 -89
  171. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +19 -41
  172. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +29 -53
  173. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +23 -53
  174. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +27 -56
  175. data/lib/twilio-ruby/rest/lookups.rb +1 -1
  176. data/lib/twilio-ruby/rest/lookups/v1.rb +1 -1
  177. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +10 -10
  178. data/lib/twilio-ruby/rest/messaging/v1/service.rb +39 -36
  179. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +3 -3
  180. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +3 -3
  181. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +3 -3
  182. data/lib/twilio-ruby/rest/monitor/v1/event.rb +15 -15
  183. data/lib/twilio-ruby/rest/notify/v1/credential.rb +12 -6
  184. data/lib/twilio-ruby/rest/notify/v1/service.rb +24 -24
  185. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +10 -10
  186. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +23 -15
  187. data/lib/twilio-ruby/rest/preview.rb +8 -0
  188. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +5 -22
  189. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +21 -39
  190. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +15 -10
  191. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +9 -6
  192. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +1 -1
  193. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +15 -0
  194. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_call.rb +4 -4
  195. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +225 -0
  196. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +165 -0
  197. data/lib/twilio-ruby/rest/preview/trusted_comms/business.rb +0 -26
  198. data/lib/twilio-ruby/rest/preview/trusted_comms/business/insights.rb +1 -4
  199. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +4 -4
  200. data/lib/twilio-ruby/rest/preview/trusted_comms/phone_call.rb +52 -52
  201. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +2 -2
  202. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +2 -2
  203. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +4 -4
  204. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +2 -2
  205. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +4 -4
  206. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +2 -2
  207. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +4 -4
  208. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +3 -3
  209. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +4 -4
  210. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +4 -4
  211. data/lib/twilio-ruby/rest/proxy/v1/service.rb +15 -15
  212. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +13 -11
  213. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +6 -6
  214. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +6 -6
  215. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +6 -6
  216. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +9 -9
  217. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +8 -8
  218. data/lib/twilio-ruby/rest/serverless/v1/service.rb +5 -5
  219. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +4 -4
  220. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +4 -4
  221. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +29 -4
  222. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +219 -0
  223. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +4 -4
  224. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +4 -4
  225. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +4 -4
  226. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +4 -4
  227. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +4 -4
  228. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +4 -4
  229. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +4 -4
  230. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +6 -6
  231. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +6 -6
  232. data/lib/twilio-ruby/rest/supersim/v1/command.rb +7 -7
  233. data/lib/twilio-ruby/rest/supersim/v1/network.rb +6 -6
  234. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +7 -7
  235. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +6 -6
  236. data/lib/twilio-ruby/rest/sync/v1/service.rb +3 -3
  237. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +21 -11
  238. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +6 -6
  239. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +21 -11
  240. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +34 -11
  241. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +6 -6
  242. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +21 -11
  243. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +40 -17
  244. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +6 -6
  245. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +21 -11
  246. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +4 -4
  247. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +4 -4
  248. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +6 -6
  249. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +12 -9
  250. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +16 -12
  251. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +16 -16
  252. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +8 -8
  253. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +6 -6
  254. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +6 -6
  255. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +9 -9
  256. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +4 -7
  257. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +16 -12
  258. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +4 -4
  259. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +4 -4
  260. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +6 -6
  261. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +12 -12
  262. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +4 -4
  263. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +6 -6
  264. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +4 -4
  265. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +6 -6
  266. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +46 -53
  267. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +2 -2
  268. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +3 -2
  269. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +3 -2
  270. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +201 -0
  271. data/lib/twilio-ruby/rest/verify/v2/form.rb +4 -4
  272. data/lib/twilio-ruby/rest/verify/v2/service.rb +54 -33
  273. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +3 -3
  274. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +23 -35
  275. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +36 -61
  276. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +59 -61
  277. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +12 -12
  278. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +3 -3
  279. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +3 -3
  280. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +14 -12
  281. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +5 -5
  282. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +4 -4
  283. data/lib/twilio-ruby/rest/video/v1/composition.rb +13 -9
  284. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +33 -24
  285. data/lib/twilio-ruby/rest/video/v1/recording.rb +6 -6
  286. data/lib/twilio-ruby/rest/video/v1/room.rb +27 -9
  287. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +6 -6
  288. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +9 -9
  289. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +2 -2
  290. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +150 -0
  291. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +9 -9
  292. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +3 -6
  293. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +22 -22
  294. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +4 -4
  295. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +2 -2
  296. data/lib/twilio-ruby/rest/wireless/v1/command.rb +7 -7
  297. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +8 -7
  298. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +22 -22
  299. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +4 -4
  300. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +10 -10
  301. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +6 -6
  302. data/lib/twilio-ruby/util/configuration.rb +5 -1
  303. data/lib/twilio-ruby/version.rb +1 -1
  304. data/spec/framework/version_spec.rb +11 -0
  305. data/spec/integration/accounts/v1/auth_token_promotion_spec.rb +44 -0
  306. data/spec/integration/accounts/v1/secondary_auth_token_spec.rb +69 -0
  307. data/spec/integration/api/v2010/account/call/event_spec.rb +102 -0
  308. data/spec/integration/api/v2010/account/call_spec.rb +20 -10
  309. data/spec/integration/api/v2010/account/conference/participant_spec.rb +30 -0
  310. data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +4 -2
  311. data/spec/integration/conversations/v1/{webhook_spec.rb → configuration/webhook_spec.rb} +12 -8
  312. data/spec/integration/conversations/v1/configuration_spec.rb +4 -2
  313. data/spec/integration/conversations/v1/conversation_spec.rb +1 -1
  314. data/spec/integration/conversations/v1/{notification_spec.rb → service/configuration/notification_spec.rb} +12 -4
  315. data/spec/integration/conversations/v1/service/conversation_spec.rb +1 -1
  316. data/spec/integration/conversations/v1/service/user_spec.rb +9 -3
  317. data/spec/integration/conversations/v1/user_spec.rb +9 -3
  318. data/spec/integration/events/v1/schema/schema_version_spec.rb +126 -0
  319. data/spec/integration/events/v1/schema_spec.rb +46 -0
  320. data/spec/integration/events/v1/sink/sink_test_spec.rb +1 -1
  321. data/spec/integration/events/v1/subscription/subscribed_event_spec.rb +0 -121
  322. data/spec/integration/events/v1/subscription_spec.rb +87 -0
  323. data/spec/integration/insights/v1/call/summary_spec.rb +1 -0
  324. data/spec/integration/insights/v1/room/participant_spec.rb +147 -0
  325. data/spec/integration/insights/v1/room_spec.rb +164 -0
  326. data/spec/integration/ip_messaging/v1/credential_spec.rb +13 -13
  327. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +11 -11
  328. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +14 -14
  329. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +14 -14
  330. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +25 -25
  331. data/spec/integration/ip_messaging/v1/service/role_spec.rb +13 -13
  332. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +7 -7
  333. data/spec/integration/ip_messaging/v1/service/user_spec.rb +17 -17
  334. data/spec/integration/ip_messaging/v1/service_spec.rb +9 -9
  335. data/spec/integration/ip_messaging/v2/credential_spec.rb +13 -13
  336. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +11 -11
  337. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +11 -11
  338. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +13 -13
  339. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +17 -17
  340. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +15 -15
  341. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +29 -29
  342. data/spec/integration/ip_messaging/v2/service/role_spec.rb +13 -13
  343. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +9 -9
  344. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +20 -20
  345. data/spec/integration/ip_messaging/v2/service/user_spec.rb +21 -21
  346. data/spec/integration/ip_messaging/v2/service_spec.rb +29 -29
  347. data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +4 -2
  348. data/spec/integration/preview/trusted_comms/{business/brand/branded_channel → branded_channel}/channel_spec.rb +4 -8
  349. data/spec/integration/preview/trusted_comms/{business/brand/branded_channel_spec.rb → branded_channel_spec.rb} +5 -9
  350. data/spec/integration/preview/trusted_comms/business_spec.rb +0 -1
  351. data/spec/integration/serverless/v1/service/build/build_status_spec.rb +48 -0
  352. data/spec/integration/serverless/v1/service/build_spec.rb +8 -2
  353. data/spec/integration/trunking/v1/trunk/recording_spec.rb +79 -0
  354. data/spec/integration/verify/v2/service/entity/challenge_spec.rb +56 -20
  355. data/spec/integration/verify/v2/service/entity/factor_spec.rb +11 -26
  356. data/spec/integration/verify/v2/service/entity_spec.rb +4 -12
  357. data/spec/integration/verify/v2/service_spec.rb +8 -4
  358. data/spec/integration/video/v1/room/room_recording_rule_spec.rb +89 -0
  359. data/spec/integration/video/v1/room_spec.rb +12 -7
  360. data/spec/jwt/access_token_spec.rb +9 -1
  361. data/spec/rest/client_spec.rb +24 -2
  362. data/twilio-ruby.gemspec +2 -1
  363. metadata +60 -19
  364. data/lib/twilio-ruby/rest/conversations/v1/notification.rb +0 -310
  365. data/lib/twilio-ruby/rest/conversations/v1/webhook.rb +0 -262
  366. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand.rb +0 -233
  367. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel.rb +0 -260
  368. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel/channel.rb +0 -189
  369. data/spec/integration/preview/trusted_comms/business/brand_spec.rb +0 -48
@@ -10,8 +10,6 @@ module Twilio
10
10
  module REST
11
11
  class Conversations < Domain
12
12
  class V1 < Version
13
- ##
14
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
15
13
  class CredentialList < ListResource
16
14
  ##
17
15
  # Initialize the CredentialList
@@ -151,8 +149,6 @@ module Twilio
151
149
  end
152
150
  end
153
151
 
154
- ##
155
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
156
152
  class CredentialPage < Page
157
153
  ##
158
154
  # Initialize the CredentialPage
@@ -182,8 +178,6 @@ module Twilio
182
178
  end
183
179
  end
184
180
 
185
- ##
186
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
187
181
  class CredentialContext < InstanceContext
188
182
  ##
189
183
  # Initialize the CredentialContext
@@ -269,8 +263,6 @@ module Twilio
269
263
  end
270
264
  end
271
265
 
272
- ##
273
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
274
266
  class CredentialInstance < InstanceResource
275
267
  ##
276
268
  # Initialize the CredentialInstance
@@ -317,7 +309,7 @@ module Twilio
317
309
  end
318
310
 
319
311
  ##
320
- # @return [String] The unique id of the Account responsible for this credential.
312
+ # @return [String] The unique ID of the Account responsible for this credential.
321
313
  def account_sid
322
314
  @properties['account_sid']
323
315
  end
@@ -10,8 +10,6 @@ module Twilio
10
10
  module REST
11
11
  class Conversations < Domain
12
12
  class V1 < Version
13
- ##
14
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
15
13
  class RoleList < ListResource
16
14
  ##
17
15
  # Initialize the RoleList
@@ -30,7 +28,9 @@ module Twilio
30
28
  # @param [String] friendly_name A descriptive string that you create to describe
31
29
  # the new resource. It can be up to 64 characters long.
32
30
  # @param [role.RoleType] type The type of role. Can be: `conversation` for
33
- # [Conversation](https://www.twilio.com/docs/conversations/api/conversation-resource) roles or `service` for [Service](https://www.twilio.com/docs/chat/rest/service-resource) roles.
31
+ # {Conversation}[https://www.twilio.com/docs/conversations/api/conversation-resource]
32
+ # roles or `service` for {Conversation
33
+ # Service}[https://www.twilio.com/docs/conversations/api/service-resource] roles.
34
34
  # @param [String] permission A permission that you grant to the new role. Only one
35
35
  # permission can be granted per parameter. To assign more than one permission,
36
36
  # repeat this parameter for each permission value. The values for this parameter
@@ -135,8 +135,6 @@ module Twilio
135
135
  end
136
136
  end
137
137
 
138
- ##
139
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
140
138
  class RolePage < Page
141
139
  ##
142
140
  # Initialize the RolePage
@@ -166,8 +164,6 @@ module Twilio
166
164
  end
167
165
  end
168
166
 
169
- ##
170
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
171
167
  class RoleContext < InstanceContext
172
168
  ##
173
169
  # Initialize the RoleContext
@@ -230,8 +226,6 @@ module Twilio
230
226
  end
231
227
  end
232
228
 
233
- ##
234
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
235
229
  class RoleInstance < InstanceResource
236
230
  ##
237
231
  # Initialize the RoleInstance
@@ -284,7 +278,7 @@ module Twilio
284
278
  end
285
279
 
286
280
  ##
287
- # @return [String] The SID of the Service that the resource is associated with
281
+ # @return [String] The SID of the Conversation Service that the resource is associated with
288
282
  def chat_service_sid
289
283
  @properties['chat_service_sid']
290
284
  end
@@ -320,7 +314,7 @@ module Twilio
320
314
  end
321
315
 
322
316
  ##
323
- # @return [String] The absolute URL of the Role resource
317
+ # @return [String] An absolute URL for this user role.
324
318
  def url
325
319
  @properties['url']
326
320
  end
@@ -10,8 +10,6 @@ module Twilio
10
10
  module REST
11
11
  class Conversations < Domain
12
12
  class V1 < Version
13
- ##
14
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
15
13
  class ServiceList < ListResource
16
14
  ##
17
15
  # Initialize the ServiceList
@@ -125,8 +123,6 @@ module Twilio
125
123
  end
126
124
  end
127
125
 
128
- ##
129
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
130
126
  class ServicePage < Page
131
127
  ##
132
128
  # Initialize the ServicePage
@@ -156,8 +152,6 @@ module Twilio
156
152
  end
157
153
  end
158
154
 
159
- ##
160
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
161
155
  class ServiceContext < InstanceContext
162
156
  ##
163
157
  # Initialize the ServiceContext
@@ -291,8 +285,6 @@ module Twilio
291
285
  end
292
286
  end
293
287
 
294
- ##
295
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
296
288
  class ServiceInstance < InstanceResource
297
289
  ##
298
290
  # Initialize the ServiceInstance
@@ -332,7 +324,7 @@ module Twilio
332
324
  end
333
325
 
334
326
  ##
335
- # @return [String] The unique id of the Account responsible for this service.
327
+ # @return [String] The unique ID of the Account responsible for this service.
336
328
  def account_sid
337
329
  @properties['account_sid']
338
330
  end
@@ -368,7 +360,7 @@ module Twilio
368
360
  end
369
361
 
370
362
  ##
371
- # @return [String] Absolute URLs to access the Conversations, Users, Roles and Bindings of this Service.
363
+ # @return [String] Absolute URLs to access the conversations, users, roles, bindings and configuration of this service.
372
364
  def links
373
365
  @properties['links']
374
366
  end
@@ -11,15 +11,13 @@ module Twilio
11
11
  class Conversations < Domain
12
12
  class V1 < Version
13
13
  class ServiceContext < InstanceContext
14
- ##
15
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
16
14
  class BindingList < ListResource
17
15
  ##
18
16
  # Initialize the BindingList
19
17
  # @param [Version] version Version that contains the resource
20
- # @param [String] chat_service_sid The SID of the [Chat
21
- # Service](https://www.twilio.com/docs/chat/rest/service-resource) the Binding
22
- # resource is associated with.
18
+ # @param [String] chat_service_sid The SID of the {Conversation
19
+ # Service}[https://www.twilio.com/docs/conversations/api/service-resource] the
20
+ # Binding resource is associated with.
23
21
  # @return [BindingList] BindingList
24
22
  def initialize(version, chat_service_sid: nil)
25
23
  super(version)
@@ -34,14 +32,15 @@ module Twilio
34
32
  # Unlike stream(), this operation is eager and will load `limit` records into
35
33
  # memory before returning.
36
34
  # @param [binding.BindingType] binding_type The push technology used by the
37
- # Binding resources to read. Can be: `apn`, `gcm`, or `fcm`. See [push
35
+ # Binding resources to read. Can be: `apn`, `gcm`, or `fcm`. See {push
38
36
  # notification
39
- # configuration](https://www.twilio.com/docs/chat/push-notification-configuration)
37
+ # configuration}[https://www.twilio.com/docs/chat/push-notification-configuration]
40
38
  # for more info.
41
- # @param [String] identity The
42
- # [User](https://www.twilio.com/docs/chat/rest/user-resource)'s `identity` value
43
- # of the resources to read. See [access
44
- # tokens](https://www.twilio.com/docs/chat/create-tokens) for more details.
39
+ # @param [String] identity The identity of a {Conversation
40
+ # User}[https://www.twilio.com/docs/conversations/api/user-resource] this binding
41
+ # belongs to. See {access
42
+ # tokens}[https://www.twilio.com/docs/conversations/create-tokens] for more
43
+ # details.
45
44
  # @param [Integer] limit Upper limit for the number of records to return. stream()
46
45
  # guarantees to never return more than limit. Default is no limit
47
46
  # @param [Integer] page_size Number of records to fetch per request, when
@@ -63,14 +62,15 @@ module Twilio
63
62
  # This operation lazily loads records as efficiently as possible until the limit
64
63
  # is reached.
65
64
  # @param [binding.BindingType] binding_type The push technology used by the
66
- # Binding resources to read. Can be: `apn`, `gcm`, or `fcm`. See [push
65
+ # Binding resources to read. Can be: `apn`, `gcm`, or `fcm`. See {push
67
66
  # notification
68
- # configuration](https://www.twilio.com/docs/chat/push-notification-configuration)
67
+ # configuration}[https://www.twilio.com/docs/chat/push-notification-configuration]
69
68
  # for more info.
70
- # @param [String] identity The
71
- # [User](https://www.twilio.com/docs/chat/rest/user-resource)'s `identity` value
72
- # of the resources to read. See [access
73
- # tokens](https://www.twilio.com/docs/chat/create-tokens) for more details.
69
+ # @param [String] identity The identity of a {Conversation
70
+ # User}[https://www.twilio.com/docs/conversations/api/user-resource] this binding
71
+ # belongs to. See {access
72
+ # tokens}[https://www.twilio.com/docs/conversations/create-tokens] for more
73
+ # details.
74
74
  # @param [Integer] limit Upper limit for the number of records to return. stream()
75
75
  # guarantees to never return more than limit. Default is no limit.
76
76
  # @param [Integer] page_size Number of records to fetch per request, when
@@ -104,14 +104,15 @@ module Twilio
104
104
  # Retrieve a single page of BindingInstance records from the API.
105
105
  # Request is executed immediately.
106
106
  # @param [binding.BindingType] binding_type The push technology used by the
107
- # Binding resources to read. Can be: `apn`, `gcm`, or `fcm`. See [push
107
+ # Binding resources to read. Can be: `apn`, `gcm`, or `fcm`. See {push
108
108
  # notification
109
- # configuration](https://www.twilio.com/docs/chat/push-notification-configuration)
109
+ # configuration}[https://www.twilio.com/docs/chat/push-notification-configuration]
110
110
  # for more info.
111
- # @param [String] identity The
112
- # [User](https://www.twilio.com/docs/chat/rest/user-resource)'s `identity` value
113
- # of the resources to read. See [access
114
- # tokens](https://www.twilio.com/docs/chat/create-tokens) for more details.
111
+ # @param [String] identity The identity of a {Conversation
112
+ # User}[https://www.twilio.com/docs/conversations/api/user-resource] this binding
113
+ # belongs to. See {access
114
+ # tokens}[https://www.twilio.com/docs/conversations/create-tokens] for more
115
+ # details.
115
116
  # @param [String] page_token PageToken provided by the API
116
117
  # @param [Integer] page_number Page Number, this value is simply for client state
117
118
  # @param [Integer] page_size Number of records to return, defaults to 50
@@ -150,8 +151,6 @@ module Twilio
150
151
  end
151
152
  end
152
153
 
153
- ##
154
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
155
154
  class BindingPage < Page
156
155
  ##
157
156
  # Initialize the BindingPage
@@ -181,15 +180,13 @@ module Twilio
181
180
  end
182
181
  end
183
182
 
184
- ##
185
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
186
183
  class BindingContext < InstanceContext
187
184
  ##
188
185
  # Initialize the BindingContext
189
186
  # @param [Version] version Version that contains the resource
190
- # @param [String] chat_service_sid The SID of the [Chat
191
- # Service](https://www.twilio.com/docs/chat/rest/service-resource) the Binding
192
- # resource is associated with.
187
+ # @param [String] chat_service_sid The SID of the {Conversation
188
+ # Service}[https://www.twilio.com/docs/conversations/api/service-resource] the
189
+ # Binding resource is associated with.
193
190
  # @param [String] sid A 34 character string that uniquely identifies this
194
191
  # resource.
195
192
  # @return [BindingContext] BindingContext
@@ -237,16 +234,14 @@ module Twilio
237
234
  end
238
235
  end
239
236
 
240
- ##
241
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
242
237
  class BindingInstance < InstanceResource
243
238
  ##
244
239
  # Initialize the BindingInstance
245
240
  # @param [Version] version Version that contains the resource
246
241
  # @param [Hash] payload payload that contains response from Twilio
247
- # @param [String] chat_service_sid The SID of the [Chat
248
- # Service](https://www.twilio.com/docs/chat/rest/service-resource) the Binding
249
- # resource is associated with.
242
+ # @param [String] chat_service_sid The SID of the {Conversation
243
+ # Service}[https://www.twilio.com/docs/conversations/api/service-resource] the
244
+ # Binding resource is associated with.
250
245
  # @param [String] sid A 34 character string that uniquely identifies this
251
246
  # resource.
252
247
  # @return [BindingInstance] BindingInstance
@@ -291,13 +286,13 @@ module Twilio
291
286
  end
292
287
 
293
288
  ##
294
- # @return [String] The unique id of the Account responsible for this binding.
289
+ # @return [String] The unique ID of the Account responsible for this binding.
295
290
  def account_sid
296
291
  @properties['account_sid']
297
292
  end
298
293
 
299
294
  ##
300
- # @return [String] The SID of the Chat Service that the resource is associated with.
295
+ # @return [String] The SID of the Conversation Service that the resource is associated with.
301
296
  def chat_service_sid
302
297
  @properties['chat_service_sid']
303
298
  end
@@ -327,7 +322,7 @@ module Twilio
327
322
  end
328
323
 
329
324
  ##
330
- # @return [String] The string that identifies the resource's User.
325
+ # @return [String] The identity of Conversation User associated with this binding.
331
326
  def identity
332
327
  @properties['identity']
333
328
  end
@@ -339,7 +334,7 @@ module Twilio
339
334
  end
340
335
 
341
336
  ##
342
- # @return [String] The Chat message types the binding is subscribed to.
337
+ # @return [String] The Conversation message types the binding is subscribed to.
343
338
  def message_types
344
339
  @properties['message_types']
345
340
  end
@@ -11,8 +11,6 @@ module Twilio
11
11
  class Conversations < Domain
12
12
  class V1 < Version
13
13
  class ServiceContext < InstanceContext
14
- ##
15
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
16
14
  class ConfigurationList < ListResource
17
15
  ##
18
16
  # Initialize the ConfigurationList
@@ -34,8 +32,6 @@ module Twilio
34
32
  end
35
33
  end
36
34
 
37
- ##
38
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
39
35
  class ConfigurationPage < Page
40
36
  ##
41
37
  # Initialize the ConfigurationPage
@@ -65,8 +61,6 @@ module Twilio
65
61
  end
66
62
  end
67
63
 
68
- ##
69
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
70
64
  class ConfigurationContext < InstanceContext
71
65
  ##
72
66
  # Initialize the ConfigurationContext
@@ -80,6 +74,9 @@ module Twilio
80
74
  # Path Solution
81
75
  @solution = {chat_service_sid: chat_service_sid, }
82
76
  @uri = "/Services/#{@solution[:chat_service_sid]}/Configuration"
77
+
78
+ # Components
79
+ @notifications = nil
83
80
  end
84
81
 
85
82
  ##
@@ -93,17 +90,18 @@ module Twilio
93
90
 
94
91
  ##
95
92
  # Update the ConfigurationInstance
96
- # @param [String] default_conversation_creator_role_sid The role assigned to a
97
- # conversation creator when they join a new conversation. See the [Role
98
- # resource](https://www.twilio.com/docs/chat/rest/role-resource) for more info
93
+ # @param [String] default_conversation_creator_role_sid The conversation-level
94
+ # role assigned to a conversation creator when they join a new conversation. See
95
+ # the {Conversation
96
+ # Role}[https://www.twilio.com/docs/conversations/api/role-resource] for more info
99
97
  # about roles.
100
- # @param [String] default_conversation_role_sid The role assigned to users when
101
- # they are added to a conversation. See the [Role
102
- # resource](https://www.twilio.com/docs/chat/rest/role-resource) for more info
98
+ # @param [String] default_conversation_role_sid The conversation-level role
99
+ # assigned to users when they are added to a conversation. See the {Conversation
100
+ # Role}[https://www.twilio.com/docs/conversations/api/role-resource] for more info
103
101
  # about roles.
104
- # @param [String] default_chat_service_role_sid The service role assigned to users
105
- # when they are added to the service. See the [Role
106
- # resource](https://www.twilio.com/docs/chat/rest/role-resource) for more info
102
+ # @param [String] default_chat_service_role_sid The service-level role assigned to
103
+ # users when they are added to the service. See the {Conversation
104
+ # Role}[https://www.twilio.com/docs/conversations/api/role-resource] for more info
107
105
  # about roles.
108
106
  # @return [ConfigurationInstance] Updated ConfigurationInstance
109
107
  def update(default_conversation_creator_role_sid: :unset, default_conversation_role_sid: :unset, default_chat_service_role_sid: :unset)
@@ -118,6 +116,13 @@ module Twilio
118
116
  ConfigurationInstance.new(@version, payload, chat_service_sid: @solution[:chat_service_sid], )
119
117
  end
120
118
 
119
+ ##
120
+ # Access the notifications
121
+ # @return [NotificationContext] NotificationContext
122
+ def notifications
123
+ return NotificationContext.new(@version, @solution[:chat_service_sid], )
124
+ end
125
+
121
126
  ##
122
127
  # Provide a user friendly representation
123
128
  def to_s
@@ -133,8 +138,6 @@ module Twilio
133
138
  end
134
139
  end
135
140
 
136
- ##
137
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
138
141
  class ConfigurationInstance < InstanceResource
139
142
  ##
140
143
  # Initialize the ConfigurationInstance
@@ -197,13 +200,13 @@ module Twilio
197
200
  end
198
201
 
199
202
  ##
200
- # @return [String] The absolute URL of the Service configuration resource
203
+ # @return [String] An absolute URL for this service configuration.
201
204
  def url
202
205
  @properties['url']
203
206
  end
204
207
 
205
208
  ##
206
- # @return [String] Absolute URL to access the Push Notifications configuration of this Service.
209
+ # @return [String] Absolute URL to access the push notifications configuration of this service.
207
210
  def links
208
211
  @properties['links']
209
212
  end
@@ -217,17 +220,18 @@ module Twilio
217
220
 
218
221
  ##
219
222
  # Update the ConfigurationInstance
220
- # @param [String] default_conversation_creator_role_sid The role assigned to a
221
- # conversation creator when they join a new conversation. See the [Role
222
- # resource](https://www.twilio.com/docs/chat/rest/role-resource) for more info
223
+ # @param [String] default_conversation_creator_role_sid The conversation-level
224
+ # role assigned to a conversation creator when they join a new conversation. See
225
+ # the {Conversation
226
+ # Role}[https://www.twilio.com/docs/conversations/api/role-resource] for more info
223
227
  # about roles.
224
- # @param [String] default_conversation_role_sid The role assigned to users when
225
- # they are added to a conversation. See the [Role
226
- # resource](https://www.twilio.com/docs/chat/rest/role-resource) for more info
228
+ # @param [String] default_conversation_role_sid The conversation-level role
229
+ # assigned to users when they are added to a conversation. See the {Conversation
230
+ # Role}[https://www.twilio.com/docs/conversations/api/role-resource] for more info
227
231
  # about roles.
228
- # @param [String] default_chat_service_role_sid The service role assigned to users
229
- # when they are added to the service. See the [Role
230
- # resource](https://www.twilio.com/docs/chat/rest/role-resource) for more info
232
+ # @param [String] default_chat_service_role_sid The service-level role assigned to
233
+ # users when they are added to the service. See the {Conversation
234
+ # Role}[https://www.twilio.com/docs/conversations/api/role-resource] for more info
231
235
  # about roles.
232
236
  # @return [ConfigurationInstance] Updated ConfigurationInstance
233
237
  def update(default_conversation_creator_role_sid: :unset, default_conversation_role_sid: :unset, default_chat_service_role_sid: :unset)
@@ -0,0 +1,307 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ module Twilio
10
+ module REST
11
+ class Conversations < Domain
12
+ class V1 < Version
13
+ class ServiceContext < InstanceContext
14
+ class ConfigurationContext < InstanceContext
15
+ class NotificationList < ListResource
16
+ ##
17
+ # Initialize the NotificationList
18
+ # @param [Version] version Version that contains the resource
19
+ # @param [String] chat_service_sid The unique string that we created to identify
20
+ # the Service configuration resource.
21
+ # @return [NotificationList] NotificationList
22
+ def initialize(version, chat_service_sid: nil)
23
+ super(version)
24
+
25
+ # Path Solution
26
+ @solution = {chat_service_sid: chat_service_sid}
27
+ end
28
+
29
+ ##
30
+ # Provide a user friendly representation
31
+ def to_s
32
+ '#<Twilio.Conversations.V1.NotificationList>'
33
+ end
34
+ end
35
+
36
+ class NotificationPage < Page
37
+ ##
38
+ # Initialize the NotificationPage
39
+ # @param [Version] version Version that contains the resource
40
+ # @param [Response] response Response from the API
41
+ # @param [Hash] solution Path solution for the resource
42
+ # @return [NotificationPage] NotificationPage
43
+ def initialize(version, response, solution)
44
+ super(version, response)
45
+
46
+ # Path Solution
47
+ @solution = solution
48
+ end
49
+
50
+ ##
51
+ # Build an instance of NotificationInstance
52
+ # @param [Hash] payload Payload response from the API
53
+ # @return [NotificationInstance] NotificationInstance
54
+ def get_instance(payload)
55
+ NotificationInstance.new(@version, payload, chat_service_sid: @solution[:chat_service_sid], )
56
+ end
57
+
58
+ ##
59
+ # Provide a user friendly representation
60
+ def to_s
61
+ '<Twilio.Conversations.V1.NotificationPage>'
62
+ end
63
+ end
64
+
65
+ class NotificationContext < InstanceContext
66
+ ##
67
+ # Initialize the NotificationContext
68
+ # @param [Version] version Version that contains the resource
69
+ # @param [String] chat_service_sid The SID of the {Conversation
70
+ # Service}[https://www.twilio.com/docs/conversations/api/service-resource] the
71
+ # Configuration applies to.
72
+ # @return [NotificationContext] NotificationContext
73
+ def initialize(version, chat_service_sid)
74
+ super(version)
75
+
76
+ # Path Solution
77
+ @solution = {chat_service_sid: chat_service_sid, }
78
+ @uri = "/Services/#{@solution[:chat_service_sid]}/Configuration/Notifications"
79
+ end
80
+
81
+ ##
82
+ # Update the NotificationInstance
83
+ # @param [Boolean] log_enabled Weather the notification logging is enabled.
84
+ # @param [Boolean] new_message_enabled Whether to send a notification when a new
85
+ # message is added to a conversation. The default is `false`.
86
+ # @param [String] new_message_template The template to use to create the
87
+ # notification text displayed when a new message is added to a conversation and
88
+ # `new_message.enabled` is `true`.
89
+ # @param [String] new_message_sound The name of the sound to play when a new
90
+ # message is added to a conversation and `new_message.enabled` is `true`.
91
+ # @param [Boolean] new_message_badge_count_enabled Whether the new message badge
92
+ # is enabled. The default is `false`.
93
+ # @param [Boolean] added_to_conversation_enabled Whether to send a notification
94
+ # when a participant is added to a conversation. The default is `false`.
95
+ # @param [String] added_to_conversation_template The template to use to create the
96
+ # notification text displayed when a participant is added to a conversation and
97
+ # `added_to_conversation.enabled` is `true`.
98
+ # @param [String] added_to_conversation_sound The name of the sound to play when a
99
+ # participant is added to a conversation and `added_to_conversation.enabled` is
100
+ # `true`.
101
+ # @param [Boolean] removed_from_conversation_enabled Whether to send a
102
+ # notification to a user when they are removed from a conversation. The default is
103
+ # `false`.
104
+ # @param [String] removed_from_conversation_template The template to use to create
105
+ # the notification text displayed to a user when they are removed from a
106
+ # conversation and `removed_from_conversation.enabled` is `true`.
107
+ # @param [String] removed_from_conversation_sound The name of the sound to play to
108
+ # a user when they are removed from a conversation and
109
+ # `removed_from_conversation.enabled` is `true`.
110
+ # @return [NotificationInstance] Updated NotificationInstance
111
+ def update(log_enabled: :unset, new_message_enabled: :unset, new_message_template: :unset, new_message_sound: :unset, new_message_badge_count_enabled: :unset, added_to_conversation_enabled: :unset, added_to_conversation_template: :unset, added_to_conversation_sound: :unset, removed_from_conversation_enabled: :unset, removed_from_conversation_template: :unset, removed_from_conversation_sound: :unset)
112
+ data = Twilio::Values.of({
113
+ 'LogEnabled' => log_enabled,
114
+ 'NewMessage.Enabled' => new_message_enabled,
115
+ 'NewMessage.Template' => new_message_template,
116
+ 'NewMessage.Sound' => new_message_sound,
117
+ 'NewMessage.BadgeCountEnabled' => new_message_badge_count_enabled,
118
+ 'AddedToConversation.Enabled' => added_to_conversation_enabled,
119
+ 'AddedToConversation.Template' => added_to_conversation_template,
120
+ 'AddedToConversation.Sound' => added_to_conversation_sound,
121
+ 'RemovedFromConversation.Enabled' => removed_from_conversation_enabled,
122
+ 'RemovedFromConversation.Template' => removed_from_conversation_template,
123
+ 'RemovedFromConversation.Sound' => removed_from_conversation_sound,
124
+ })
125
+
126
+ payload = @version.update('POST', @uri, data: data)
127
+
128
+ NotificationInstance.new(@version, payload, chat_service_sid: @solution[:chat_service_sid], )
129
+ end
130
+
131
+ ##
132
+ # Fetch the NotificationInstance
133
+ # @return [NotificationInstance] Fetched NotificationInstance
134
+ def fetch
135
+ payload = @version.fetch('GET', @uri)
136
+
137
+ NotificationInstance.new(@version, payload, chat_service_sid: @solution[:chat_service_sid], )
138
+ end
139
+
140
+ ##
141
+ # Provide a user friendly representation
142
+ def to_s
143
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
144
+ "#<Twilio.Conversations.V1.NotificationContext #{context}>"
145
+ end
146
+
147
+ ##
148
+ # Provide a detailed, user friendly representation
149
+ def inspect
150
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
151
+ "#<Twilio.Conversations.V1.NotificationContext #{context}>"
152
+ end
153
+ end
154
+
155
+ class NotificationInstance < InstanceResource
156
+ ##
157
+ # Initialize the NotificationInstance
158
+ # @param [Version] version Version that contains the resource
159
+ # @param [Hash] payload payload that contains response from Twilio
160
+ # @param [String] chat_service_sid The unique string that we created to identify
161
+ # the Service configuration resource.
162
+ # @return [NotificationInstance] NotificationInstance
163
+ def initialize(version, payload, chat_service_sid: nil)
164
+ super(version)
165
+
166
+ # Marshaled Properties
167
+ @properties = {
168
+ 'account_sid' => payload['account_sid'],
169
+ 'chat_service_sid' => payload['chat_service_sid'],
170
+ 'new_message' => payload['new_message'],
171
+ 'added_to_conversation' => payload['added_to_conversation'],
172
+ 'removed_from_conversation' => payload['removed_from_conversation'],
173
+ 'log_enabled' => payload['log_enabled'],
174
+ 'url' => payload['url'],
175
+ }
176
+
177
+ # Context
178
+ @instance_context = nil
179
+ @params = {'chat_service_sid' => chat_service_sid, }
180
+ end
181
+
182
+ ##
183
+ # Generate an instance context for the instance, the context is capable of
184
+ # performing various actions. All instance actions are proxied to the context
185
+ # @return [NotificationContext] NotificationContext for this NotificationInstance
186
+ def context
187
+ unless @instance_context
188
+ @instance_context = NotificationContext.new(@version, @params['chat_service_sid'], )
189
+ end
190
+ @instance_context
191
+ end
192
+
193
+ ##
194
+ # @return [String] The unique ID of the Account responsible for this configuration.
195
+ def account_sid
196
+ @properties['account_sid']
197
+ end
198
+
199
+ ##
200
+ # @return [String] The SID of the Conversation Service that the Configuration applies to.
201
+ def chat_service_sid
202
+ @properties['chat_service_sid']
203
+ end
204
+
205
+ ##
206
+ # @return [Hash] The Push Notification configuration for New Messages.
207
+ def new_message
208
+ @properties['new_message']
209
+ end
210
+
211
+ ##
212
+ # @return [Hash] The Push Notification configuration for being added to a Conversation.
213
+ def added_to_conversation
214
+ @properties['added_to_conversation']
215
+ end
216
+
217
+ ##
218
+ # @return [Hash] The Push Notification configuration for being removed from a Conversation.
219
+ def removed_from_conversation
220
+ @properties['removed_from_conversation']
221
+ end
222
+
223
+ ##
224
+ # @return [Boolean] Weather the notification logging is enabled.
225
+ def log_enabled
226
+ @properties['log_enabled']
227
+ end
228
+
229
+ ##
230
+ # @return [String] An absolute URL for this configuration.
231
+ def url
232
+ @properties['url']
233
+ end
234
+
235
+ ##
236
+ # Update the NotificationInstance
237
+ # @param [Boolean] log_enabled Weather the notification logging is enabled.
238
+ # @param [Boolean] new_message_enabled Whether to send a notification when a new
239
+ # message is added to a conversation. The default is `false`.
240
+ # @param [String] new_message_template The template to use to create the
241
+ # notification text displayed when a new message is added to a conversation and
242
+ # `new_message.enabled` is `true`.
243
+ # @param [String] new_message_sound The name of the sound to play when a new
244
+ # message is added to a conversation and `new_message.enabled` is `true`.
245
+ # @param [Boolean] new_message_badge_count_enabled Whether the new message badge
246
+ # is enabled. The default is `false`.
247
+ # @param [Boolean] added_to_conversation_enabled Whether to send a notification
248
+ # when a participant is added to a conversation. The default is `false`.
249
+ # @param [String] added_to_conversation_template The template to use to create the
250
+ # notification text displayed when a participant is added to a conversation and
251
+ # `added_to_conversation.enabled` is `true`.
252
+ # @param [String] added_to_conversation_sound The name of the sound to play when a
253
+ # participant is added to a conversation and `added_to_conversation.enabled` is
254
+ # `true`.
255
+ # @param [Boolean] removed_from_conversation_enabled Whether to send a
256
+ # notification to a user when they are removed from a conversation. The default is
257
+ # `false`.
258
+ # @param [String] removed_from_conversation_template The template to use to create
259
+ # the notification text displayed to a user when they are removed from a
260
+ # conversation and `removed_from_conversation.enabled` is `true`.
261
+ # @param [String] removed_from_conversation_sound The name of the sound to play to
262
+ # a user when they are removed from a conversation and
263
+ # `removed_from_conversation.enabled` is `true`.
264
+ # @return [NotificationInstance] Updated NotificationInstance
265
+ def update(log_enabled: :unset, new_message_enabled: :unset, new_message_template: :unset, new_message_sound: :unset, new_message_badge_count_enabled: :unset, added_to_conversation_enabled: :unset, added_to_conversation_template: :unset, added_to_conversation_sound: :unset, removed_from_conversation_enabled: :unset, removed_from_conversation_template: :unset, removed_from_conversation_sound: :unset)
266
+ context.update(
267
+ log_enabled: log_enabled,
268
+ new_message_enabled: new_message_enabled,
269
+ new_message_template: new_message_template,
270
+ new_message_sound: new_message_sound,
271
+ new_message_badge_count_enabled: new_message_badge_count_enabled,
272
+ added_to_conversation_enabled: added_to_conversation_enabled,
273
+ added_to_conversation_template: added_to_conversation_template,
274
+ added_to_conversation_sound: added_to_conversation_sound,
275
+ removed_from_conversation_enabled: removed_from_conversation_enabled,
276
+ removed_from_conversation_template: removed_from_conversation_template,
277
+ removed_from_conversation_sound: removed_from_conversation_sound,
278
+ )
279
+ end
280
+
281
+ ##
282
+ # Fetch the NotificationInstance
283
+ # @return [NotificationInstance] Fetched NotificationInstance
284
+ def fetch
285
+ context.fetch
286
+ end
287
+
288
+ ##
289
+ # Provide a user friendly representation
290
+ def to_s
291
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
292
+ "<Twilio.Conversations.V1.NotificationInstance #{values}>"
293
+ end
294
+
295
+ ##
296
+ # Provide a detailed, user friendly representation
297
+ def inspect
298
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
299
+ "<Twilio.Conversations.V1.NotificationInstance #{values}>"
300
+ end
301
+ end
302
+ end
303
+ end
304
+ end
305
+ end
306
+ end
307
+ end