twilio-ruby 5.77.0 → 7.3.3

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 (728) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test-and-deploy.yml +11 -1
  3. data/.gitignore +3 -0
  4. data/CHANGES.md +722 -0
  5. data/CONTRIBUTING.md +10 -2
  6. data/Gemfile +3 -0
  7. data/LICENSE +1 -1
  8. data/Makefile +6 -0
  9. data/README.md +15 -9
  10. data/UPGRADE.md +21 -0
  11. data/cluster_spec.rb +77 -0
  12. data/lib/twilio-ruby/base/client_base.rb +124 -0
  13. data/lib/twilio-ruby/framework/request.rb +8 -1
  14. data/lib/twilio-ruby/framework/rest/error.rb +0 -12
  15. data/lib/twilio-ruby/http/http_client.rb +13 -5
  16. data/lib/twilio-ruby/jwt/access_token.rb +0 -59
  17. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +201 -178
  18. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +133 -0
  19. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +133 -0
  20. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +380 -332
  21. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +380 -332
  22. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +122 -114
  23. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +176 -0
  24. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +219 -192
  25. data/lib/twilio-ruby/rest/accounts/v1.rb +63 -42
  26. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  27. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  28. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +371 -365
  29. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +560 -530
  30. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +624 -605
  31. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +316 -320
  32. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +395 -0
  33. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +395 -0
  34. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +395 -0
  35. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +395 -0
  36. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +395 -0
  37. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +395 -0
  38. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +395 -0
  39. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +435 -0
  40. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +139 -118
  41. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +203 -194
  42. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +403 -417
  43. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +294 -342
  44. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +503 -511
  45. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +844 -641
  46. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +844 -641
  47. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +307 -0
  48. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +159 -153
  49. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +233 -240
  50. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +955 -1050
  51. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +668 -756
  52. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +458 -458
  53. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +494 -493
  54. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +433 -407
  55. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +323 -352
  56. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +403 -418
  57. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +539 -554
  58. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +539 -553
  59. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +539 -553
  60. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +850 -903
  61. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +342 -302
  62. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +170 -166
  63. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +345 -350
  64. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +624 -641
  65. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +160 -138
  66. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +160 -138
  67. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +403 -399
  68. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +375 -358
  69. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +345 -338
  70. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +435 -390
  71. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +200 -0
  72. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +384 -380
  73. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +373 -385
  74. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +369 -372
  75. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +512 -513
  76. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +422 -408
  77. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +342 -306
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +384 -368
  79. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +408 -373
  80. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +353 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +353 -0
  82. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +141 -0
  83. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +353 -0
  84. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +127 -0
  85. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +95 -103
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +346 -339
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +346 -338
  88. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +658 -645
  89. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +421 -421
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +408 -374
  91. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +142 -150
  92. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +174 -154
  93. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +369 -350
  94. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +315 -339
  95. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +315 -339
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +315 -339
  97. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +315 -339
  98. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +315 -339
  99. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +315 -339
  100. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +315 -339
  101. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +315 -339
  102. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +382 -416
  103. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +494 -484
  104. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +113 -104
  105. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +175 -161
  106. data/lib/twilio-ruby/rest/api/v2010/account.rb +986 -943
  107. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  108. data/lib/twilio-ruby/rest/api.rb +25 -34
  109. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  110. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +355 -0
  111. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +362 -0
  112. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +303 -0
  113. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +201 -0
  114. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +668 -0
  115. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +229 -0
  116. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +209 -0
  117. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +591 -0
  118. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +264 -0
  119. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +264 -0
  120. data/lib/twilio-ruby/rest/assistants/v1/session.rb +328 -0
  121. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +586 -0
  122. data/lib/twilio-ruby/rest/assistants/v1.rb +100 -0
  123. data/lib/twilio-ruby/rest/assistants.rb +6 -0
  124. data/lib/twilio-ruby/rest/assistants_base.rb +38 -0
  125. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +302 -279
  126. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +301 -279
  127. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +276 -248
  128. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +249 -235
  129. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +248 -216
  130. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  131. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  132. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  133. data/lib/twilio-ruby/rest/chat/v1/credential.rb +428 -403
  134. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +381 -391
  135. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +431 -440
  136. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +447 -437
  137. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +543 -515
  138. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +405 -367
  139. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +245 -239
  140. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +474 -440
  141. data/lib/twilio-ruby/rest/chat/v1/service.rb +870 -894
  142. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  143. data/lib/twilio-ruby/rest/chat/v2/credential.rb +428 -401
  144. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +376 -370
  145. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +381 -386
  146. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +492 -527
  147. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +519 -533
  148. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +449 -467
  149. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +612 -605
  150. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +405 -369
  151. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +369 -381
  152. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +412 -419
  153. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +516 -491
  154. data/lib/twilio-ruby/rest/chat/v2/service.rb +773 -778
  155. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  156. data/lib/twilio-ruby/rest/chat/v3/channel.rb +291 -267
  157. data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
  158. data/lib/twilio-ruby/rest/chat.rb +4 -48
  159. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  160. data/lib/twilio-ruby/rest/client.rb +333 -584
  161. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +185 -0
  162. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +202 -188
  163. data/lib/twilio-ruby/rest/content/v1/content.rb +941 -336
  164. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +244 -232
  165. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +258 -246
  166. data/lib/twilio-ruby/rest/content/v1.rb +54 -52
  167. data/lib/twilio-ruby/rest/content/v2/content.rb +316 -0
  168. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +309 -0
  169. data/lib/twilio-ruby/rest/content/v2.rb +46 -0
  170. data/lib/twilio-ruby/rest/content.rb +2 -46
  171. data/lib/twilio-ruby/rest/content_base.rb +43 -0
  172. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +481 -444
  173. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +259 -227
  174. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +284 -252
  175. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +337 -344
  176. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +543 -510
  177. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +504 -495
  178. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +434 -403
  179. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +626 -590
  180. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +434 -409
  181. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +305 -304
  182. data/lib/twilio-ruby/rest/conversations/v1/role.rb +393 -356
  183. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +369 -373
  184. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +305 -289
  185. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +251 -235
  186. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +312 -279
  187. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +344 -371
  188. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +550 -550
  189. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +513 -530
  190. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +443 -438
  191. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +638 -626
  192. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +311 -317
  193. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +405 -380
  194. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +453 -455
  195. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +490 -474
  196. data/lib/twilio-ruby/rest/conversations/v1/service.rb +483 -447
  197. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +452 -435
  198. data/lib/twilio-ruby/rest/conversations/v1/user.rb +478 -441
  199. data/lib/twilio-ruby/rest/conversations/v1.rb +129 -136
  200. data/lib/twilio-ruby/rest/conversations.rb +9 -34
  201. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  202. data/lib/twilio-ruby/rest/events/v1/event_type.rb +319 -288
  203. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +302 -0
  204. data/lib/twilio-ruby/rest/events/v1/schema.rb +230 -218
  205. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +117 -100
  206. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +123 -103
  207. data/lib/twilio-ruby/rest/events/v1/sink.rb +443 -408
  208. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +374 -339
  209. data/lib/twilio-ruby/rest/events/v1/subscription.rb +425 -387
  210. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  211. data/lib/twilio-ruby/rest/events.rb +5 -34
  212. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  213. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +439 -387
  214. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +372 -330
  215. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +547 -496
  216. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +572 -570
  217. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +321 -306
  218. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +221 -208
  219. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +435 -384
  220. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +350 -303
  221. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +435 -380
  222. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +352 -403
  223. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +209 -190
  224. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +157 -0
  225. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +137 -124
  226. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +188 -166
  227. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +247 -229
  228. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +343 -319
  229. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +404 -398
  230. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +264 -225
  231. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +397 -0
  232. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +446 -0
  233. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +247 -0
  234. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +393 -0
  235. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +386 -0
  236. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +233 -0
  237. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +332 -0
  238. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +256 -0
  239. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +188 -0
  240. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +387 -331
  241. data/lib/twilio-ruby/rest/flex_api/v1.rb +313 -214
  242. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +370 -0
  243. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +145 -127
  244. data/lib/twilio-ruby/rest/flex_api/v2.rb +70 -28
  245. data/lib/twilio-ruby/rest/flex_api.rb +21 -117
  246. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  247. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +247 -227
  248. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  249. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  250. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  251. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +270 -0
  252. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +223 -0
  253. data/lib/twilio-ruby/rest/iam/v1/key.rb +177 -0
  254. data/lib/twilio-ruby/rest/iam/v1.rb +61 -0
  255. data/lib/twilio-ruby/rest/iam.rb +6 -0
  256. data/lib/twilio-ruby/rest/iam_base.rb +38 -0
  257. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +315 -315
  258. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +353 -0
  259. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +270 -255
  260. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +242 -225
  261. data/lib/twilio-ruby/rest/insights/v1/call.rb +263 -236
  262. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +534 -439
  263. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +484 -467
  264. data/lib/twilio-ruby/rest/insights/v1/conference.rb +498 -502
  265. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +379 -371
  266. data/lib/twilio-ruby/rest/insights/v1/room.rb +491 -489
  267. data/lib/twilio-ruby/rest/insights/v1/setting.rb +249 -205
  268. data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
  269. data/lib/twilio-ruby/rest/insights.rb +6 -34
  270. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  271. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +447 -0
  272. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +356 -0
  273. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +217 -0
  274. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +197 -0
  275. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +358 -0
  276. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +356 -0
  277. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +517 -0
  278. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +227 -0
  279. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +389 -0
  280. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +262 -0
  281. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +525 -0
  282. data/lib/twilio-ruby/rest/intelligence/v2.rb +176 -0
  283. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  284. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  285. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +428 -364
  286. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +381 -359
  287. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +431 -397
  288. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +447 -409
  289. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +543 -488
  290. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +405 -347
  291. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +245 -233
  292. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +474 -418
  293. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +870 -779
  294. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  295. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +428 -364
  296. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +376 -343
  297. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +381 -359
  298. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +492 -451
  299. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +519 -479
  300. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +449 -411
  301. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +612 -555
  302. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +405 -347
  303. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +369 -351
  304. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +404 -384
  305. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +516 -467
  306. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +773 -689
  307. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  308. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  309. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  310. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +246 -239
  311. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  312. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +376 -335
  313. data/lib/twilio-ruby/rest/lookups/v2.rb +42 -38
  314. data/lib/twilio-ruby/rest/lookups.rb +2 -41
  315. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  316. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +309 -0
  317. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +336 -0
  318. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +352 -0
  319. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +157 -0
  320. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +465 -0
  321. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +310 -0
  322. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +199 -0
  323. data/lib/twilio-ruby/rest/marketplace/v1.rb +85 -0
  324. data/lib/twilio-ruby/rest/marketplace.rb +6 -0
  325. data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
  326. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +124 -119
  327. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +361 -346
  328. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +499 -466
  329. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +192 -0
  330. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +285 -0
  331. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +282 -232
  332. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +231 -218
  333. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +161 -144
  334. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +209 -210
  335. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +197 -0
  336. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +356 -335
  337. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +370 -0
  338. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +363 -341
  339. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +363 -336
  340. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +613 -521
  341. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +124 -115
  342. data/lib/twilio-ruby/rest/messaging/v1/service.rb +774 -763
  343. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +793 -713
  344. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +109 -94
  345. data/lib/twilio-ruby/rest/messaging/v1.rb +187 -165
  346. data/lib/twilio-ruby/rest/messaging.rb +10 -53
  347. data/lib/twilio-ruby/rest/messaging_base.rb +38 -0
  348. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +355 -307
  349. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +348 -300
  350. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +202 -185
  351. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +342 -320
  352. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +374 -335
  353. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +367 -328
  354. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +420 -383
  355. data/lib/twilio-ruby/rest/microvisor/v1.rb +87 -85
  356. data/lib/twilio-ruby/rest/microvisor.rb +4 -50
  357. data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
  358. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +401 -395
  359. data/lib/twilio-ruby/rest/monitor/v1/event.rb +384 -390
  360. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  361. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  362. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  363. data/lib/twilio-ruby/rest/notify/v1/credential.rb +428 -408
  364. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +442 -452
  365. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +316 -362
  366. data/lib/twilio-ruby/rest/notify/v1/service.rb +633 -622
  367. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  368. data/lib/twilio-ruby/rest/notify.rb +3 -34
  369. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  370. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +241 -0
  371. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +111 -94
  372. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +294 -0
  373. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +322 -0
  374. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +256 -0
  375. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +149 -0
  376. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +168 -0
  377. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +273 -0
  378. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +161 -0
  379. data/lib/twilio-ruby/rest/numbers/v1.rb +148 -28
  380. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +344 -0
  381. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +408 -0
  382. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +266 -0
  383. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +277 -0
  384. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +507 -0
  385. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +281 -261
  386. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +329 -298
  387. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +340 -309
  388. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +197 -181
  389. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +613 -607
  390. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +400 -351
  391. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +293 -266
  392. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +342 -307
  393. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +428 -371
  394. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +293 -266
  395. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +178 -181
  396. data/lib/twilio-ruby/rest/numbers/v2.rb +93 -28
  397. data/lib/twilio-ruby/rest/numbers.rb +2 -47
  398. data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
  399. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +144 -0
  400. data/lib/twilio-ruby/rest/oauth/v1/token.rb +176 -151
  401. data/lib/twilio-ruby/rest/oauth/v1.rb +39 -56
  402. data/lib/twilio-ruby/rest/oauth.rb +3 -65
  403. data/lib/twilio-ruby/rest/oauth_base.rb +38 -0
  404. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +371 -396
  405. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +451 -446
  406. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +617 -625
  407. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  408. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +302 -298
  409. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +326 -309
  410. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +345 -330
  411. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +436 -398
  412. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  413. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +383 -374
  414. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +448 -399
  415. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +439 -407
  416. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +383 -374
  417. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +424 -398
  418. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +442 -404
  419. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +383 -374
  420. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +424 -398
  421. data/lib/twilio-ruby/rest/preview/sync/service.rb +502 -452
  422. data/lib/twilio-ruby/rest/preview/sync.rb +42 -37
  423. data/lib/twilio-ruby/rest/preview/wireless/command.rb +390 -364
  424. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +455 -398
  425. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +233 -205
  426. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +577 -523
  427. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  428. data/lib/twilio-ruby/rest/preview.rb +11 -79
  429. data/lib/twilio-ruby/rest/preview_base.rb +53 -0
  430. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +300 -275
  431. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +108 -119
  432. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +293 -268
  433. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +108 -119
  434. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +300 -275
  435. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +223 -197
  436. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +122 -135
  437. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  438. data/lib/twilio-ruby/rest/pricing/v2/country.rb +292 -270
  439. data/lib/twilio-ruby/rest/pricing/v2/number.rb +235 -217
  440. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +300 -275
  441. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +241 -220
  442. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +122 -138
  443. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  444. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  445. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  446. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +426 -403
  447. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +411 -418
  448. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +433 -449
  449. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +426 -442
  450. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +529 -506
  451. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +406 -370
  452. data/lib/twilio-ruby/rest/proxy/v1/service.rb +566 -596
  453. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  454. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  455. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  456. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +265 -227
  457. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +265 -223
  458. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +265 -227
  459. data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
  460. data/lib/twilio-ruby/rest/routes.rb +4 -34
  461. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  462. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +316 -323
  463. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +419 -380
  464. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +209 -208
  465. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +412 -384
  466. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +342 -338
  467. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +362 -383
  468. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +410 -396
  469. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +461 -447
  470. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +224 -234
  471. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +343 -353
  472. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +419 -380
  473. data/lib/twilio-ruby/rest/serverless/v1/service.rb +530 -493
  474. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  475. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  476. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  477. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +209 -199
  478. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +224 -218
  479. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +364 -355
  480. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +429 -394
  481. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +209 -200
  482. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +224 -221
  483. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +364 -361
  484. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +477 -449
  485. data/lib/twilio-ruby/rest/studio/v1/flow.rb +385 -355
  486. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  487. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +209 -200
  488. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +224 -221
  489. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +364 -361
  490. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +470 -442
  491. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +344 -320
  492. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +237 -0
  493. data/lib/twilio-ruby/rest/studio/v2/flow.rb +528 -472
  494. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +124 -99
  495. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  496. data/lib/twilio-ruby/rest/studio.rb +3 -41
  497. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  498. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +396 -382
  499. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +477 -483
  500. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +401 -409
  501. data/lib/twilio-ruby/rest/supersim/v1/network.rb +303 -297
  502. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +342 -332
  503. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +385 -351
  504. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +247 -237
  505. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +243 -224
  506. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +201 -188
  507. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +465 -453
  508. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +361 -361
  509. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +306 -344
  510. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -147
  511. data/lib/twilio-ruby/rest/supersim.rb +10 -34
  512. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  513. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +383 -371
  514. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +464 -423
  515. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +473 -490
  516. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +383 -370
  517. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +479 -445
  518. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +476 -495
  519. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +383 -368
  520. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +479 -444
  521. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +142 -132
  522. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +428 -400
  523. data/lib/twilio-ruby/rest/sync/v1/service.rb +584 -567
  524. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  525. data/lib/twilio-ruby/rest/sync.rb +2 -34
  526. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  527. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +414 -395
  528. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +445 -464
  529. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +709 -749
  530. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +659 -661
  531. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +418 -382
  532. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +164 -0
  533. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +362 -369
  534. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +282 -275
  535. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +233 -236
  536. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +240 -258
  537. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +583 -572
  538. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +691 -732
  539. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +394 -388
  540. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +238 -239
  541. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +284 -265
  542. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +218 -193
  543. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +254 -234
  544. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +630 -637
  545. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +362 -375
  546. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +248 -241
  547. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +233 -244
  548. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +532 -510
  549. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +356 -356
  550. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +234 -206
  551. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +244 -234
  552. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +729 -730
  553. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  554. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  555. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  556. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +349 -320
  557. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +349 -317
  558. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +449 -419
  559. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +482 -451
  560. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +229 -191
  561. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +632 -630
  562. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  563. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  564. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  565. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +249 -0
  566. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +357 -0
  567. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +220 -0
  568. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +364 -352
  569. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +348 -323
  570. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +338 -321
  571. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +541 -513
  572. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +392 -346
  573. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +285 -261
  574. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +278 -252
  575. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +406 -359
  576. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +285 -261
  577. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +364 -352
  578. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +348 -323
  579. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +338 -321
  580. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +541 -513
  581. data/lib/twilio-ruby/rest/trusthub/v1.rb +168 -139
  582. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  583. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  584. data/lib/twilio-ruby/rest/verify/v2/form.rb +196 -183
  585. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +228 -207
  586. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +277 -254
  587. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +194 -192
  588. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +503 -531
  589. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +454 -453
  590. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +252 -283
  591. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +429 -414
  592. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +388 -363
  593. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +410 -388
  594. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +429 -384
  595. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +390 -372
  596. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +224 -205
  597. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +456 -412
  598. data/lib/twilio-ruby/rest/verify/v2/service.rb +816 -780
  599. data/lib/twilio-ruby/rest/verify/v2/template.rb +222 -205
  600. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +375 -387
  601. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +242 -226
  602. data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
  603. data/lib/twilio-ruby/rest/verify.rb +7 -34
  604. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  605. data/lib/twilio-ruby/rest/video/v1/composition.rb +484 -507
  606. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +534 -647
  607. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +286 -261
  608. data/lib/twilio-ruby/rest/video/v1/recording.rb +431 -426
  609. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +286 -261
  610. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +262 -0
  611. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +334 -0
  612. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +186 -0
  613. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +341 -0
  614. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +503 -0
  615. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +175 -0
  616. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +428 -0
  617. data/lib/twilio-ruby/rest/video/v1/room.rb +613 -602
  618. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  619. data/lib/twilio-ruby/rest/video.rb +7 -34
  620. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  621. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +161 -176
  622. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +510 -486
  623. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +449 -434
  624. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +400 -352
  625. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +138 -121
  626. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +196 -183
  627. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +376 -397
  628. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +220 -190
  629. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +123 -121
  630. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +386 -339
  631. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +369 -319
  632. data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
  633. data/lib/twilio-ruby/rest/voice.rb +7 -34
  634. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  635. data/lib/twilio-ruby/rest/wireless/v1/command.rb +415 -406
  636. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +472 -436
  637. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +299 -284
  638. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +240 -243
  639. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +641 -647
  640. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +227 -221
  641. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  642. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  643. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  644. data/lib/twilio-ruby/rest.rb +1 -0
  645. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  646. data/lib/twilio-ruby/twiml/voice_response.rb +97 -18
  647. data/lib/twilio-ruby/version.rb +1 -1
  648. data/sonar-project.properties +1 -1
  649. data/twilio-ruby.gemspec +2 -1
  650. metadata +148 -80
  651. data/conf/cacert.pem +0 -3376
  652. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  653. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  654. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  655. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  656. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  657. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  658. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  659. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  660. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  661. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -301
  662. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -314
  663. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  664. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +0 -348
  665. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  666. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +0 -348
  667. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  668. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -220
  669. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -214
  670. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -399
  671. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -418
  672. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -392
  673. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -469
  674. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -218
  675. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -386
  676. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -456
  677. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -255
  678. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -237
  679. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -507
  680. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -420
  681. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -650
  682. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +0 -194
  683. data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -52
  684. data/lib/twilio-ruby/rest/autopilot.rb +0 -53
  685. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  686. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answersets.rb +0 -144
  687. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -321
  688. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +0 -397
  689. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +0 -399
  690. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +0 -221
  691. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +0 -403
  692. data/lib/twilio-ruby/rest/media/v1.rb +0 -76
  693. data/lib/twilio-ruby/rest/media.rb +0 -65
  694. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  695. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +0 -257
  696. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +0 -153
  697. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +0 -162
  698. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +0 -242
  699. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +0 -193
  700. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -382
  701. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -365
  702. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -425
  703. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -376
  704. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -469
  705. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -45
  706. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -212
  707. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -212
  708. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -206
  709. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -386
  710. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -407
  711. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -380
  712. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -437
  713. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -212
  714. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -373
  715. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -428
  716. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -241
  717. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -225
  718. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -495
  719. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -629
  720. data/lib/twilio-ruby/rest/preview/understand.rb +0 -45
  721. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  722. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
  723. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
  724. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  725. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  726. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  727. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
  728. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,517 +1,550 @@
