twilio-ruby 5.19.0 → 5.74.2

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 (906) hide show
  1. checksums.yaml +5 -5
  2. data/.dockerignore +1 -0
  3. data/.github/workflows/pr-lint.yml +21 -0
  4. data/.github/workflows/test-and-deploy.yml +129 -0
  5. data/.gitignore +8 -1
  6. data/.rubocop.yml +22 -6
  7. data/.rubocop_todo.yml +147 -73
  8. data/CHANGES.md +2126 -0
  9. data/CODE_OF_CONDUCT.md +73 -0
  10. data/CONTRIBUTING.md +4 -2
  11. data/Dockerfile +2 -2
  12. data/Gemfile +1 -9
  13. data/ISSUE_TEMPLATE.md +17 -13
  14. data/{LICENSE.md → LICENSE} +2 -2
  15. data/Makefile +16 -24
  16. data/PULL_REQUEST_TEMPLATE.md +30 -3
  17. data/README.md +119 -54
  18. data/Rakefile +0 -54
  19. data/VERSIONS.md +9 -10
  20. data/examples/examples.rb +1 -1
  21. data/githooks/pre-commit +0 -0
  22. data/lib/rack/twilio_webhook_authentication.rb +25 -1
  23. data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +1 -1
  24. data/lib/twilio-ruby/framework/{error.rb → rest/error.rb} +3 -3
  25. data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  26. data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
  27. data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +0 -0
  28. data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +0 -0
  29. data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +7 -11
  30. data/lib/twilio-ruby/http/http_client.rb +34 -15
  31. data/lib/twilio-ruby/http.rb +5 -0
  32. data/lib/twilio-ruby/jwt/access_token.rb +20 -2
  33. data/lib/twilio-ruby/jwt/jwt.rb +6 -0
  34. data/lib/twilio-ruby/jwt/task_router.rb +2 -2
  35. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +186 -0
  36. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +44 -53
  37. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +44 -52
  38. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +5 -5
  39. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +200 -0
  40. data/lib/twilio-ruby/rest/accounts/v1.rb +15 -1
  41. data/lib/twilio-ruby/rest/accounts.rb +13 -1
  42. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +40 -38
  43. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +133 -123
  44. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +182 -182
  45. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +35 -32
  46. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +171 -180
  47. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +189 -87
  48. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +168 -174
  49. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +189 -87
  50. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +189 -87
  51. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +168 -174
  52. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +189 -87
  53. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +28 -23
  54. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +3 -9
  55. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +201 -0
  56. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +59 -66
  57. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +32 -36
  58. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +72 -67
  59. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +375 -0
  60. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +76 -73
  61. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +674 -0
  62. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +674 -0
  63. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +160 -0
  64. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +251 -0
  65. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +404 -188
  66. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +374 -201
  67. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +58 -63
  68. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +38 -29
  69. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +80 -71
  70. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +48 -41
  71. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +53 -54
  72. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +179 -127
  73. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +178 -127
  74. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +178 -127
  75. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +314 -292
  76. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +35 -36
  77. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +25 -20
  78. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +35 -36
  79. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +234 -209
  80. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +11 -15
  81. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +11 -15
  82. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +47 -55
  83. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +56 -61
  84. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +43 -40
  85. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +57 -67
  86. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +55 -48
  87. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +48 -42
  88. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +55 -42
  89. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +103 -72
  90. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +18 -23
  91. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +20 -25
  92. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +28 -38
  93. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +23 -33
  94. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +48 -51
  95. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +48 -51
  96. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +15 -15
  97. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +48 -51
  98. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +13 -13
  99. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +11 -11
  100. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +34 -40
  101. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +33 -39
  102. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +175 -105
  103. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +29 -39
  104. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +27 -37
  105. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +3 -2
  106. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +16 -19
  107. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +44 -41
  108. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +71 -51
  109. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +71 -51
  110. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +71 -54
  111. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +71 -51
  112. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +71 -51
  113. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +71 -51
  114. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +71 -51
  115. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +71 -51
  116. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +68 -54
  117. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +107 -114
  118. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +3 -2
  119. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +40 -45
  120. data/lib/twilio-ruby/rest/api/v2010/account.rb +18 -28
  121. data/lib/twilio-ruby/rest/api/v2010.rb +6 -5
  122. data/lib/twilio-ruby/rest/api.rb +26 -22
  123. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +29 -24
  124. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +29 -20
  125. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +65 -60
  126. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +60 -61
  127. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +60 -60
  128. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +111 -93
  129. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +27 -24
  130. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +60 -53
  131. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +89 -86
  132. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +41 -32
  133. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +37 -30
  134. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +76 -76
  135. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +420 -0
  136. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +132 -102
  137. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +194 -0
  138. data/lib/twilio-ruby/rest/autopilot/v1.rb +15 -7
  139. data/lib/twilio-ruby/rest/autopilot.rb +8 -2
  140. data/lib/twilio-ruby/rest/{preview/bulk_exports → bulkexports/v1}/export/day.rb +100 -25
  141. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +286 -0
  142. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +255 -0
  143. data/lib/twilio-ruby/rest/{preview/bulk_exports → bulkexports/v1}/export.rb +72 -32
  144. data/lib/twilio-ruby/rest/{preview/bulk_exports → bulkexports/v1}/export_configuration.rb +42 -43
  145. data/lib/twilio-ruby/rest/bulkexports/v1.rb +62 -0
  146. data/lib/twilio-ruby/rest/bulkexports.rb +56 -0
  147. data/lib/twilio-ruby/rest/chat/v1/credential.rb +91 -80
  148. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +74 -68
  149. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +94 -97
  150. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +82 -74
  151. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +84 -76
  152. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +62 -62
  153. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +20 -18
  154. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +75 -82
  155. data/lib/twilio-ruby/rest/chat/v1/service.rb +340 -359
  156. data/lib/twilio-ruby/rest/chat/v1.rb +15 -11
  157. data/lib/twilio-ruby/rest/chat/v2/credential.rb +77 -84
  158. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +66 -56
  159. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +72 -74
  160. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +162 -154
  161. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +144 -136
  162. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +115 -69
  163. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +136 -119
  164. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +64 -59
  165. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +72 -67
  166. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +101 -53
  167. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +94 -89
  168. data/lib/twilio-ruby/rest/chat/v2/service.rb +228 -189
  169. data/lib/twilio-ruby/rest/chat/v2.rb +13 -11
  170. data/lib/twilio-ruby/rest/chat/v3/channel.rb +275 -0
  171. data/lib/twilio-ruby/rest/chat/v3.rb +48 -0
  172. data/lib/twilio-ruby/rest/chat.rb +19 -3
  173. data/lib/twilio-ruby/rest/client.rb +218 -75
  174. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +195 -0
  175. data/lib/twilio-ruby/rest/{preview/acc_security/service.rb → content/v1/content.rb} +107 -149
  176. data/lib/twilio-ruby/rest/content/v1.rb +45 -0
  177. data/lib/twilio-ruby/rest/content.rb +47 -0
  178. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +454 -0
  179. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -0
  180. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +260 -0
  181. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +355 -0
  182. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +517 -0
  183. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +502 -0
  184. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +410 -0
  185. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +562 -0
  186. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +419 -0
  187. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +312 -0
  188. data/lib/twilio-ruby/rest/conversations/v1/role.rb +366 -0
  189. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +380 -0
  190. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +323 -0
  191. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +269 -0
  192. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +286 -0
  193. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +386 -0
  194. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +563 -0
  195. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +541 -0
  196. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +449 -0
  197. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +595 -0
  198. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +324 -0
  199. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +387 -0
  200. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +466 -0
  201. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +481 -0
  202. data/lib/twilio-ruby/rest/{authy → conversations}/v1/service.rb +171 -92
  203. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +442 -0
  204. data/lib/twilio-ruby/rest/conversations/v1/user.rb +451 -0
  205. data/lib/twilio-ruby/rest/conversations/v1.rb +143 -0
  206. data/lib/twilio-ruby/rest/conversations.rb +104 -0
  207. data/lib/twilio-ruby/rest/events/v1/event_type.rb +298 -0
  208. data/lib/twilio-ruby/rest/{fax/v1/fax/fax_media.rb → events/v1/schema/version.rb} +85 -110
  209. data/lib/twilio-ruby/rest/events/v1/schema.rb +226 -0
  210. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +115 -0
  211. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +119 -0
  212. data/lib/twilio-ruby/rest/events/v1/sink.rb +418 -0
  213. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +346 -0
  214. data/lib/twilio-ruby/rest/events/v1/subscription.rb +397 -0
  215. data/lib/twilio-ruby/rest/events/v1.rb +94 -0
  216. data/lib/twilio-ruby/rest/events.rb +72 -0
  217. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +156 -0
  218. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +340 -0
  219. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +504 -0
  220. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +580 -0
  221. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +229 -0
  222. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +288 -0
  223. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +190 -0
  224. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answersets.rb +144 -0
  225. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +130 -0
  226. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +166 -0
  227. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +236 -0
  228. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +330 -0
  229. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +405 -0
  230. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +233 -0
  231. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +341 -0
  232. data/lib/twilio-ruby/rest/flex_api/v1.rb +166 -0
  233. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +133 -0
  234. data/lib/twilio-ruby/rest/flex_api/v2.rb +35 -0
  235. data/lib/twilio-ruby/rest/flex_api.rb +139 -0
  236. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +258 -0
  237. data/lib/twilio-ruby/rest/frontline_api/v1.rb +45 -0
  238. data/lib/twilio-ruby/rest/frontline_api.rb +47 -0
  239. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +322 -0
  240. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +262 -0
  241. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +252 -0
  242. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +321 -0
  243. data/lib/twilio-ruby/rest/insights/v1/call.rb +244 -0
  244. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +441 -0
  245. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +474 -0
  246. data/lib/twilio-ruby/rest/insights/v1/conference.rb +512 -0
  247. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +378 -0
  248. data/lib/twilio-ruby/rest/insights/v1/room.rb +499 -0
  249. data/lib/twilio-ruby/rest/insights/v1/setting.rb +215 -0
  250. data/lib/twilio-ruby/rest/insights/v1.rb +58 -11
  251. data/lib/twilio-ruby/rest/insights.rb +34 -6
  252. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +47 -75
  253. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +40 -66
  254. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +47 -93
  255. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +42 -62
  256. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +52 -71
  257. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +39 -59
  258. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +6 -10
  259. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +48 -77
  260. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +71 -205
  261. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +15 -13
  262. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +50 -94
  263. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +39 -56
  264. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +40 -69
  265. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +86 -154
  266. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +88 -134
  267. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +29 -39
  268. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +87 -120
  269. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +39 -56
  270. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +38 -63
  271. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +67 -54
  272. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +69 -88
  273. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +80 -130
  274. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +15 -13
  275. data/lib/twilio-ruby/rest/ip_messaging.rb +7 -9
  276. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +63 -56
  277. data/lib/twilio-ruby/rest/lookups/v1.rb +9 -6
  278. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +336 -0
  279. data/lib/twilio-ruby/rest/lookups/v2.rb +45 -0
  280. data/lib/twilio-ruby/rest/lookups.rb +11 -4
  281. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +397 -0
  282. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +399 -0
  283. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +221 -0
  284. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +403 -0
  285. data/lib/twilio-ruby/rest/media/v1.rb +76 -0
  286. data/lib/twilio-ruby/rest/media.rb +65 -0
  287. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +353 -0
  288. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +453 -0
  289. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +164 -0
  290. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +257 -0
  291. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +267 -0
  292. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +150 -0
  293. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +44 -46
  294. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +44 -44
  295. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +40 -48
  296. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +528 -0
  297. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +129 -0
  298. data/lib/twilio-ruby/rest/messaging/v1/service.rb +272 -128
  299. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +709 -0
  300. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +111 -0
  301. data/lib/twilio-ruby/rest/messaging/v1.rb +94 -6
  302. data/lib/twilio-ruby/rest/messaging.rb +55 -2
  303. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +305 -0
  304. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +339 -0
  305. data/lib/twilio-ruby/rest/microvisor/v1.rb +60 -0
  306. data/lib/twilio-ruby/rest/microvisor.rb +54 -0
  307. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +75 -88
  308. data/lib/twilio-ruby/rest/monitor/v1/event.rb +61 -65
  309. data/lib/twilio-ruby/rest/monitor/v1.rb +13 -11
  310. data/lib/twilio-ruby/rest/monitor.rb +5 -3
  311. data/lib/twilio-ruby/rest/notify/v1/credential.rb +82 -81
  312. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +100 -94
  313. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +127 -125
  314. data/lib/twilio-ruby/rest/notify/v1/service.rb +176 -142
  315. data/lib/twilio-ruby/rest/notify/v1.rb +15 -11
  316. data/lib/twilio-ruby/rest/notify.rb +5 -3
  317. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +268 -0
  318. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +309 -0
  319. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +320 -0
  320. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +188 -0
  321. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +614 -0
  322. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +358 -0
  323. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +273 -0
  324. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +314 -0
  325. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +378 -0
  326. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +273 -0
  327. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +189 -0
  328. data/lib/twilio-ruby/rest/numbers/v2.rb +35 -0
  329. data/lib/twilio-ruby/rest/numbers.rb +44 -0
  330. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +153 -0
  331. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +162 -0
  332. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +242 -0
  333. data/lib/twilio-ruby/rest/oauth/v1/token.rb +157 -0
  334. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +193 -0
  335. data/lib/twilio-ruby/rest/oauth/v1.rb +63 -0
  336. data/lib/twilio-ruby/rest/oauth.rb +68 -0
  337. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +23 -33
  338. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +23 -33
  339. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +23 -33
  340. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +23 -33
  341. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +23 -33
  342. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +6 -5
  343. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +17 -16
  344. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +46 -51
  345. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +34 -44
  346. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +11 -9
  347. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +28 -26
  348. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +23 -26
  349. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +32 -34
  350. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +50 -63
  351. data/lib/twilio-ruby/rest/preview/marketplace.rb +13 -13
  352. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +20 -25
  353. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +29 -36
  354. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +37 -40
  355. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +20 -25
  356. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +22 -28
  357. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +36 -39
  358. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +20 -25
  359. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +22 -28
  360. data/lib/twilio-ruby/rest/preview/sync/service.rb +23 -33
  361. data/lib/twilio-ruby/rest/preview/sync.rb +6 -5
  362. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +12 -15
  363. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +12 -15
  364. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +11 -10
  365. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +22 -28
  366. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +23 -33
  367. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +23 -33
  368. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +23 -33
  369. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +12 -15
  370. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +24 -30
  371. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +23 -33
  372. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +12 -15
  373. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +13 -12
  374. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +23 -33
  375. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +23 -33
  376. data/lib/twilio-ruby/rest/preview/understand.rb +6 -5
  377. data/lib/twilio-ruby/rest/preview/wireless/command.rb +17 -23
  378. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +26 -36
  379. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +11 -8
  380. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +15 -20
  381. data/lib/twilio-ruby/rest/preview/wireless.rb +16 -13
  382. data/lib/twilio-ruby/rest/preview.rb +6 -35
  383. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +26 -23
  384. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +4 -2
  385. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +26 -23
  386. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +4 -2
  387. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +26 -23
  388. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +20 -19
  389. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +5 -3
  390. data/lib/twilio-ruby/rest/pricing/v1.rb +1 -1
  391. data/lib/twilio-ruby/rest/pricing/v2/country.rb +280 -0
  392. data/lib/twilio-ruby/rest/pricing/v2/number.rb +225 -0
  393. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +26 -25
  394. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +35 -22
  395. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +11 -8
  396. data/lib/twilio-ruby/rest/pricing/v2.rb +38 -1
  397. data/lib/twilio-ruby/rest/pricing.rb +20 -1
  398. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +69 -68
  399. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +56 -55
  400. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +62 -61
  401. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +60 -62
  402. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +86 -96
  403. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +55 -56
  404. data/lib/twilio-ruby/rest/proxy/v1/service.rb +153 -119
  405. data/lib/twilio-ruby/rest/proxy/v1.rb +8 -6
  406. data/lib/twilio-ruby/rest/proxy.rb +3 -2
  407. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +235 -0
  408. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +231 -0
  409. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +235 -0
  410. data/lib/twilio-ruby/rest/routes/v2.rb +76 -0
  411. data/lib/twilio-ruby/rest/routes.rb +62 -0
  412. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +334 -0
  413. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +387 -0
  414. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +219 -0
  415. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +391 -0
  416. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +349 -0
  417. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +394 -0
  418. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +407 -0
  419. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +454 -0
  420. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +241 -0
  421. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +364 -0
  422. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +387 -0
  423. data/lib/twilio-ruby/rest/{verify → serverless}/v1/service.rb +183 -158
  424. data/lib/twilio-ruby/rest/serverless/v1.rb +44 -0
  425. data/lib/twilio-ruby/rest/serverless.rb +47 -0
  426. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +22 -21
  427. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +26 -27
  428. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +34 -35
  429. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +45 -50
  430. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +23 -21
  431. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +29 -27
  432. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +35 -35
  433. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +88 -65
  434. data/lib/twilio-ruby/rest/studio/v1/flow.rb +31 -32
  435. data/lib/twilio-ruby/rest/studio/v1.rb +7 -6
  436. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +211 -0
  437. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +228 -0
  438. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +372 -0
  439. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +449 -0
  440. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +327 -0
  441. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +199 -0
  442. data/lib/twilio-ruby/rest/studio/v2/flow.rb +482 -0
  443. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +117 -0
  444. data/lib/twilio-ruby/rest/studio/v2.rb +51 -0
  445. data/lib/twilio-ruby/rest/studio.rb +19 -5
  446. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +372 -0
  447. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +493 -0
  448. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +419 -0
  449. data/lib/twilio-ruby/rest/supersim/v1/network.rb +307 -0
  450. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +339 -0
  451. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +361 -0
  452. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +247 -0
  453. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +231 -0
  454. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +195 -0
  455. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +463 -0
  456. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +371 -0
  457. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +352 -0
  458. data/lib/twilio-ruby/rest/supersim/v1.rb +154 -0
  459. data/lib/twilio-ruby/rest/supersim.rb +112 -0
  460. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +60 -69
  461. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +71 -75
  462. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +142 -122
  463. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +59 -69
  464. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +64 -70
  465. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +146 -129
  466. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +57 -69
  467. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +65 -72
  468. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +18 -27
  469. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +57 -67
  470. data/lib/twilio-ruby/rest/sync/v1/service.rb +141 -87
  471. data/lib/twilio-ruby/rest/sync/v1.rb +7 -6
  472. data/lib/twilio-ruby/rest/sync.rb +3 -2
  473. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +83 -77
  474. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +131 -85
  475. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +316 -205
  476. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +220 -179
  477. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +78 -61
  478. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +95 -81
  479. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +63 -33
  480. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +57 -54
  481. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +61 -70
  482. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +129 -126
  483. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +309 -161
  484. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +59 -62
  485. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +50 -41
  486. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +49 -45
  487. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +28 -20
  488. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +53 -50
  489. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +155 -123
  490. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +85 -72
  491. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +44 -28
  492. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +65 -54
  493. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +109 -108
  494. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +74 -67
  495. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +37 -27
  496. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +55 -50
  497. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +140 -128
  498. data/lib/twilio-ruby/rest/taskrouter/v1.rb +7 -6
  499. data/lib/twilio-ruby/rest/taskrouter.rb +3 -2
  500. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +42 -43
  501. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +40 -45
  502. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +76 -85
  503. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +65 -62
  504. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +198 -0
  505. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +165 -136
  506. data/lib/twilio-ruby/rest/trunking/v1.rb +8 -7
  507. data/lib/twilio-ruby/rest/trunking.rb +3 -3
  508. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +359 -0
  509. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +330 -0
  510. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +328 -0
  511. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +523 -0
  512. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +356 -0
  513. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +271 -0
  514. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +262 -0
  515. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +369 -0
  516. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +271 -0
  517. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +359 -0
  518. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +330 -0
  519. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +328 -0
  520. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +523 -0
  521. data/lib/twilio-ruby/rest/trusthub/v1.rb +146 -0
  522. data/lib/twilio-ruby/rest/trusthub.rb +100 -0
  523. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/form.rb +26 -25
  524. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +215 -0
  525. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +261 -0
  526. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +199 -0
  527. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +543 -0
  528. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/service/entity/factor.rb +116 -124
  529. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +303 -0
  530. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/service/entity.rb +96 -47
  531. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +370 -0
  532. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +399 -0
  533. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +391 -0
  534. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +378 -0
  535. data/lib/twilio-ruby/rest/verify/{v1 → v2}/service/verification_check.rb +66 -39
  536. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +419 -0
  537. data/lib/twilio-ruby/rest/verify/v2/service.rb +790 -0
  538. data/lib/twilio-ruby/rest/verify/v2/template.rb +213 -0
  539. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +397 -0
  540. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +234 -0
  541. data/lib/twilio-ruby/rest/verify/v2.rb +110 -0
  542. data/lib/twilio-ruby/rest/verify.rb +48 -9
  543. data/lib/twilio-ruby/rest/video/v1/composition.rb +149 -144
  544. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +268 -232
  545. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +54 -63
  546. data/lib/twilio-ruby/rest/video/v1/recording.rb +104 -77
  547. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +54 -63
  548. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +73 -55
  549. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +240 -0
  550. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +39 -37
  551. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +175 -0
  552. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +132 -105
  553. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +120 -77
  554. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +144 -0
  555. data/lib/twilio-ruby/rest/video/v1/room.rb +176 -86
  556. data/lib/twilio-ruby/rest/video/v1.rb +25 -24
  557. data/lib/twilio-ruby/rest/video.rb +9 -9
  558. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +184 -0
  559. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +496 -0
  560. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +441 -0
  561. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +362 -0
  562. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/bulk_country_update.rb +6 -11
  563. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/country/highrisk_special_prefix.rb +9 -11
  564. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/country.rb +45 -44
  565. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +197 -0
  566. data/lib/twilio-ruby/rest/voice/v1/{voice_permission.rb → dialing_permissions.rb} +21 -23
  567. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +349 -0
  568. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +329 -0
  569. data/lib/twilio-ruby/rest/voice/v1.rb +94 -5
  570. data/lib/twilio-ruby/rest/voice.rb +48 -4
  571. data/lib/twilio-ruby/rest/wireless/v1/command.rb +74 -77
  572. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +89 -91
  573. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +39 -42
  574. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +42 -38
  575. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +179 -161
  576. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +229 -0
  577. data/lib/twilio-ruby/rest/wireless/v1.rb +26 -18
  578. data/lib/twilio-ruby/rest/wireless.rb +10 -4
  579. data/lib/twilio-ruby/rest.rb +13 -0
  580. data/lib/twilio-ruby/security/request_validator.rb +64 -11
  581. data/lib/twilio-ruby/twiml/fax_response.rb +6 -3
  582. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  583. data/lib/twilio-ruby/twiml/twiml.rb +4 -0
  584. data/lib/twilio-ruby/twiml/voice_response.rb +1156 -172
  585. data/lib/twilio-ruby/util/configuration.rb +22 -5
  586. data/lib/twilio-ruby/version.rb +1 -1
  587. data/lib/twilio-ruby.rb +9 -25
  588. data/sonar-project.properties +13 -0
  589. data/twilio-ruby.gemspec +12 -7
  590. metadata +336 -654
  591. data/.travis.yml +0 -26
  592. data/lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb +0 -398
  593. data/lib/twilio-ruby/rest/authy/v1.rb +0 -59
  594. data/lib/twilio-ruby/rest/authy.rb +0 -55
  595. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -531
  596. data/lib/twilio-ruby/rest/fax/v1.rb +0 -43
  597. data/lib/twilio-ruby/rest/fax.rb +0 -46
  598. data/lib/twilio-ruby/rest/insights/v1/summary.rb +0 -286
  599. data/lib/twilio-ruby/rest/preview/acc_security/service/verification.rb +0 -185
  600. data/lib/twilio-ruby/rest/preview/acc_security/service/verification_check.rb +0 -182
  601. data/lib/twilio-ruby/rest/preview/acc_security.rb +0 -43
  602. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -58
  603. data/lib/twilio-ruby/rest/verify/v1/service/verification.rb +0 -206
  604. data/lib/twilio-ruby/rest/verify/v1.rb +0 -43
  605. data/spec/framework/request_spec.rb +0 -36
  606. data/spec/framework/serialize_spec.rb +0 -80
  607. data/spec/holodeck/holodeck.rb +0 -61
  608. data/spec/holodeck/hologram.rb +0 -4
  609. data/spec/http/http_client_spec.rb +0 -122
  610. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -226
  611. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -226
  612. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  613. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -107
  614. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  615. data/spec/integration/api/v2010/account/application_spec.rb +0 -280
  616. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -139
  617. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -103
  618. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -103
  619. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -102
  620. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -103
  621. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -103
  622. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -102
  623. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -103
  624. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -130
  625. data/spec/integration/api/v2010/account/balance_spec.rb +0 -45
  626. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -139
  627. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -151
  628. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -181
  629. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
  630. data/spec/integration/api/v2010/account/call_spec.rb +0 -314
  631. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -350
  632. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -237
  633. data/spec/integration/api/v2010/account/conference_spec.rb +0 -179
  634. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -179
  635. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -137
  636. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -223
  637. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -185
  638. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -185
  639. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -185
  640. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -341
  641. data/spec/integration/api/v2010/account/key_spec.rb +0 -180
  642. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -50
  643. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -164
  644. data/spec/integration/api/v2010/account/message_spec.rb +0 -290
  645. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -47
  646. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -47
  647. data/spec/integration/api/v2010/account/notification_spec.rb +0 -174
  648. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -195
  649. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -169
  650. data/spec/integration/api/v2010/account/queue_spec.rb +0 -242
  651. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -177
  652. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -168
  653. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -176
  654. data/spec/integration/api/v2010/account/recording_spec.rb +0 -187
  655. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -182
  656. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -180
  657. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -256
  658. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -244
  659. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -220
  660. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -220
  661. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  662. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -220
  663. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  664. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  665. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -210
  666. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -220
  667. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -295
  668. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -258
  669. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -254
  670. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  671. data/spec/integration/api/v2010/account/token_spec.rb +0 -58
  672. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -169
  673. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  674. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  675. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  676. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  677. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  678. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  679. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  680. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  681. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  682. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -285
  683. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  684. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  685. data/spec/integration/api/v2010/account_spec.rb +0 -275
  686. data/spec/integration/authy/v1/form_spec.rb +0 -48
  687. data/spec/integration/authy/v1/service/entity/factor/challenge_spec.rb +0 -262
  688. data/spec/integration/authy/v1/service/entity/factor_spec.rb +0 -269
  689. data/spec/integration/authy/v1/service/entity_spec.rb +0 -201
  690. data/spec/integration/authy/v1/service_spec.rb +0 -227
  691. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -81
  692. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -47
  693. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -210
  694. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -246
  695. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -241
  696. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -306
  697. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -81
  698. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -207
  699. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -253
  700. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -87
  701. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -50
  702. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -262
  703. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -270
  704. data/spec/integration/chat/v1/credential_spec.rb +0 -223
  705. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -210
  706. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -284
  707. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -294
  708. data/spec/integration/chat/v1/service/channel_spec.rb +0 -277
  709. data/spec/integration/chat/v1/service/role_spec.rb +0 -263
  710. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -94
  711. data/spec/integration/chat/v1/service/user_spec.rb +0 -266
  712. data/spec/integration/chat/v1/service_spec.rb +0 -299
  713. data/spec/integration/chat/v2/credential_spec.rb +0 -223
  714. data/spec/integration/chat/v2/service/binding_spec.rb +0 -177
  715. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -210
  716. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -261
  717. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -405
  718. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -307
  719. data/spec/integration/chat/v2/service/channel_spec.rb +0 -281
  720. data/spec/integration/chat/v2/service/role_spec.rb +0 -263
  721. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -180
  722. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -192
  723. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  724. data/spec/integration/chat/v2/service_spec.rb +0 -354
  725. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -128
  726. data/spec/integration/fax/v1/fax_spec.rb +0 -271
  727. data/spec/integration/insights/v1/summary_spec.rb +0 -60
  728. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -223
  729. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -210
  730. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -284
  731. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -294
  732. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -277
  733. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -263
  734. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -94
  735. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -266
  736. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -299
  737. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -223
  738. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -177
  739. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -210
  740. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -261
  741. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -405
  742. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -307
  743. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -281
  744. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -263
  745. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -180
  746. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -192
  747. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  748. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -354
  749. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -71
  750. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -170
  751. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -201
  752. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -173
  753. data/spec/integration/messaging/v1/service_spec.rb +0 -271
  754. data/spec/integration/monitor/v1/alert_spec.rb +0 -163
  755. data/spec/integration/monitor/v1/event_spec.rb +0 -150
  756. data/spec/integration/notify/v1/credential_spec.rb +0 -223
  757. data/spec/integration/notify/v1/service/binding_spec.rb +0 -225
  758. data/spec/integration/notify/v1/service/notification_spec.rb +0 -99
  759. data/spec/integration/notify/v1/service_spec.rb +0 -286
  760. data/spec/integration/preview/acc_security/service/verification_check_spec.rb +0 -52
  761. data/spec/integration/preview/acc_security/service/verification_spec.rb +0 -52
  762. data/spec/integration/preview/acc_security/service_spec.rb +0 -185
  763. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -58
  764. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -79
  765. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -45
  766. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -238
  767. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -233
  768. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -249
  769. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -237
  770. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -246
  771. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -111
  772. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -227
  773. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -393
  774. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -123
  775. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -144
  776. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -164
  777. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -254
  778. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -204
  779. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  780. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -254
  781. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -204
  782. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -209
  783. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -254
  784. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -204
  785. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -209
  786. data/spec/integration/preview/sync/service_spec.rb +0 -246
  787. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -81
  788. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -81
  789. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -47
  790. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -210
  791. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -246
  792. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -241
  793. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -306
  794. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -81
  795. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -207
  796. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -253
  797. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -87
  798. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -50
  799. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -262
  800. data/spec/integration/preview/understand/assistant_spec.rb +0 -274
  801. data/spec/integration/preview/wireless/command_spec.rb +0 -169
  802. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -262
  803. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -51
  804. data/spec/integration/preview/wireless/sim_spec.rb +0 -210
  805. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -139
  806. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  807. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -130
  808. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  809. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -140
  810. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -56
  811. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  812. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -181
  813. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -62
  814. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  815. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -232
  816. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -136
  817. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -166
  818. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -243
  819. data/spec/integration/proxy/v1/service/session_spec.rb +0 -230
  820. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -229
  821. data/spec/integration/proxy/v1/service_spec.rb +0 -218
  822. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -51
  823. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -54
  824. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -101
  825. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -171
  826. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -51
  827. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -54
  828. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -101
  829. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -171
  830. data/spec/integration/studio/v1/flow_spec.rb +0 -117
  831. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -204
  832. data/spec/integration/sync/v1/service/document_spec.rb +0 -257
  833. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  834. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -204
  835. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -257
  836. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  837. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -204
  838. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -257
  839. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  840. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -249
  841. data/spec/integration/sync/v1/service_spec.rb +0 -254
  842. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -236
  843. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -159
  844. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -225
  845. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -310
  846. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -96
  847. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -81
  848. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -108
  849. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -146
  850. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -294
  851. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -326
  852. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -194
  853. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -188
  854. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -92
  855. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -89
  856. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -70
  857. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -116
  858. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -294
  859. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -97
  860. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  861. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -71
  862. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -272
  863. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -94
  864. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  865. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -105
  866. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -295
  867. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -192
  868. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -192
  869. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -252
  870. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -267
  871. data/spec/integration/trunking/v1/trunk_spec.rb +0 -362
  872. data/spec/integration/verify/v1/service/verification_check_spec.rb +0 -52
  873. data/spec/integration/verify/v1/service/verification_spec.rb +0 -61
  874. data/spec/integration/verify/v1/service_spec.rb +0 -227
  875. data/spec/integration/video/v1/composition_hook_spec.rb +0 -410
  876. data/spec/integration/video/v1/composition_settings_spec.rb +0 -86
  877. data/spec/integration/video/v1/composition_spec.rb +0 -325
  878. data/spec/integration/video/v1/recording_settings_spec.rb +0 -86
  879. data/spec/integration/video/v1/recording_spec.rb +0 -179
  880. data/spec/integration/video/v1/room/recording_spec.rb +0 -188
  881. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -96
  882. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -134
  883. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  884. data/spec/integration/video/v1/room_spec.rb +0 -257
  885. data/spec/integration/voice/v1/voice_permission/bulk_country_update_spec.rb +0 -45
  886. data/spec/integration/voice/v1/voice_permission/country/highrisk_special_prefix_spec.rb +0 -61
  887. data/spec/integration/voice/v1/voice_permission/country_spec.rb +0 -112
  888. data/spec/integration/voice/v1/voice_permission_spec.rb +0 -12
  889. data/spec/integration/wireless/v1/command_spec.rb +0 -289
  890. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -270
  891. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -87
  892. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -67
  893. data/spec/integration/wireless/v1/sim_spec.rb +0 -242
  894. data/spec/jwt/access_token_spec.rb +0 -151
  895. data/spec/jwt/client_capability_spec.rb +0 -104
  896. data/spec/jwt/task_router_spec.rb +0 -172
  897. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  898. data/spec/rest/client_spec.rb +0 -61
  899. data/spec/security/request_validator_spec.rb +0 -86
  900. data/spec/spec_helper.rb +0 -38
  901. data/spec/support/fakeweb.rb +0 -2
  902. data/spec/twilio_spec.rb +0 -15
  903. data/spec/twiml/messaging_response_spec.rb +0 -235
  904. data/spec/twiml/voice_response_spec.rb +0 -847
  905. data/spec/util/configuration_spec.rb +0 -15
  906. data/spec/util/url_encode_spec.rb +0 -12
