twilio-ruby 5.74.5 → 6.0.0.pre.rc.1

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