twilio-ruby 5.72.0 → 6.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (654) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/pr-lint.yml +8 -2
  3. data/.github/workflows/test-and-deploy.yml +14 -4
  4. data/.gitignore +3 -0
  5. data/CHANGES.md +281 -1
  6. data/CONTRIBUTING.md +10 -8
  7. data/LICENSE +1 -1
  8. data/Makefile +3 -0
  9. data/README.md +133 -40
  10. data/UPGRADE.md +10 -0
  11. data/advanced-examples/custom-http-client.md +170 -0
  12. data/cluster_spec.rb +77 -0
  13. data/lib/twilio-ruby/base/client_base.rb +124 -0
  14. data/lib/twilio-ruby/framework/rest/error.rb +0 -12
  15. data/lib/twilio-ruby/jwt/access_token.rb +0 -59
  16. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +198 -178
  17. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +372 -332
  18. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +372 -332
  19. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +121 -114
  20. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +214 -192
  21. data/lib/twilio-ruby/rest/accounts/v1.rb +45 -42
  22. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  23. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  24. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +371 -365
  25. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +555 -514
  26. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +617 -586
  27. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +328 -320
  28. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +413 -0
  29. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +413 -0
  30. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +413 -0
  31. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +413 -0
  32. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +413 -0
  33. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +413 -0
  34. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +413 -0
  35. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +433 -0
  36. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +136 -118
  37. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +203 -194
  38. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +252 -289
  39. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +317 -303
  40. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +405 -417
  41. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +291 -342
  42. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +498 -511
  43. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +839 -641
  44. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +839 -641
  45. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +163 -0
  46. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +239 -0
  47. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +963 -991
  48. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +653 -717
  49. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +455 -458
  50. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +498 -493
  51. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +427 -407
  52. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +322 -351
  53. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +399 -418
  54. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +541 -554
  55. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +541 -553
  56. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +541 -553
  57. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +846 -903
  58. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +336 -302
  59. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +167 -166
  60. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +344 -350
  61. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +618 -625
  62. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +157 -138
  63. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +157 -138
  64. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +405 -399
  65. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +371 -358
  66. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +341 -338
  67. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +427 -390
  68. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +359 -380
  69. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +369 -385
  70. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +365 -372
  71. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +514 -513
  72. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +420 -408
  73. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +336 -306
  74. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +376 -368
  75. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +400 -373
  76. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +347 -0
  77. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/{auth_calls_mapping → auth_type_calls}/auth_calls_ip_access_control_list_mapping.rb +194 -195
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +140 -0
  79. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/{auth_registrations_mapping → auth_type_registrations}/auth_registrations_credential_list_mapping.rb +194 -195
  80. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +126 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +94 -103
  82. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +340 -339
  83. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +340 -338
  84. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +650 -645
  85. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +413 -421
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +400 -374
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +141 -150
  88. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +171 -154
  89. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +365 -350
  90. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +319 -339
  91. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +319 -339
  92. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +319 -339
  93. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +319 -339
  94. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +319 -339
  95. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +319 -339
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +319 -339
  97. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +319 -339
  98. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +386 -416
  99. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +489 -484
  100. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +112 -104
  101. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +172 -161
  102. data/lib/twilio-ruby/rest/api/v2010/account.rb +982 -943
  103. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  104. data/lib/twilio-ruby/rest/api.rb +25 -34
  105. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  106. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +234 -213
  107. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +210 -207
  108. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +380 -388
  109. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +429 -411
  110. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +403 -385
  111. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +471 -462
  112. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +234 -211
  113. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +363 -375
  114. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +427 -445
  115. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +242 -244
  116. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +215 -226
  117. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +519 -500
  118. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +427 -413
  119. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +674 -640
  120. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +201 -188
  121. data/lib/twilio-ruby/rest/autopilot/v1.rb +48 -45
  122. data/lib/twilio-ruby/rest/autopilot.rb +3 -34
  123. data/lib/twilio-ruby/rest/autopilot_base.rb +38 -0
  124. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +300 -279
  125. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +299 -279
  126. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +271 -248
  127. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +246 -235
  128. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +245 -218
  129. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  130. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  131. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  132. data/lib/twilio-ruby/rest/chat/v1/credential.rb +420 -403
  133. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +375 -391
  134. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +423 -440
  135. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +440 -437
  136. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +535 -515
  137. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +397 -367
  138. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +245 -239
  139. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +466 -440
  140. data/lib/twilio-ruby/rest/chat/v1/service.rb +862 -894
  141. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  142. data/lib/twilio-ruby/rest/chat/v2/credential.rb +420 -401
  143. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +372 -370
  144. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +375 -386
  145. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +487 -527
  146. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +515 -533
  147. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +441 -467
  148. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +607 -605
  149. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +397 -369
  150. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +365 -381
  151. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +407 -419
  152. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +510 -491
  153. data/lib/twilio-ruby/rest/chat/v2/service.rb +765 -778
  154. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  155. data/lib/twilio-ruby/rest/chat/v3/channel.rb +289 -267
  156. data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
  157. data/lib/twilio-ruby/rest/chat.rb +4 -48
  158. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  159. data/lib/twilio-ruby/rest/client.rb +328 -570
  160. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +208 -0
  161. data/lib/twilio-ruby/rest/content/v1/content.rb +364 -0
  162. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +252 -0
  163. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +266 -0
  164. data/lib/twilio-ruby/rest/content/v1.rb +61 -0
  165. data/lib/twilio-ruby/rest/content.rb +15 -0
  166. data/lib/twilio-ruby/rest/content_base.rb +38 -0
  167. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +474 -444
  168. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -227
  169. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +279 -252
  170. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +335 -344
  171. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +530 -495
  172. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +499 -495
  173. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +426 -403
  174. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +606 -552
  175. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +426 -409
  176. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +307 -304
  177. data/lib/twilio-ruby/rest/conversations/v1/role.rb +385 -356
  178. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +365 -373
  179. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +300 -289
  180. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +246 -235
  181. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +307 -279
  182. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +342 -371
  183. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +537 -535
  184. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +508 -530
  185. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +435 -438
  186. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +618 -588
  187. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +313 -317
  188. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +397 -380
  189. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +447 -455
  190. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +485 -474
  191. data/lib/twilio-ruby/rest/conversations/v1/service.rb +477 -447
  192. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +446 -435
  193. data/lib/twilio-ruby/rest/conversations/v1/user.rb +473 -441
  194. data/lib/twilio-ruby/rest/conversations/v1.rb +129 -136
  195. data/lib/twilio-ruby/rest/conversations.rb +9 -34
  196. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  197. data/lib/twilio-ruby/rest/events/v1/event_type.rb +306 -288
  198. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +302 -0
  199. data/lib/twilio-ruby/rest/events/v1/schema.rb +229 -218
  200. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +114 -100
  201. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +120 -103
  202. data/lib/twilio-ruby/rest/events/v1/sink.rb +439 -408
  203. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +368 -339
  204. data/lib/twilio-ruby/rest/events/v1/subscription.rb +420 -387
  205. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  206. data/lib/twilio-ruby/rest/events.rb +5 -34
  207. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  208. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +451 -0
  209. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +366 -330
  210. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +489 -496
  211. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +565 -570
  212. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +331 -0
  213. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +231 -0
  214. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +445 -0
  215. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +360 -0
  216. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +445 -0
  217. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +364 -0
  218. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +217 -0
  219. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +155 -0
  220. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +141 -0
  221. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +196 -0
  222. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +245 -229
  223. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +329 -319
  224. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +400 -398
  225. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +249 -225
  226. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +379 -331
  227. data/lib/twilio-ruby/rest/flex_api/v1.rb +195 -92
  228. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +146 -0
  229. data/lib/twilio-ruby/rest/flex_api/v2.rb +40 -0
  230. data/lib/twilio-ruby/rest/flex_api.rb +24 -31
  231. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  232. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +244 -227
  233. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  234. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  235. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  236. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +312 -315
  237. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +350 -0
  238. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +271 -255
  239. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +244 -225
  240. data/lib/twilio-ruby/rest/insights/v1/call.rb +260 -236
  241. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +496 -426
  242. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +485 -467
  243. data/lib/twilio-ruby/rest/insights/v1/conference.rb +506 -502
  244. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +379 -371
  245. data/lib/twilio-ruby/rest/insights/v1/room.rb +494 -489
  246. data/lib/twilio-ruby/rest/insights/v1/setting.rb +246 -207
  247. data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
  248. data/lib/twilio-ruby/rest/insights.rb +6 -34
  249. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  250. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +511 -0
  251. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +226 -0
  252. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +383 -0
  253. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +250 -0
  254. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +540 -0
  255. data/lib/twilio-ruby/rest/intelligence/v2.rb +64 -0
  256. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  257. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  258. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +420 -364
  259. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +375 -359
  260. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +423 -397
  261. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +440 -409
  262. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +535 -488
  263. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +397 -347
  264. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +245 -233
  265. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +466 -418
  266. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +862 -779
  267. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  268. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +420 -364
  269. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +372 -343
  270. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +375 -359
  271. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +487 -451
  272. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +515 -479
  273. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +441 -411
  274. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +607 -555
  275. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +397 -347
  276. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +365 -351
  277. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +398 -384
  278. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +510 -467
  279. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +765 -689
  280. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  281. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  282. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  283. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +243 -239
  284. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  285. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +342 -253
  286. data/lib/twilio-ruby/rest/lookups/v2.rb +42 -38
  287. data/lib/twilio-ruby/rest/lookups.rb +2 -41
  288. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  289. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +413 -387
  290. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +399 -389
  291. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +245 -214
  292. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +425 -393
  293. data/lib/twilio-ruby/rest/media/v1.rb +72 -69
  294. data/lib/twilio-ruby/rest/media.rb +4 -34
  295. data/lib/twilio-ruby/rest/media_base.rb +38 -0
  296. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +136 -0
  297. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +360 -346
  298. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +488 -443
  299. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +189 -0
  300. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +280 -0
  301. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +289 -0
  302. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +238 -0
  303. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +155 -144
  304. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +214 -0
  305. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +196 -0
  306. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +352 -335
  307. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +359 -341
  308. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +359 -336
  309. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +507 -426
  310. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +121 -115
  311. data/lib/twilio-ruby/rest/messaging/v1/service.rb +741 -763
  312. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +106 -94
  313. data/lib/twilio-ruby/rest/messaging/v1.rb +172 -90
  314. data/lib/twilio-ruby/rest/messaging.rb +28 -35
  315. data/lib/twilio-ruby/rest/messaging_base.rb +38 -0
  316. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +359 -0
  317. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +352 -0
  318. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +208 -0
  319. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +340 -295
  320. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +375 -0
  321. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +368 -0
  322. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +412 -322
  323. data/lib/twilio-ruby/rest/microvisor/v1.rb +87 -53
  324. data/lib/twilio-ruby/rest/microvisor.rb +4 -34
  325. data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
  326. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +402 -395
  327. data/lib/twilio-ruby/rest/monitor/v1/event.rb +388 -390
  328. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  329. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  330. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  331. data/lib/twilio-ruby/rest/notify/v1/credential.rb +422 -408
  332. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +440 -452
  333. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +313 -362
  334. data/lib/twilio-ruby/rest/notify/v1/service.rb +628 -622
  335. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  336. data/lib/twilio-ruby/rest/notify.rb +3 -34
  337. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  338. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +224 -0
  339. data/lib/twilio-ruby/rest/numbers/v1.rb +49 -0
  340. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +279 -261
  341. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +325 -298
  342. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +334 -309
  343. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +194 -181
  344. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +613 -607
  345. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +392 -351
  346. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +291 -266
  347. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +326 -307
  348. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +413 -371
  349. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +291 -266
  350. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +177 -181
  351. data/lib/twilio-ruby/rest/numbers/v2.rb +33 -28
  352. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  353. data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
  354. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +171 -0
  355. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +185 -0
  356. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +262 -0
  357. data/lib/twilio-ruby/rest/oauth/v1/token.rb +179 -0
  358. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +213 -0
  359. data/lib/twilio-ruby/rest/oauth/v1.rb +64 -0
  360. data/lib/twilio-ruby/rest/oauth.rb +33 -0
  361. data/lib/twilio-ruby/rest/oauth_base.rb +38 -0
  362. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +412 -375
  363. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +395 -358
  364. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +451 -418
  365. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +409 -369
  366. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +495 -459
  367. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +42 -38
  368. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +376 -396
  369. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +449 -446
  370. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +616 -625
  371. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  372. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +302 -298
  373. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +326 -309
  374. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +343 -330
  375. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +430 -398
  376. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  377. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +379 -374
  378. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +443 -399
  379. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +438 -407
  380. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +379 -374
  381. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +420 -398
  382. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +441 -404
  383. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +379 -374
  384. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +420 -398
  385. data/lib/twilio-ruby/rest/preview/sync/service.rb +496 -452
  386. data/lib/twilio-ruby/rest/preview/sync.rb +42 -37
  387. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +234 -205
  388. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +234 -205
  389. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +210 -199
  390. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +380 -375
  391. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +429 -400
  392. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +403 -373
  393. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +460 -430
  394. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +234 -205
  395. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +363 -362
  396. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +427 -417
  397. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +242 -230
  398. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +215 -214
  399. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +519 -488
  400. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +654 -619
  401. data/lib/twilio-ruby/rest/preview/understand.rb +42 -38
  402. data/lib/twilio-ruby/rest/preview/wireless/command.rb +392 -364
  403. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +449 -398
  404. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +232 -205
  405. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +580 -523
  406. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  407. data/lib/twilio-ruby/rest/preview.rb +11 -102
  408. data/lib/twilio-ruby/rest/preview_base.rb +63 -0
  409. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +298 -275
  410. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +107 -119
  411. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +291 -268
  412. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +107 -119
  413. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +298 -275
  414. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +220 -197
  415. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +121 -135
  416. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  417. data/lib/twilio-ruby/rest/pricing/v2/country.rb +290 -270
  418. data/lib/twilio-ruby/rest/pricing/v2/number.rb +232 -217
  419. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +298 -275
  420. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +238 -220
  421. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +121 -138
  422. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  423. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  424. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  425. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +420 -403
  426. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +409 -418
  427. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +431 -449
  428. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +422 -455
  429. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +523 -547
  430. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +400 -370
  431. data/lib/twilio-ruby/rest/proxy/v1/service.rb +560 -596
  432. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  433. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  434. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  435. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +260 -227
  436. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +260 -223
  437. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +260 -227
  438. data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
  439. data/lib/twilio-ruby/rest/routes.rb +4 -34
  440. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  441. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +316 -323
  442. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +413 -380
  443. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +208 -208
  444. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +408 -384
  445. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +337 -338
  446. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +365 -383
  447. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +404 -396
  448. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +457 -447
  449. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +223 -234
  450. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +343 -353
  451. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +413 -380
  452. data/lib/twilio-ruby/rest/serverless/v1/service.rb +524 -493
  453. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  454. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  455. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  456. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +206 -199
  457. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +221 -218
  458. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +362 -355
  459. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +423 -394
  460. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +206 -200
  461. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +221 -221
  462. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +362 -361
  463. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +471 -449
  464. data/lib/twilio-ruby/rest/studio/v1/flow.rb +381 -355
  465. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  466. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +206 -200
  467. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +221 -221
  468. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +362 -361
  469. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +464 -442
  470. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +342 -320
  471. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +232 -0
  472. data/lib/twilio-ruby/rest/studio/v2/flow.rb +520 -472
  473. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +121 -99
  474. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  475. data/lib/twilio-ruby/rest/studio.rb +3 -41
  476. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  477. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +397 -362
  478. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +474 -483
  479. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +403 -406
  480. data/lib/twilio-ruby/rest/supersim/v1/network.rb +306 -297
  481. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +338 -332
  482. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +381 -351
  483. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +259 -0
  484. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +243 -224
  485. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +201 -188
  486. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +464 -453
  487. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +362 -361
  488. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +314 -344
  489. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -140
  490. data/lib/twilio-ruby/rest/supersim.rb +16 -34
  491. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  492. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +377 -371
  493. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +457 -423
  494. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +470 -490
  495. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +377 -370
  496. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +471 -445
  497. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +473 -495
  498. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +377 -368
  499. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +471 -444
  500. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +139 -132
  501. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +420 -400
  502. data/lib/twilio-ruby/rest/sync/v1/service.rb +576 -567
  503. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  504. data/lib/twilio-ruby/rest/sync.rb +2 -34
  505. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  506. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +408 -395
  507. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +454 -464
  508. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +702 -736
  509. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +616 -661
  510. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +410 -382
  511. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +359 -369
  512. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +279 -275
  513. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +230 -236
  514. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +246 -258
  515. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +571 -566
  516. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +683 -732
  517. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +390 -388
  518. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +235 -239
  519. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +281 -265
  520. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +215 -193
  521. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +251 -234
  522. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +632 -631
  523. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +359 -375
  524. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +245 -241
  525. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +230 -244
  526. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +525 -510
  527. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +353 -356
  528. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +231 -206
  529. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +241 -234
  530. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +722 -730
  531. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  532. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  533. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  534. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +343 -320
  535. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +343 -317
  536. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +441 -419
  537. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +476 -451
  538. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +224 -191
  539. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +624 -630
  540. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  541. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  542. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  543. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +360 -352
  544. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +336 -323
  545. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +334 -321
  546. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +529 -513
  547. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +384 -346
  548. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +283 -261
  549. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +276 -252
  550. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +398 -359
  551. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +283 -261
  552. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +360 -352
  553. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +336 -323
  554. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +334 -321
  555. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +529 -513
  556. data/lib/twilio-ruby/rest/trusthub/v1.rb +132 -139
  557. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  558. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  559. data/lib/twilio-ruby/rest/verify/v2/form.rb +195 -183
  560. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +223 -207
  561. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +272 -262
  562. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +191 -198
  563. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +500 -539
  564. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +448 -461
  565. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +249 -289
  566. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +423 -422
  567. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +380 -363
  568. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +402 -388
  569. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +421 -384
  570. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +374 -366
  571. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +218 -205
  572. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +448 -420
  573. data/lib/twilio-ruby/rest/verify/v2/service.rb +767 -780
  574. data/lib/twilio-ruby/rest/verify/v2/template.rb +223 -198
  575. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +381 -387
  576. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +239 -226
  577. data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
  578. data/lib/twilio-ruby/rest/verify.rb +7 -34
  579. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  580. data/lib/twilio-ruby/rest/video/v1/composition.rb +482 -507
  581. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +530 -647
  582. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +281 -261
  583. data/lib/twilio-ruby/rest/video/v1/recording.rb +432 -426
  584. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +281 -261
  585. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +259 -0
  586. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +332 -0
  587. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +181 -0
  588. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +339 -0
  589. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +503 -0
  590. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +170 -0
  591. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +428 -0
  592. data/lib/twilio-ruby/rest/video/v1/room.rb +611 -602
  593. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  594. data/lib/twilio-ruby/rest/video.rb +7 -34
  595. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  596. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +160 -176
  597. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +502 -486
  598. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +441 -434
  599. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +392 -352
  600. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +135 -121
  601. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +196 -183
  602. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +382 -397
  603. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +217 -190
  604. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +122 -121
  605. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +378 -339
  606. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +361 -319
  607. data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
  608. data/lib/twilio-ruby/rest/voice.rb +7 -34
  609. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  610. data/lib/twilio-ruby/rest/wireless/v1/command.rb +413 -406
  611. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +464 -436
  612. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +299 -284
  613. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +243 -243
  614. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +640 -647
  615. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +230 -221
  616. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  617. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  618. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  619. data/lib/twilio-ruby/rest.rb +1 -0
  620. data/lib/twilio-ruby/twiml/voice_response.rb +132 -33
  621. data/lib/twilio-ruby/version.rb +1 -1
  622. data/sonar-project.properties +1 -1
  623. data/twilio-ruby.gemspec +1 -1
  624. metadata +118 -38
  625. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  626. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  627. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  628. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  629. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  630. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  631. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  632. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  633. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  634. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  635. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  636. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  637. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  638. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -314
  639. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  640. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +0 -559
  641. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +0 -165
  642. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +0 -225
  643. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +0 -195
  644. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +0 -186
  645. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -277
  646. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -65
  647. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  648. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
  649. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
  650. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  651. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  652. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  653. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
  654. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,522 +1,542 @@
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 - Chat
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 Chat < Domain
12
- class V1 < Version
13
- class ServiceContext < InstanceContext
14
- class ChannelList < ListResource
15
- ##
16
- # Initialize the ChannelList
17
- # @param [Version] version Version that contains the resource
18
- # @param [String] service_sid The SID of the
19
- # {Service}[https://www.twilio.com/docs/api/chat/rest/services] the resource is
20
- # associated with.
21
- # @return [ChannelList] ChannelList
22
- def initialize(version, service_sid: nil)
23
- super(version)
24
-
25
- # Path Solution
26
- @solution = {service_sid: service_sid}
27
- @uri = "/Services/#{@solution[:service_sid]}/Channels"
28
- end
29
-
30
- ##
31
- # Create the ChannelInstance
32
- # @param [String] friendly_name A descriptive string that you create to describe
33
- # the new resource. It can be up to 64 characters long.
34
- # @param [String] unique_name An application-defined string that uniquely
35
- # identifies the resource. It can be used to address the resource in place of the
36
- # resource's `sid` in the URL. This value must be 64 characters or less in length
37
- # and be unique within the Service.
38
- # @param [String] attributes A valid JSON string that contains
39
- # application-specific data.
40
- # @param [channel.ChannelType] type The visibility of the channel. Can be:
41
- # `public` or `private` and defaults to `public`.
42
- # @return [ChannelInstance] Created ChannelInstance
43
- def create(friendly_name: :unset, unique_name: :unset, attributes: :unset, type: :unset)
44
- data = Twilio::Values.of({
45
- 'FriendlyName' => friendly_name,
46
- 'UniqueName' => unique_name,
47
- 'Attributes' => attributes,
48
- 'Type' => type,
49
- })
50
-
51
- payload = @version.create('POST', @uri, data: data)
52
-
53
- ChannelInstance.new(@version, payload, service_sid: @solution[:service_sid], )
54
- end
55
-
56
- ##
57
- # Lists ChannelInstance records from the API as a list.
58
- # Unlike stream(), this operation is eager and will load `limit` records into
59
- # memory before returning.
60
- # @param [Array[channel.ChannelType]] type The visibility of the Channels to read.
61
- # Can be: `public` or `private` and defaults to `public`.
62
- # @param [Integer] limit Upper limit for the number of records to return. stream()
63
- # guarantees to never return more than limit. Default is no limit
64
- # @param [Integer] page_size Number of records to fetch per request, when
65
- # not set will use the default value of 50 records. If no page_size is defined
66
- # but a limit is defined, stream() will attempt to read the limit with the most
67
- # efficient page size, i.e. min(limit, 1000)
68
- # @return [Array] Array of up to limit results
69
- def list(type: :unset, limit: nil, page_size: nil)
70
- self.stream(type: type, limit: limit, page_size: page_size).entries
71
- end
72
-
73
- ##
74
- # Streams ChannelInstance records from the API as an Enumerable.
75
- # This operation lazily loads records as efficiently as possible until the limit
76
- # is reached.
77
- # @param [Array[channel.ChannelType]] type The visibility of the Channels to read.
78
- # Can be: `public` or `private` and defaults to `public`.
79
- # @param [Integer] limit Upper limit for the number of records to return. stream()
80
- # guarantees to never return more than limit. Default is no limit.
81
- # @param [Integer] page_size Number of records to fetch per request, when
82
- # not set will use the default value of 50 records. If no page_size is defined
83
- # but a limit is defined, stream() will attempt to read the limit with the most
84
- # efficient page size, i.e. min(limit, 1000)
85
- # @return [Enumerable] Enumerable that will yield up to limit results
86
- def stream(type: :unset, limit: nil, page_size: nil)
87
- limits = @version.read_limits(limit, page_size)
88
-
89
- page = self.page(type: type, page_size: limits[:page_size], )
90
-
91
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
92
- end
93
-
94
- ##
95
- # When passed a block, yields ChannelInstance records from the API.
96
- # This operation lazily loads records as efficiently as possible until the limit
97
- # is reached.
98
- def each
99
- limits = @version.read_limits
100
-
101
- page = self.page(page_size: limits[:page_size], )
102
-
103
- @version.stream(page,
104
- limit: limits[:limit],
105
- page_limit: limits[:page_limit]).each {|x| yield x}
106
- end
107
-
108
- ##
109
- # Retrieve a single page of ChannelInstance records from the API.
110
- # Request is executed immediately.
111
- # @param [Array[channel.ChannelType]] type The visibility of the Channels to read.
112
- # Can be: `public` or `private` and defaults to `public`.
113
- # @param [String] page_token PageToken provided by the API
114
- # @param [Integer] page_number Page Number, this value is simply for client state
115
- # @param [Integer] page_size Number of records to return, defaults to 50
116
- # @return [Page] Page of ChannelInstance
117
- def page(type: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
118
- params = Twilio::Values.of({
119
- 'Type' => Twilio.serialize_list(type) { |e| e },
120
- 'PageToken' => page_token,
121
- 'Page' => page_number,
122
- 'PageSize' => page_size,
123
- })
124
-
125
- response = @version.page('GET', @uri, params: params)
126
-
127
- ChannelPage.new(@version, response, @solution)
128
- end
129
-
130
- ##
131
- # Retrieve a single page of ChannelInstance records from the API.
132
- # Request is executed immediately.
133
- # @param [String] target_url API-generated URL for the requested results page
134
- # @return [Page] Page of ChannelInstance
135
- def get_page(target_url)
136
- response = @version.domain.request(
137
- 'GET',
138
- target_url
139
- )
140
- ChannelPage.new(@version, response, @solution)
141
- end
142
-
143
- ##
144
- # Provide a user friendly representation
145
- def to_s
146
- '#<Twilio.Chat.V1.ChannelList>'
147
- end
148
- end
149
-
150
- class ChannelPage < Page
151
- ##
152
- # Initialize the ChannelPage
153
- # @param [Version] version Version that contains the resource
154
- # @param [Response] response Response from the API
155
- # @param [Hash] solution Path solution for the resource
156
- # @return [ChannelPage] ChannelPage
157
- def initialize(version, response, solution)
158
- super(version, response)
159
-
160
- # Path Solution
161
- @solution = solution
162
- end
163
-
164
- ##
165
- # Build an instance of ChannelInstance
166
- # @param [Hash] payload Payload response from the API
167
- # @return [ChannelInstance] ChannelInstance
168
- def get_instance(payload)
169
- ChannelInstance.new(@version, payload, service_sid: @solution[:service_sid], )
170
- end
171
-
172
- ##
173
- # Provide a user friendly representation
174
- def to_s
175
- '<Twilio.Chat.V1.ChannelPage>'
176
- end
177
- end
178
-
179
- class ChannelContext < InstanceContext
180
- ##
181
- # Initialize the ChannelContext
182
- # @param [Version] version Version that contains the resource
183
- # @param [String] service_sid The SID of the
184
- # {Service}[https://www.twilio.com/docs/api/chat/rest/services] to fetch the
185
- # resource from.
186
- # @param [String] sid The Twilio-provided string that uniquely identifies the
187
- # Channel resource to fetch.
188
- # @return [ChannelContext] ChannelContext
189
- def initialize(version, service_sid, sid)
190
- super(version)
191
-
192
- # Path Solution
193
- @solution = {service_sid: service_sid, sid: sid, }
194
- @uri = "/Services/#{@solution[:service_sid]}/Channels/#{@solution[:sid]}"
195
-
196
- # Dependents
197
- @members = nil
198
- @messages = nil
199
- @invites = nil
200
- end
201
-
202
- ##
203
- # Fetch the ChannelInstance
204
- # @return [ChannelInstance] Fetched ChannelInstance
205
- def fetch
206
- payload = @version.fetch('GET', @uri)
207
-
208
- ChannelInstance.new(@version, payload, service_sid: @solution[:service_sid], sid: @solution[:sid], )
209
- end
210
-
211
- ##
212
- # Delete the ChannelInstance
213
- # @return [Boolean] true if delete succeeds, false otherwise
214
- def delete
215
- @version.delete('DELETE', @uri)
216
- end
217
-
218
- ##
219
- # Update the ChannelInstance
220
- # @param [String] friendly_name A descriptive string that you create to describe
221
- # the resource. It can be up to 64 characters long.
222
- # @param [String] unique_name An application-defined string that uniquely
223
- # identifies the resource. It can be used to address the resource in place of the
224
- # resource's `sid` in the URL. This value must be 64 characters or less in length
225
- # and be unique within the Service.
226
- # @param [String] attributes A valid JSON string that contains
227
- # application-specific data.
228
- # @return [ChannelInstance] Updated ChannelInstance
229
- def update(friendly_name: :unset, unique_name: :unset, attributes: :unset)
230
- data = Twilio::Values.of({
231
- 'FriendlyName' => friendly_name,
232
- 'UniqueName' => unique_name,
233
- 'Attributes' => attributes,
234
- })
235
-
236
- payload = @version.update('POST', @uri, data: data)
237
-
238
- ChannelInstance.new(@version, payload, service_sid: @solution[:service_sid], sid: @solution[:sid], )
239
- end
240
-
241
- ##
242
- # Access the members
243
- # @return [MemberList]
244
- # @return [MemberContext] if sid was passed.
245
- def members(sid=:unset)
246
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
247
-
248
- if sid != :unset
249
- return MemberContext.new(@version, @solution[:service_sid], @solution[:sid], sid, )
250
- end
251
-
252
- unless @members
253
- @members = MemberList.new(
254
- @version,
255
- service_sid: @solution[:service_sid],
256
- channel_sid: @solution[:sid],
257
- )
258
- end
259
-
260
- @members
261
- end
262
-
263
- ##
264
- # Access the messages
265
- # @return [MessageList]
266
- # @return [MessageContext] if sid was passed.
267
- def messages(sid=:unset)
268
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
269
-
270
- if sid != :unset
271
- return MessageContext.new(@version, @solution[:service_sid], @solution[:sid], sid, )
272
- end
273
-
274
- unless @messages
275
- @messages = MessageList.new(
276
- @version,
277
- service_sid: @solution[:service_sid],
278
- channel_sid: @solution[:sid],
279
- )
280
- end
281
-
282
- @messages
283
- end
284
-
285
- ##
286
- # Access the invites
287
- # @return [InviteList]
288
- # @return [InviteContext] if sid was passed.
289
- def invites(sid=:unset)
290
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
291
-
292
- if sid != :unset
293
- return InviteContext.new(@version, @solution[:service_sid], @solution[:sid], sid, )
294
- end
295
-
296
- unless @invites
297
- @invites = InviteList.new(
298
- @version,
299
- service_sid: @solution[:service_sid],
300
- channel_sid: @solution[:sid],
301
- )
302
- end
303
-
304
- @invites
305
- end
306
-
307
- ##
308
- # Provide a user friendly representation
309
- def to_s
310
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
311
- "#<Twilio.Chat.V1.ChannelContext #{context}>"
312
- end
313
-
314
- ##
315
- # Provide a detailed, user friendly representation
316
- def inspect
317
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
318
- "#<Twilio.Chat.V1.ChannelContext #{context}>"
319
- end
320
- end
321
-
322
- class ChannelInstance < InstanceResource
323
- ##
324
- # Initialize the ChannelInstance
325
- # @param [Version] version Version that contains the resource
326
- # @param [Hash] payload payload that contains response from Twilio
327
- # @param [String] service_sid The SID of the
328
- # {Service}[https://www.twilio.com/docs/api/chat/rest/services] the resource is
329
- # associated with.
330
- # @param [String] sid The Twilio-provided string that uniquely identifies the
331
- # Channel resource to fetch.
332
- # @return [ChannelInstance] ChannelInstance
333
- def initialize(version, payload, service_sid: nil, sid: nil)
334
- super(version)
335
-
336
- # Marshaled Properties
337
- @properties = {
338
- 'sid' => payload['sid'],
339
- 'account_sid' => payload['account_sid'],
340
- 'service_sid' => payload['service_sid'],
341
- 'friendly_name' => payload['friendly_name'],
342
- 'unique_name' => payload['unique_name'],
343
- 'attributes' => payload['attributes'],
344
- 'type' => payload['type'],
345
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
346
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
347
- 'created_by' => payload['created_by'],
348
- 'members_count' => payload['members_count'].to_i,
349
- 'messages_count' => payload['messages_count'].to_i,
350
- 'url' => payload['url'],
351
- 'links' => payload['links'],
352
- }
353
-
354
- # Context
355
- @instance_context = nil
356
- @params = {'service_sid' => service_sid, 'sid' => sid || @properties['sid'], }
357
- end
358
-
359
- ##
360
- # Generate an instance context for the instance, the context is capable of
361
- # performing various actions. All instance actions are proxied to the context
362
- # @return [ChannelContext] ChannelContext for this ChannelInstance
363
- def context
364
- unless @instance_context
365
- @instance_context = ChannelContext.new(@version, @params['service_sid'], @params['sid'], )
366
- end
367
- @instance_context
368
- end
369
-
370
- ##
371
- # @return [String] The unique string that identifies the resource
372
- def sid
373
- @properties['sid']
374
- end
375
-
376
- ##
377
- # @return [String] The SID of the Account that created the resource
378
- def account_sid
379
- @properties['account_sid']
380
- end
381
-
382
- ##
383
- # @return [String] The SID of the Service that the resource is associated with
384
- def service_sid
385
- @properties['service_sid']
386
- end
387
-
388
- ##
389
- # @return [String] The string that you assigned to describe the resource
390
- def friendly_name
391
- @properties['friendly_name']
392
- end
393
-
394
- ##
395
- # @return [String] An application-defined string that uniquely identifies the resource
396
- def unique_name
397
- @properties['unique_name']
398
- end
399
-
400
- ##
401
- # @return [String] The JSON string that stores application-specific data
402
- def attributes
403
- @properties['attributes']
404
- end
405
-
406
- ##
407
- # @return [channel.ChannelType] The visibility of the channel. Can be: `public` or `private`
408
- def type
409
- @properties['type']
410
- end
411
-
412
- ##
413
- # @return [Time] The RFC 2822 date and time in GMT when the resource was created
414
- def date_created
415
- @properties['date_created']
416
- end
417
-
418
- ##
419
- # @return [Time] The RFC 2822 date and time in GMT when the resource was last updated
420
- def date_updated
421
- @properties['date_updated']
422
- end
423
-
424
- ##
425
- # @return [String] The identity of the User that created the channel
426
- def created_by
427
- @properties['created_by']
428
- end
429
-
430
- ##
431
- # @return [String] The number of Members in the Channel
432
- def members_count
433
- @properties['members_count']
434
- end
435
-
436
- ##
437
- # @return [String] The number of Messages in the Channel
438
- def messages_count
439
- @properties['messages_count']
440
- end
441
-
442
- ##
443
- # @return [String] The absolute URL of the Channel resource
444
- def url
445
- @properties['url']
446
- end
447
-
448
- ##
449
- # @return [String] Absolute URLs to access the Members, Messages , Invites and, if it exists, the last Message for the Channel
450
- def links
451
- @properties['links']
452
- end
453
-
454
- ##
455
- # Fetch the ChannelInstance
456
- # @return [ChannelInstance] Fetched ChannelInstance
457
- def fetch
458
- context.fetch
459
- end
460
-
461
- ##
462
- # Delete the ChannelInstance
463
- # @return [Boolean] true if delete succeeds, false otherwise
464
- def delete
465
- context.delete
466
- end
467
-
468
- ##
469
- # Update the ChannelInstance
470
- # @param [String] friendly_name A descriptive string that you create to describe
471
- # the resource. It can be up to 64 characters long.
472
- # @param [String] unique_name An application-defined string that uniquely
473
- # identifies the resource. It can be used to address the resource in place of the
474
- # resource's `sid` in the URL. This value must be 64 characters or less in length
475
- # and be unique within the Service.
476
- # @param [String] attributes A valid JSON string that contains
477
- # application-specific data.
478
- # @return [ChannelInstance] Updated ChannelInstance
479
- def update(friendly_name: :unset, unique_name: :unset, attributes: :unset)
480
- context.update(friendly_name: friendly_name, unique_name: unique_name, attributes: attributes, )
481
- end
482
-
483
- ##
484
- # Access the members
485
- # @return [members] members
486
- def members
487
- context.members
488
- end
489
-
490
- ##
491
- # Access the messages
492
- # @return [messages] messages
493
- def messages
494
- context.messages
495
- end
496
-
497
- ##
498
- # Access the invites
499
- # @return [invites] invites
500
- def invites
501
- context.invites
502
- end
503
14
 
504
- ##
505
- # Provide a user friendly representation
506
- def to_s
507
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
508
- "<Twilio.Chat.V1.ChannelInstance #{values}>"
509
- end
510
15
 
511
- ##
512
- # Provide a detailed, user friendly representation
513
- def inspect
514
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
515
- "<Twilio.Chat.V1.ChannelInstance #{values}>"
16
+ module Twilio
17
+ module REST
18
+ class Chat < ChatBase
19
+ class V1 < Version
20
+ class ServiceContext < InstanceContext
21
+
22
+ class ChannelList < ListResource
23
+ ##
24
+ # Initialize the ChannelList
25
+ # @param [Version] version Version that contains the resource
26
+ # @return [ChannelList] ChannelList
27
+ def initialize(version, service_sid: nil)
28
+ super(version)
29
+ # Path Solution
30
+ @solution = { service_sid: service_sid }
31
+ @uri = "/Services/#{@solution[:service_sid]}/Channels"
32
+
33
+ end
34
+ ##
35
+ # Create the ChannelInstance
36
+ # @param [String] friendly_name A descriptive string that you create to describe the new resource. It can be up to 64 characters long.
37
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL. This value must be 64 characters or less in length and be unique within the Service.
38
+ # @param [String] attributes A valid JSON string that contains application-specific data.
39
+ # @param [ChannelType] type
40
+ # @return [ChannelInstance] Created ChannelInstance
41
+ def create(
42
+ friendly_name: :unset,
43
+ unique_name: :unset,
44
+ attributes: :unset,
45
+ type: :unset
46
+ )
47
+
48
+ data = Twilio::Values.of({
49
+ 'FriendlyName' => friendly_name,
50
+ 'UniqueName' => unique_name,
51
+ 'Attributes' => attributes,
52
+ 'Type' => type,
53
+ })
54
+
55
+ payload = @version.create('POST', @uri, data: data)
56
+ ChannelInstance.new(
57
+ @version,
58
+ payload,
59
+ service_sid: @solution[:service_sid],
60
+ )
61
+ end
62
+
63
+
64
+ ##
65
+ # Lists ChannelInstance records from the API as a list.
66
+ # Unlike stream(), this operation is eager and will load `limit` records into
67
+ # memory before returning.
68
+ # @param [Array[ChannelType]] type The visibility of the Channels to read. Can be: `public` or `private` and defaults to `public`.
69
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
70
+ # guarantees to never return more than limit. Default is no limit
71
+ # @param [Integer] page_size Number of records to fetch per request, when
72
+ # not set will use the default value of 50 records. If no page_size is defined
73
+ # but a limit is defined, stream() will attempt to read the limit with the most
74
+ # efficient page size, i.e. min(limit, 1000)
75
+ # @return [Array] Array of up to limit results
76
+ def list(type: :unset, limit: nil, page_size: nil)
77
+ self.stream(
78
+ type: type,
79
+ limit: limit,
80
+ page_size: page_size
81
+ ).entries
82
+ end
83
+
84
+ ##
85
+ # Streams Instance records from the API as an Enumerable.
86
+ # This operation lazily loads records as efficiently as possible until the limit
87
+ # is reached.
88
+ # @param [Array[ChannelType]] type The visibility of the Channels to read. Can be: `public` or `private` and defaults to `public`.
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 [Enumerable] Enumerable that will yield up to limit results
96
+ def stream(type: :unset, limit: nil, page_size: nil)
97
+ limits = @version.read_limits(limit, page_size)
98
+
99
+ page = self.page(
100
+ type: type,
101
+ page_size: limits[:page_size], )
102
+
103
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
104
+ end
105
+
106
+ ##
107
+ # When passed a block, yields ChannelInstance records from the API.
108
+ # This operation lazily loads records as efficiently as possible until the limit
109
+ # is reached.
110
+ def each
111
+ limits = @version.read_limits
112
+
113
+ page = self.page(page_size: limits[:page_size], )
114
+
115
+ @version.stream(page,
116
+ limit: limits[:limit],
117
+ page_limit: limits[:page_limit]).each {|x| yield x}
118
+ end
119
+
120
+ ##
121
+ # Retrieve a single page of ChannelInstance records from the API.
122
+ # Request is executed immediately.
123
+ # @param [Array[ChannelType]] type The visibility of the Channels to read. Can be: `public` or `private` and defaults to `public`.
124
+ # @param [String] page_token PageToken provided by the API
125
+ # @param [Integer] page_number Page Number, this value is simply for client state
126
+ # @param [Integer] page_size Number of records to return, defaults to 50
127
+ # @return [Page] Page of ChannelInstance
128
+ def page(type: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
129
+ params = Twilio::Values.of({
130
+
131
+ 'Type' => Twilio.serialize_list(type),
132
+
133
+ 'PageToken' => page_token,
134
+ 'Page' => page_number,
135
+ 'PageSize' => page_size,
136
+ })
137
+
138
+ response = @version.page('GET', @uri, params: params)
139
+
140
+ ChannelPage.new(@version, response, @solution)
141
+ end
142
+
143
+ ##
144
+ # Retrieve a single page of ChannelInstance records from the API.
145
+ # Request is executed immediately.
146
+ # @param [String] target_url API-generated URL for the requested results page
147
+ # @return [Page] Page of ChannelInstance
148
+ def get_page(target_url)
149
+ response = @version.domain.request(
150
+ 'GET',
151
+ target_url
152
+ )
153
+ ChannelPage.new(@version, response, @solution)
154
+ end
155
+
156
+
157
+
158
+ # Provide a user friendly representation
159
+ def to_s
160
+ '#<Twilio.Chat.V1.ChannelList>'
161
+ end
162
+ end
163
+
164
+
165
+ class ChannelContext < InstanceContext
166
+ ##
167
+ # Initialize the ChannelContext
168
+ # @param [Version] version Version that contains the resource
169
+ # @param [String] service_sid The SID of the [Service](https://www.twilio.com/docs/api/chat/rest/services) to update the resource from.
170
+ # @param [String] sid The Twilio-provided string that uniquely identifies the Channel resource to update.
171
+ # @return [ChannelContext] ChannelContext
172
+ def initialize(version, service_sid, sid)
173
+ super(version)
174
+
175
+ # Path Solution
176
+ @solution = { service_sid: service_sid, sid: sid, }
177
+ @uri = "/Services/#{@solution[:service_sid]}/Channels/#{@solution[:sid]}"
178
+
179
+ # Dependents
180
+ @members = nil
181
+ @messages = nil
182
+ @invites = nil
183
+ end
184
+ ##
185
+ # Delete the ChannelInstance
186
+ # @return [Boolean] True if delete succeeds, false otherwise
187
+ def delete
188
+
189
+ @version.delete('DELETE', @uri)
190
+ end
191
+
192
+ ##
193
+ # Fetch the ChannelInstance
194
+ # @return [ChannelInstance] Fetched ChannelInstance
195
+ def fetch
196
+
197
+ payload = @version.fetch('GET', @uri)
198
+ ChannelInstance.new(
199
+ @version,
200
+ payload,
201
+ service_sid: @solution[:service_sid],
202
+ sid: @solution[:sid],
203
+ )
204
+ end
205
+
206
+ ##
207
+ # Update the ChannelInstance
208
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
209
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL. This value must be 64 characters or less in length and be unique within the Service.
210
+ # @param [String] attributes A valid JSON string that contains application-specific data.
211
+ # @return [ChannelInstance] Updated ChannelInstance
212
+ def update(
213
+ friendly_name: :unset,
214
+ unique_name: :unset,
215
+ attributes: :unset
216
+ )
217
+
218
+ data = Twilio::Values.of({
219
+ 'FriendlyName' => friendly_name,
220
+ 'UniqueName' => unique_name,
221
+ 'Attributes' => attributes,
222
+ })
223
+
224
+ payload = @version.update('POST', @uri, data: data)
225
+ ChannelInstance.new(
226
+ @version,
227
+ payload,
228
+ service_sid: @solution[:service_sid],
229
+ sid: @solution[:sid],
230
+ )
231
+ end
232
+
233
+ ##
234
+ # Access the members
235
+ # @return [MemberList]
236
+ # @return [MemberContext] if sid was passed.
237
+ def members(sid=:unset)
238
+
239
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
240
+
241
+ if sid != :unset
242
+ return MemberContext.new(@version, @solution[:service_sid], @solution[:sid],sid )
243
+ end
244
+
245
+ unless @members
246
+ @members = MemberList.new(
247
+ @version, service_sid: @solution[:service_sid], channel_sid: @solution[:sid], )
248
+ end
249
+
250
+ @members
251
+ end
252
+ ##
253
+ # Access the messages
254
+ # @return [MessageList]
255
+ # @return [MessageContext] if sid was passed.
256
+ def messages(sid=:unset)
257
+
258
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
259
+
260
+ if sid != :unset
261
+ return MessageContext.new(@version, @solution[:service_sid], @solution[:sid],sid )
262
+ end
263
+
264
+ unless @messages
265
+ @messages = MessageList.new(
266
+ @version, service_sid: @solution[:service_sid], channel_sid: @solution[:sid], )
267
+ end
268
+
269
+ @messages
270
+ end
271
+ ##
272
+ # Access the invites
273
+ # @return [InviteList]
274
+ # @return [InviteContext] if sid was passed.
275
+ def invites(sid=:unset)
276
+
277
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
278
+
279
+ if sid != :unset
280
+ return InviteContext.new(@version, @solution[:service_sid], @solution[:sid],sid )
281
+ end
282
+
283
+ unless @invites
284
+ @invites = InviteList.new(
285
+ @version, service_sid: @solution[:service_sid], channel_sid: @solution[:sid], )
286
+ end
287
+
288
+ @invites
289
+ end
290
+
291
+ ##
292
+ # Provide a user friendly representation
293
+ def to_s
294
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
295
+ "#<Twilio.Chat.V1.ChannelContext #{context}>"
296
+ end
297
+
298
+ ##
299
+ # Provide a detailed, user friendly representation
300
+ def inspect
301
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
302
+ "#<Twilio.Chat.V1.ChannelContext #{context}>"
303
+ end
304
+ end
305
+
306
+ class ChannelPage < Page
307
+ ##
308
+ # Initialize the ChannelPage
309
+ # @param [Version] version Version that contains the resource
310
+ # @param [Response] response Response from the API
311
+ # @param [Hash] solution Path solution for the resource
312
+ # @return [ChannelPage] ChannelPage
313
+ def initialize(version, response, solution)
314
+ super(version, response)
315
+
316
+ # Path Solution
317
+ @solution = solution
318
+ end
319
+
320
+ ##
321
+ # Build an instance of ChannelInstance
322
+ # @param [Hash] payload Payload response from the API
323
+ # @return [ChannelInstance] ChannelInstance
324
+ def get_instance(payload)
325
+ ChannelInstance.new(@version, payload, service_sid: @solution[:service_sid])
326
+ end
327
+
328
+ ##
329
+ # Provide a user friendly representation
330
+ def to_s
331
+ '<Twilio.Chat.V1.ChannelPage>'
332
+ end
333
+ end
334
+ class ChannelInstance < InstanceResource
335
+ ##
336
+ # Initialize the ChannelInstance
337
+ # @param [Version] version Version that contains the resource
338
+ # @param [Hash] payload payload that contains response from Twilio
339
+ # @param [String] account_sid The SID of the
340
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Channel
341
+ # resource.
342
+ # @param [String] sid The SID of the Call resource to fetch.
343
+ # @return [ChannelInstance] ChannelInstance
344
+ def initialize(version, payload , service_sid: nil, sid: nil)
345
+ super(version)
346
+
347
+ # Marshaled Properties
348
+ @properties = {
349
+ 'sid' => payload['sid'],
350
+ 'account_sid' => payload['account_sid'],
351
+ 'service_sid' => payload['service_sid'],
352
+ 'friendly_name' => payload['friendly_name'],
353
+ 'unique_name' => payload['unique_name'],
354
+ 'attributes' => payload['attributes'],
355
+ 'type' => payload['type'],
356
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
357
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
358
+ 'created_by' => payload['created_by'],
359
+ 'members_count' => payload['members_count'] == nil ? payload['members_count'] : payload['members_count'].to_i,
360
+ 'messages_count' => payload['messages_count'] == nil ? payload['messages_count'] : payload['messages_count'].to_i,
361
+ 'url' => payload['url'],
362
+ 'links' => payload['links'],
363
+ }
364
+
365
+ # Context
366
+ @instance_context = nil
367
+ @params = { 'service_sid' => service_sid || @properties['service_sid'] ,'sid' => sid || @properties['sid'] , }
368
+ end
369
+
370
+ ##
371
+ # Generate an instance context for the instance, the context is capable of
372
+ # performing various actions. All instance actions are proxied to the context
373
+ # @return [ChannelContext] CallContext for this CallInstance
374
+ def context
375
+ unless @instance_context
376
+ @instance_context = ChannelContext.new(@version , @params['service_sid'], @params['sid'])
377
+ end
378
+ @instance_context
379
+ end
380
+
381
+ ##
382
+ # @return [String] The unique string that we created to identify the Channel resource.
383
+ def sid
384
+ @properties['sid']
385
+ end
386
+
387
+ ##
388
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/api/rest/account) that created the Channel resource.
389
+ def account_sid
390
+ @properties['account_sid']
391
+ end
392
+
393
+ ##
394
+ # @return [String] The SID of the [Service](https://www.twilio.com/docs/api/chat/rest/services) the resource is associated with.
395
+ def service_sid
396
+ @properties['service_sid']
397
+ end
398
+
399
+ ##
400
+ # @return [String] The string that you assigned to describe the resource.
401
+ def friendly_name
402
+ @properties['friendly_name']
403
+ end
404
+
405
+ ##
406
+ # @return [String] An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL.
407
+ def unique_name
408
+ @properties['unique_name']
409
+ end
410
+
411
+ ##
412
+ # @return [String] The JSON string that stores application-specific data. **Note** If this property has been assigned a value, it's only displayed in a FETCH action that returns a single resource; otherwise, it's null. If the attributes have not been set, `{}` is returned.
413
+ def attributes
414
+ @properties['attributes']
415
+ end
416
+
417
+ ##
418
+ # @return [ChannelType]
419
+ def type
420
+ @properties['type']
421
+ end
422
+
423
+ ##
424
+ # @return [Time] The date and time in GMT when the resource was created specified in [RFC 2822](http://www.ietf.org/rfc/rfc2822.txt) format.
425
+ def date_created
426
+ @properties['date_created']
427
+ end
428
+
429
+ ##
430
+ # @return [Time] The date and time in GMT when the resource was last updated specified in [RFC 2822](http://www.ietf.org/rfc/rfc2822.txt) format.
431
+ def date_updated
432
+ @properties['date_updated']
433
+ end
434
+
435
+ ##
436
+ # @return [String] The `identity` of the User that created the channel. If the Channel was created by using the API, the value is `system`.
437
+ def created_by
438
+ @properties['created_by']
439
+ end
440
+
441
+ ##
442
+ # @return [String] The number of Members in the Channel.
443
+ def members_count
444
+ @properties['members_count']
445
+ end
446
+
447
+ ##
448
+ # @return [String] The number of Messages in the Channel.
449
+ def messages_count
450
+ @properties['messages_count']
451
+ end
452
+
453
+ ##
454
+ # @return [String] The absolute URL of the Channel resource.
455
+ def url
456
+ @properties['url']
457
+ end
458
+
459
+ ##
460
+ # @return [Hash] The absolute URLs of the [Members](https://www.twilio.com/docs/chat/api/members), [Messages](https://www.twilio.com/docs/chat/api/messages) , [Invites](https://www.twilio.com/docs/chat/api/invites) and, if it exists, the last [Message](https://www.twilio.com/docs/chat/api/messages) for the Channel.
461
+ def links
462
+ @properties['links']
463
+ end
464
+
465
+ ##
466
+ # Delete the ChannelInstance
467
+ # @return [Boolean] True if delete succeeds, false otherwise
468
+ def delete
469
+
470
+ context.delete
471
+ end
472
+
473
+ ##
474
+ # Fetch the ChannelInstance
475
+ # @return [ChannelInstance] Fetched ChannelInstance
476
+ def fetch
477
+
478
+ context.fetch
479
+ end
480
+
481
+ ##
482
+ # Update the ChannelInstance
483
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
484
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL. This value must be 64 characters or less in length and be unique within the Service.
485
+ # @param [String] attributes A valid JSON string that contains application-specific data.
486
+ # @return [ChannelInstance] Updated ChannelInstance
487
+ def update(
488
+ friendly_name: :unset,
489
+ unique_name: :unset,
490
+ attributes: :unset
491
+ )
492
+
493
+ context.update(
494
+ friendly_name: friendly_name,
495
+ unique_name: unique_name,
496
+ attributes: attributes,
497
+ )
498
+ end
499
+
500
+ ##
501
+ # Access the members
502
+ # @return [members] members
503
+ def members
504
+ context.members
505
+ end
506
+
507
+ ##
508
+ # Access the messages
509
+ # @return [messages] messages
510
+ def messages
511
+ context.messages
512
+ end
513
+
514
+ ##
515
+ # Access the invites
516
+ # @return [invites] invites
517
+ def invites
518
+ context.invites
519
+ end
520
+
521
+ ##
522
+ # Provide a user friendly representation
523
+ def to_s
524
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
525
+ "<Twilio.Chat.V1.ChannelInstance #{values}>"
526
+ end
527
+
528
+ ##
529
+ # Provide a detailed, user friendly representation
530
+ def inspect
531
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
532
+ "<Twilio.Chat.V1.ChannelInstance #{values}>"
533
+ end
534
+ end
535
+
536
+ end
516
537
  end
517
- end
518
538
  end
519
- end
520
539
  end
521
- end
522
- end
540
+ end
541
+
542
+