@@ -0,0 +1,563 @@
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 ConversationContext < InstanceContext
15
+ class MessageList < ListResource
16
+ ##
17
+ # Initialize the MessageList
18
+ # @param [Version] version Version that contains the resource
19
+ # @param [String] chat_service_sid The SID of the {Conversation
20
+ # Service}[https://www.twilio.com/docs/conversations/api/service-resource] the
21
+ # Participant resource is associated with.
22
+ # @param [String] conversation_sid The unique ID of the
23
+ # {Conversation}[https://www.twilio.com/docs/conversations/api/conversation-resource]
24
+ # for this message.
25
+ # @return [MessageList] MessageList
26
+ def initialize(version, chat_service_sid: nil, conversation_sid: nil)
27
+ super(version)
28
+
29
+ # Path Solution
30
+ @solution = {chat_service_sid: chat_service_sid, conversation_sid: conversation_sid}
31
+ @uri = "/Services/#{@solution[:chat_service_sid]}/Conversations/#{@solution[:conversation_sid]}/Messages"
32
+ end
33
+
34
+ ##
35
+ # Create the MessageInstance
36
+ # @param [String] author The channel specific identifier of the message's author.
37
+ # Defaults to `system`.
38
+ # @param [String] body The content of the message, can be up to 1,600 characters
39
+ # long.
40
+ # @param [Time] date_created The date that this resource was created.
41
+ # @param [Time] date_updated The date that this resource was last updated. `null`
42
+ # if the message has not been edited.
43
+ # @param [String] attributes A string metadata field you can use to store any data
44
+ # you wish. The string value must contain structurally valid JSON if specified.
45
+ # **Note** that if the attributes are not set "{}" will be returned.
46
+ # @param [String] media_sid The Media SID to be attached to the new Message.
47
+ # @param [String] content_sid The unique ID of the multi-channel {Rich
48
+ # Content}[https://www.twilio.com/docs/content-api] template, required for
49
+ # template-generated messages. **Note** that if this field is set, `Body` and
50
+ # `MediaSid` parameters are ignored.
51
+ # @param [String] content_variables A structurally valid JSON string that contains
52
+ # values to resolve Rich Content template variables.
53
+ # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
54
+ # X-Twilio-Webhook-Enabled HTTP request header
55
+ # @return [MessageInstance] Created MessageInstance
56
+ def create(author: :unset, body: :unset, date_created: :unset, date_updated: :unset, attributes: :unset, media_sid: :unset, content_sid: :unset, content_variables: :unset, x_twilio_webhook_enabled: :unset)
57
+ data = Twilio::Values.of({
58
+ 'Author' => author,
59
+ 'Body' => body,
60
+ 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
61
+ 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
62
+ 'Attributes' => attributes,
63
+ 'MediaSid' => media_sid,
64
+ 'ContentSid' => content_sid,
65
+ 'ContentVariables' => content_variables,
66
+ })
67
+ headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
68
+
69
+ payload = @version.create('POST', @uri, data: data, headers: headers)
70
+
71
+ MessageInstance.new(
72
+ @version,
73
+ payload,
74
+ chat_service_sid: @solution[:chat_service_sid],
75
+ conversation_sid: @solution[:conversation_sid],
76
+ )
77
+ end
78
+
79
+ ##
80
+ # Lists MessageInstance records from the API as a list.
81
+ # Unlike stream(), this operation is eager and will load `limit` records into
82
+ # memory before returning.
83
+ # @param [message.OrderType] order The sort order of the returned messages. Can
84
+ # be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
85
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
86
+ # guarantees to never return more than limit. Default is no limit
87
+ # @param [Integer] page_size Number of records to fetch per request, when
88
+ # not set will use the default value of 50 records. If no page_size is defined
89
+ # but a limit is defined, stream() will attempt to read the limit with the most
90
+ # efficient page size, i.e. min(limit, 1000)
91
+ # @return [Array] Array of up to limit results
92
+ def list(order: :unset, limit: nil, page_size: nil)
93
+ self.stream(order: order, limit: limit, page_size: page_size).entries
94
+ end
95
+
96
+ ##
97
+ # Streams MessageInstance records from the API as an Enumerable.
98
+ # This operation lazily loads records as efficiently as possible until the limit
99
+ # is reached.
100
+ # @param [message.OrderType] order The sort order of the returned messages. Can
101
+ # be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
102
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
103
+ # guarantees to never return more than limit. Default is no limit.
104
+ # @param [Integer] page_size Number of records to fetch per request, when
105
+ # not set will use the default value of 50 records. If no page_size is defined
106
+ # but a limit is defined, stream() will attempt to read the limit with the most
107
+ # efficient page size, i.e. min(limit, 1000)
108
+ # @return [Enumerable] Enumerable that will yield up to limit results
109
+ def stream(order: :unset, limit: nil, page_size: nil)
110
+ limits = @version.read_limits(limit, page_size)
111
+
112
+ page = self.page(order: order, page_size: limits[:page_size], )
113
+
114
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
115
+ end
116
+
117
+ ##
118
+ # When passed a block, yields MessageInstance records from the API.
119
+ # This operation lazily loads records as efficiently as possible until the limit
120
+ # is reached.
121
+ def each
122
+ limits = @version.read_limits
123
+
124
+ page = self.page(page_size: limits[:page_size], )
125
+
126
+ @version.stream(page,
127
+ limit: limits[:limit],
128
+ page_limit: limits[:page_limit]).each {|x| yield x}
129
+ end
130
+
131
+ ##
132
+ # Retrieve a single page of MessageInstance records from the API.
133
+ # Request is executed immediately.
134
+ # @param [message.OrderType] order The sort order of the returned messages. Can
135
+ # be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
136
+ # @param [String] page_token PageToken provided by the API
137
+ # @param [Integer] page_number Page Number, this value is simply for client state
138
+ # @param [Integer] page_size Number of records to return, defaults to 50
139
+ # @return [Page] Page of MessageInstance
140
+ def page(order: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
141
+ params = Twilio::Values.of({
142
+ 'Order' => order,
143
+ 'PageToken' => page_token,
144
+ 'Page' => page_number,
145
+ 'PageSize' => page_size,
146
+ })
147
+
148
+ response = @version.page('GET', @uri, params: params)
149
+
150
+ MessagePage.new(@version, response, @solution)
151
+ end
152
+
153
+ ##
154
+ # Retrieve a single page of MessageInstance records from the API.
155
+ # Request is executed immediately.
156
+ # @param [String] target_url API-generated URL for the requested results page
157
+ # @return [Page] Page of MessageInstance
158
+ def get_page(target_url)
159
+ response = @version.domain.request(
160
+ 'GET',
161
+ target_url
162
+ )
163
+ MessagePage.new(@version, response, @solution)
164
+ end
165
+
166
+ ##
167
+ # Provide a user friendly representation
168
+ def to_s
169
+ '#<Twilio.Conversations.V1.MessageList>'
170
+ end
171
+ end
172
+
173
+ class MessagePage < Page
174
+ ##
175
+ # Initialize the MessagePage
176
+ # @param [Version] version Version that contains the resource
177
+ # @param [Response] response Response from the API
178
+ # @param [Hash] solution Path solution for the resource
179
+ # @return [MessagePage] MessagePage
180
+ def initialize(version, response, solution)
181
+ super(version, response)
182
+
183
+ # Path Solution
184
+ @solution = solution
185
+ end
186
+
187
+ ##
188
+ # Build an instance of MessageInstance
189
+ # @param [Hash] payload Payload response from the API
190
+ # @return [MessageInstance] MessageInstance
191
+ def get_instance(payload)
192
+ MessageInstance.new(
193
+ @version,
194
+ payload,
195
+ chat_service_sid: @solution[:chat_service_sid],
196
+ conversation_sid: @solution[:conversation_sid],
197
+ )
198
+ end
199
+
200
+ ##
201
+ # Provide a user friendly representation
202
+ def to_s
203
+ '<Twilio.Conversations.V1.MessagePage>'
204
+ end
205
+ end
206
+
207
+ class MessageContext < InstanceContext
208
+ ##
209
+ # Initialize the MessageContext
210
+ # @param [Version] version Version that contains the resource
211
+ # @param [String] chat_service_sid The SID of the {Conversation
212
+ # Service}[https://www.twilio.com/docs/conversations/api/service-resource] the
213
+ # Participant resource is associated with.
214
+ # @param [String] conversation_sid The unique ID of the
215
+ # {Conversation}[https://www.twilio.com/docs/conversations/api/conversation-resource]
216
+ # for this message.
217
+ # @param [String] sid A 34 character string that uniquely identifies this
218
+ # resource.
219
+ # @return [MessageContext] MessageContext
220
+ def initialize(version, chat_service_sid, conversation_sid, sid)
221
+ super(version)
222
+
223
+ # Path Solution
224
+ @solution = {chat_service_sid: chat_service_sid, conversation_sid: conversation_sid, sid: sid, }
225
+ @uri = "/Services/#{@solution[:chat_service_sid]}/Conversations/#{@solution[:conversation_sid]}/Messages/#{@solution[:sid]}"
226
+
227
+ # Dependents
228
+ @delivery_receipts = nil
229
+ end
230
+
231
+ ##
232
+ # Update the MessageInstance
233
+ # @param [String] author The channel specific identifier of the message's author.
234
+ # Defaults to `system`.
235
+ # @param [String] body The content of the message, can be up to 1,600 characters
236
+ # long.
237
+ # @param [Time] date_created The date that this resource was created.
238
+ # @param [Time] date_updated The date that this resource was last updated. `null`
239
+ # if the message has not been edited.
240
+ # @param [String] attributes A string metadata field you can use to store any data
241
+ # you wish. The string value must contain structurally valid JSON if specified.
242
+ # **Note** that if the attributes are not set "{}" will be returned.
243
+ # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
244
+ # X-Twilio-Webhook-Enabled HTTP request header
245
+ # @return [MessageInstance] Updated MessageInstance
246
+ def update(author: :unset, body: :unset, date_created: :unset, date_updated: :unset, attributes: :unset, x_twilio_webhook_enabled: :unset)
247
+ data = Twilio::Values.of({
248
+ 'Author' => author,
249
+ 'Body' => body,
250
+ 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
251
+ 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
252
+ 'Attributes' => attributes,
253
+ })
254
+ headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
255
+
256
+ payload = @version.update('POST', @uri, data: data, headers: headers)
257
+
258
+ MessageInstance.new(
259
+ @version,
260
+ payload,
261
+ chat_service_sid: @solution[:chat_service_sid],
262
+ conversation_sid: @solution[:conversation_sid],
263
+ sid: @solution[:sid],
264
+ )
265
+ end
266
+
267
+ ##
268
+ # Delete the MessageInstance
269
+ # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
270
+ # X-Twilio-Webhook-Enabled HTTP request header
271
+ # @return [Boolean] true if delete succeeds, false otherwise
272
+ def delete(x_twilio_webhook_enabled: :unset)
273
+ headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
274
+
275
+ @version.delete('DELETE', @uri, headers: headers)
276
+ end
277
+
278
+ ##
279
+ # Fetch the MessageInstance
280
+ # @return [MessageInstance] Fetched MessageInstance
281
+ def fetch
282
+ payload = @version.fetch('GET', @uri)
283
+
284
+ MessageInstance.new(
285
+ @version,
286
+ payload,
287
+ chat_service_sid: @solution[:chat_service_sid],
288
+ conversation_sid: @solution[:conversation_sid],
289
+ sid: @solution[:sid],
290
+ )
291
+ end
292
+
293
+ ##
294
+ # Access the delivery_receipts
295
+ # @return [DeliveryReceiptList]
296
+ # @return [DeliveryReceiptContext] if sid was passed.
297
+ def delivery_receipts(sid=:unset)
298
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
299
+
300
+ if sid != :unset
301
+ return DeliveryReceiptContext.new(
302
+ @version,
303
+ @solution[:chat_service_sid],
304
+ @solution[:conversation_sid],
305
+ @solution[:sid],
306
+ sid,
307
+ )
308
+ end
309
+
310
+ unless @delivery_receipts
311
+ @delivery_receipts = DeliveryReceiptList.new(
312
+ @version,
313
+ chat_service_sid: @solution[:chat_service_sid],
314
+ conversation_sid: @solution[:conversation_sid],
315
+ message_sid: @solution[:sid],
316
+ )
317
+ end
318
+
319
+ @delivery_receipts
320
+ end
321
+
322
+ ##
323
+ # Provide a user friendly representation
324
+ def to_s
325
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
326
+ "#<Twilio.Conversations.V1.MessageContext #{context}>"
327
+ end
328
+
329
+ ##
330
+ # Provide a detailed, user friendly representation
331
+ def inspect
332
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
333
+ "#<Twilio.Conversations.V1.MessageContext #{context}>"
334
+ end
335
+ end
336
+
337
+ class MessageInstance < InstanceResource
338
+ ##
339
+ # Initialize the MessageInstance
340
+ # @param [Version] version Version that contains the resource
341
+ # @param [Hash] payload payload that contains response from Twilio
342
+ # @param [String] chat_service_sid The SID of the {Conversation
343
+ # Service}[https://www.twilio.com/docs/conversations/api/service-resource] the
344
+ # Participant resource is associated with.
345
+ # @param [String] conversation_sid The unique ID of the
346
+ # {Conversation}[https://www.twilio.com/docs/conversations/api/conversation-resource]
347
+ # for this message.
348
+ # @param [String] sid A 34 character string that uniquely identifies this
349
+ # resource.
350
+ # @return [MessageInstance] MessageInstance
351
+ def initialize(version, payload, chat_service_sid: nil, conversation_sid: nil, sid: nil)
352
+ super(version)
353
+
354
+ # Marshaled Properties
355
+ @properties = {
356
+ 'account_sid' => payload['account_sid'],
357
+ 'chat_service_sid' => payload['chat_service_sid'],
358
+ 'conversation_sid' => payload['conversation_sid'],
359
+ 'sid' => payload['sid'],
360
+ 'index' => payload['index'] == nil ? payload['index'] : payload['index'].to_i,
361
+ 'author' => payload['author'],
362
+ 'body' => payload['body'],
363
+ 'media' => payload['media'],
364
+ 'attributes' => payload['attributes'],
365
+ 'participant_sid' => payload['participant_sid'],
366
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
367
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
368
+ 'delivery' => payload['delivery'],
369
+ 'url' => payload['url'],
370
+ 'links' => payload['links'],
371
+ 'content_sid' => payload['content_sid'],
372
+ }
373
+
374
+ # Context
375
+ @instance_context = nil
376
+ @params = {
377
+ 'chat_service_sid' => chat_service_sid,
378
+ 'conversation_sid' => conversation_sid,
379
+ 'sid' => sid || @properties['sid'],
380
+ }
381
+ end
382
+
383
+ ##
384
+ # Generate an instance context for the instance, the context is capable of
385
+ # performing various actions. All instance actions are proxied to the context
386
+ # @return [MessageContext] MessageContext for this MessageInstance
387
+ def context
388
+ unless @instance_context
389
+ @instance_context = MessageContext.new(
390
+ @version,
391
+ @params['chat_service_sid'],
392
+ @params['conversation_sid'],
393
+ @params['sid'],
394
+ )
395
+ end
396
+ @instance_context
397
+ end
398
+
399
+ ##
400
+ # @return [String] The unique ID of the Account responsible for this message.
401
+ def account_sid
402
+ @properties['account_sid']
403
+ end
404
+
405
+ ##
406
+ # @return [String] The SID of the Conversation Service that the resource is associated with.
407
+ def chat_service_sid
408
+ @properties['chat_service_sid']
409
+ end
410
+
411
+ ##
412
+ # @return [String] The unique ID of the Conversation for this message.
413
+ def conversation_sid
414
+ @properties['conversation_sid']
415
+ end
416
+
417
+ ##
418
+ # @return [String] A 34 character string that uniquely identifies this resource.
419
+ def sid
420
+ @properties['sid']
421
+ end
422
+
423
+ ##
424
+ # @return [String] The index of the message within the Conversation.
425
+ def index
426
+ @properties['index']
427
+ end
428
+
429
+ ##
430
+ # @return [String] The channel specific identifier of the message's author.
431
+ def author
432
+ @properties['author']
433
+ end
434
+
435
+ ##
436
+ # @return [String] The content of the message.
437
+ def body
438
+ @properties['body']
439
+ end
440
+
441
+ ##
442
+ # @return [Array[Hash]] An array of objects that describe the Message's media if attached, otherwise, null.
443
+ def media
444
+ @properties['media']
445
+ end
446
+
447
+ ##
448
+ # @return [String] A string metadata field you can use to store any data you wish.
449
+ def attributes
450
+ @properties['attributes']
451
+ end
452
+
453
+ ##
454
+ # @return [String] The unique ID of messages's author participant.
455
+ def participant_sid
456
+ @properties['participant_sid']
457
+ end
458
+
459
+ ##
460
+ # @return [Time] The date that this resource was created.
461
+ def date_created
462
+ @properties['date_created']
463
+ end
464
+
465
+ ##
466
+ # @return [Time] The date that this resource was last updated.
467
+ def date_updated
468
+ @properties['date_updated']
469
+ end
470
+
471
+ ##
472
+ # @return [Hash] An object that contains the summary of delivery statuses for the message to non-chat participants.
473
+ def delivery
474
+ @properties['delivery']
475
+ end
476
+
477
+ ##
478
+ # @return [String] An absolute URL for this message.
479
+ def url
480
+ @properties['url']
481
+ end
482
+
483
+ ##
484
+ # @return [String] Absolute URL to access the receipts of this message.
485
+ def links
486
+ @properties['links']
487
+ end
488
+
489
+ ##
490
+ # @return [String] The unique ID of the multi-channel Rich Content template.
491
+ def content_sid
492
+ @properties['content_sid']
493
+ end
494
+
495
+ ##
496
+ # Update the MessageInstance
497
+ # @param [String] author The channel specific identifier of the message's author.
498
+ # Defaults to `system`.
499
+ # @param [String] body The content of the message, can be up to 1,600 characters
500
+ # long.
501
+ # @param [Time] date_created The date that this resource was created.
502
+ # @param [Time] date_updated The date that this resource was last updated. `null`
503
+ # if the message has not been edited.
504
+ # @param [String] attributes A string metadata field you can use to store any data
505
+ # you wish. The string value must contain structurally valid JSON if specified.
506
+ # **Note** that if the attributes are not set "{}" will be returned.
507
+ # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
508
+ # X-Twilio-Webhook-Enabled HTTP request header
509
+ # @return [MessageInstance] Updated MessageInstance
510
+ def update(author: :unset, body: :unset, date_created: :unset, date_updated: :unset, attributes: :unset, x_twilio_webhook_enabled: :unset)
511
+ context.update(
512
+ author: author,
513
+ body: body,
514
+ date_created: date_created,
515
+ date_updated: date_updated,
516
+ attributes: attributes,
517
+ x_twilio_webhook_enabled: x_twilio_webhook_enabled,
518
+ )
519
+ end
520
+
521
+ ##
522
+ # Delete the MessageInstance
523
+ # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
524
+ # X-Twilio-Webhook-Enabled HTTP request header
525
+ # @return [Boolean] true if delete succeeds, false otherwise
526
+ def delete(x_twilio_webhook_enabled: :unset)
527
+ context.delete(x_twilio_webhook_enabled: x_twilio_webhook_enabled, )
528
+ end
529
+
530
+ ##
531
+ # Fetch the MessageInstance
532
+ # @return [MessageInstance] Fetched MessageInstance
533
+ def fetch
534
+ context.fetch
535
+ end
536
+
537
+ ##
538
+ # Access the delivery_receipts
539
+ # @return [delivery_receipts] delivery_receipts
540
+ def delivery_receipts
541
+ context.delivery_receipts
542
+ end
543
+
544
+ ##
545
+ # Provide a user friendly representation
546
+ def to_s
547
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
548
+ "<Twilio.Conversations.V1.MessageInstance #{values}>"
549
+ end
550
+
551
+ ##
552
+ # Provide a detailed, user friendly representation
553
+ def inspect
554
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
555
+ "<Twilio.Conversations.V1.MessageInstance #{values}>"
556
+ end
557
+ end
558
+ end
559
+ end
560
+ end
561
+ end
562
+ end
563
+ end