1
1
  ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio - Conversations
8
+ # This is the public Twilio REST API.
9
+ #
10
+ # NOTE: This class is auto generated by OpenAPI Generator.
11
+ # https://openapi-generator.tech
12
+ # Do not edit the class manually.
6
13
  #
7
- # frozen_string_literal: true
8
-
9
- module Twilio
10
- module REST
11
- class Conversations < Domain
12
- class V1 < Version
13
- class ConversationContext < InstanceContext
14
- class MessageList < ListResource
15
- ##
16
- # Initialize the MessageList
17
- # @param [Version] version Version that contains the resource
18
- # @param [String] conversation_sid The unique ID of the
19
- # {Conversation}[https://www.twilio.com/docs/conversations/api/conversation-resource]
20
- # for this message.
21
- # @return [MessageList] MessageList
22
- def initialize(version, conversation_sid: nil)
23
- super(version)
24
-
25
- # Path Solution
26
- @solution = {conversation_sid: conversation_sid}
27
- @uri = "/Conversations/#{@solution[:conversation_sid]}/Messages"
28
- end
29
-
30
- ##
31
- # Create the MessageInstance
32
- # @param [String] author The channel specific identifier of the message's author.
33
- # Defaults to `system`.
34
- # @param [String] body The content of the message, can be up to 1,600 characters
35
- # long.
36
- # @param [Time] date_created The date that this resource was created.
37
- # @param [Time] date_updated The date that this resource was last updated. `null`
38
- # if the message has not been edited.
39
- # @param [String] attributes A string metadata field you can use to store any data
40
- # you wish. The string value must contain structurally valid JSON if specified.
41
- # **Note** that if the attributes are not set "{}" will be returned.
42
- # @param [String] media_sid The Media SID to be attached to the new Message.
43
- # @param [String] content_sid The unique ID of the multi-channel {Rich
44
- # Content}[https://www.twilio.com/docs/content-api] template, required for
45
- # template-generated messages. **Note** that if this field is set, `Body` and
46
- # `MediaSid` parameters are ignored.
47
- # @param [String] content_variables A structurally valid JSON string that contains
48
- # values to resolve Rich Content template variables.
49
- # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
50
- # X-Twilio-Webhook-Enabled HTTP request header
51
- # @return [MessageInstance] Created MessageInstance
52
- 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)
53
- data = Twilio::Values.of({
54
- 'Author' => author,
55
- 'Body' => body,
56
- 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
57
- 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
58
- 'Attributes' => attributes,
59
- 'MediaSid' => media_sid,
60
- 'ContentSid' => content_sid,
61
- 'ContentVariables' => content_variables,
62
- })
63
- headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
64
-
65
- payload = @version.create('POST', @uri, data: data, headers: headers)
66
-
67
- MessageInstance.new(@version, payload, conversation_sid: @solution[:conversation_sid], )
68
- end
69
-
70
- ##
71
- # Lists MessageInstance records from the API as a list.
72
- # Unlike stream(), this operation is eager and will load `limit` records into
73
- # memory before returning.
74
- # @param [message.OrderType] order The sort order of the returned messages. Can
75
- # be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
76
- # @param [Integer] limit Upper limit for the number of records to return. stream()
77
- # guarantees to never return more than limit. Default is no limit
78
- # @param [Integer] page_size Number of records to fetch per request, when
79
- # not set will use the default value of 50 records. If no page_size is defined
80
- # but a limit is defined, stream() will attempt to read the limit with the most
81
- # efficient page size, i.e. min(limit, 1000)
82
- # @return [Array] Array of up to limit results
83
- def list(order: :unset, limit: nil, page_size: nil)
84
- self.stream(order: order, limit: limit, page_size: page_size).entries
85
- end
86
-
87
- ##
88
- # Streams MessageInstance records from the API as an Enumerable.
89
- # This operation lazily loads records as efficiently as possible until the limit
90
- # is reached.
91
- # @param [message.OrderType] order The sort order of the returned messages. Can
92
- # be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
93
- # @param [Integer] limit Upper limit for the number of records to return. stream()
94
- # guarantees to never return more than limit. Default is no limit.
95
- # @param [Integer] page_size Number of records to fetch per request, when
96
- # not set will use the default value of 50 records. If no page_size is defined
97
- # but a limit is defined, stream() will attempt to read the limit with the most
98
- # efficient page size, i.e. min(limit, 1000)
99
- # @return [Enumerable] Enumerable that will yield up to limit results
100
- def stream(order: :unset, limit: nil, page_size: nil)
101
- limits = @version.read_limits(limit, page_size)
102
-
103
- page = self.page(order: order, page_size: limits[:page_size], )
104
-
105
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
106
- end
107
-
108
- ##
109
- # When passed a block, yields MessageInstance records from the API.
110
- # This operation lazily loads records as efficiently as possible until the limit
111
- # is reached.
112
- def each
113
- limits = @version.read_limits
114
-
115
- page = self.page(page_size: limits[:page_size], )
116
-
117
- @version.stream(page,
118
- limit: limits[:limit],
119
- page_limit: limits[:page_limit]).each {|x| yield x}
120
- end
121
-
122
- ##
123
- # Retrieve a single page of MessageInstance records from the API.
124
- # Request is executed immediately.
125
- # @param [message.OrderType] order The sort order of the returned messages. Can
126
- # be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
127
- # @param [String] page_token PageToken provided by the API
128
- # @param [Integer] page_number Page Number, this value is simply for client state
129
- # @param [Integer] page_size Number of records to return, defaults to 50
130
- # @return [Page] Page of MessageInstance
131
- def page(order: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
132
- params = Twilio::Values.of({
133
- 'Order' => order,
134
- 'PageToken' => page_token,
135
- 'Page' => page_number,
136
- 'PageSize' => page_size,
137
- })
138
-
139
- response = @version.page('GET', @uri, params: params)
140
-
141
- MessagePage.new(@version, response, @solution)
142
- end
143
-
144
- ##
145
- # Retrieve a single page of MessageInstance records from the API.
146
- # Request is executed immediately.
147
- # @param [String] target_url API-generated URL for the requested results page
148
- # @return [Page] Page of MessageInstance
149
- def get_page(target_url)
150
- response = @version.domain.request(
151
- 'GET',
152
- target_url
153
- )
154
- MessagePage.new(@version, response, @solution)
155
- end
156
-
157
- ##
158
- # Provide a user friendly representation
159
- def to_s
160
- '#<Twilio.Conversations.V1.MessageList>'
161
- end
162
- end
163
-
164
- class MessagePage < Page
165
- ##
166
- # Initialize the MessagePage
167
- # @param [Version] version Version that contains the resource
168
- # @param [Response] response Response from the API
169
- # @param [Hash] solution Path solution for the resource
170
- # @return [MessagePage] MessagePage
171
- def initialize(version, response, solution)
172
- super(version, response)
173
-
174
- # Path Solution
175
- @solution = solution
176
- end
177
-
178
- ##
179
- # Build an instance of MessageInstance
180
- # @param [Hash] payload Payload response from the API
181
- # @return [MessageInstance] MessageInstance
182
- def get_instance(payload)
183
- MessageInstance.new(@version, payload, conversation_sid: @solution[:conversation_sid], )
184
- end
185
-
186
- ##
187
- # Provide a user friendly representation
188
- def to_s
189
- '<Twilio.Conversations.V1.MessagePage>'
190
- end
191
- end
192
-
193
- class MessageContext < InstanceContext
194
- ##
195
- # Initialize the MessageContext
196
- # @param [Version] version Version that contains the resource
197
- # @param [String] conversation_sid The unique ID of the
198
- # {Conversation}[https://www.twilio.com/docs/conversations/api/conversation-resource]
199
- # for this message.
200
- # @param [String] sid A 34 character string that uniquely identifies this
201
- # resource.
202
- # @return [MessageContext] MessageContext
203
- def initialize(version, conversation_sid, sid)
204
- super(version)
205
-
206
- # Path Solution
207
- @solution = {conversation_sid: conversation_sid, sid: sid, }
208
- @uri = "/Conversations/#{@solution[:conversation_sid]}/Messages/#{@solution[:sid]}"
209
-
210
- # Dependents
211
- @delivery_receipts = nil
212
- end
213
-
214
- ##
215
- # Update the MessageInstance
216
- # @param [String] author The channel specific identifier of the message's author.
217
- # Defaults to `system`.
218
- # @param [String] body The content of the message, can be up to 1,600 characters
219
- # long.
220
- # @param [Time] date_created The date that this resource was created.
221
- # @param [Time] date_updated The date that this resource was last updated. `null`
222
- # if the message has not been edited.
223
- # @param [String] attributes A string metadata field you can use to store any data
224
- # you wish. The string value must contain structurally valid JSON if specified.
225
- # **Note** that if the attributes are not set "{}" will be returned.
226
- # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
227
- # X-Twilio-Webhook-Enabled HTTP request header
228
- # @return [MessageInstance] Updated MessageInstance
229
- def update(author: :unset, body: :unset, date_created: :unset, date_updated: :unset, attributes: :unset, x_twilio_webhook_enabled: :unset)
230
- data = Twilio::Values.of({
231
- 'Author' => author,
232
- 'Body' => body,
233
- 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
234
- 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
235
- 'Attributes' => attributes,
236
- })
237
- headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
238
-
239
- payload = @version.update('POST', @uri, data: data, headers: headers)
240
-
241
- MessageInstance.new(
242
- @version,
243
- payload,
244
- conversation_sid: @solution[:conversation_sid],
245
- sid: @solution[:sid],
246
- )
247
- end
248
-
249
- ##
250
- # Delete the MessageInstance
251
- # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
252
- # X-Twilio-Webhook-Enabled HTTP request header
253
- # @return [Boolean] true if delete succeeds, false otherwise
254
- def delete(x_twilio_webhook_enabled: :unset)
255
- headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
256
-
257
- @version.delete('DELETE', @uri, headers: headers)
258
- end
259
-
260
- ##
261
- # Fetch the MessageInstance
262
- # @return [MessageInstance] Fetched MessageInstance
263
- def fetch
264
- payload = @version.fetch('GET', @uri)
265
-
266
- MessageInstance.new(
267
- @version,
268
- payload,
269
- conversation_sid: @solution[:conversation_sid],
270
- sid: @solution[:sid],
271
- )
272
- end
273
-
274
- ##
275
- # Access the delivery_receipts
276
- # @return [DeliveryReceiptList]
277
- # @return [DeliveryReceiptContext] if sid was passed.
278
- def delivery_receipts(sid=:unset)
279
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
280
-
281
- if sid != :unset
282
- return DeliveryReceiptContext.new(@version, @solution[:conversation_sid], @solution[:sid], sid, )
283
- end
284
-
285
- unless @delivery_receipts
286
- @delivery_receipts = DeliveryReceiptList.new(
287
- @version,
288
- conversation_sid: @solution[:conversation_sid],
289
- message_sid: @solution[:sid],
290
- )
291
- end
292
-
293
- @delivery_receipts
294
- end
295
-
296
- ##
297
- # Provide a user friendly representation
298
- def to_s
299
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
300
- "#<Twilio.Conversations.V1.MessageContext #{context}>"
301
- end
302
-
303
- ##
304
- # Provide a detailed, user friendly representation
305
- def inspect
306
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
307
- "#<Twilio.Conversations.V1.MessageContext #{context}>"
308
- end
309
- end
310
-
311
- class MessageInstance < InstanceResource
312
- ##
313
- # Initialize the MessageInstance
314
- # @param [Version] version Version that contains the resource
315
- # @param [Hash] payload payload that contains response from Twilio
316
- # @param [String] conversation_sid The unique ID of the
317
- # {Conversation}[https://www.twilio.com/docs/conversations/api/conversation-resource]
318
- # for this message.
319
- # @param [String] sid A 34 character string that uniquely identifies this
320
- # resource.
321
- # @return [MessageInstance] MessageInstance
322
- def initialize(version, payload, conversation_sid: nil, sid: nil)
323
- super(version)
324
-
325
- # Marshaled Properties
326
- @properties = {
327
- 'account_sid' => payload['account_sid'],
328
- 'conversation_sid' => payload['conversation_sid'],
329
- 'sid' => payload['sid'],
330
- 'index' => payload['index'] == nil ? payload['index'] : payload['index'].to_i,
331
- 'author' => payload['author'],
332
- 'body' => payload['body'],
333
- 'media' => payload['media'],
334
- 'attributes' => payload['attributes'],
335
- 'participant_sid' => payload['participant_sid'],
336
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
337
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
338
- 'url' => payload['url'],
339
- 'delivery' => payload['delivery'],
340
- 'links' => payload['links'],
341
- 'content_sid' => payload['content_sid'],
342
- }
343
-
344
- # Context
345
- @instance_context = nil
346
- @params = {'conversation_sid' => conversation_sid, 'sid' => sid || @properties['sid'], }
347
- end
348
-
349
- ##
350
- # Generate an instance context for the instance, the context is capable of
351
- # performing various actions. All instance actions are proxied to the context
352
- # @return [MessageContext] MessageContext for this MessageInstance
353
- def context
354
- unless @instance_context
355
- @instance_context = MessageContext.new(@version, @params['conversation_sid'], @params['sid'], )
356
- end
357
- @instance_context
358
- end
359
-
360
- ##
361
- # @return [String] The unique ID of the Account responsible for this message.
362
- def account_sid
363
- @properties['account_sid']
364
- end
365
-
366
- ##
367
- # @return [String] The unique ID of the Conversation for this message.
368
- def conversation_sid
369
- @properties['conversation_sid']
370
- end
371
-
372
- ##
373
- # @return [String] A 34 character string that uniquely identifies this resource.
374
- def sid
375
- @properties['sid']
376
- end
377
-
378
- ##
379
- # @return [String] The index of the message within the Conversation.
380
- def index
381
- @properties['index']
382
- end
383
-
384
- ##
385
- # @return [String] The channel specific identifier of the message's author.
386
- def author
387
- @properties['author']
388
- end
389
-
390
- ##
391
- # @return [String] The content of the message.
392
- def body
393
- @properties['body']
394
- end
395
-
396
- ##
397
- # @return [Array[Hash]] An array of objects that describe the Message's media if attached, otherwise, null.
398
- def media
399
- @properties['media']
400
- end
401
-
402
- ##
403
- # @return [String] A string metadata field you can use to store any data you wish.
404
- def attributes
405
- @properties['attributes']
406
- end
407
-
408
- ##
409
- # @return [String] The unique ID of messages's author participant.
410
- def participant_sid
411
- @properties['participant_sid']
412
- end
413
-
414
- ##
415
- # @return [Time] The date that this resource was created.
416
- def date_created
417
- @properties['date_created']
418
- end
419
-
420
- ##
421
- # @return [Time] The date that this resource was last updated.
422
- def date_updated
423
- @properties['date_updated']
424
- end
425
-
426
- ##
427
- # @return [String] An absolute API URL for this message.
428
- def url
429
- @properties['url']
430
- end
431
-
432
- ##
433
- # @return [Hash] An object that contains the summary of delivery statuses for the message to non-chat participants.
434
- def delivery
435
- @properties['delivery']
436
- end
437
-
438
- ##
439
- # @return [String] Absolute URL to access the receipts of this message.
440
- def links
441
- @properties['links']
442
- end
443
-
444
- ##
445
- # @return [String] The unique ID of the multi-channel Rich Content template.
446
- def content_sid
447
- @properties['content_sid']
448
- end
449
-
450
- ##
451
- # Update the MessageInstance
452
- # @param [String] author The channel specific identifier of the message's author.
453
- # Defaults to `system`.
454
- # @param [String] body The content of the message, can be up to 1,600 characters
455
- # long.
456
- # @param [Time] date_created The date that this resource was created.
457
- # @param [Time] date_updated The date that this resource was last updated. `null`
458
- # if the message has not been edited.
459
- # @param [String] attributes A string metadata field you can use to store any data
460
- # you wish. The string value must contain structurally valid JSON if specified.
461
- # **Note** that if the attributes are not set "{}" will be returned.
462
- # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
463
- # X-Twilio-Webhook-Enabled HTTP request header
464
- # @return [MessageInstance] Updated MessageInstance
465
- def update(author: :unset, body: :unset, date_created: :unset, date_updated: :unset, attributes: :unset, x_twilio_webhook_enabled: :unset)
466
- context.update(
467
- author: author,
468
- body: body,
469
- date_created: date_created,
470
- date_updated: date_updated,
471
- attributes: attributes,
472
- x_twilio_webhook_enabled: x_twilio_webhook_enabled,
473
- )
474
- end
475
-
476
- ##
477
- # Delete the MessageInstance
478
- # @param [message.WebhookEnabledType] x_twilio_webhook_enabled The
479
- # X-Twilio-Webhook-Enabled HTTP request header
480
- # @return [Boolean] true if delete succeeds, false otherwise
481
- def delete(x_twilio_webhook_enabled: :unset)
482
- context.delete(x_twilio_webhook_enabled: x_twilio_webhook_enabled, )
483
- end
484
-
485
- ##
486
- # Fetch the MessageInstance
487
- # @return [MessageInstance] Fetched MessageInstance
488
- def fetch
489
- context.fetch
490
- end
491
-
492
- ##
493
- # Access the delivery_receipts
494
- # @return [delivery_receipts] delivery_receipts
495
- def delivery_receipts
496
- context.delivery_receipts
497
- end
498
14
 
499
- ##
500
- # Provide a user friendly representation
501
- def to_s
502
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
503
- "<Twilio.Conversations.V1.MessageInstance #{values}>"
504
- end
505
15
 
506
- ##
507
- # Provide a detailed, user friendly representation
508
- def inspect
509
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
510
- "<Twilio.Conversations.V1.MessageInstance #{values}>"
16
+ module Twilio
17
+ module REST
18
+ class Conversations < ConversationsBase
19
+ class V1 < Version
20
+ class ConversationContext < InstanceContext
21
+
22
+ class MessageList < ListResource
23
+
24
+ ##
25
+ # Initialize the MessageList
26
+ # @param [Version] version Version that contains the resource
27
+ # @return [MessageList] MessageList
28
+ def initialize(version, conversation_sid: nil)
29
+ super(version)
30
+ # Path Solution
31
+ @solution = { conversation_sid: conversation_sid }
32
+ @uri = "/Conversations/#{@solution[:conversation_sid]}/Messages"
33
+
34
+ end
35
+ ##
36
+ # Create the MessageInstance
37
+ # @param [String] author The channel specific identifier of the message's author. Defaults to `system`.
38
+ # @param [String] body The content of the message, can be up to 1,600 characters long.
39
+ # @param [Time] date_created The date that this resource was created.
40
+ # @param [Time] date_updated The date that this resource was last updated. `null` if the message has not been edited.
41
+ # @param [String] attributes A string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \\\"{}\\\" will be returned.
42
+ # @param [String] media_sid The Media SID to be attached to the new Message.
43
+ # @param [String] content_sid The unique ID of the multi-channel [Rich Content](https://www.twilio.com/docs/content) template, required for template-generated messages. **Note** that if this field is set, `Body` and `MediaSid` parameters are ignored.
44
+ # @param [String] content_variables A structurally valid JSON string that contains values to resolve Rich Content template variables.
45
+ # @param [String] subject The subject of the message, can be up to 256 characters long.
46
+ # @param [ConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
47
+ # @return [MessageInstance] Created MessageInstance
48
+ def create(
49
+ author: :unset,
50
+ body: :unset,
51
+ date_created: :unset,
52
+ date_updated: :unset,
53
+ attributes: :unset,
54
+ media_sid: :unset,
55
+ content_sid: :unset,
56
+ content_variables: :unset,
57
+ subject: :unset,
58
+ x_twilio_webhook_enabled: :unset
59
+ )
60
+
61
+ data = Twilio::Values.of({
62
+ 'Author' => author,
63
+ 'Body' => body,
64
+ 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
65
+ 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
66
+ 'Attributes' => attributes,
67
+ 'MediaSid' => media_sid,
68
+ 'ContentSid' => content_sid,
69
+ 'ContentVariables' => content_variables,
70
+ 'Subject' => subject,
71
+ })
72
+
73
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
74
+
75
+ payload = @version.create('POST', @uri, data: data, headers: headers)
76
+ MessageInstance.new(
77
+ @version,
78
+ payload,
79
+ conversation_sid: @solution[:conversation_sid],
80
+ )
81
+ end
82
+
83
+
84
+ ##
85
+ # Lists MessageInstance records from the API as a list.
86
+ # Unlike stream(), this operation is eager and will load `limit` records into
87
+ # memory before returning.
88
+ # @param [OrderType] order The sort order of the returned messages. Can be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
89
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
90
+ # guarantees to never return more than limit. Default is no limit
91
+ # @param [Integer] page_size Number of records to fetch per request, when
92
+ # not set will use the default value of 50 records. If no page_size is defined
93
+ # but a limit is defined, stream() will attempt to read the limit with the most
94
+ # efficient page size, i.e. min(limit, 1000)
95
+ # @return [Array] Array of up to limit results
96
+ def list(order: :unset, limit: nil, page_size: nil)
97
+ self.stream(
98
+ order: order,
99
+ limit: limit,
100
+ page_size: page_size
101
+ ).entries
102
+ end
103
+
104
+ ##
105
+ # Streams Instance records from the API as an Enumerable.
106
+ # This operation lazily loads records as efficiently as possible until the limit
107
+ # is reached.
108
+ # @param [OrderType] order The sort order of the returned messages. Can be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
109
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
110
+ # guarantees to never return more than limit. Default is no limit
111
+ # @param [Integer] page_size Number of records to fetch per request, when
112
+ # not set will use the default value of 50 records. If no page_size is defined
113
+ # but a limit is defined, stream() will attempt to read the limit with the most
114
+ # efficient page size, i.e. min(limit, 1000)
115
+ # @return [Enumerable] Enumerable that will yield up to limit results
116
+ def stream(order: :unset, limit: nil, page_size: nil)
117
+ limits = @version.read_limits(limit, page_size)
118
+
119
+ page = self.page(
120
+ order: order,
121
+ page_size: limits[:page_size], )
122
+
123
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
124
+ end
125
+
126
+ ##
127
+ # When passed a block, yields MessageInstance records from the API.
128
+ # This operation lazily loads records as efficiently as possible until the limit
129
+ # is reached.
130
+ def each
131
+ limits = @version.read_limits
132
+
133
+ page = self.page(page_size: limits[:page_size], )
134
+
135
+ @version.stream(page,
136
+ limit: limits[:limit],
137
+ page_limit: limits[:page_limit]).each {|x| yield x}
138
+ end
139
+
140
+ ##
141
+ # Retrieve a single page of MessageInstance records from the API.
142
+ # Request is executed immediately.
143
+ # @param [OrderType] order The sort order of the returned messages. Can be: `asc` (ascending) or `desc` (descending), with `asc` as the default.
144
+ # @param [String] page_token PageToken provided by the API
145
+ # @param [Integer] page_number Page Number, this value is simply for client state
146
+ # @param [Integer] page_size Number of records to return, defaults to 50
147
+ # @return [Page] Page of MessageInstance
148
+ def page(order: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
149
+ params = Twilio::Values.of({
150
+ 'Order' => order,
151
+ 'PageToken' => page_token,
152
+ 'Page' => page_number,
153
+ 'PageSize' => page_size,
154
+ })
155
+
156
+ response = @version.page('GET', @uri, params: params)
157
+
158
+ MessagePage.new(@version, response, @solution)
159
+ end
160
+
161
+ ##
162
+ # Retrieve a single page of MessageInstance records from the API.
163
+ # Request is executed immediately.
164
+ # @param [String] target_url API-generated URL for the requested results page
165
+ # @return [Page] Page of MessageInstance
166
+ def get_page(target_url)
167
+ response = @version.domain.request(
168
+ 'GET',
169
+ target_url
170
+ )
171
+ MessagePage.new(@version, response, @solution)
172
+ end
173
+
174
+
175
+
176
+ # Provide a user friendly representation
177
+ def to_s
178
+ '#<Twilio.Conversations.V1.MessageList>'
179
+ end
180
+ end
181
+
182
+
183
+ class MessageContext < InstanceContext
184
+ ##
185
+ # Initialize the MessageContext
186
+ # @param [Version] version Version that contains the resource
187
+ # @param [String] conversation_sid The unique ID of the [Conversation](https://www.twilio.com/docs/conversations/api/conversation-resource) for this message.
188
+ # @param [String] sid A 34 character string that uniquely identifies this resource.
189
+ # @return [MessageContext] MessageContext
190
+ def initialize(version, conversation_sid, sid)
191
+ super(version)
192
+
193
+ # Path Solution
194
+ @solution = { conversation_sid: conversation_sid, sid: sid, }
195
+ @uri = "/Conversations/#{@solution[:conversation_sid]}/Messages/#{@solution[:sid]}"
196
+
197
+ # Dependents
198
+ @delivery_receipts = nil
199
+ end
200
+ ##
201
+ # Delete the MessageInstance
202
+ # @param [ConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
203
+ # @return [Boolean] True if delete succeeds, false otherwise
204
+ def delete(
205
+ x_twilio_webhook_enabled: :unset
206
+ )
207
+
208
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
209
+
210
+ @version.delete('DELETE', @uri, headers: headers)
211
+ end
212
+
213
+ ##
214
+ # Fetch the MessageInstance
215
+ # @return [MessageInstance] Fetched MessageInstance
216
+ def fetch
217
+
218
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
219
+
220
+ payload = @version.fetch('GET', @uri, headers: headers)
221
+ MessageInstance.new(
222
+ @version,
223
+ payload,
224
+ conversation_sid: @solution[:conversation_sid],
225
+ sid: @solution[:sid],
226
+ )
227
+ end
228
+
229
+ ##
230
+ # Update the MessageInstance
231
+ # @param [String] author The channel specific identifier of the message's author. Defaults to `system`.
232
+ # @param [String] body The content of the message, can be up to 1,600 characters long.
233
+ # @param [Time] date_created The date that this resource was created.
234
+ # @param [Time] date_updated The date that this resource was last updated. `null` if the message has not been edited.
235
+ # @param [String] attributes A string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \\\"{}\\\" will be returned.
236
+ # @param [String] subject The subject of the message, can be up to 256 characters long.
237
+ # @param [ConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
238
+ # @return [MessageInstance] Updated MessageInstance
239
+ def update(
240
+ author: :unset,
241
+ body: :unset,
242
+ date_created: :unset,
243
+ date_updated: :unset,
244
+ attributes: :unset,
245
+ subject: :unset,
246
+ x_twilio_webhook_enabled: :unset
247
+ )
248
+
249
+ data = Twilio::Values.of({
250
+ 'Author' => author,
251
+ 'Body' => body,
252
+ 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
253
+ 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
254
+ 'Attributes' => attributes,
255
+ 'Subject' => subject,
256
+ })
257
+
258
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
259
+
260
+ payload = @version.update('POST', @uri, data: data, headers: headers)
261
+ MessageInstance.new(
262
+ @version,
263
+ payload,
264
+ conversation_sid: @solution[:conversation_sid],
265
+ sid: @solution[:sid],
266
+ )
267
+ end
268
+
269
+ ##
270
+ # Access the delivery_receipts
271
+ # @return [DeliveryReceiptList]
272
+ # @return [DeliveryReceiptContext] if sid was passed.
273
+ def delivery_receipts(sid=:unset)
274
+
275
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
276
+
277
+ if sid != :unset
278
+ return DeliveryReceiptContext.new(@version, @solution[:conversation_sid], @solution[:sid],sid )
279
+ end
280
+
281
+ unless @delivery_receipts
282
+ @delivery_receipts = DeliveryReceiptList.new(
283
+ @version, conversation_sid: @solution[:conversation_sid], message_sid: @solution[:sid], )
284
+ end
285
+
286
+ @delivery_receipts
287
+ end
288
+
289
+ ##
290
+ # Provide a user friendly representation
291
+ def to_s
292
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
293
+ "#<Twilio.Conversations.V1.MessageContext #{context}>"
294
+ end
295
+
296
+ ##
297
+ # Provide a detailed, user friendly representation
298
+ def inspect
299
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
300
+ "#<Twilio.Conversations.V1.MessageContext #{context}>"
301
+ end
302
+ end
303
+
304
+ class MessagePage < Page
305
+ ##
306
+ # Initialize the MessagePage
307
+ # @param [Version] version Version that contains the resource
308
+ # @param [Response] response Response from the API
309
+ # @param [Hash] solution Path solution for the resource
310
+ # @return [MessagePage] MessagePage
311
+ def initialize(version, response, solution)
312
+ super(version, response)
313
+
314
+ # Path Solution
315
+ @solution = solution
316
+ end
317
+
318
+ ##
319
+ # Build an instance of MessageInstance
320
+ # @param [Hash] payload Payload response from the API
321
+ # @return [MessageInstance] MessageInstance
322
+ def get_instance(payload)
323
+ MessageInstance.new(@version, payload, conversation_sid: @solution[:conversation_sid])
324
+ end
325
+
326
+ ##
327
+ # Provide a user friendly representation
328
+ def to_s
329
+ '<Twilio.Conversations.V1.MessagePage>'
330
+ end
331
+ end
332
+ class MessageInstance < InstanceResource
333
+ ##
334
+ # Initialize the MessageInstance
335
+ # @param [Version] version Version that contains the resource
336
+ # @param [Hash] payload payload that contains response from Twilio
337
+ # @param [String] account_sid The SID of the
338
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Message
339
+ # resource.
340
+ # @param [String] sid The SID of the Call resource to fetch.
341
+ # @return [MessageInstance] MessageInstance
342
+ def initialize(version, payload , conversation_sid: nil, sid: nil)
343
+ super(version)
344
+
345
+ # Marshaled Properties
346
+ @properties = {
347
+ 'account_sid' => payload['account_sid'],
348
+ 'conversation_sid' => payload['conversation_sid'],
349
+ 'sid' => payload['sid'],
350
+ 'index' => payload['index'] == nil ? payload['index'] : payload['index'].to_i,
351
+ 'author' => payload['author'],
352
+ 'body' => payload['body'],
353
+ 'media' => payload['media'],
354
+ 'attributes' => payload['attributes'],
355
+ 'participant_sid' => payload['participant_sid'],
356
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
357
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
358
+ 'url' => payload['url'],
359
+ 'delivery' => payload['delivery'],
360
+ 'links' => payload['links'],
361
+ 'content_sid' => payload['content_sid'],
362
+ }
363
+
364
+ # Context
365
+ @instance_context = nil
366
+ @params = { 'conversation_sid' => conversation_sid || @properties['conversation_sid'] ,'sid' => sid || @properties['sid'] , }
367
+ end
368
+
369
+ ##
370
+ # Generate an instance context for the instance, the context is capable of
371
+ # performing various actions. All instance actions are proxied to the context
372
+ # @return [MessageContext] CallContext for this CallInstance
373
+ def context
374
+ unless @instance_context
375
+ @instance_context = MessageContext.new(@version , @params['conversation_sid'], @params['sid'])
376
+ end
377
+ @instance_context
378
+ end
379
+
380
+ ##
381
+ # @return [String] The unique ID of the [Account](https://www.twilio.com/docs/iam/api/account) responsible for this message.
382
+ def account_sid
383
+ @properties['account_sid']
384
+ end
385
+
386
+ ##
387
+ # @return [String] The unique ID of the [Conversation](https://www.twilio.com/docs/conversations/api/conversation-resource) for this message.
388
+ def conversation_sid
389
+ @properties['conversation_sid']
390
+ end
391
+
392
+ ##
393
+ # @return [String] A 34 character string that uniquely identifies this resource.
394
+ def sid
395
+ @properties['sid']
396
+ end
397
+
398
+ ##
399
+ # @return [String] The index of the message within the [Conversation](https://www.twilio.com/docs/conversations/api/conversation-resource). Indices may skip numbers, but will always be in order of when the message was received.
400
+ def index
401
+ @properties['index']
402
+ end
403
+
404
+ ##
405
+ # @return [String] The channel specific identifier of the message's author. Defaults to `system`.
406
+ def author
407
+ @properties['author']
408
+ end
409
+
410
+ ##
411
+ # @return [String] The content of the message, can be up to 1,600 characters long.
412
+ def body
413
+ @properties['body']
414
+ end
415
+
416
+ ##
417
+ # @return [Array<Hash>] An array of objects that describe the Message's media, if the message contains media. Each object contains these fields: `content_type` with the MIME type of the media, `filename` with the name of the media, `sid` with the SID of the Media resource, and `size` with the media object's file size in bytes. If the Message has no media, this value is `null`.
418
+ def media
419
+ @properties['media']
420
+ end
421
+
422
+ ##
423
+ # @return [String] A string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \"{}\" will be returned.
424
+ def attributes
425
+ @properties['attributes']
426
+ end
427
+
428
+ ##
429
+ # @return [String] The unique ID of messages's author participant. Null in case of `system` sent message.
430
+ def participant_sid
431
+ @properties['participant_sid']
432
+ end
433
+
434
+ ##
435
+ # @return [Time] The date that this resource was created.
436
+ def date_created
437
+ @properties['date_created']
438
+ end
439
+
440
+ ##
441
+ # @return [Time] The date that this resource was last updated. `null` if the message has not been edited.
442
+ def date_updated
443
+ @properties['date_updated']
444
+ end
445
+
446
+ ##
447
+ # @return [String] An absolute API resource API URL for this message.
448
+ def url
449
+ @properties['url']
450
+ end
451
+
452
+ ##
453
+ # @return [Hash] An object that contains the summary of delivery statuses for the message to non-chat participants.
454
+ def delivery
455
+ @properties['delivery']
456
+ end
457
+
458
+ ##
459
+ # @return [Hash] Contains an absolute API resource URL to access the delivery & read receipts of this message.
460
+ def links
461
+ @properties['links']
462
+ end
463
+
464
+ ##
465
+ # @return [String] The unique ID of the multi-channel [Rich Content](https://www.twilio.com/docs/content) template.
466
+ def content_sid
467
+ @properties['content_sid']
468
+ end
469
+
470
+ ##
471
+ # Delete the MessageInstance
472
+ # @param [ConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
473
+ # @return [Boolean] True if delete succeeds, false otherwise
474
+ def delete(
475
+ x_twilio_webhook_enabled: :unset
476
+ )
477
+
478
+ context.delete(
479
+ x_twilio_webhook_enabled: x_twilio_webhook_enabled,
480
+ )
481
+ end
482
+
483
+ ##
484
+ # Fetch the MessageInstance
485
+ # @return [MessageInstance] Fetched MessageInstance
486
+ def fetch
487
+
488
+ context.fetch
489
+ end
490
+
491
+ ##
492
+ # Update the MessageInstance
493
+ # @param [String] author The channel specific identifier of the message's author. Defaults to `system`.
494
+ # @param [String] body The content of the message, can be up to 1,600 characters long.
495
+ # @param [Time] date_created The date that this resource was created.
496
+ # @param [Time] date_updated The date that this resource was last updated. `null` if the message has not been edited.
497
+ # @param [String] attributes A string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \\\"{}\\\" will be returned.
498
+ # @param [String] subject The subject of the message, can be up to 256 characters long.
499
+ # @param [ConversationMessageEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
500
+ # @return [MessageInstance] Updated MessageInstance
501
+ def update(
502
+ author: :unset,
503
+ body: :unset,
504
+ date_created: :unset,
505
+ date_updated: :unset,
506
+ attributes: :unset,
507
+ subject: :unset,
508
+ x_twilio_webhook_enabled: :unset
509
+ )
510
+
511
+ context.update(
512
+ author: author,
513
+ body: body,
514
+ date_created: date_created,
515
+ date_updated: date_updated,
516
+ attributes: attributes,
517
+ subject: subject,
518
+ x_twilio_webhook_enabled: x_twilio_webhook_enabled,
519
+ )
520
+ end
521
+
522
+ ##
523
+ # Access the delivery_receipts
524
+ # @return [delivery_receipts] delivery_receipts
525
+ def delivery_receipts
526
+ context.delivery_receipts
527
+ end
528
+
529
+ ##
530
+ # Provide a user friendly representation
531
+ def to_s
532
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
533
+ "<Twilio.Conversations.V1.MessageInstance #{values}>"
534
+ end
535
+
536
+ ##
537
+ # Provide a detailed, user friendly representation
538
+ def inspect
539
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
540
+ "<Twilio.Conversations.V1.MessageInstance #{values}>"
541
+ end
542
+ end
543
+
544
+ end
511
545
  end
512
- end
513
546
  end
514
- end
515
547
  end
516
- end
517
- end
548
+ end
549
+
550
+