twilio-ruby 5.74.0 → 7.10.1

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 (796) hide show
  1. checksums.yaml +4 -4
  2. data/.dockerignore +1 -1
  3. data/.github/ISSUE_TEMPLATE/bug_report.yml +69 -0
  4. data/.github/workflows/test-and-deploy.yml +20 -2
  5. data/.gitignore +4 -0
  6. data/.rubocop.yml +1 -0
  7. data/CHANGES.md +1367 -0
  8. data/CONTRIBUTING.md +11 -9
  9. data/Dockerfile +2 -1
  10. data/Gemfile +5 -0
  11. data/LICENSE +1 -1
  12. data/Makefile +6 -0
  13. data/README.md +138 -40
  14. data/UPGRADE.md +21 -0
  15. data/advanced-examples/custom-http-client.md +170 -0
  16. data/cluster/cluster_oauth_spec.rb +19 -0
  17. data/cluster/cluster_orgs_spec.rb +40 -0
  18. data/cluster/cluster_spec.rb +75 -0
  19. data/examples/public_oauth.rb +13 -0
  20. data/lib/twilio-ruby/auth_strategy/auth_strategy.rb +19 -0
  21. data/lib/twilio-ruby/auth_strategy/no_auth_strategy.rb +17 -0
  22. data/lib/twilio-ruby/auth_strategy/token_auth_strategy.rb +39 -0
  23. data/lib/twilio-ruby/base/client_base.rb +131 -0
  24. data/lib/twilio-ruby/credential/auth_type.rb +17 -0
  25. data/lib/twilio-ruby/credential/client_credential_provider.rb +28 -0
  26. data/lib/twilio-ruby/credential/credential_provider.rb +11 -0
  27. data/lib/twilio-ruby/credential/orgs_credential_provider.rb +30 -0
  28. data/lib/twilio-ruby/framework/request.rb +8 -1
  29. data/lib/twilio-ruby/framework/rest/api_v1_version.rb +22 -0
  30. data/lib/twilio-ruby/framework/rest/domain.rb +0 -1
  31. data/lib/twilio-ruby/framework/rest/error.rb +27 -12
  32. data/lib/twilio-ruby/framework/rest/page.rb +1 -0
  33. data/lib/twilio-ruby/framework/rest/page_metadata.rb +83 -0
  34. data/lib/twilio-ruby/framework/rest/resource.rb +16 -0
  35. data/lib/twilio-ruby/framework/rest/token_page.rb +73 -0
  36. data/lib/twilio-ruby/framework/rest/version.rb +91 -4
  37. data/lib/twilio-ruby/http/client_token_manager.rb +31 -0
  38. data/lib/twilio-ruby/http/http_client.rb +22 -5
  39. data/lib/twilio-ruby/http/org_token_manager.rb +31 -0
  40. data/lib/twilio-ruby/jwt/access_token.rb +0 -59
  41. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +338 -176
  42. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +231 -0
  43. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +231 -0
  44. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +644 -332
  45. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +644 -332
  46. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +185 -114
  47. data/lib/twilio-ruby/rest/accounts/v1/messaging_geopermissions.rb +285 -0
  48. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +336 -0
  49. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +378 -190
  50. data/lib/twilio-ruby/rest/accounts/v1.rb +69 -42
  51. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  52. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +459 -365
  54. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +886 -530
  55. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +977 -586
  56. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +482 -320
  57. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +519 -0
  58. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +519 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +519 -0
  60. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +519 -0
  61. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +519 -0
  62. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +519 -0
  63. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +519 -0
  64. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +601 -0
  65. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +231 -118
  66. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +289 -192
  67. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +578 -417
  68. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +556 -364
  69. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +791 -511
  70. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +1658 -663
  71. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +1658 -663
  72. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +541 -0
  73. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +260 -151
  74. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +409 -240
  75. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +1368 -1050
  76. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +1124 -756
  77. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +694 -458
  78. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +719 -493
  79. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +679 -407
  80. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +483 -344
  81. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +627 -416
  82. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +737 -554
  83. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +737 -553
  84. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +737 -553
  85. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +1261 -903
  86. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +567 -302
  87. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +268 -164
  88. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +540 -350
  89. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +970 -641
  90. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +246 -125
  91. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +246 -125
  92. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +577 -399
  93. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +604 -358
  94. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +553 -338
  95. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +702 -390
  96. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +343 -0
  97. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +572 -378
  98. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +560 -383
  99. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +558 -372
  100. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +718 -513
  101. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +644 -408
  102. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +567 -306
  103. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +642 -359
  104. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +667 -371
  105. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +579 -0
  106. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +579 -0
  107. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +204 -0
  108. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +579 -0
  109. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +190 -0
  110. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +158 -103
  111. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +564 -331
  112. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +564 -330
  113. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +987 -641
  114. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +694 -418
  115. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +667 -372
  116. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +205 -150
  117. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +258 -139
  118. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +557 -350
  119. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +407 -335
  120. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +407 -335
  121. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +407 -335
  122. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +407 -335
  123. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +407 -335
  124. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +407 -335
  125. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +407 -335
  126. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +407 -335
  127. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +478 -416
  128. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +785 -484
  129. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +176 -104
  130. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +278 -150
  131. data/lib/twilio-ruby/rest/api/v2010/account.rb +1229 -943
  132. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  133. data/lib/twilio-ruby/rest/api.rb +25 -34
  134. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  135. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +550 -0
  136. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +550 -0
  137. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +423 -0
  138. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +296 -0
  139. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +918 -0
  140. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +317 -0
  141. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +349 -0
  142. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +862 -0
  143. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +356 -0
  144. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +352 -0
  145. data/lib/twilio-ruby/rest/assistants/v1/session.rb +493 -0
  146. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +838 -0
  147. data/lib/twilio-ruby/rest/assistants/v1.rb +100 -0
  148. data/lib/twilio-ruby/rest/assistants.rb +6 -0
  149. data/lib/twilio-ruby/rest/assistants_base.rb +38 -0
  150. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +468 -279
  151. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +440 -279
  152. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +438 -248
  153. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +389 -235
  154. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +430 -216
  155. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  156. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  157. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  158. data/lib/twilio-ruby/rest/chat/v1/credential.rb +719 -403
  159. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +613 -391
  160. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +704 -440
  161. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +722 -437
  162. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +822 -515
  163. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +672 -367
  164. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +331 -237
  165. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +750 -440
  166. data/lib/twilio-ruby/rest/chat/v1/service.rb +1287 -894
  167. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  168. data/lib/twilio-ruby/rest/chat/v2/credential.rb +719 -401
  169. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +570 -370
  170. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +613 -386
  171. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +799 -527
  172. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +825 -533
  173. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +746 -467
  174. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +916 -605
  175. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +672 -369
  176. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +561 -381
  177. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +648 -419
  178. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +796 -491
  179. data/lib/twilio-ruby/rest/chat/v2/service.rb +1121 -778
  180. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  181. data/lib/twilio-ruby/rest/chat/v3/channel.rb +444 -267
  182. data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
  183. data/lib/twilio-ruby/rest/chat.rb +4 -48
  184. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  185. data/lib/twilio-ruby/rest/client.rb +338 -584
  186. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +280 -0
  187. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +327 -173
  188. data/lib/twilio-ruby/rest/content/v1/content.rb +1909 -334
  189. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +340 -0
  190. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +354 -0
  191. data/lib/twilio-ruby/rest/content/v1.rb +54 -38
  192. data/lib/twilio-ruby/rest/content/v2/content.rb +425 -0
  193. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +418 -0
  194. data/lib/twilio-ruby/rest/content/v2.rb +46 -0
  195. data/lib/twilio-ruby/rest/content.rb +2 -34
  196. data/lib/twilio-ruby/rest/content_base.rb +43 -0
  197. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +798 -444
  198. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +445 -227
  199. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +467 -252
  200. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +504 -344
  201. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +852 -495
  202. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +817 -495
  203. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +725 -403
  204. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +957 -552
  205. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +392 -0
  206. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +728 -409
  207. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +397 -304
  208. data/lib/twilio-ruby/rest/conversations/v1/role.rb +657 -356
  209. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +563 -373
  210. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +540 -312
  211. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +459 -258
  212. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +497 -279
  213. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +504 -363
  214. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +860 -533
  215. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +829 -530
  216. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +737 -438
  217. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +972 -588
  218. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +399 -0
  219. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +403 -317
  220. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +672 -380
  221. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +686 -455
  222. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +773 -474
  223. data/lib/twilio-ruby/rest/conversations/v1/service.rb +724 -447
  224. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +683 -435
  225. data/lib/twilio-ruby/rest/conversations/v1/user.rb +758 -441
  226. data/lib/twilio-ruby/rest/conversations/v1.rb +135 -136
  227. data/lib/twilio-ruby/rest/conversations.rb +9 -34
  228. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  229. data/lib/twilio-ruby/rest/events/v1/event_type.rb +486 -288
  230. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +468 -0
  231. data/lib/twilio-ruby/rest/events/v1/schema.rb +366 -214
  232. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +209 -100
  233. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +222 -103
  234. data/lib/twilio-ruby/rest/events/v1/sink.rb +711 -408
  235. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +638 -339
  236. data/lib/twilio-ruby/rest/events/v1/subscription.rb +685 -387
  237. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  238. data/lib/twilio-ruby/rest/events.rb +5 -34
  239. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  240. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +687 -146
  241. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +621 -330
  242. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +722 -496
  243. data/lib/twilio-ruby/rest/flex_api/v1/create_flex_instance.rb +382 -0
  244. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +928 -570
  245. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +475 -0
  246. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +321 -0
  247. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +735 -0
  248. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +598 -0
  249. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +710 -0
  250. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +457 -0
  251. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +359 -0
  252. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +251 -0
  253. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +237 -0
  254. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +338 -0
  255. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +370 -227
  256. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +560 -319
  257. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +547 -0
  258. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +637 -398
  259. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +529 -225
  260. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +621 -0
  261. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +700 -0
  262. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +390 -0
  263. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +564 -0
  264. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +599 -0
  265. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +376 -0
  266. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +539 -0
  267. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +400 -0
  268. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +327 -0
  269. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +663 -331
  270. data/lib/twilio-ruby/rest/flex_api/v1.rb +319 -113
  271. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +515 -0
  272. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +258 -125
  273. data/lib/twilio-ruby/rest/flex_api/v2.rb +70 -28
  274. data/lib/twilio-ruby/rest/flex_api.rb +9 -47
  275. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  276. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +453 -248
  277. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  278. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  279. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  280. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +471 -0
  281. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +320 -0
  282. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +284 -0
  283. data/lib/twilio-ruby/rest/iam/v1/o_auth_app.rb +646 -0
  284. data/lib/twilio-ruby/rest/iam/v1/token.rb +301 -0
  285. data/lib/twilio-ruby/rest/iam/v1.rb +82 -0
  286. data/lib/twilio-ruby/rest/iam.rb +6 -0
  287. data/lib/twilio-ruby/rest/iam_base.rb +33 -0
  288. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +509 -315
  289. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +499 -0
  290. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +360 -255
  291. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +333 -224
  292. data/lib/twilio-ruby/rest/insights/v1/call.rb +403 -236
  293. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +718 -433
  294. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +665 -467
  295. data/lib/twilio-ruby/rest/insights/v1/conference.rb +683 -502
  296. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +545 -371
  297. data/lib/twilio-ruby/rest/insights/v1/room.rb +668 -489
  298. data/lib/twilio-ruby/rest/insights/v1/setting.rb +435 -205
  299. data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
  300. data/lib/twilio-ruby/rest/insights.rb +6 -34
  301. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  302. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +720 -0
  303. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +525 -0
  304. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +380 -0
  305. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +337 -0
  306. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +523 -0
  307. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +525 -0
  308. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +844 -0
  309. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_operator_results.rb +359 -0
  310. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_sentences.rb +359 -0
  311. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +373 -0
  312. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +570 -0
  313. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +354 -0
  314. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +815 -0
  315. data/lib/twilio-ruby/rest/intelligence/v2.rb +176 -0
  316. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  317. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  318. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +719 -364
  319. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +613 -359
  320. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +704 -397
  321. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +722 -409
  322. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +822 -488
  323. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +672 -347
  324. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +331 -231
  325. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +750 -418
  326. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +1287 -779
  327. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  328. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +719 -364
  329. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +570 -343
  330. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +613 -359
  331. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +799 -451
  332. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +825 -479
  333. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +746 -411
  334. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +916 -555
  335. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +672 -347
  336. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +561 -351
  337. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +637 -384
  338. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +796 -467
  339. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +1121 -689
  340. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  341. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  342. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  343. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/chunk.rb +317 -0
  344. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +349 -0
  345. data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +856 -0
  346. data/lib/twilio-ruby/rest/knowledge/v1.rb +49 -0
  347. data/lib/twilio-ruby/rest/knowledge.rb +6 -0
  348. data/lib/twilio-ruby/rest/knowledge_base.rb +38 -0
  349. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +399 -237
  350. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  351. data/lib/twilio-ruby/rest/lookups/v2/bucket.rb +500 -0
  352. data/lib/twilio-ruby/rest/lookups/v2/lookup_override.rb +603 -0
  353. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +570 -328
  354. data/lib/twilio-ruby/rest/lookups/v2/query.rb +351 -0
  355. data/lib/twilio-ruby/rest/lookups/v2/rate_limit.rb +229 -0
  356. data/lib/twilio-ruby/rest/lookups/v2.rb +128 -38
  357. data/lib/twilio-ruby/rest/lookups.rb +2 -41
  358. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  359. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +475 -0
  360. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +501 -0
  361. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +555 -0
  362. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +252 -0
  363. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +735 -0
  364. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +342 -0
  365. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +511 -0
  366. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +235 -0
  367. data/lib/twilio-ruby/rest/marketplace/v1.rb +91 -0
  368. data/lib/twilio-ruby/rest/marketplace.rb +6 -0
  369. data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
  370. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +231 -0
  371. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +568 -346
  372. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +758 -443
  373. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +337 -0
  374. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +483 -0
  375. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +469 -259
  376. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +379 -0
  377. data/lib/twilio-ruby/rest/messaging/v1/domain_validate_dn.rb +344 -0
  378. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +263 -142
  379. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +380 -0
  380. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +337 -0
  381. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +379 -0
  382. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +580 -335
  383. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +594 -0
  384. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +608 -0
  385. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +587 -341
  386. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +587 -336
  387. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +937 -521
  388. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +222 -115
  389. data/lib/twilio-ruby/rest/messaging/v1/service.rb +1149 -763
  390. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +1517 -549
  391. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +209 -103
  392. data/lib/twilio-ruby/rest/messaging/v1.rb +217 -124
  393. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +1002 -0
  394. data/lib/twilio-ruby/rest/messaging/v2/domain_certs.rb +386 -0
  395. data/lib/twilio-ruby/rest/messaging/v2/typing_indicator.rb +237 -0
  396. data/lib/twilio-ruby/rest/messaging/v2.rb +70 -0
  397. data/lib/twilio-ruby/rest/messaging.rb +10 -35
  398. data/lib/twilio-ruby/rest/messaging_base.rb +43 -0
  399. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +572 -395
  400. data/lib/twilio-ruby/rest/monitor/v1/event.rb +561 -390
  401. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  402. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  403. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  404. data/lib/twilio-ruby/rest/notify/v1/credential.rb +719 -408
  405. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +694 -452
  406. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +466 -362
  407. data/lib/twilio-ruby/rest/notify/v1/service.rb +971 -622
  408. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  409. data/lib/twilio-ruby/rest/notify.rb +3 -34
  410. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  411. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +411 -0
  412. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +221 -0
  413. data/lib/twilio-ruby/rest/numbers/v1/porting_all_port_in.rb +367 -0
  414. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +616 -0
  415. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +485 -0
  416. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +405 -0
  417. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +242 -0
  418. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +301 -0
  419. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +395 -0
  420. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +252 -0
  421. data/lib/twilio-ruby/rest/numbers/v1.rb +161 -0
  422. data/lib/twilio-ruby/rest/numbers/v2/application.rb +562 -0
  423. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +440 -0
  424. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +649 -0
  425. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +442 -0
  426. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +430 -0
  427. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +915 -0
  428. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +405 -261
  429. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +524 -298
  430. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +564 -309
  431. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +294 -179
  432. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +923 -607
  433. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +667 -351
  434. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +458 -266
  435. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +521 -307
  436. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +695 -371
  437. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +458 -266
  438. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +241 -181
  439. data/lib/twilio-ruby/rest/numbers/v2.rb +108 -28
  440. data/lib/twilio-ruby/rest/numbers/v3/hosted_number_order.rb +484 -0
  441. data/lib/twilio-ruby/rest/numbers/v3.rb +40 -0
  442. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  443. data/lib/twilio-ruby/rest/numbers_base.rb +48 -0
  444. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +253 -0
  445. data/lib/twilio-ruby/rest/oauth/v1/token.rb +293 -149
  446. data/lib/twilio-ruby/rest/oauth/v1.rb +39 -56
  447. data/lib/twilio-ruby/rest/oauth/v2/authorize.rb +253 -0
  448. data/lib/twilio-ruby/rest/oauth/v2/token.rb +311 -0
  449. data/lib/twilio-ruby/rest/oauth/v2.rb +46 -0
  450. data/lib/twilio-ruby/rest/oauth.rb +3 -65
  451. data/lib/twilio-ruby/rest/oauth_base.rb +43 -0
  452. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +469 -396
  453. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +724 -446
  454. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +960 -625
  455. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  456. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +468 -298
  457. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +491 -309
  458. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +548 -330
  459. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +706 -398
  460. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  461. data/lib/twilio-ruby/rest/preview/wireless/command.rb +616 -364
  462. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +743 -398
  463. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +382 -205
  464. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +833 -523
  465. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  466. data/lib/twilio-ruby/rest/preview.rb +10 -87
  467. data/lib/twilio-ruby/rest/preview_base.rb +48 -0
  468. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +253 -0
  469. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +301 -0
  470. data/lib/twilio-ruby/rest/preview_iam/v1.rb +46 -0
  471. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +468 -0
  472. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +559 -0
  473. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +768 -0
  474. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +413 -0
  475. data/lib/twilio-ruby/rest/preview_iam/versionless.rb +49 -0
  476. data/lib/twilio-ruby/rest/preview_iam.rb +9 -0
  477. data/lib/twilio-ruby/rest/preview_iam_base.rb +38 -0
  478. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +465 -275
  479. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +172 -120
  480. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +458 -268
  481. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +172 -120
  482. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +465 -275
  483. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +345 -179
  484. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +185 -135
  485. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  486. data/lib/twilio-ruby/rest/pricing/v2/country.rb +457 -270
  487. data/lib/twilio-ruby/rest/pricing/v2/number.rb +379 -215
  488. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +465 -275
  489. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +367 -200
  490. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +185 -138
  491. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  492. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  493. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  494. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +693 -403
  495. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +600 -418
  496. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +640 -447
  497. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +659 -440
  498. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +811 -506
  499. data/lib/twilio-ruby/rest/proxy/v1/service.rb +839 -596
  500. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  501. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  502. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  503. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +444 -227
  504. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +444 -223
  505. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +444 -227
  506. data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
  507. data/lib/twilio-ruby/rest/routes.rb +4 -34
  508. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  509. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +483 -323
  510. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +680 -380
  511. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +350 -208
  512. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +645 -384
  513. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +549 -338
  514. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +535 -383
  515. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +680 -396
  516. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +688 -447
  517. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +342 -210
  518. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +510 -353
  519. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +680 -380
  520. data/lib/twilio-ruby/rest/serverless/v1/service.rb +803 -493
  521. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  522. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  523. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  524. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +350 -199
  525. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +342 -194
  526. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +545 -355
  527. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +659 -394
  528. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +350 -200
  529. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +342 -197
  530. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +545 -361
  531. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +748 -449
  532. data/lib/twilio-ruby/rest/studio/v1/flow.rb +572 -355
  533. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  534. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +350 -200
  535. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +342 -197
  536. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +545 -361
  537. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +741 -442
  538. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +510 -320
  539. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +413 -0
  540. data/lib/twilio-ruby/rest/studio/v2/flow.rb +804 -472
  541. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +241 -109
  542. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  543. data/lib/twilio-ruby/rest/studio.rb +3 -41
  544. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  545. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +611 -362
  546. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +757 -483
  547. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +624 -406
  548. data/lib/twilio-ruby/rest/supersim/v1/network.rb +474 -297
  549. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +566 -332
  550. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +624 -351
  551. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +339 -237
  552. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +311 -204
  553. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +275 -174
  554. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +725 -453
  555. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +576 -361
  556. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +410 -344
  557. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -147
  558. data/lib/twilio-ruby/rest/supersim.rb +10 -34
  559. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  560. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +616 -371
  561. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +736 -423
  562. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +766 -490
  563. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +616 -370
  564. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +749 -445
  565. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +772 -495
  566. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +616 -368
  567. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +749 -444
  568. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +242 -132
  569. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +692 -400
  570. data/lib/twilio-ruby/rest/sync/v1/service.rb +878 -567
  571. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  572. data/lib/twilio-ruby/rest/sync.rb +2 -34
  573. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  574. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +682 -395
  575. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +633 -464
  576. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +1079 -749
  577. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +985 -661
  578. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +688 -382
  579. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +258 -0
  580. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +522 -370
  581. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +430 -276
  582. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +410 -254
  583. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +358 -276
  584. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +882 -572
  585. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +1053 -732
  586. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +602 -388
  587. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +394 -239
  588. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +440 -266
  589. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +364 -193
  590. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +418 -234
  591. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +927 -637
  592. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +522 -376
  593. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +395 -241
  594. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +410 -262
  595. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +822 -510
  596. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +514 -356
  597. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +379 -205
  598. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +387 -219
  599. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +1022 -730
  600. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  601. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  602. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  603. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +573 -320
  604. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +573 -317
  605. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +734 -419
  606. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +706 -451
  607. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +391 -174
  608. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +939 -630
  609. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  610. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  611. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  612. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +440 -0
  613. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +656 -0
  614. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +474 -0
  615. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +595 -352
  616. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +574 -323
  617. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +540 -321
  618. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +823 -513
  619. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +659 -346
  620. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +450 -261
  621. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +443 -252
  622. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +673 -359
  623. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +450 -261
  624. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +595 -352
  625. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +574 -323
  626. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +540 -321
  627. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +823 -513
  628. data/lib/twilio-ruby/rest/trusthub/v1.rb +168 -139
  629. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  630. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  631. data/lib/twilio-ruby/rest/verify/v2/form.rb +334 -181
  632. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +423 -205
  633. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +463 -254
  634. data/lib/twilio-ruby/rest/verify/v2/service/approve_challenge.rb +402 -0
  635. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +275 -172
  636. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +768 -530
  637. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +705 -453
  638. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +386 -271
  639. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +653 -414
  640. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +652 -363
  641. data/lib/twilio-ruby/rest/verify/v2/service/new_challenge.rb +478 -0
  642. data/lib/twilio-ruby/rest/verify/v2/service/new_factor.rb +387 -0
  643. data/lib/twilio-ruby/rest/verify/v2/service/new_verify_factor.rb +357 -0
  644. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +680 -388
  645. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +693 -384
  646. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +655 -366
  647. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +320 -187
  648. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +741 -412
  649. data/lib/twilio-ruby/rest/verify/v2/service.rb +1360 -780
  650. data/lib/twilio-ruby/rest/verify/v2/template.rb +310 -203
  651. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +556 -387
  652. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +400 -224
  653. data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
  654. data/lib/twilio-ruby/rest/verify.rb +7 -34
  655. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  656. data/lib/twilio-ruby/rest/video/v1/composition.rb +738 -507
  657. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +854 -647
  658. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +475 -261
  659. data/lib/twilio-ruby/rest/video/v1/recording.rb +631 -426
  660. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +475 -261
  661. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +403 -0
  662. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +501 -0
  663. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +316 -0
  664. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +508 -0
  665. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +714 -0
  666. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +303 -0
  667. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +624 -0
  668. data/lib/twilio-ruby/rest/video/v1/room/transcriptions.rb +648 -0
  669. data/lib/twilio-ruby/rest/video/v1/room.rb +938 -602
  670. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  671. data/lib/twilio-ruby/rest/video.rb +7 -34
  672. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  673. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +292 -174
  674. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +822 -486
  675. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +734 -434
  676. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +658 -352
  677. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +236 -121
  678. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +282 -181
  679. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +553 -397
  680. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +377 -173
  681. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +187 -122
  682. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +650 -339
  683. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +630 -319
  684. data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
  685. data/lib/twilio-ruby/rest/voice.rb +7 -34
  686. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  687. data/lib/twilio-ruby/rest/wireless/v1/command.rb +663 -406
  688. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +769 -436
  689. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +387 -284
  690. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +317 -226
  691. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +925 -647
  692. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +319 -219
  693. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  694. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  695. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  696. data/lib/twilio-ruby/rest.rb +1 -0
  697. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  698. data/lib/twilio-ruby/twiml/voice_response.rb +481 -26
  699. data/lib/twilio-ruby/version.rb +1 -1
  700. data/sonar-project.properties +1 -1
  701. data/twilio-ruby.gemspec +3 -2
  702. metadata +238 -105
  703. data/conf/cacert.pem +0 -3376
  704. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  705. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  706. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  707. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  708. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  709. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  710. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  711. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  712. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  713. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -301
  714. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -314
  715. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  716. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +0 -348
  717. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  718. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +0 -348
  719. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  720. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -220
  721. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -214
  722. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -399
  723. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -418
  724. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -392
  725. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -469
  726. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -218
  727. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -386
  728. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -456
  729. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -255
  730. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -237
  731. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -507
  732. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -420
  733. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -650
  734. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +0 -194
  735. data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -52
  736. data/lib/twilio-ruby/rest/autopilot.rb +0 -53
  737. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  738. data/lib/twilio-ruby/rest/flex_api/v1/good_data.rb +0 -190
  739. data/lib/twilio-ruby/rest/flex_api/v1/user_roles.rb +0 -166
  740. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -321
  741. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +0 -397
  742. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +0 -399
  743. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +0 -221
  744. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +0 -403
  745. data/lib/twilio-ruby/rest/media/v1.rb +0 -76
  746. data/lib/twilio-ruby/rest/media.rb +0 -65
  747. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  748. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +0 -257
  749. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +0 -305
  750. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +0 -339
  751. data/lib/twilio-ruby/rest/microvisor/v1.rb +0 -60
  752. data/lib/twilio-ruby/rest/microvisor.rb +0 -54
  753. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +0 -153
  754. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +0 -162
  755. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +0 -242
  756. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +0 -193
  757. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -382
  758. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -365
  759. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -425
  760. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -376
  761. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -469
  762. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -45
  763. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -385
  764. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -406
  765. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -418
  766. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -385
  767. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -405
  768. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -415
  769. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -385
  770. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -405
  771. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -462
  772. data/lib/twilio-ruby/rest/preview/sync.rb +0 -44
  773. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -212
  774. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -212
  775. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -206
  776. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -386
  777. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -407
  778. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -380
  779. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -437
  780. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -212
  781. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -373
  782. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -428
  783. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -241
  784. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -225
  785. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -495
  786. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -629
  787. data/lib/twilio-ruby/rest/preview/understand.rb +0 -45
  788. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +0 -377
  789. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  790. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
  791. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
  792. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  793. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  794. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  795. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
  796. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,904 +1,1297 @@
1
1
  ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
6
  #
7
- # frozen_string_literal: true
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.
13
+ #
14
+
8
15
 
9
16
  module Twilio
10
- module REST
11
- class Chat < Domain
12
- class V1 < Version
13
- class ServiceList < ListResource
14
- ##
15
- # Initialize the ServiceList
16
- # @param [Version] version Version that contains the resource
17
- # @return [ServiceList] ServiceList
18
- def initialize(version)
19
- super(version)
20
-
21
- # Path Solution
22
- @solution = {}
23
- @uri = "/Services"
24
- end
25
-
26
- ##
27
- # Create the ServiceInstance
28
- # @param [String] friendly_name A descriptive string that you create to describe
29
- # the resource. It can be up to 64 characters long.
30
- # @return [ServiceInstance] Created ServiceInstance
31
- def create(friendly_name: nil)
32
- data = Twilio::Values.of({'FriendlyName' => friendly_name, })
33
-
34
- payload = @version.create('POST', @uri, data: data)
35
-
36
- ServiceInstance.new(@version, payload, )
37
- end
38
-
39
- ##
40
- # Lists ServiceInstance records from the API as a list.
41
- # Unlike stream(), this operation is eager and will load `limit` records into
42
- # memory before returning.
43
- # @param [Integer] limit Upper limit for the number of records to return. stream()
44
- # guarantees to never return more than limit. Default is no limit
45
- # @param [Integer] page_size Number of records to fetch per request, when
46
- # not set will use the default value of 50 records. If no page_size is defined
47
- # but a limit is defined, stream() will attempt to read the limit with the most
48
- # efficient page size, i.e. min(limit, 1000)
49
- # @return [Array] Array of up to limit results
50
- def list(limit: nil, page_size: nil)
51
- self.stream(limit: limit, page_size: page_size).entries
52
- end
53
-
54
- ##
55
- # Streams ServiceInstance records from the API as an Enumerable.
56
- # This operation lazily loads records as efficiently as possible until the limit
57
- # is reached.
58
- # @param [Integer] limit Upper limit for the number of records to return. stream()
59
- # guarantees to never return more than limit. Default is no limit.
60
- # @param [Integer] page_size Number of records to fetch per request, when
61
- # not set will use the default value of 50 records. If no page_size is defined
62
- # but a limit is defined, stream() will attempt to read the limit with the most
63
- # efficient page size, i.e. min(limit, 1000)
64
- # @return [Enumerable] Enumerable that will yield up to limit results
65
- def stream(limit: nil, page_size: nil)
66
- limits = @version.read_limits(limit, page_size)
67
-
68
- page = self.page(page_size: limits[:page_size], )
69
-
70
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
71
- end
72
-
73
- ##
74
- # When passed a block, yields ServiceInstance records from the API.
75
- # This operation lazily loads records as efficiently as possible until the limit
76
- # is reached.
77
- def each
78
- limits = @version.read_limits
79
-
80
- page = self.page(page_size: limits[:page_size], )
81
-
82
- @version.stream(page,
17
+ module REST
18
+ class Chat < ChatBase
19
+ class V1 < Version
20
+ class ServiceList < ListResource
21
+
22
+ ##
23
+ # Initialize the ServiceList
24
+ # @param [Version] version Version that contains the resource
25
+ # @return [ServiceList] ServiceList
26
+ def initialize(version)
27
+ super(version)
28
+
29
+ # Path Solution
30
+ @solution = { }
31
+ @uri = "/Services"
32
+
33
+ end
34
+ ##
35
+ # Create the ServiceInstance
36
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
37
+ # @return [ServiceInstance] Created ServiceInstance
38
+ def create(
39
+ friendly_name: nil
40
+ )
41
+
42
+ data = Twilio::Values.of({
43
+ 'FriendlyName' => friendly_name,
44
+ })
45
+
46
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
47
+
48
+
49
+
50
+
51
+
52
+ payload = @version.create('POST', @uri, data: data, headers: headers)
53
+ ServiceInstance.new(
54
+ @version,
55
+ payload,
56
+ )
57
+ end
58
+
59
+ ##
60
+ # Create the ServiceInstanceMetadata
61
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
62
+ # @return [ServiceInstance] Created ServiceInstance
63
+ def create_with_metadata(
64
+ friendly_name: nil
65
+ )
66
+
67
+ data = Twilio::Values.of({
68
+ 'FriendlyName' => friendly_name,
69
+ })
70
+
71
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
72
+
73
+
74
+
75
+
76
+
77
+ response = @version.create_with_metadata('POST', @uri, data: data, headers: headers)
78
+ service_instance = ServiceInstance.new(
79
+ @version,
80
+ response.body,
81
+ )
82
+ ServiceInstanceMetadata.new(
83
+ @version,
84
+ service_instance,
85
+ response.headers,
86
+ response.status_code
87
+ )
88
+ end
89
+
90
+
91
+ ##
92
+ # Lists ServiceInstance records from the API as a list.
93
+ # Unlike stream(), this operation is eager and will load `limit` records into
94
+ # memory before returning.
95
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
96
+ # guarantees to never return more than limit. Default is no limit
97
+ # @param [Integer] page_size Number of records to fetch per request, when
98
+ # not set will use the default value of 50 records. If no page_size is defined
99
+ # but a limit is defined, stream() will attempt to read the limit with the most
100
+ # efficient page size, i.e. min(limit, 1000)
101
+ # @return [Array] Array of up to limit results
102
+ def list(limit: nil, page_size: nil)
103
+ self.stream(
104
+ limit: limit,
105
+ page_size: page_size
106
+ ).entries
107
+ end
108
+
109
+ ##
110
+ # Streams Instance records from the API as an Enumerable.
111
+ # This operation lazily loads records as efficiently as possible until the limit
112
+ # is reached.
113
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
114
+ # guarantees to never return more than limit. Default is no limit
115
+ # @param [Integer] page_size Number of records to fetch per request, when
116
+ # not set will use the default value of 50 records. If no page_size is defined
117
+ # but a limit is defined, stream() will attempt to read the limit with the most
118
+ # efficient page size, i.e. min(limit, 1000)
119
+ # @return [Enumerable] Enumerable that will yield up to limit results
120
+ def stream(limit: nil, page_size: nil)
121
+ limits = @version.read_limits(limit, page_size)
122
+
123
+ page = self.page(
124
+ page_size: limits[:page_size], )
125
+
126
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
127
+ end
128
+
129
+ ##
130
+ # Lists ServicePageMetadata records from the API as a list.
131
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
132
+ # guarantees to never return more than limit. Default is no limit
133
+ # @param [Integer] page_size Number of records to fetch per request, when
134
+ # not set will use the default value of 50 records. If no page_size is defined
135
+ # but a limit is defined, stream() will attempt to read the limit with the most
136
+ # efficient page size, i.e. min(limit, 1000)
137
+ # @return [Array] Array of up to limit results
138
+ def list_with_metadata(limit: nil, page_size: nil)
139
+ limits = @version.read_limits(limit, page_size)
140
+ params = Twilio::Values.of({
141
+
142
+ 'PageSize' => limits[:page_size],
143
+ });
144
+ headers = Twilio::Values.of({})
145
+
146
+ response = @version.page('GET', @uri, params: params, headers: headers)
147
+
148
+ ServicePageMetadata.new(@version, response, @solution, limits[:limit])
149
+ end
150
+
151
+ ##
152
+ # When passed a block, yields ServiceInstance records from the API.
153
+ # This operation lazily loads records as efficiently as possible until the limit
154
+ # is reached.
155
+ def each
156
+ limits = @version.read_limits
157
+
158
+ page = self.page(page_size: limits[:page_size], )
159
+
160
+ @version.stream(page,
83
161
  limit: limits[:limit],
84
162
  page_limit: limits[:page_limit]).each {|x| yield x}
85
- end
86
-
87
- ##
88
- # Retrieve a single page of ServiceInstance records from the API.
89
- # Request is executed immediately.
90
- # @param [String] page_token PageToken provided by the API
91
- # @param [Integer] page_number Page Number, this value is simply for client state
92
- # @param [Integer] page_size Number of records to return, defaults to 50
93
- # @return [Page] Page of ServiceInstance
94
- def page(page_token: :unset, page_number: :unset, page_size: :unset)
95
- params = Twilio::Values.of({
96
- 'PageToken' => page_token,
97
- 'Page' => page_number,
98
- 'PageSize' => page_size,
99
- })
100
-
101
- response = @version.page('GET', @uri, params: params)
102
-
103
- ServicePage.new(@version, response, @solution)
104
- end
105
-
106
- ##
107
- # Retrieve a single page of ServiceInstance records from the API.
108
- # Request is executed immediately.
109
- # @param [String] target_url API-generated URL for the requested results page
110
- # @return [Page] Page of ServiceInstance
111
- def get_page(target_url)
112
- response = @version.domain.request(
113
- 'GET',
114
- target_url
115
- )
116
- ServicePage.new(@version, response, @solution)
117
- end
118
-
119
- ##
120
- # Provide a user friendly representation
121
- def to_s
122
- '#<Twilio.Chat.V1.ServiceList>'
123
- end
124
- end
125
-
126
- class ServicePage < Page
127
- ##
128
- # Initialize the ServicePage
129
- # @param [Version] version Version that contains the resource
130
- # @param [Response] response Response from the API
131
- # @param [Hash] solution Path solution for the resource
132
- # @return [ServicePage] ServicePage
133
- def initialize(version, response, solution)
134
- super(version, response)
135
-
136
- # Path Solution
137
- @solution = solution
138
- end
139
-
140
- ##
141
- # Build an instance of ServiceInstance
142
- # @param [Hash] payload Payload response from the API
143
- # @return [ServiceInstance] ServiceInstance
144
- def get_instance(payload)
145
- ServiceInstance.new(@version, payload, )
146
- end
147
-
148
- ##
149
- # Provide a user friendly representation
150
- def to_s
151
- '<Twilio.Chat.V1.ServicePage>'
152
- end
153
- end
154
-
155
- class ServiceContext < InstanceContext
156
- ##
157
- # Initialize the ServiceContext
158
- # @param [Version] version Version that contains the resource
159
- # @param [String] sid The Twilio-provided string that uniquely identifies the
160
- # Service resource to fetch.
161
- # @return [ServiceContext] ServiceContext
162
- def initialize(version, sid)
163
- super(version)
164
-
165
- # Path Solution
166
- @solution = {sid: sid, }
167
- @uri = "/Services/#{@solution[:sid]}"
168
-
169
- # Dependents
170
- @channels = nil
171
- @roles = nil
172
- @users = nil
173
- end
174
-
175
- ##
176
- # Fetch the ServiceInstance
177
- # @return [ServiceInstance] Fetched ServiceInstance
178
- def fetch
179
- payload = @version.fetch('GET', @uri)
180
-
181
- ServiceInstance.new(@version, payload, sid: @solution[:sid], )
182
- end
183
-
184
- ##
185
- # Delete the ServiceInstance
186
- # @return [Boolean] true if delete succeeds, false otherwise
187
- def delete
188
- @version.delete('DELETE', @uri)
189
- end
190
-
191
- ##
192
- # Update the ServiceInstance
193
- # @param [String] friendly_name A descriptive string that you create to describe
194
- # the resource. It can be up to 64 characters long.
195
- # @param [String] default_service_role_sid The service role assigned to users when
196
- # they are added to the service. See the {Roles
197
- # endpoint}[https://www.twilio.com/docs/chat/api/roles] for more details.
198
- # @param [String] default_channel_role_sid The channel role assigned to users when
199
- # they are added to a channel. See the {Roles
200
- # endpoint}[https://www.twilio.com/docs/chat/api/roles] for more details.
201
- # @param [String] default_channel_creator_role_sid The channel role assigned to a
202
- # channel creator when they join a new channel. See the {Roles
203
- # endpoint}[https://www.twilio.com/docs/chat/api/roles] for more details.
204
- # @param [Boolean] read_status_enabled Whether to enable the {Message Consumption
205
- # Horizon}[https://www.twilio.com/docs/chat/consumption-horizon] feature. The
206
- # default is `true`.
207
- # @param [Boolean] reachability_enabled Whether to enable the {Reachability
208
- # Indicator}[https://www.twilio.com/docs/chat/reachability-indicator] for this
209
- # Service instance. The default is `false`.
210
- # @param [String] typing_indicator_timeout How long in seconds after a `started
211
- # typing` event until clients should assume that user is no longer typing, even if
212
- # no `ended typing` message was received. The default is 5 seconds.
213
- # @param [String] consumption_report_interval DEPRECATED. The interval in seconds
214
- # between consumption reports submission batches from client endpoints.
215
- # @param [Boolean] notifications_new_message_enabled Whether to send a
216
- # notification when a new message is added to a channel. Can be: `true` or `false`
217
- # and the default is `false`.
218
- # @param [String] notifications_new_message_template The template to use to create
219
- # the notification text displayed when a new message is added to a channel and
220
- # `notifications.new_message.enabled` is `true`.
221
- # @param [Boolean] notifications_added_to_channel_enabled Whether to send a
222
- # notification when a member is added to a channel. Can be: `true` or `false` and
223
- # the default is `false`.
224
- # @param [String] notifications_added_to_channel_template The template to use to
225
- # create the notification text displayed when a member is added to a channel and
226
- # `notifications.added_to_channel.enabled` is `true`.
227
- # @param [Boolean] notifications_removed_from_channel_enabled Whether to send a
228
- # notification to a user when they are removed from a channel. Can be: `true` or
229
- # `false` and the default is `false`.
230
- # @param [String] notifications_removed_from_channel_template The template to use
231
- # to create the notification text displayed to a user when they are removed from a
232
- # channel and `notifications.removed_from_channel.enabled` is `true`.
233
- # @param [Boolean] notifications_invited_to_channel_enabled Whether to send a
234
- # notification when a user is invited to a channel. Can be: `true` or `false` and
235
- # the default is `false`.
236
- # @param [String] notifications_invited_to_channel_template The template to use to
237
- # create the notification text displayed when a user is invited to a channel and
238
- # `notifications.invited_to_channel.enabled` is `true`.
239
- # @param [String] pre_webhook_url The URL for pre-event webhooks, which are called
240
- # by using the `webhook_method`. See {Webhook
241
- # Events}[https://www.twilio.com/docs/api/chat/webhooks] for more details.
242
- # @param [String] post_webhook_url The URL for post-event webhooks, which are
243
- # called by using the `webhook_method`. See {Webhook
244
- # Events}[https://www.twilio.com/docs/api/chat/webhooks] for more details.
245
- # @param [String] webhook_method The HTTP method to use for calls to the
246
- # `pre_webhook_url` and `post_webhook_url` webhooks. Can be: `POST` or `GET` and
247
- # the default is `POST`. See {Webhook
248
- # Events}[https://www.twilio.com/docs/chat/webhook-events] for more details.
249
- # @param [Array[String]] webhook_filters The list of WebHook events that are
250
- # enabled for this Service instance. See {Webhook
251
- # Events}[https://www.twilio.com/docs/chat/webhook-events] for more details.
252
- # @param [String] webhooks_on_message_send_url The URL of the webhook to call in
253
- # response to the `on_message_send` event using the
254
- # `webhooks.on_message_send.method` HTTP method.
255
- # @param [String] webhooks_on_message_send_method The HTTP method to use when
256
- # calling the `webhooks.on_message_send.url`.
257
- # @param [String] webhooks_on_message_update_url The URL of the webhook to call in
258
- # response to the `on_message_update` event using the
259
- # `webhooks.on_message_update.method` HTTP method.
260
- # @param [String] webhooks_on_message_update_method The HTTP method to use when
261
- # calling the `webhooks.on_message_update.url`.
262
- # @param [String] webhooks_on_message_remove_url The URL of the webhook to call in
263
- # response to the `on_message_remove` event using the
264
- # `webhooks.on_message_remove.method` HTTP method.
265
- # @param [String] webhooks_on_message_remove_method The HTTP method to use when
266
- # calling the `webhooks.on_message_remove.url`.
267
- # @param [String] webhooks_on_channel_add_url The URL of the webhook to call in
268
- # response to the `on_channel_add` event using the
269
- # `webhooks.on_channel_add.method` HTTP method.
270
- # @param [String] webhooks_on_channel_add_method The HTTP method to use when
271
- # calling the `webhooks.on_channel_add.url`.
272
- # @param [String] webhooks_on_channel_destroy_url The URL of the webhook to call
273
- # in response to the `on_channel_destroy` event using the
274
- # `webhooks.on_channel_destroy.method` HTTP method.
275
- # @param [String] webhooks_on_channel_destroy_method The HTTP method to use when
276
- # calling the `webhooks.on_channel_destroy.url`.
277
- # @param [String] webhooks_on_channel_update_url The URL of the webhook to call in
278
- # response to the `on_channel_update` event using the
279
- # `webhooks.on_channel_update.method` HTTP method.
280
- # @param [String] webhooks_on_channel_update_method The HTTP method to use when
281
- # calling the `webhooks.on_channel_update.url`.
282
- # @param [String] webhooks_on_member_add_url The URL of the webhook to call in
283
- # response to the `on_member_add` event using the `webhooks.on_member_add.method`
284
- # HTTP method.
285
- # @param [String] webhooks_on_member_add_method The HTTP method to use when
286
- # calling the `webhooks.on_member_add.url`.
287
- # @param [String] webhooks_on_member_remove_url The URL of the webhook to call in
288
- # response to the `on_member_remove` event using the
289
- # `webhooks.on_member_remove.method` HTTP method.
290
- # @param [String] webhooks_on_member_remove_method The HTTP method to use when
291
- # calling the `webhooks.on_member_remove.url`.
292
- # @param [String] webhooks_on_message_sent_url The URL of the webhook to call in
293
- # response to the `on_message_sent` event using the
294
- # `webhooks.on_message_sent.method` HTTP method.
295
- # @param [String] webhooks_on_message_sent_method The URL of the webhook to call
296
- # in response to the `on_message_sent` event`.
297
- # @param [String] webhooks_on_message_updated_url The URL of the webhook to call
298
- # in response to the `on_message_updated` event using the
299
- # `webhooks.on_message_updated.method` HTTP method.
300
- # @param [String] webhooks_on_message_updated_method The HTTP method to use when
301
- # calling the `webhooks.on_message_updated.url`.
302
- # @param [String] webhooks_on_message_removed_url The URL of the webhook to call
303
- # in response to the `on_message_removed` event using the
304
- # `webhooks.on_message_removed.method` HTTP method.
305
- # @param [String] webhooks_on_message_removed_method The HTTP method to use when
306
- # calling the `webhooks.on_message_removed.url`.
307
- # @param [String] webhooks_on_channel_added_url The URL of the webhook to call in
308
- # response to the `on_channel_added` event using the
309
- # `webhooks.on_channel_added.method` HTTP method.
310
- # @param [String] webhooks_on_channel_added_method The URL of the webhook to call
311
- # in response to the `on_channel_added` event`.
312
- # @param [String] webhooks_on_channel_destroyed_url The URL of the webhook to call
313
- # in response to the `on_channel_added` event using the
314
- # `webhooks.on_channel_destroyed.method` HTTP method.
315
- # @param [String] webhooks_on_channel_destroyed_method The HTTP method to use when
316
- # calling the `webhooks.on_channel_destroyed.url`.
317
- # @param [String] webhooks_on_channel_updated_url The URL of the webhook to call
318
- # in response to the `on_channel_updated` event using the
319
- # `webhooks.on_channel_updated.method` HTTP method.
320
- # @param [String] webhooks_on_channel_updated_method The HTTP method to use when
321
- # calling the `webhooks.on_channel_updated.url`.
322
- # @param [String] webhooks_on_member_added_url The URL of the webhook to call in
323
- # response to the `on_channel_updated` event using the
324
- # `webhooks.on_channel_updated.method` HTTP method.
325
- # @param [String] webhooks_on_member_added_method The HTTP method to use when
326
- # calling the `webhooks.on_channel_updated.url`.
327
- # @param [String] webhooks_on_member_removed_url The URL of the webhook to call in
328
- # response to the `on_member_removed` event using the
329
- # `webhooks.on_member_removed.method` HTTP method.
330
- # @param [String] webhooks_on_member_removed_method The HTTP method to use when
331
- # calling the `webhooks.on_member_removed.url`.
332
- # @param [String] limits_channel_members The maximum number of Members that can be
333
- # added to Channels within this Service. Can be up to 1,000.
334
- # @param [String] limits_user_channels The maximum number of Channels Users can be
335
- # a Member of within this Service. Can be up to 1,000.
336
- # @return [ServiceInstance] Updated ServiceInstance
337
- def update(friendly_name: :unset, default_service_role_sid: :unset, default_channel_role_sid: :unset, default_channel_creator_role_sid: :unset, read_status_enabled: :unset, reachability_enabled: :unset, typing_indicator_timeout: :unset, consumption_report_interval: :unset, notifications_new_message_enabled: :unset, notifications_new_message_template: :unset, notifications_added_to_channel_enabled: :unset, notifications_added_to_channel_template: :unset, notifications_removed_from_channel_enabled: :unset, notifications_removed_from_channel_template: :unset, notifications_invited_to_channel_enabled: :unset, notifications_invited_to_channel_template: :unset, pre_webhook_url: :unset, post_webhook_url: :unset, webhook_method: :unset, webhook_filters: :unset, webhooks_on_message_send_url: :unset, webhooks_on_message_send_method: :unset, webhooks_on_message_update_url: :unset, webhooks_on_message_update_method: :unset, webhooks_on_message_remove_url: :unset, webhooks_on_message_remove_method: :unset, webhooks_on_channel_add_url: :unset, webhooks_on_channel_add_method: :unset, webhooks_on_channel_destroy_url: :unset, webhooks_on_channel_destroy_method: :unset, webhooks_on_channel_update_url: :unset, webhooks_on_channel_update_method: :unset, webhooks_on_member_add_url: :unset, webhooks_on_member_add_method: :unset, webhooks_on_member_remove_url: :unset, webhooks_on_member_remove_method: :unset, webhooks_on_message_sent_url: :unset, webhooks_on_message_sent_method: :unset, webhooks_on_message_updated_url: :unset, webhooks_on_message_updated_method: :unset, webhooks_on_message_removed_url: :unset, webhooks_on_message_removed_method: :unset, webhooks_on_channel_added_url: :unset, webhooks_on_channel_added_method: :unset, webhooks_on_channel_destroyed_url: :unset, webhooks_on_channel_destroyed_method: :unset, webhooks_on_channel_updated_url: :unset, webhooks_on_channel_updated_method: :unset, webhooks_on_member_added_url: :unset, webhooks_on_member_added_method: :unset, webhooks_on_member_removed_url: :unset, webhooks_on_member_removed_method: :unset, limits_channel_members: :unset, limits_user_channels: :unset)
338
- data = Twilio::Values.of({
339
- 'FriendlyName' => friendly_name,
340
- 'DefaultServiceRoleSid' => default_service_role_sid,
341
- 'DefaultChannelRoleSid' => default_channel_role_sid,
342
- 'DefaultChannelCreatorRoleSid' => default_channel_creator_role_sid,
343
- 'ReadStatusEnabled' => read_status_enabled,
344
- 'ReachabilityEnabled' => reachability_enabled,
345
- 'TypingIndicatorTimeout' => typing_indicator_timeout,
346
- 'ConsumptionReportInterval' => consumption_report_interval,
347
- 'Notifications.NewMessage.Enabled' => notifications_new_message_enabled,
348
- 'Notifications.NewMessage.Template' => notifications_new_message_template,
349
- 'Notifications.AddedToChannel.Enabled' => notifications_added_to_channel_enabled,
350
- 'Notifications.AddedToChannel.Template' => notifications_added_to_channel_template,
351
- 'Notifications.RemovedFromChannel.Enabled' => notifications_removed_from_channel_enabled,
352
- 'Notifications.RemovedFromChannel.Template' => notifications_removed_from_channel_template,
353
- 'Notifications.InvitedToChannel.Enabled' => notifications_invited_to_channel_enabled,
354
- 'Notifications.InvitedToChannel.Template' => notifications_invited_to_channel_template,
355
- 'PreWebhookUrl' => pre_webhook_url,
356
- 'PostWebhookUrl' => post_webhook_url,
357
- 'WebhookMethod' => webhook_method,
358
- 'WebhookFilters' => Twilio.serialize_list(webhook_filters) { |e| e },
359
- 'Webhooks.OnMessageSend.Url' => webhooks_on_message_send_url,
360
- 'Webhooks.OnMessageSend.Method' => webhooks_on_message_send_method,
361
- 'Webhooks.OnMessageUpdate.Url' => webhooks_on_message_update_url,
362
- 'Webhooks.OnMessageUpdate.Method' => webhooks_on_message_update_method,
363
- 'Webhooks.OnMessageRemove.Url' => webhooks_on_message_remove_url,
364
- 'Webhooks.OnMessageRemove.Method' => webhooks_on_message_remove_method,
365
- 'Webhooks.OnChannelAdd.Url' => webhooks_on_channel_add_url,
366
- 'Webhooks.OnChannelAdd.Method' => webhooks_on_channel_add_method,
367
- 'Webhooks.OnChannelDestroy.Url' => webhooks_on_channel_destroy_url,
368
- 'Webhooks.OnChannelDestroy.Method' => webhooks_on_channel_destroy_method,
369
- 'Webhooks.OnChannelUpdate.Url' => webhooks_on_channel_update_url,
370
- 'Webhooks.OnChannelUpdate.Method' => webhooks_on_channel_update_method,
371
- 'Webhooks.OnMemberAdd.Url' => webhooks_on_member_add_url,
372
- 'Webhooks.OnMemberAdd.Method' => webhooks_on_member_add_method,
373
- 'Webhooks.OnMemberRemove.Url' => webhooks_on_member_remove_url,
374
- 'Webhooks.OnMemberRemove.Method' => webhooks_on_member_remove_method,
375
- 'Webhooks.OnMessageSent.Url' => webhooks_on_message_sent_url,
376
- 'Webhooks.OnMessageSent.Method' => webhooks_on_message_sent_method,
377
- 'Webhooks.OnMessageUpdated.Url' => webhooks_on_message_updated_url,
378
- 'Webhooks.OnMessageUpdated.Method' => webhooks_on_message_updated_method,
379
- 'Webhooks.OnMessageRemoved.Url' => webhooks_on_message_removed_url,
380
- 'Webhooks.OnMessageRemoved.Method' => webhooks_on_message_removed_method,
381
- 'Webhooks.OnChannelAdded.Url' => webhooks_on_channel_added_url,
382
- 'Webhooks.OnChannelAdded.Method' => webhooks_on_channel_added_method,
383
- 'Webhooks.OnChannelDestroyed.Url' => webhooks_on_channel_destroyed_url,
384
- 'Webhooks.OnChannelDestroyed.Method' => webhooks_on_channel_destroyed_method,
385
- 'Webhooks.OnChannelUpdated.Url' => webhooks_on_channel_updated_url,
386
- 'Webhooks.OnChannelUpdated.Method' => webhooks_on_channel_updated_method,
387
- 'Webhooks.OnMemberAdded.Url' => webhooks_on_member_added_url,
388
- 'Webhooks.OnMemberAdded.Method' => webhooks_on_member_added_method,
389
- 'Webhooks.OnMemberRemoved.Url' => webhooks_on_member_removed_url,
390
- 'Webhooks.OnMemberRemoved.Method' => webhooks_on_member_removed_method,
391
- 'Limits.ChannelMembers' => limits_channel_members,
392
- 'Limits.UserChannels' => limits_user_channels,
393
- })
394
-
395
- payload = @version.update('POST', @uri, data: data)
396
-
397
- ServiceInstance.new(@version, payload, sid: @solution[:sid], )
398
- end
399
-
400
- ##
401
- # Access the channels
402
- # @return [ChannelList]
403
- # @return [ChannelContext] if sid was passed.
404
- def channels(sid=:unset)
405
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
406
-
407
- if sid != :unset
408
- return ChannelContext.new(@version, @solution[:sid], sid, )
409
- end
410
-
411
- unless @channels
412
- @channels = ChannelList.new(@version, service_sid: @solution[:sid], )
413
- end
414
-
415
- @channels
416
- end
417
-
418
- ##
419
- # Access the roles
420
- # @return [RoleList]
421
- # @return [RoleContext] if sid was passed.
422
- def roles(sid=:unset)
423
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
424
-
425
- if sid != :unset
426
- return RoleContext.new(@version, @solution[:sid], sid, )
427
- end
428
-
429
- unless @roles
430
- @roles = RoleList.new(@version, service_sid: @solution[:sid], )
431
- end
432
-
433
- @roles
434
- end
435
-
436
- ##
437
- # Access the users
438
- # @return [UserList]
439
- # @return [UserContext] if sid was passed.
440
- def users(sid=:unset)
441
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
442
-
443
- if sid != :unset
444
- return UserContext.new(@version, @solution[:sid], sid, )
445
- end
446
-
447
- unless @users
448
- @users = UserList.new(@version, service_sid: @solution[:sid], )
449
- end
450
-
451
- @users
452
- end
453
-
454
- ##
455
- # Provide a user friendly representation
456
- def to_s
457
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
458
- "#<Twilio.Chat.V1.ServiceContext #{context}>"
459
- end
460
-
461
- ##
462
- # Provide a detailed, user friendly representation
463
- def inspect
464
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
465
- "#<Twilio.Chat.V1.ServiceContext #{context}>"
466
- end
467
- end
163
+ end
164
+
165
+ ##
166
+ # Retrieve a single page of ServiceInstance records from the API.
167
+ # Request is executed immediately.
168
+ # @param [String] page_token PageToken provided by the API
169
+ # @param [Integer] page_number Page Number, this value is simply for client state
170
+ # @param [Integer] page_size Number of records to return, defaults to 50
171
+ # @return [Page] Page of ServiceInstance
172
+ def page(page_token: :unset, page_number: :unset,page_size: :unset)
173
+ params = Twilio::Values.of({
174
+ 'PageToken' => page_token,
175
+ 'Page' => page_number,
176
+ 'PageSize' => page_size,
177
+ })
178
+ headers = Twilio::Values.of({})
179
+
180
+
181
+
182
+ response = @version.page('GET', @uri, params: params, headers: headers)
183
+
184
+ ServicePage.new(@version, response, @solution)
185
+ end
186
+
187
+ ##
188
+ # Retrieve a single page of ServiceInstance records from the API.
189
+ # Request is executed immediately.
190
+ # @param [String] target_url API-generated URL for the requested results page
191
+ # @return [Page] Page of ServiceInstance
192
+ def get_page(target_url)
193
+ response = @version.domain.request(
194
+ 'GET',
195
+ target_url
196
+ )
197
+ ServicePage.new(@version, response, @solution)
198
+ end
199
+
200
+
201
+
202
+ # Provide a user friendly representation
203
+ def to_s
204
+ '#<Twilio.Chat.V1.ServiceList>'
205
+ end
206
+ end
207
+
208
+
209
+ class ServiceContext < InstanceContext
210
+ ##
211
+ # Initialize the ServiceContext
212
+ # @param [Version] version Version that contains the resource
213
+ # @param [String] sid The Twilio-provided string that uniquely identifies the Service resource to update.
214
+ # @return [ServiceContext] ServiceContext
215
+ def initialize(version, sid)
216
+ super(version)
217
+
218
+
219
+ # Path Solution
220
+ @solution = { sid: sid, }
221
+ @uri = "/Services/#{@solution[:sid]}"
222
+
223
+ # Dependents
224
+ @channels = nil
225
+ @roles = nil
226
+ @users = nil
227
+ end
228
+ ##
229
+ # Delete the ServiceInstance
230
+ # @return [Boolean] True if delete succeeds, false otherwise
231
+ def delete
232
+
233
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
234
+
235
+
236
+
237
+
238
+ @version.delete('DELETE', @uri, headers: headers)
239
+ end
240
+
241
+ ##
242
+ # Delete the ServiceInstanceMetadata
243
+ # @return [Boolean] True if delete succeeds, false otherwise
244
+ def delete_with_metadata
245
+
246
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
247
+
248
+
249
+
250
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
251
+ service_instance = ServiceInstance.new(
252
+ @version,
253
+ response.body,
254
+ account_sid: @solution[:account_sid],
255
+ sid: @solution[:sid],
256
+ )
257
+ ServiceInstanceMetadata.new(@version, service_instance, response.headers, response.status_code)
258
+ end
259
+
260
+ ##
261
+ # Fetch the ServiceInstance
262
+ # @return [ServiceInstance] Fetched ServiceInstance
263
+ def fetch
264
+
265
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
266
+
267
+
268
+
269
+
270
+
271
+ payload = @version.fetch('GET', @uri, headers: headers)
272
+ ServiceInstance.new(
273
+ @version,
274
+ payload,
275
+ sid: @solution[:sid],
276
+ )
277
+ end
278
+
279
+ ##
280
+ # Fetch the ServiceInstanceMetadata
281
+ # @return [ServiceInstance] Fetched ServiceInstance
282
+ def fetch_with_metadata
283
+
284
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
285
+
286
+
287
+
288
+
289
+
290
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
291
+ service_instance = ServiceInstance.new(
292
+ @version,
293
+ response.body,
294
+ sid: @solution[:sid],
295
+ )
296
+ ServiceInstanceMetadata.new(
297
+ @version,
298
+ service_instance,
299
+ response.headers,
300
+ response.status_code
301
+ )
302
+ end
303
+
304
+ ##
305
+ # Update the ServiceInstance
306
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
307
+ # @param [String] default_service_role_sid The service role assigned to users when they are added to the service. See the [Roles endpoint](https://www.twilio.com/docs/chat/api/roles) for more details.
308
+ # @param [String] default_channel_role_sid The channel role assigned to users when they are added to a channel. See the [Roles endpoint](https://www.twilio.com/docs/chat/api/roles) for more details.
309
+ # @param [String] default_channel_creator_role_sid The channel role assigned to a channel creator when they join a new channel. See the [Roles endpoint](https://www.twilio.com/docs/chat/api/roles) for more details.
310
+ # @param [Boolean] read_status_enabled Whether to enable the [Message Consumption Horizon](https://www.twilio.com/docs/chat/consumption-horizon) feature. The default is `true`.
311
+ # @param [Boolean] reachability_enabled Whether to enable the [Reachability Indicator](https://www.twilio.com/docs/chat/reachability-indicator) for this Service instance. The default is `false`.
312
+ # @param [String] typing_indicator_timeout How long in seconds after a `started typing` event until clients should assume that user is no longer typing, even if no `ended typing` message was received. The default is 5 seconds.
313
+ # @param [String] consumption_report_interval DEPRECATED. The interval in seconds between consumption reports submission batches from client endpoints.
314
+ # @param [Boolean] notifications_new_message_enabled Whether to send a notification when a new message is added to a channel. Can be: `true` or `false` and the default is `false`.
315
+ # @param [String] notifications_new_message_template The template to use to create the notification text displayed when a new message is added to a channel and `notifications.new_message.enabled` is `true`.
316
+ # @param [Boolean] notifications_added_to_channel_enabled Whether to send a notification when a member is added to a channel. Can be: `true` or `false` and the default is `false`.
317
+ # @param [String] notifications_added_to_channel_template The template to use to create the notification text displayed when a member is added to a channel and `notifications.added_to_channel.enabled` is `true`.
318
+ # @param [Boolean] notifications_removed_from_channel_enabled Whether to send a notification to a user when they are removed from a channel. Can be: `true` or `false` and the default is `false`.
319
+ # @param [String] notifications_removed_from_channel_template The template to use to create the notification text displayed to a user when they are removed from a channel and `notifications.removed_from_channel.enabled` is `true`.
320
+ # @param [Boolean] notifications_invited_to_channel_enabled Whether to send a notification when a user is invited to a channel. Can be: `true` or `false` and the default is `false`.
321
+ # @param [String] notifications_invited_to_channel_template The template to use to create the notification text displayed when a user is invited to a channel and `notifications.invited_to_channel.enabled` is `true`.
322
+ # @param [String] pre_webhook_url The URL for pre-event webhooks, which are called by using the `webhook_method`. See [Webhook Events](https://www.twilio.com/docs/api/chat/webhooks) for more details.
323
+ # @param [String] post_webhook_url The URL for post-event webhooks, which are called by using the `webhook_method`. See [Webhook Events](https://www.twilio.com/docs/api/chat/webhooks) for more details.
324
+ # @param [String] webhook_method The HTTP method to use for calls to the `pre_webhook_url` and `post_webhook_url` webhooks. Can be: `POST` or `GET` and the default is `POST`. See [Webhook Events](https://www.twilio.com/docs/chat/webhook-events) for more details.
325
+ # @param [Array[String]] webhook_filters The list of WebHook events that are enabled for this Service instance. See [Webhook Events](https://www.twilio.com/docs/chat/webhook-events) for more details.
326
+ # @param [String] webhooks_on_message_send_url The URL of the webhook to call in response to the `on_message_send` event using the `webhooks.on_message_send.method` HTTP method.
327
+ # @param [String] webhooks_on_message_send_method The HTTP method to use when calling the `webhooks.on_message_send.url`.
328
+ # @param [String] webhooks_on_message_update_url The URL of the webhook to call in response to the `on_message_update` event using the `webhooks.on_message_update.method` HTTP method.
329
+ # @param [String] webhooks_on_message_update_method The HTTP method to use when calling the `webhooks.on_message_update.url`.
330
+ # @param [String] webhooks_on_message_remove_url The URL of the webhook to call in response to the `on_message_remove` event using the `webhooks.on_message_remove.method` HTTP method.
331
+ # @param [String] webhooks_on_message_remove_method The HTTP method to use when calling the `webhooks.on_message_remove.url`.
332
+ # @param [String] webhooks_on_channel_add_url The URL of the webhook to call in response to the `on_channel_add` event using the `webhooks.on_channel_add.method` HTTP method.
333
+ # @param [String] webhooks_on_channel_add_method The HTTP method to use when calling the `webhooks.on_channel_add.url`.
334
+ # @param [String] webhooks_on_channel_destroy_url The URL of the webhook to call in response to the `on_channel_destroy` event using the `webhooks.on_channel_destroy.method` HTTP method.
335
+ # @param [String] webhooks_on_channel_destroy_method The HTTP method to use when calling the `webhooks.on_channel_destroy.url`.
336
+ # @param [String] webhooks_on_channel_update_url The URL of the webhook to call in response to the `on_channel_update` event using the `webhooks.on_channel_update.method` HTTP method.
337
+ # @param [String] webhooks_on_channel_update_method The HTTP method to use when calling the `webhooks.on_channel_update.url`.
338
+ # @param [String] webhooks_on_member_add_url The URL of the webhook to call in response to the `on_member_add` event using the `webhooks.on_member_add.method` HTTP method.
339
+ # @param [String] webhooks_on_member_add_method The HTTP method to use when calling the `webhooks.on_member_add.url`.
340
+ # @param [String] webhooks_on_member_remove_url The URL of the webhook to call in response to the `on_member_remove` event using the `webhooks.on_member_remove.method` HTTP method.
341
+ # @param [String] webhooks_on_member_remove_method The HTTP method to use when calling the `webhooks.on_member_remove.url`.
342
+ # @param [String] webhooks_on_message_sent_url The URL of the webhook to call in response to the `on_message_sent` event using the `webhooks.on_message_sent.method` HTTP method.
343
+ # @param [String] webhooks_on_message_sent_method The URL of the webhook to call in response to the `on_message_sent` event`.
344
+ # @param [String] webhooks_on_message_updated_url The URL of the webhook to call in response to the `on_message_updated` event using the `webhooks.on_message_updated.method` HTTP method.
345
+ # @param [String] webhooks_on_message_updated_method The HTTP method to use when calling the `webhooks.on_message_updated.url`.
346
+ # @param [String] webhooks_on_message_removed_url The URL of the webhook to call in response to the `on_message_removed` event using the `webhooks.on_message_removed.method` HTTP method.
347
+ # @param [String] webhooks_on_message_removed_method The HTTP method to use when calling the `webhooks.on_message_removed.url`.
348
+ # @param [String] webhooks_on_channel_added_url The URL of the webhook to call in response to the `on_channel_added` event using the `webhooks.on_channel_added.method` HTTP method.
349
+ # @param [String] webhooks_on_channel_added_method The URL of the webhook to call in response to the `on_channel_added` event`.
350
+ # @param [String] webhooks_on_channel_destroyed_url The URL of the webhook to call in response to the `on_channel_added` event using the `webhooks.on_channel_destroyed.method` HTTP method.
351
+ # @param [String] webhooks_on_channel_destroyed_method The HTTP method to use when calling the `webhooks.on_channel_destroyed.url`.
352
+ # @param [String] webhooks_on_channel_updated_url The URL of the webhook to call in response to the `on_channel_updated` event using the `webhooks.on_channel_updated.method` HTTP method.
353
+ # @param [String] webhooks_on_channel_updated_method The HTTP method to use when calling the `webhooks.on_channel_updated.url`.
354
+ # @param [String] webhooks_on_member_added_url The URL of the webhook to call in response to the `on_channel_updated` event using the `webhooks.on_channel_updated.method` HTTP method.
355
+ # @param [String] webhooks_on_member_added_method The HTTP method to use when calling the `webhooks.on_channel_updated.url`.
356
+ # @param [String] webhooks_on_member_removed_url The URL of the webhook to call in response to the `on_member_removed` event using the `webhooks.on_member_removed.method` HTTP method.
357
+ # @param [String] webhooks_on_member_removed_method The HTTP method to use when calling the `webhooks.on_member_removed.url`.
358
+ # @param [String] limits_channel_members The maximum number of Members that can be added to Channels within this Service. Can be up to 1,000.
359
+ # @param [String] limits_user_channels The maximum number of Channels Users can be a Member of within this Service. Can be up to 1,000.
360
+ # @return [ServiceInstance] Updated ServiceInstance
361
+ def update(
362
+ friendly_name: :unset,
363
+ default_service_role_sid: :unset,
364
+ default_channel_role_sid: :unset,
365
+ default_channel_creator_role_sid: :unset,
366
+ read_status_enabled: :unset,
367
+ reachability_enabled: :unset,
368
+ typing_indicator_timeout: :unset,
369
+ consumption_report_interval: :unset,
370
+ notifications_new_message_enabled: :unset,
371
+ notifications_new_message_template: :unset,
372
+ notifications_added_to_channel_enabled: :unset,
373
+ notifications_added_to_channel_template: :unset,
374
+ notifications_removed_from_channel_enabled: :unset,
375
+ notifications_removed_from_channel_template: :unset,
376
+ notifications_invited_to_channel_enabled: :unset,
377
+ notifications_invited_to_channel_template: :unset,
378
+ pre_webhook_url: :unset,
379
+ post_webhook_url: :unset,
380
+ webhook_method: :unset,
381
+ webhook_filters: :unset,
382
+ webhooks_on_message_send_url: :unset,
383
+ webhooks_on_message_send_method: :unset,
384
+ webhooks_on_message_update_url: :unset,
385
+ webhooks_on_message_update_method: :unset,
386
+ webhooks_on_message_remove_url: :unset,
387
+ webhooks_on_message_remove_method: :unset,
388
+ webhooks_on_channel_add_url: :unset,
389
+ webhooks_on_channel_add_method: :unset,
390
+ webhooks_on_channel_destroy_url: :unset,
391
+ webhooks_on_channel_destroy_method: :unset,
392
+ webhooks_on_channel_update_url: :unset,
393
+ webhooks_on_channel_update_method: :unset,
394
+ webhooks_on_member_add_url: :unset,
395
+ webhooks_on_member_add_method: :unset,
396
+ webhooks_on_member_remove_url: :unset,
397
+ webhooks_on_member_remove_method: :unset,
398
+ webhooks_on_message_sent_url: :unset,
399
+ webhooks_on_message_sent_method: :unset,
400
+ webhooks_on_message_updated_url: :unset,
401
+ webhooks_on_message_updated_method: :unset,
402
+ webhooks_on_message_removed_url: :unset,
403
+ webhooks_on_message_removed_method: :unset,
404
+ webhooks_on_channel_added_url: :unset,
405
+ webhooks_on_channel_added_method: :unset,
406
+ webhooks_on_channel_destroyed_url: :unset,
407
+ webhooks_on_channel_destroyed_method: :unset,
408
+ webhooks_on_channel_updated_url: :unset,
409
+ webhooks_on_channel_updated_method: :unset,
410
+ webhooks_on_member_added_url: :unset,
411
+ webhooks_on_member_added_method: :unset,
412
+ webhooks_on_member_removed_url: :unset,
413
+ webhooks_on_member_removed_method: :unset,
414
+ limits_channel_members: :unset,
415
+ limits_user_channels: :unset
416
+ )
417
+
418
+ data = Twilio::Values.of({
419
+ 'FriendlyName' => friendly_name,
420
+ 'DefaultServiceRoleSid' => default_service_role_sid,
421
+ 'DefaultChannelRoleSid' => default_channel_role_sid,
422
+ 'DefaultChannelCreatorRoleSid' => default_channel_creator_role_sid,
423
+ 'ReadStatusEnabled' => read_status_enabled,
424
+ 'ReachabilityEnabled' => reachability_enabled,
425
+ 'TypingIndicatorTimeout' => typing_indicator_timeout,
426
+ 'ConsumptionReportInterval' => consumption_report_interval,
427
+ 'Notifications.NewMessage.Enabled' => notifications_new_message_enabled,
428
+ 'Notifications.NewMessage.Template' => notifications_new_message_template,
429
+ 'Notifications.AddedToChannel.Enabled' => notifications_added_to_channel_enabled,
430
+ 'Notifications.AddedToChannel.Template' => notifications_added_to_channel_template,
431
+ 'Notifications.RemovedFromChannel.Enabled' => notifications_removed_from_channel_enabled,
432
+ 'Notifications.RemovedFromChannel.Template' => notifications_removed_from_channel_template,
433
+ 'Notifications.InvitedToChannel.Enabled' => notifications_invited_to_channel_enabled,
434
+ 'Notifications.InvitedToChannel.Template' => notifications_invited_to_channel_template,
435
+ 'PreWebhookUrl' => pre_webhook_url,
436
+ 'PostWebhookUrl' => post_webhook_url,
437
+ 'WebhookMethod' => webhook_method,
438
+ 'WebhookFilters' => Twilio.serialize_list(webhook_filters) { |e| e },
439
+ 'Webhooks.OnMessageSend.Url' => webhooks_on_message_send_url,
440
+ 'Webhooks.OnMessageSend.Method' => webhooks_on_message_send_method,
441
+ 'Webhooks.OnMessageUpdate.Url' => webhooks_on_message_update_url,
442
+ 'Webhooks.OnMessageUpdate.Method' => webhooks_on_message_update_method,
443
+ 'Webhooks.OnMessageRemove.Url' => webhooks_on_message_remove_url,
444
+ 'Webhooks.OnMessageRemove.Method' => webhooks_on_message_remove_method,
445
+ 'Webhooks.OnChannelAdd.Url' => webhooks_on_channel_add_url,
446
+ 'Webhooks.OnChannelAdd.Method' => webhooks_on_channel_add_method,
447
+ 'Webhooks.OnChannelDestroy.Url' => webhooks_on_channel_destroy_url,
448
+ 'Webhooks.OnChannelDestroy.Method' => webhooks_on_channel_destroy_method,
449
+ 'Webhooks.OnChannelUpdate.Url' => webhooks_on_channel_update_url,
450
+ 'Webhooks.OnChannelUpdate.Method' => webhooks_on_channel_update_method,
451
+ 'Webhooks.OnMemberAdd.Url' => webhooks_on_member_add_url,
452
+ 'Webhooks.OnMemberAdd.Method' => webhooks_on_member_add_method,
453
+ 'Webhooks.OnMemberRemove.Url' => webhooks_on_member_remove_url,
454
+ 'Webhooks.OnMemberRemove.Method' => webhooks_on_member_remove_method,
455
+ 'Webhooks.OnMessageSent.Url' => webhooks_on_message_sent_url,
456
+ 'Webhooks.OnMessageSent.Method' => webhooks_on_message_sent_method,
457
+ 'Webhooks.OnMessageUpdated.Url' => webhooks_on_message_updated_url,
458
+ 'Webhooks.OnMessageUpdated.Method' => webhooks_on_message_updated_method,
459
+ 'Webhooks.OnMessageRemoved.Url' => webhooks_on_message_removed_url,
460
+ 'Webhooks.OnMessageRemoved.Method' => webhooks_on_message_removed_method,
461
+ 'Webhooks.OnChannelAdded.Url' => webhooks_on_channel_added_url,
462
+ 'Webhooks.OnChannelAdded.Method' => webhooks_on_channel_added_method,
463
+ 'Webhooks.OnChannelDestroyed.Url' => webhooks_on_channel_destroyed_url,
464
+ 'Webhooks.OnChannelDestroyed.Method' => webhooks_on_channel_destroyed_method,
465
+ 'Webhooks.OnChannelUpdated.Url' => webhooks_on_channel_updated_url,
466
+ 'Webhooks.OnChannelUpdated.Method' => webhooks_on_channel_updated_method,
467
+ 'Webhooks.OnMemberAdded.Url' => webhooks_on_member_added_url,
468
+ 'Webhooks.OnMemberAdded.Method' => webhooks_on_member_added_method,
469
+ 'Webhooks.OnMemberRemoved.Url' => webhooks_on_member_removed_url,
470
+ 'Webhooks.OnMemberRemoved.Method' => webhooks_on_member_removed_method,
471
+ 'Limits.ChannelMembers' => limits_channel_members,
472
+ 'Limits.UserChannels' => limits_user_channels,
473
+ })
474
+
475
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
476
+
477
+
478
+
479
+
480
+
481
+ payload = @version.update('POST', @uri, data: data, headers: headers)
482
+ ServiceInstance.new(
483
+ @version,
484
+ payload,
485
+ sid: @solution[:sid],
486
+ )
487
+ end
488
+
489
+ ##
490
+ # Update the ServiceInstanceMetadata
491
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
492
+ # @param [String] default_service_role_sid The service role assigned to users when they are added to the service. See the [Roles endpoint](https://www.twilio.com/docs/chat/api/roles) for more details.
493
+ # @param [String] default_channel_role_sid The channel role assigned to users when they are added to a channel. See the [Roles endpoint](https://www.twilio.com/docs/chat/api/roles) for more details.
494
+ # @param [String] default_channel_creator_role_sid The channel role assigned to a channel creator when they join a new channel. See the [Roles endpoint](https://www.twilio.com/docs/chat/api/roles) for more details.
495
+ # @param [Boolean] read_status_enabled Whether to enable the [Message Consumption Horizon](https://www.twilio.com/docs/chat/consumption-horizon) feature. The default is `true`.
496
+ # @param [Boolean] reachability_enabled Whether to enable the [Reachability Indicator](https://www.twilio.com/docs/chat/reachability-indicator) for this Service instance. The default is `false`.
497
+ # @param [String] typing_indicator_timeout How long in seconds after a `started typing` event until clients should assume that user is no longer typing, even if no `ended typing` message was received. The default is 5 seconds.
498
+ # @param [String] consumption_report_interval DEPRECATED. The interval in seconds between consumption reports submission batches from client endpoints.
499
+ # @param [Boolean] notifications_new_message_enabled Whether to send a notification when a new message is added to a channel. Can be: `true` or `false` and the default is `false`.
500
+ # @param [String] notifications_new_message_template The template to use to create the notification text displayed when a new message is added to a channel and `notifications.new_message.enabled` is `true`.
501
+ # @param [Boolean] notifications_added_to_channel_enabled Whether to send a notification when a member is added to a channel. Can be: `true` or `false` and the default is `false`.
502
+ # @param [String] notifications_added_to_channel_template The template to use to create the notification text displayed when a member is added to a channel and `notifications.added_to_channel.enabled` is `true`.
503
+ # @param [Boolean] notifications_removed_from_channel_enabled Whether to send a notification to a user when they are removed from a channel. Can be: `true` or `false` and the default is `false`.
504
+ # @param [String] notifications_removed_from_channel_template The template to use to create the notification text displayed to a user when they are removed from a channel and `notifications.removed_from_channel.enabled` is `true`.
505
+ # @param [Boolean] notifications_invited_to_channel_enabled Whether to send a notification when a user is invited to a channel. Can be: `true` or `false` and the default is `false`.
506
+ # @param [String] notifications_invited_to_channel_template The template to use to create the notification text displayed when a user is invited to a channel and `notifications.invited_to_channel.enabled` is `true`.
507
+ # @param [String] pre_webhook_url The URL for pre-event webhooks, which are called by using the `webhook_method`. See [Webhook Events](https://www.twilio.com/docs/api/chat/webhooks) for more details.
508
+ # @param [String] post_webhook_url The URL for post-event webhooks, which are called by using the `webhook_method`. See [Webhook Events](https://www.twilio.com/docs/api/chat/webhooks) for more details.
509
+ # @param [String] webhook_method The HTTP method to use for calls to the `pre_webhook_url` and `post_webhook_url` webhooks. Can be: `POST` or `GET` and the default is `POST`. See [Webhook Events](https://www.twilio.com/docs/chat/webhook-events) for more details.
510
+ # @param [Array[String]] webhook_filters The list of WebHook events that are enabled for this Service instance. See [Webhook Events](https://www.twilio.com/docs/chat/webhook-events) for more details.
511
+ # @param [String] webhooks_on_message_send_url The URL of the webhook to call in response to the `on_message_send` event using the `webhooks.on_message_send.method` HTTP method.
512
+ # @param [String] webhooks_on_message_send_method The HTTP method to use when calling the `webhooks.on_message_send.url`.
513
+ # @param [String] webhooks_on_message_update_url The URL of the webhook to call in response to the `on_message_update` event using the `webhooks.on_message_update.method` HTTP method.
514
+ # @param [String] webhooks_on_message_update_method The HTTP method to use when calling the `webhooks.on_message_update.url`.
515
+ # @param [String] webhooks_on_message_remove_url The URL of the webhook to call in response to the `on_message_remove` event using the `webhooks.on_message_remove.method` HTTP method.
516
+ # @param [String] webhooks_on_message_remove_method The HTTP method to use when calling the `webhooks.on_message_remove.url`.
517
+ # @param [String] webhooks_on_channel_add_url The URL of the webhook to call in response to the `on_channel_add` event using the `webhooks.on_channel_add.method` HTTP method.
518
+ # @param [String] webhooks_on_channel_add_method The HTTP method to use when calling the `webhooks.on_channel_add.url`.
519
+ # @param [String] webhooks_on_channel_destroy_url The URL of the webhook to call in response to the `on_channel_destroy` event using the `webhooks.on_channel_destroy.method` HTTP method.
520
+ # @param [String] webhooks_on_channel_destroy_method The HTTP method to use when calling the `webhooks.on_channel_destroy.url`.
521
+ # @param [String] webhooks_on_channel_update_url The URL of the webhook to call in response to the `on_channel_update` event using the `webhooks.on_channel_update.method` HTTP method.
522
+ # @param [String] webhooks_on_channel_update_method The HTTP method to use when calling the `webhooks.on_channel_update.url`.
523
+ # @param [String] webhooks_on_member_add_url The URL of the webhook to call in response to the `on_member_add` event using the `webhooks.on_member_add.method` HTTP method.
524
+ # @param [String] webhooks_on_member_add_method The HTTP method to use when calling the `webhooks.on_member_add.url`.
525
+ # @param [String] webhooks_on_member_remove_url The URL of the webhook to call in response to the `on_member_remove` event using the `webhooks.on_member_remove.method` HTTP method.
526
+ # @param [String] webhooks_on_member_remove_method The HTTP method to use when calling the `webhooks.on_member_remove.url`.
527
+ # @param [String] webhooks_on_message_sent_url The URL of the webhook to call in response to the `on_message_sent` event using the `webhooks.on_message_sent.method` HTTP method.
528
+ # @param [String] webhooks_on_message_sent_method The URL of the webhook to call in response to the `on_message_sent` event`.
529
+ # @param [String] webhooks_on_message_updated_url The URL of the webhook to call in response to the `on_message_updated` event using the `webhooks.on_message_updated.method` HTTP method.
530
+ # @param [String] webhooks_on_message_updated_method The HTTP method to use when calling the `webhooks.on_message_updated.url`.
531
+ # @param [String] webhooks_on_message_removed_url The URL of the webhook to call in response to the `on_message_removed` event using the `webhooks.on_message_removed.method` HTTP method.
532
+ # @param [String] webhooks_on_message_removed_method The HTTP method to use when calling the `webhooks.on_message_removed.url`.
533
+ # @param [String] webhooks_on_channel_added_url The URL of the webhook to call in response to the `on_channel_added` event using the `webhooks.on_channel_added.method` HTTP method.
534
+ # @param [String] webhooks_on_channel_added_method The URL of the webhook to call in response to the `on_channel_added` event`.
535
+ # @param [String] webhooks_on_channel_destroyed_url The URL of the webhook to call in response to the `on_channel_added` event using the `webhooks.on_channel_destroyed.method` HTTP method.
536
+ # @param [String] webhooks_on_channel_destroyed_method The HTTP method to use when calling the `webhooks.on_channel_destroyed.url`.
537
+ # @param [String] webhooks_on_channel_updated_url The URL of the webhook to call in response to the `on_channel_updated` event using the `webhooks.on_channel_updated.method` HTTP method.
538
+ # @param [String] webhooks_on_channel_updated_method The HTTP method to use when calling the `webhooks.on_channel_updated.url`.
539
+ # @param [String] webhooks_on_member_added_url The URL of the webhook to call in response to the `on_channel_updated` event using the `webhooks.on_channel_updated.method` HTTP method.
540
+ # @param [String] webhooks_on_member_added_method The HTTP method to use when calling the `webhooks.on_channel_updated.url`.
541
+ # @param [String] webhooks_on_member_removed_url The URL of the webhook to call in response to the `on_member_removed` event using the `webhooks.on_member_removed.method` HTTP method.
542
+ # @param [String] webhooks_on_member_removed_method The HTTP method to use when calling the `webhooks.on_member_removed.url`.
543
+ # @param [String] limits_channel_members The maximum number of Members that can be added to Channels within this Service. Can be up to 1,000.
544
+ # @param [String] limits_user_channels The maximum number of Channels Users can be a Member of within this Service. Can be up to 1,000.
545
+ # @return [ServiceInstance] Updated ServiceInstance
546
+ def update_with_metadata(
547
+ friendly_name: :unset,
548
+ default_service_role_sid: :unset,
549
+ default_channel_role_sid: :unset,
550
+ default_channel_creator_role_sid: :unset,
551
+ read_status_enabled: :unset,
552
+ reachability_enabled: :unset,
553
+ typing_indicator_timeout: :unset,
554
+ consumption_report_interval: :unset,
555
+ notifications_new_message_enabled: :unset,
556
+ notifications_new_message_template: :unset,
557
+ notifications_added_to_channel_enabled: :unset,
558
+ notifications_added_to_channel_template: :unset,
559
+ notifications_removed_from_channel_enabled: :unset,
560
+ notifications_removed_from_channel_template: :unset,
561
+ notifications_invited_to_channel_enabled: :unset,
562
+ notifications_invited_to_channel_template: :unset,
563
+ pre_webhook_url: :unset,
564
+ post_webhook_url: :unset,
565
+ webhook_method: :unset,
566
+ webhook_filters: :unset,
567
+ webhooks_on_message_send_url: :unset,
568
+ webhooks_on_message_send_method: :unset,
569
+ webhooks_on_message_update_url: :unset,
570
+ webhooks_on_message_update_method: :unset,
571
+ webhooks_on_message_remove_url: :unset,
572
+ webhooks_on_message_remove_method: :unset,
573
+ webhooks_on_channel_add_url: :unset,
574
+ webhooks_on_channel_add_method: :unset,
575
+ webhooks_on_channel_destroy_url: :unset,
576
+ webhooks_on_channel_destroy_method: :unset,
577
+ webhooks_on_channel_update_url: :unset,
578
+ webhooks_on_channel_update_method: :unset,
579
+ webhooks_on_member_add_url: :unset,
580
+ webhooks_on_member_add_method: :unset,
581
+ webhooks_on_member_remove_url: :unset,
582
+ webhooks_on_member_remove_method: :unset,
583
+ webhooks_on_message_sent_url: :unset,
584
+ webhooks_on_message_sent_method: :unset,
585
+ webhooks_on_message_updated_url: :unset,
586
+ webhooks_on_message_updated_method: :unset,
587
+ webhooks_on_message_removed_url: :unset,
588
+ webhooks_on_message_removed_method: :unset,
589
+ webhooks_on_channel_added_url: :unset,
590
+ webhooks_on_channel_added_method: :unset,
591
+ webhooks_on_channel_destroyed_url: :unset,
592
+ webhooks_on_channel_destroyed_method: :unset,
593
+ webhooks_on_channel_updated_url: :unset,
594
+ webhooks_on_channel_updated_method: :unset,
595
+ webhooks_on_member_added_url: :unset,
596
+ webhooks_on_member_added_method: :unset,
597
+ webhooks_on_member_removed_url: :unset,
598
+ webhooks_on_member_removed_method: :unset,
599
+ limits_channel_members: :unset,
600
+ limits_user_channels: :unset
601
+ )
602
+
603
+ data = Twilio::Values.of({
604
+ 'FriendlyName' => friendly_name,
605
+ 'DefaultServiceRoleSid' => default_service_role_sid,
606
+ 'DefaultChannelRoleSid' => default_channel_role_sid,
607
+ 'DefaultChannelCreatorRoleSid' => default_channel_creator_role_sid,
608
+ 'ReadStatusEnabled' => read_status_enabled,
609
+ 'ReachabilityEnabled' => reachability_enabled,
610
+ 'TypingIndicatorTimeout' => typing_indicator_timeout,
611
+ 'ConsumptionReportInterval' => consumption_report_interval,
612
+ 'Notifications.NewMessage.Enabled' => notifications_new_message_enabled,
613
+ 'Notifications.NewMessage.Template' => notifications_new_message_template,
614
+ 'Notifications.AddedToChannel.Enabled' => notifications_added_to_channel_enabled,
615
+ 'Notifications.AddedToChannel.Template' => notifications_added_to_channel_template,
616
+ 'Notifications.RemovedFromChannel.Enabled' => notifications_removed_from_channel_enabled,
617
+ 'Notifications.RemovedFromChannel.Template' => notifications_removed_from_channel_template,
618
+ 'Notifications.InvitedToChannel.Enabled' => notifications_invited_to_channel_enabled,
619
+ 'Notifications.InvitedToChannel.Template' => notifications_invited_to_channel_template,
620
+ 'PreWebhookUrl' => pre_webhook_url,
621
+ 'PostWebhookUrl' => post_webhook_url,
622
+ 'WebhookMethod' => webhook_method,
623
+ 'WebhookFilters' => Twilio.serialize_list(webhook_filters) { |e| e },
624
+ 'Webhooks.OnMessageSend.Url' => webhooks_on_message_send_url,
625
+ 'Webhooks.OnMessageSend.Method' => webhooks_on_message_send_method,
626
+ 'Webhooks.OnMessageUpdate.Url' => webhooks_on_message_update_url,
627
+ 'Webhooks.OnMessageUpdate.Method' => webhooks_on_message_update_method,
628
+ 'Webhooks.OnMessageRemove.Url' => webhooks_on_message_remove_url,
629
+ 'Webhooks.OnMessageRemove.Method' => webhooks_on_message_remove_method,
630
+ 'Webhooks.OnChannelAdd.Url' => webhooks_on_channel_add_url,
631
+ 'Webhooks.OnChannelAdd.Method' => webhooks_on_channel_add_method,
632
+ 'Webhooks.OnChannelDestroy.Url' => webhooks_on_channel_destroy_url,
633
+ 'Webhooks.OnChannelDestroy.Method' => webhooks_on_channel_destroy_method,
634
+ 'Webhooks.OnChannelUpdate.Url' => webhooks_on_channel_update_url,
635
+ 'Webhooks.OnChannelUpdate.Method' => webhooks_on_channel_update_method,
636
+ 'Webhooks.OnMemberAdd.Url' => webhooks_on_member_add_url,
637
+ 'Webhooks.OnMemberAdd.Method' => webhooks_on_member_add_method,
638
+ 'Webhooks.OnMemberRemove.Url' => webhooks_on_member_remove_url,
639
+ 'Webhooks.OnMemberRemove.Method' => webhooks_on_member_remove_method,
640
+ 'Webhooks.OnMessageSent.Url' => webhooks_on_message_sent_url,
641
+ 'Webhooks.OnMessageSent.Method' => webhooks_on_message_sent_method,
642
+ 'Webhooks.OnMessageUpdated.Url' => webhooks_on_message_updated_url,
643
+ 'Webhooks.OnMessageUpdated.Method' => webhooks_on_message_updated_method,
644
+ 'Webhooks.OnMessageRemoved.Url' => webhooks_on_message_removed_url,
645
+ 'Webhooks.OnMessageRemoved.Method' => webhooks_on_message_removed_method,
646
+ 'Webhooks.OnChannelAdded.Url' => webhooks_on_channel_added_url,
647
+ 'Webhooks.OnChannelAdded.Method' => webhooks_on_channel_added_method,
648
+ 'Webhooks.OnChannelDestroyed.Url' => webhooks_on_channel_destroyed_url,
649
+ 'Webhooks.OnChannelDestroyed.Method' => webhooks_on_channel_destroyed_method,
650
+ 'Webhooks.OnChannelUpdated.Url' => webhooks_on_channel_updated_url,
651
+ 'Webhooks.OnChannelUpdated.Method' => webhooks_on_channel_updated_method,
652
+ 'Webhooks.OnMemberAdded.Url' => webhooks_on_member_added_url,
653
+ 'Webhooks.OnMemberAdded.Method' => webhooks_on_member_added_method,
654
+ 'Webhooks.OnMemberRemoved.Url' => webhooks_on_member_removed_url,
655
+ 'Webhooks.OnMemberRemoved.Method' => webhooks_on_member_removed_method,
656
+ 'Limits.ChannelMembers' => limits_channel_members,
657
+ 'Limits.UserChannels' => limits_user_channels,
658
+ })
659
+
660
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
661
+
662
+
663
+
664
+
665
+
666
+ response = @version.update_with_metadata('POST', @uri, data: data, headers: headers)
667
+ service_instance = ServiceInstance.new(
668
+ @version,
669
+ response.body,
670
+ sid: @solution[:sid],
671
+ )
672
+ ServiceInstanceMetadata.new(
673
+ @version,
674
+ service_instance,
675
+ response.headers,
676
+ response.status_code
677
+ )
678
+ end
679
+
680
+ ##
681
+ # Access the channels
682
+ # @return [ChannelList]
683
+ # @return [ChannelContext] if sid was passed.
684
+ def channels(sid=:unset)
685
+
686
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
687
+
688
+ if sid != :unset
689
+ return ChannelContext.new(@version, @solution[:sid],sid )
690
+ end
691
+
692
+ unless @channels
693
+ @channels = ChannelList.new(
694
+ @version, service_sid: @solution[:sid], )
695
+ end
696
+
697
+ @channels
698
+ end
699
+ ##
700
+ # Access the roles
701
+ # @return [RoleList]
702
+ # @return [RoleContext] if sid was passed.
703
+ def roles(sid=:unset)
704
+
705
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
706
+
707
+ if sid != :unset
708
+ return RoleContext.new(@version, @solution[:sid],sid )
709
+ end
710
+
711
+ unless @roles
712
+ @roles = RoleList.new(
713
+ @version, service_sid: @solution[:sid], )
714
+ end
715
+
716
+ @roles
717
+ end
718
+ ##
719
+ # Access the users
720
+ # @return [UserList]
721
+ # @return [UserContext] if sid was passed.
722
+ def users(sid=:unset)
723
+
724
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
725
+
726
+ if sid != :unset
727
+ return UserContext.new(@version, @solution[:sid],sid )
728
+ end
729
+
730
+ unless @users
731
+ @users = UserList.new(
732
+ @version, service_sid: @solution[:sid], )
733
+ end
734
+
735
+ @users
736
+ end
737
+
738
+ ##
739
+ # Provide a user friendly representation
740
+ def to_s
741
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
742
+ "#<Twilio.Chat.V1.ServiceContext #{context}>"
743
+ end
744
+
745
+ ##
746
+ # Provide a detailed, user friendly representation
747
+ def inspect
748
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
749
+ "#<Twilio.Chat.V1.ServiceContext #{context}>"
750
+ end
751
+ end
752
+
753
+ class ServiceInstanceMetadata < InstanceResourceMetadata
754
+ ##
755
+ # Initializes a new ServiceInstanceMetadata.
756
+ # @param [Version] version Version that contains the resource
757
+ # @param [}ServiceInstance] service_instance The instance associated with the metadata.
758
+ # @param [Hash] headers Header object with response headers.
759
+ # @param [Integer] status_code The HTTP status code of the response.
760
+ # @return [ServiceInstanceMetadata] The initialized instance with metadata.
761
+ def initialize(version, service_instance, headers, status_code)
762
+ super(version, headers, status_code)
763
+ @service_instance = service_instance
764
+ end
765
+
766
+ def service
767
+ @service_instance
768
+ end
769
+
770
+ def headers
771
+ @headers
772
+ end
773
+
774
+ def status_code
775
+ @status_code
776
+ end
777
+
778
+ def to_s
779
+ "<Twilio.Api.V2010.ServiceInstanceMetadata status=#{@status_code}>"
780
+ end
781
+ end
782
+
783
+ class ServiceListResponse < InstanceListResource
784
+ # @param [Array<ServiceInstance>] instance
785
+ # @param [Hash{String => Object}] headers
786
+ # @param [Integer] status_code
787
+ def initialize(version, payload, key)
788
+ @service_instance = payload.body[key].map do |data|
789
+ ServiceInstance.new(version, data)
790
+ end
791
+ @headers = payload.headers
792
+ @status_code = payload.status_code
793
+ end
794
+
795
+ def service_instance
796
+ @instance
797
+ end
798
+ end
799
+
800
+ class ServicePage < Page
801
+ ##
802
+ # Initialize the ServicePage
803
+ # @param [Version] version Version that contains the resource
804
+ # @param [Response] response Response from the API
805
+ # @param [Hash] solution Path solution for the resource
806
+ # @return [ServicePage] ServicePage
807
+ def initialize(version, response, solution)
808
+ super(version, response)
809
+
810
+
811
+ # Path Solution
812
+ @solution = solution
813
+ end
814
+
815
+ ##
816
+ # Build an instance of ServiceInstance
817
+ # @param [Hash] payload Payload response from the API
818
+ # @return [ServiceInstance] ServiceInstance
819
+ def get_instance(payload)
820
+ ServiceInstance.new(@version, payload)
821
+ end
822
+
823
+ ##
824
+ # Provide a user friendly representation
825
+ def to_s
826
+ '<Twilio.Chat.V1.ServicePage>'
827
+ end
828
+ end
829
+
830
+ class ServicePageMetadata < PageMetadata
831
+ attr_reader :service_page
832
+
833
+ def initialize(version, response, solution, limit)
834
+ super(version, response)
835
+ @service_page = []
836
+ @limit = limit
837
+ key = get_key(response.body)
838
+ records = 0
839
+ while( limit != :unset && records < limit )
840
+ @service_page << ServiceListResponse.new(version, @payload, key, limit - records)
841
+ @payload = self.next_page
842
+ break unless @payload
843
+ records += @payload.body[key].size
844
+ end
845
+ # Path Solution
846
+ @solution = solution
847
+ end
848
+
849
+ def each
850
+ @service_page.each do |record|
851
+ yield record
852
+ end
853
+ end
854
+
855
+ def to_s
856
+ '<Twilio::REST::Chat::V1PageMetadata>';
857
+ end
858
+ end
859
+ class ServiceListResponse < InstanceListResource
860
+
861
+ # @param [Array<ServiceInstance>] instance
862
+ # @param [Hash{String => Object}] headers
863
+ # @param [Integer] status_code
864
+ def initialize(version, payload, key, limit = :unset)
865
+ data_list = payload.body[key]
866
+ if limit != :unset
867
+ data_list = data_list[0, limit]
868
+ end
869
+ @service = data_list.map do |data|
870
+ ServiceInstance.new(version, data)
871
+ end
872
+ @headers = payload.headers
873
+ @status_code = payload.status_code
874
+ end
875
+
876
+ def service
877
+ @service
878
+ end
879
+
880
+ def headers
881
+ @headers
882
+ end
883
+
884
+ def status_code
885
+ @status_code
886
+ end
887
+ end
888
+
889
+ class ServiceInstance < InstanceResource
890
+ ##
891
+ # Initialize the ServiceInstance
892
+ # @param [Version] version Version that contains the resource
893
+ # @param [Hash] payload payload that contains response from Twilio
894
+ # @param [String] account_sid The SID of the
895
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Service
896
+ # resource.
897
+ # @param [String] sid The SID of the Call resource to fetch.
898
+ # @return [ServiceInstance] ServiceInstance
899
+ def initialize(version, payload , sid: nil)
900
+ super(version)
901
+
902
+
903
+ # Marshaled Properties
904
+ @properties = {
905
+ 'sid' => payload['sid'],
906
+ 'account_sid' => payload['account_sid'],
907
+ 'friendly_name' => payload['friendly_name'],
908
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
909
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
910
+ 'default_service_role_sid' => payload['default_service_role_sid'],
911
+ 'default_channel_role_sid' => payload['default_channel_role_sid'],
912
+ 'default_channel_creator_role_sid' => payload['default_channel_creator_role_sid'],
913
+ 'read_status_enabled' => payload['read_status_enabled'],
914
+ 'reachability_enabled' => payload['reachability_enabled'],
915
+ 'typing_indicator_timeout' => payload['typing_indicator_timeout'] == nil ? payload['typing_indicator_timeout'] : payload['typing_indicator_timeout'].to_i,
916
+ 'consumption_report_interval' => payload['consumption_report_interval'] == nil ? payload['consumption_report_interval'] : payload['consumption_report_interval'].to_i,
917
+ 'limits' => payload['limits'],
918
+ 'webhooks' => payload['webhooks'],
919
+ 'pre_webhook_url' => payload['pre_webhook_url'],
920
+ 'post_webhook_url' => payload['post_webhook_url'],
921
+ 'webhook_method' => payload['webhook_method'],
922
+ 'webhook_filters' => payload['webhook_filters'],
923
+ 'notifications' => payload['notifications'],
924
+ 'url' => payload['url'],
925
+ 'links' => payload['links'],
926
+ }
927
+
928
+ # Context
929
+ @instance_context = nil
930
+ @params = { 'sid' => sid || @properties['sid'] , }
931
+ end
932
+
933
+ ##
934
+ # Generate an instance context for the instance, the context is capable of
935
+ # performing various actions. All instance actions are proxied to the context
936
+ # @return [ServiceContext] CallContext for this CallInstance
937
+ def context
938
+ unless @instance_context
939
+ @instance_context = ServiceContext.new(@version , @params['sid'])
940
+ end
941
+ @instance_context
942
+ end
943
+
944
+ ##
945
+ # @return [String] The unique string that we created to identify the Service resource.
946
+ def sid
947
+ @properties['sid']
948
+ end
949
+
950
+ ##
951
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/api/rest/account) that created the Service resource.
952
+ def account_sid
953
+ @properties['account_sid']
954
+ end
955
+
956
+ ##
957
+ # @return [String] The string that you assigned to describe the resource.
958
+ def friendly_name
959
+ @properties['friendly_name']
960
+ end
961
+
962
+ ##
963
+ # @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.
964
+ def date_created
965
+ @properties['date_created']
966
+ end
967
+
968
+ ##
969
+ # @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.
970
+ def date_updated
971
+ @properties['date_updated']
972
+ end
973
+
974
+ ##
975
+ # @return [String] The service role assigned to users when they are added to the service. See the [Roles endpoint](https://www.twilio.com/docs/chat/api/roles) for more details.
976
+ def default_service_role_sid
977
+ @properties['default_service_role_sid']
978
+ end
979
+
980
+ ##
981
+ # @return [String] The channel role assigned to users when they are added to a channel. See the [Roles endpoint](https://www.twilio.com/docs/chat/api/roles) for more details.
982
+ def default_channel_role_sid
983
+ @properties['default_channel_role_sid']
984
+ end
985
+
986
+ ##
987
+ # @return [String] The channel role assigned to a channel creator when they join a new channel. See the [Roles endpoint](https://www.twilio.com/docs/chat/api/roles) for more details.
988
+ def default_channel_creator_role_sid
989
+ @properties['default_channel_creator_role_sid']
990
+ end
991
+
992
+ ##
993
+ # @return [Boolean] Whether the [Message Consumption Horizon](https://www.twilio.com/docs/chat/consumption-horizon) feature is enabled. The default is `true`.
994
+ def read_status_enabled
995
+ @properties['read_status_enabled']
996
+ end
997
+
998
+ ##
999
+ # @return [Boolean] Whether the [Reachability Indicator](https://www.twilio.com/docs/chat/reachability-indicator) is enabled for this Service instance. The default is `false`.
1000
+ def reachability_enabled
1001
+ @properties['reachability_enabled']
1002
+ end
1003
+
1004
+ ##
1005
+ # @return [String] How long in seconds after a `started typing` event until clients should assume that user is no longer typing, even if no `ended typing` message was received. The default is 5 seconds.
1006
+ def typing_indicator_timeout
1007
+ @properties['typing_indicator_timeout']
1008
+ end
1009
+
1010
+ ##
1011
+ # @return [String] DEPRECATED. The interval in seconds between consumption reports submission batches from client endpoints.
1012
+ def consumption_report_interval
1013
+ @properties['consumption_report_interval']
1014
+ end
1015
+
1016
+ ##
1017
+ # @return [Hash] An object that describes the limits of the service instance. The `limits` object contains `channel_members` to describe the members/channel limit and `user_channels` to describe the channels/user limit. `channel_members` can be 1,000 or less, with a default of 250. `user_channels` can be 1,000 or less, with a default value of 100.
1018
+ def limits
1019
+ @properties['limits']
1020
+ end
1021
+
1022
+ ##
1023
+ # @return [Hash] An object that contains information about the webhooks configured for this service.
1024
+ def webhooks
1025
+ @properties['webhooks']
1026
+ end
1027
+
1028
+ ##
1029
+ # @return [String] The URL for pre-event webhooks, which are called by using the `webhook_method`. See [Webhook Events](https://www.twilio.com/docs/api/chat/webhooks) for more details.
1030
+ def pre_webhook_url
1031
+ @properties['pre_webhook_url']
1032
+ end
1033
+
1034
+ ##
1035
+ # @return [String] The URL for post-event webhooks, which are called by using the `webhook_method`. See [Webhook Events](https://www.twilio.com/docs/api/chat/webhooks) for more details.
1036
+ def post_webhook_url
1037
+ @properties['post_webhook_url']
1038
+ end
1039
+
1040
+ ##
1041
+ # @return [String] The HTTP method to use for calls to the `pre_webhook_url` and `post_webhook_url` webhooks. Can be: `POST` or `GET` and the default is `POST`. See [Webhook Events](https://www.twilio.com/docs/chat/webhook-events) for more details.
1042
+ def webhook_method
1043
+ @properties['webhook_method']
1044
+ end
1045
+
1046
+ ##
1047
+ # @return [Array<String>] The list of WebHook events that are enabled for this Service instance. See [Webhook Events](https://www.twilio.com/docs/chat/webhook-events) for more details.
1048
+ def webhook_filters
1049
+ @properties['webhook_filters']
1050
+ end
1051
+
1052
+ ##
1053
+ # @return [Hash] The notification configuration for the Service instance. See [Push Notification Configuration](https://www.twilio.com/docs/chat/push-notification-configuration) for more information.
1054
+ def notifications
1055
+ @properties['notifications']
1056
+ end
1057
+
1058
+ ##
1059
+ # @return [String] The absolute URL of the Service resource.
1060
+ def url
1061
+ @properties['url']
1062
+ end
1063
+
1064
+ ##
1065
+ # @return [Hash] The absolute URLs of the Service's [Channels](https://www.twilio.com/docs/chat/api/channels), [Roles](https://www.twilio.com/docs/chat/api/roles), and [Users](https://www.twilio.com/docs/chat/api/users).
1066
+ def links
1067
+ @properties['links']
1068
+ end
1069
+
1070
+ ##
1071
+ # Delete the ServiceInstance
1072
+ # @return [Boolean] True if delete succeeds, false otherwise
1073
+ def delete
1074
+
1075
+ context.delete
1076
+ end
1077
+
1078
+ ##
1079
+ # Fetch the ServiceInstance
1080
+ # @return [ServiceInstance] Fetched ServiceInstance
1081
+ def fetch
1082
+
1083
+ context.fetch
1084
+ end
1085
+
1086
+ ##
1087
+ # Update the ServiceInstance
1088
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
1089
+ # @param [String] default_service_role_sid The service role assigned to users when they are added to the service. See the [Roles endpoint](https://www.twilio.com/docs/chat/api/roles) for more details.
1090
+ # @param [String] default_channel_role_sid The channel role assigned to users when they are added to a channel. See the [Roles endpoint](https://www.twilio.com/docs/chat/api/roles) for more details.
1091
+ # @param [String] default_channel_creator_role_sid The channel role assigned to a channel creator when they join a new channel. See the [Roles endpoint](https://www.twilio.com/docs/chat/api/roles) for more details.
1092
+ # @param [Boolean] read_status_enabled Whether to enable the [Message Consumption Horizon](https://www.twilio.com/docs/chat/consumption-horizon) feature. The default is `true`.
1093
+ # @param [Boolean] reachability_enabled Whether to enable the [Reachability Indicator](https://www.twilio.com/docs/chat/reachability-indicator) for this Service instance. The default is `false`.
1094
+ # @param [String] typing_indicator_timeout How long in seconds after a `started typing` event until clients should assume that user is no longer typing, even if no `ended typing` message was received. The default is 5 seconds.
1095
+ # @param [String] consumption_report_interval DEPRECATED. The interval in seconds between consumption reports submission batches from client endpoints.
1096
+ # @param [Boolean] notifications_new_message_enabled Whether to send a notification when a new message is added to a channel. Can be: `true` or `false` and the default is `false`.
1097
+ # @param [String] notifications_new_message_template The template to use to create the notification text displayed when a new message is added to a channel and `notifications.new_message.enabled` is `true`.
1098
+ # @param [Boolean] notifications_added_to_channel_enabled Whether to send a notification when a member is added to a channel. Can be: `true` or `false` and the default is `false`.
1099
+ # @param [String] notifications_added_to_channel_template The template to use to create the notification text displayed when a member is added to a channel and `notifications.added_to_channel.enabled` is `true`.
1100
+ # @param [Boolean] notifications_removed_from_channel_enabled Whether to send a notification to a user when they are removed from a channel. Can be: `true` or `false` and the default is `false`.
1101
+ # @param [String] notifications_removed_from_channel_template The template to use to create the notification text displayed to a user when they are removed from a channel and `notifications.removed_from_channel.enabled` is `true`.
1102
+ # @param [Boolean] notifications_invited_to_channel_enabled Whether to send a notification when a user is invited to a channel. Can be: `true` or `false` and the default is `false`.
1103
+ # @param [String] notifications_invited_to_channel_template The template to use to create the notification text displayed when a user is invited to a channel and `notifications.invited_to_channel.enabled` is `true`.
1104
+ # @param [String] pre_webhook_url The URL for pre-event webhooks, which are called by using the `webhook_method`. See [Webhook Events](https://www.twilio.com/docs/api/chat/webhooks) for more details.
1105
+ # @param [String] post_webhook_url The URL for post-event webhooks, which are called by using the `webhook_method`. See [Webhook Events](https://www.twilio.com/docs/api/chat/webhooks) for more details.
1106
+ # @param [String] webhook_method The HTTP method to use for calls to the `pre_webhook_url` and `post_webhook_url` webhooks. Can be: `POST` or `GET` and the default is `POST`. See [Webhook Events](https://www.twilio.com/docs/chat/webhook-events) for more details.
1107
+ # @param [Array[String]] webhook_filters The list of WebHook events that are enabled for this Service instance. See [Webhook Events](https://www.twilio.com/docs/chat/webhook-events) for more details.
1108
+ # @param [String] webhooks_on_message_send_url The URL of the webhook to call in response to the `on_message_send` event using the `webhooks.on_message_send.method` HTTP method.
1109
+ # @param [String] webhooks_on_message_send_method The HTTP method to use when calling the `webhooks.on_message_send.url`.
1110
+ # @param [String] webhooks_on_message_update_url The URL of the webhook to call in response to the `on_message_update` event using the `webhooks.on_message_update.method` HTTP method.
1111
+ # @param [String] webhooks_on_message_update_method The HTTP method to use when calling the `webhooks.on_message_update.url`.
1112
+ # @param [String] webhooks_on_message_remove_url The URL of the webhook to call in response to the `on_message_remove` event using the `webhooks.on_message_remove.method` HTTP method.
1113
+ # @param [String] webhooks_on_message_remove_method The HTTP method to use when calling the `webhooks.on_message_remove.url`.
1114
+ # @param [String] webhooks_on_channel_add_url The URL of the webhook to call in response to the `on_channel_add` event using the `webhooks.on_channel_add.method` HTTP method.
1115
+ # @param [String] webhooks_on_channel_add_method The HTTP method to use when calling the `webhooks.on_channel_add.url`.
1116
+ # @param [String] webhooks_on_channel_destroy_url The URL of the webhook to call in response to the `on_channel_destroy` event using the `webhooks.on_channel_destroy.method` HTTP method.
1117
+ # @param [String] webhooks_on_channel_destroy_method The HTTP method to use when calling the `webhooks.on_channel_destroy.url`.
1118
+ # @param [String] webhooks_on_channel_update_url The URL of the webhook to call in response to the `on_channel_update` event using the `webhooks.on_channel_update.method` HTTP method.
1119
+ # @param [String] webhooks_on_channel_update_method The HTTP method to use when calling the `webhooks.on_channel_update.url`.
1120
+ # @param [String] webhooks_on_member_add_url The URL of the webhook to call in response to the `on_member_add` event using the `webhooks.on_member_add.method` HTTP method.
1121
+ # @param [String] webhooks_on_member_add_method The HTTP method to use when calling the `webhooks.on_member_add.url`.
1122
+ # @param [String] webhooks_on_member_remove_url The URL of the webhook to call in response to the `on_member_remove` event using the `webhooks.on_member_remove.method` HTTP method.
1123
+ # @param [String] webhooks_on_member_remove_method The HTTP method to use when calling the `webhooks.on_member_remove.url`.
1124
+ # @param [String] webhooks_on_message_sent_url The URL of the webhook to call in response to the `on_message_sent` event using the `webhooks.on_message_sent.method` HTTP method.
1125
+ # @param [String] webhooks_on_message_sent_method The URL of the webhook to call in response to the `on_message_sent` event`.
1126
+ # @param [String] webhooks_on_message_updated_url The URL of the webhook to call in response to the `on_message_updated` event using the `webhooks.on_message_updated.method` HTTP method.
1127
+ # @param [String] webhooks_on_message_updated_method The HTTP method to use when calling the `webhooks.on_message_updated.url`.
1128
+ # @param [String] webhooks_on_message_removed_url The URL of the webhook to call in response to the `on_message_removed` event using the `webhooks.on_message_removed.method` HTTP method.
1129
+ # @param [String] webhooks_on_message_removed_method The HTTP method to use when calling the `webhooks.on_message_removed.url`.
1130
+ # @param [String] webhooks_on_channel_added_url The URL of the webhook to call in response to the `on_channel_added` event using the `webhooks.on_channel_added.method` HTTP method.
1131
+ # @param [String] webhooks_on_channel_added_method The URL of the webhook to call in response to the `on_channel_added` event`.
1132
+ # @param [String] webhooks_on_channel_destroyed_url The URL of the webhook to call in response to the `on_channel_added` event using the `webhooks.on_channel_destroyed.method` HTTP method.
1133
+ # @param [String] webhooks_on_channel_destroyed_method The HTTP method to use when calling the `webhooks.on_channel_destroyed.url`.
1134
+ # @param [String] webhooks_on_channel_updated_url The URL of the webhook to call in response to the `on_channel_updated` event using the `webhooks.on_channel_updated.method` HTTP method.
1135
+ # @param [String] webhooks_on_channel_updated_method The HTTP method to use when calling the `webhooks.on_channel_updated.url`.
1136
+ # @param [String] webhooks_on_member_added_url The URL of the webhook to call in response to the `on_channel_updated` event using the `webhooks.on_channel_updated.method` HTTP method.
1137
+ # @param [String] webhooks_on_member_added_method The HTTP method to use when calling the `webhooks.on_channel_updated.url`.
1138
+ # @param [String] webhooks_on_member_removed_url The URL of the webhook to call in response to the `on_member_removed` event using the `webhooks.on_member_removed.method` HTTP method.
1139
+ # @param [String] webhooks_on_member_removed_method The HTTP method to use when calling the `webhooks.on_member_removed.url`.
1140
+ # @param [String] limits_channel_members The maximum number of Members that can be added to Channels within this Service. Can be up to 1,000.
1141
+ # @param [String] limits_user_channels The maximum number of Channels Users can be a Member of within this Service. Can be up to 1,000.
1142
+ # @return [ServiceInstance] Updated ServiceInstance
1143
+ def update(
1144
+ friendly_name: :unset,
1145
+ default_service_role_sid: :unset,
1146
+ default_channel_role_sid: :unset,
1147
+ default_channel_creator_role_sid: :unset,
1148
+ read_status_enabled: :unset,
1149
+ reachability_enabled: :unset,
1150
+ typing_indicator_timeout: :unset,
1151
+ consumption_report_interval: :unset,
1152
+ notifications_new_message_enabled: :unset,
1153
+ notifications_new_message_template: :unset,
1154
+ notifications_added_to_channel_enabled: :unset,
1155
+ notifications_added_to_channel_template: :unset,
1156
+ notifications_removed_from_channel_enabled: :unset,
1157
+ notifications_removed_from_channel_template: :unset,
1158
+ notifications_invited_to_channel_enabled: :unset,
1159
+ notifications_invited_to_channel_template: :unset,
1160
+ pre_webhook_url: :unset,
1161
+ post_webhook_url: :unset,
1162
+ webhook_method: :unset,
1163
+ webhook_filters: :unset,
1164
+ webhooks_on_message_send_url: :unset,
1165
+ webhooks_on_message_send_method: :unset,
1166
+ webhooks_on_message_update_url: :unset,
1167
+ webhooks_on_message_update_method: :unset,
1168
+ webhooks_on_message_remove_url: :unset,
1169
+ webhooks_on_message_remove_method: :unset,
1170
+ webhooks_on_channel_add_url: :unset,
1171
+ webhooks_on_channel_add_method: :unset,
1172
+ webhooks_on_channel_destroy_url: :unset,
1173
+ webhooks_on_channel_destroy_method: :unset,
1174
+ webhooks_on_channel_update_url: :unset,
1175
+ webhooks_on_channel_update_method: :unset,
1176
+ webhooks_on_member_add_url: :unset,
1177
+ webhooks_on_member_add_method: :unset,
1178
+ webhooks_on_member_remove_url: :unset,
1179
+ webhooks_on_member_remove_method: :unset,
1180
+ webhooks_on_message_sent_url: :unset,
1181
+ webhooks_on_message_sent_method: :unset,
1182
+ webhooks_on_message_updated_url: :unset,
1183
+ webhooks_on_message_updated_method: :unset,
1184
+ webhooks_on_message_removed_url: :unset,
1185
+ webhooks_on_message_removed_method: :unset,
1186
+ webhooks_on_channel_added_url: :unset,
1187
+ webhooks_on_channel_added_method: :unset,
1188
+ webhooks_on_channel_destroyed_url: :unset,
1189
+ webhooks_on_channel_destroyed_method: :unset,
1190
+ webhooks_on_channel_updated_url: :unset,
1191
+ webhooks_on_channel_updated_method: :unset,
1192
+ webhooks_on_member_added_url: :unset,
1193
+ webhooks_on_member_added_method: :unset,
1194
+ webhooks_on_member_removed_url: :unset,
1195
+ webhooks_on_member_removed_method: :unset,
1196
+ limits_channel_members: :unset,
1197
+ limits_user_channels: :unset
1198
+ )
1199
+
1200
+ context.update(
1201
+ friendly_name: friendly_name,
1202
+ default_service_role_sid: default_service_role_sid,
1203
+ default_channel_role_sid: default_channel_role_sid,
1204
+ default_channel_creator_role_sid: default_channel_creator_role_sid,
1205
+ read_status_enabled: read_status_enabled,
1206
+ reachability_enabled: reachability_enabled,
1207
+ typing_indicator_timeout: typing_indicator_timeout,
1208
+ consumption_report_interval: consumption_report_interval,
1209
+ notifications_new_message_enabled: notifications_new_message_enabled,
1210
+ notifications_new_message_template: notifications_new_message_template,
1211
+ notifications_added_to_channel_enabled: notifications_added_to_channel_enabled,
1212
+ notifications_added_to_channel_template: notifications_added_to_channel_template,
1213
+ notifications_removed_from_channel_enabled: notifications_removed_from_channel_enabled,
1214
+ notifications_removed_from_channel_template: notifications_removed_from_channel_template,
1215
+ notifications_invited_to_channel_enabled: notifications_invited_to_channel_enabled,
1216
+ notifications_invited_to_channel_template: notifications_invited_to_channel_template,
1217
+ pre_webhook_url: pre_webhook_url,
1218
+ post_webhook_url: post_webhook_url,
1219
+ webhook_method: webhook_method,
1220
+ webhook_filters: webhook_filters,
1221
+ webhooks_on_message_send_url: webhooks_on_message_send_url,
1222
+ webhooks_on_message_send_method: webhooks_on_message_send_method,
1223
+ webhooks_on_message_update_url: webhooks_on_message_update_url,
1224
+ webhooks_on_message_update_method: webhooks_on_message_update_method,
1225
+ webhooks_on_message_remove_url: webhooks_on_message_remove_url,
1226
+ webhooks_on_message_remove_method: webhooks_on_message_remove_method,
1227
+ webhooks_on_channel_add_url: webhooks_on_channel_add_url,
1228
+ webhooks_on_channel_add_method: webhooks_on_channel_add_method,
1229
+ webhooks_on_channel_destroy_url: webhooks_on_channel_destroy_url,
1230
+ webhooks_on_channel_destroy_method: webhooks_on_channel_destroy_method,
1231
+ webhooks_on_channel_update_url: webhooks_on_channel_update_url,
1232
+ webhooks_on_channel_update_method: webhooks_on_channel_update_method,
1233
+ webhooks_on_member_add_url: webhooks_on_member_add_url,
1234
+ webhooks_on_member_add_method: webhooks_on_member_add_method,
1235
+ webhooks_on_member_remove_url: webhooks_on_member_remove_url,
1236
+ webhooks_on_member_remove_method: webhooks_on_member_remove_method,
1237
+ webhooks_on_message_sent_url: webhooks_on_message_sent_url,
1238
+ webhooks_on_message_sent_method: webhooks_on_message_sent_method,
1239
+ webhooks_on_message_updated_url: webhooks_on_message_updated_url,
1240
+ webhooks_on_message_updated_method: webhooks_on_message_updated_method,
1241
+ webhooks_on_message_removed_url: webhooks_on_message_removed_url,
1242
+ webhooks_on_message_removed_method: webhooks_on_message_removed_method,
1243
+ webhooks_on_channel_added_url: webhooks_on_channel_added_url,
1244
+ webhooks_on_channel_added_method: webhooks_on_channel_added_method,
1245
+ webhooks_on_channel_destroyed_url: webhooks_on_channel_destroyed_url,
1246
+ webhooks_on_channel_destroyed_method: webhooks_on_channel_destroyed_method,
1247
+ webhooks_on_channel_updated_url: webhooks_on_channel_updated_url,
1248
+ webhooks_on_channel_updated_method: webhooks_on_channel_updated_method,
1249
+ webhooks_on_member_added_url: webhooks_on_member_added_url,
1250
+ webhooks_on_member_added_method: webhooks_on_member_added_method,
1251
+ webhooks_on_member_removed_url: webhooks_on_member_removed_url,
1252
+ webhooks_on_member_removed_method: webhooks_on_member_removed_method,
1253
+ limits_channel_members: limits_channel_members,
1254
+ limits_user_channels: limits_user_channels,
1255
+ )
1256
+ end
1257
+
1258
+ ##
1259
+ # Access the channels
1260
+ # @return [channels] channels
1261
+ def channels
1262
+ context.channels
1263
+ end
1264
+
1265
+ ##
1266
+ # Access the roles
1267
+ # @return [roles] roles
1268
+ def roles
1269
+ context.roles
1270
+ end
1271
+
1272
+ ##
1273
+ # Access the users
1274
+ # @return [users] users
1275
+ def users
1276
+ context.users
1277
+ end
1278
+
1279
+ ##
1280
+ # Provide a user friendly representation
1281
+ def to_s
1282
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
1283
+ "<Twilio.Chat.V1.ServiceInstance #{values}>"
1284
+ end
1285
+
1286
+ ##
1287
+ # Provide a detailed, user friendly representation
1288
+ def inspect
1289
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
1290
+ "<Twilio.Chat.V1.ServiceInstance #{values}>"
1291
+ end
1292
+ end
468
1293
 
469
- class ServiceInstance < InstanceResource
470
- ##
471
- # Initialize the ServiceInstance
472
- # @param [Version] version Version that contains the resource
473
- # @param [Hash] payload payload that contains response from Twilio
474
- # @param [String] sid The Twilio-provided string that uniquely identifies the
475
- # Service resource to fetch.
476
- # @return [ServiceInstance] ServiceInstance
477
- def initialize(version, payload, sid: nil)
478
- super(version)
479
-
480
- # Marshaled Properties
481
- @properties = {
482
- 'sid' => payload['sid'],
483
- 'account_sid' => payload['account_sid'],
484
- 'friendly_name' => payload['friendly_name'],
485
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
486
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
487
- 'default_service_role_sid' => payload['default_service_role_sid'],
488
- 'default_channel_role_sid' => payload['default_channel_role_sid'],
489
- 'default_channel_creator_role_sid' => payload['default_channel_creator_role_sid'],
490
- 'read_status_enabled' => payload['read_status_enabled'],
491
- 'reachability_enabled' => payload['reachability_enabled'],
492
- 'typing_indicator_timeout' => payload['typing_indicator_timeout'] == nil ? payload['typing_indicator_timeout'] : payload['typing_indicator_timeout'].to_i,
493
- 'consumption_report_interval' => payload['consumption_report_interval'] == nil ? payload['consumption_report_interval'] : payload['consumption_report_interval'].to_i,
494
- 'limits' => payload['limits'],
495
- 'webhooks' => payload['webhooks'],
496
- 'pre_webhook_url' => payload['pre_webhook_url'],
497
- 'post_webhook_url' => payload['post_webhook_url'],
498
- 'webhook_method' => payload['webhook_method'],
499
- 'webhook_filters' => payload['webhook_filters'],
500
- 'notifications' => payload['notifications'],
501
- 'url' => payload['url'],
502
- 'links' => payload['links'],
503
- }
504
-
505
- # Context
506
- @instance_context = nil
507
- @params = {'sid' => sid || @properties['sid'], }
508
- end
509
-
510
- ##
511
- # Generate an instance context for the instance, the context is capable of
512
- # performing various actions. All instance actions are proxied to the context
513
- # @return [ServiceContext] ServiceContext for this ServiceInstance
514
- def context
515
- unless @instance_context
516
- @instance_context = ServiceContext.new(@version, @params['sid'], )
517
1294
  end
518
- @instance_context
519
- end
520
-
521
- ##
522
- # @return [String] The unique string that identifies the resource
523
- def sid
524
- @properties['sid']
525
- end
526
-
527
- ##
528
- # @return [String] The SID of the Account that created the resource
529
- def account_sid
530
- @properties['account_sid']
531
- end
532
-
533
- ##
534
- # @return [String] The string that you assigned to describe the resource
535
- def friendly_name
536
- @properties['friendly_name']
537
- end
538
-
539
- ##
540
- # @return [Time] The RFC 2822 date and time in GMT when the resource was created
541
- def date_created
542
- @properties['date_created']
543
- end
544
-
545
- ##
546
- # @return [Time] The RFC 2822 date and time in GMT when the resource was last updated
547
- def date_updated
548
- @properties['date_updated']
549
- end
550
-
551
- ##
552
- # @return [String] The service role assigned to users when they are added to the service
553
- def default_service_role_sid
554
- @properties['default_service_role_sid']
555
- end
556
-
557
- ##
558
- # @return [String] The channel role assigned to users when they are added to a channel
559
- def default_channel_role_sid
560
- @properties['default_channel_role_sid']
561
- end
562
-
563
- ##
564
- # @return [String] The channel role assigned to a channel creator when they join a new channel
565
- def default_channel_creator_role_sid
566
- @properties['default_channel_creator_role_sid']
567
- end
568
-
569
- ##
570
- # @return [Boolean] Whether the Message Consumption Horizon feature is enabled
571
- def read_status_enabled
572
- @properties['read_status_enabled']
573
- end
574
-
575
- ##
576
- # @return [Boolean] Whether the Reachability Indicator feature is enabled for this Service instance
577
- def reachability_enabled
578
- @properties['reachability_enabled']
579
- end
580
-
581
- ##
582
- # @return [String] How long in seconds to wait before assuming the user is no longer typing
583
- def typing_indicator_timeout
584
- @properties['typing_indicator_timeout']
585
- end
586
-
587
- ##
588
- # @return [String] DEPRECATED
589
- def consumption_report_interval
590
- @properties['consumption_report_interval']
591
- end
592
-
593
- ##
594
- # @return [Hash] An object that describes the limits of the service instance
595
- def limits
596
- @properties['limits']
597
- end
598
-
599
- ##
600
- # @return [Hash] An object that contains information about the webhooks configured for this service
601
- def webhooks
602
- @properties['webhooks']
603
- end
604
-
605
- ##
606
- # @return [String] The webhook URL for pre-event webhooks
607
- def pre_webhook_url
608
- @properties['pre_webhook_url']
609
- end
610
-
611
- ##
612
- # @return [String] The URL for post-event webhooks
613
- def post_webhook_url
614
- @properties['post_webhook_url']
615
- end
616
-
617
- ##
618
- # @return [String] The HTTP method to use for both PRE and POST webhooks
619
- def webhook_method
620
- @properties['webhook_method']
621
- end
622
-
623
- ##
624
- # @return [Array[String]] The list of WebHook events that are enabled for this Service instance
625
- def webhook_filters
626
- @properties['webhook_filters']
627
- end
628
-
629
- ##
630
- # @return [Hash] The notification configuration for the Service instance
631
- def notifications
632
- @properties['notifications']
633
- end
634
-
635
- ##
636
- # @return [String] The absolute URL of the Service resource
637
- def url
638
- @properties['url']
639
- end
640
-
641
- ##
642
- # @return [String] The absolute URLs of the Service's Channels, Roles, and Users
643
- def links
644
- @properties['links']
645
- end
646
-
647
- ##
648
- # Fetch the ServiceInstance
649
- # @return [ServiceInstance] Fetched ServiceInstance
650
- def fetch
651
- context.fetch
652
- end
653
-
654
- ##
655
- # Delete the ServiceInstance
656
- # @return [Boolean] true if delete succeeds, false otherwise
657
- def delete
658
- context.delete
659
- end
660
-
661
- ##
662
- # Update the ServiceInstance
663
- # @param [String] friendly_name A descriptive string that you create to describe
664
- # the resource. It can be up to 64 characters long.
665
- # @param [String] default_service_role_sid The service role assigned to users when
666
- # they are added to the service. See the {Roles
667
- # endpoint}[https://www.twilio.com/docs/chat/api/roles] for more details.
668
- # @param [String] default_channel_role_sid The channel role assigned to users when
669
- # they are added to a channel. See the {Roles
670
- # endpoint}[https://www.twilio.com/docs/chat/api/roles] for more details.
671
- # @param [String] default_channel_creator_role_sid The channel role assigned to a
672
- # channel creator when they join a new channel. See the {Roles
673
- # endpoint}[https://www.twilio.com/docs/chat/api/roles] for more details.
674
- # @param [Boolean] read_status_enabled Whether to enable the {Message Consumption
675
- # Horizon}[https://www.twilio.com/docs/chat/consumption-horizon] feature. The
676
- # default is `true`.
677
- # @param [Boolean] reachability_enabled Whether to enable the {Reachability
678
- # Indicator}[https://www.twilio.com/docs/chat/reachability-indicator] for this
679
- # Service instance. The default is `false`.
680
- # @param [String] typing_indicator_timeout How long in seconds after a `started
681
- # typing` event until clients should assume that user is no longer typing, even if
682
- # no `ended typing` message was received. The default is 5 seconds.
683
- # @param [String] consumption_report_interval DEPRECATED. The interval in seconds
684
- # between consumption reports submission batches from client endpoints.
685
- # @param [Boolean] notifications_new_message_enabled Whether to send a
686
- # notification when a new message is added to a channel. Can be: `true` or `false`
687
- # and the default is `false`.
688
- # @param [String] notifications_new_message_template The template to use to create
689
- # the notification text displayed when a new message is added to a channel and
690
- # `notifications.new_message.enabled` is `true`.
691
- # @param [Boolean] notifications_added_to_channel_enabled Whether to send a
692
- # notification when a member is added to a channel. Can be: `true` or `false` and
693
- # the default is `false`.
694
- # @param [String] notifications_added_to_channel_template The template to use to
695
- # create the notification text displayed when a member is added to a channel and
696
- # `notifications.added_to_channel.enabled` is `true`.
697
- # @param [Boolean] notifications_removed_from_channel_enabled Whether to send a
698
- # notification to a user when they are removed from a channel. Can be: `true` or
699
- # `false` and the default is `false`.
700
- # @param [String] notifications_removed_from_channel_template The template to use
701
- # to create the notification text displayed to a user when they are removed from a
702
- # channel and `notifications.removed_from_channel.enabled` is `true`.
703
- # @param [Boolean] notifications_invited_to_channel_enabled Whether to send a
704
- # notification when a user is invited to a channel. Can be: `true` or `false` and
705
- # the default is `false`.
706
- # @param [String] notifications_invited_to_channel_template The template to use to
707
- # create the notification text displayed when a user is invited to a channel and
708
- # `notifications.invited_to_channel.enabled` is `true`.
709
- # @param [String] pre_webhook_url The URL for pre-event webhooks, which are called
710
- # by using the `webhook_method`. See {Webhook
711
- # Events}[https://www.twilio.com/docs/api/chat/webhooks] for more details.
712
- # @param [String] post_webhook_url The URL for post-event webhooks, which are
713
- # called by using the `webhook_method`. See {Webhook
714
- # Events}[https://www.twilio.com/docs/api/chat/webhooks] for more details.
715
- # @param [String] webhook_method The HTTP method to use for calls to the
716
- # `pre_webhook_url` and `post_webhook_url` webhooks. Can be: `POST` or `GET` and
717
- # the default is `POST`. See {Webhook
718
- # Events}[https://www.twilio.com/docs/chat/webhook-events] for more details.
719
- # @param [Array[String]] webhook_filters The list of WebHook events that are
720
- # enabled for this Service instance. See {Webhook
721
- # Events}[https://www.twilio.com/docs/chat/webhook-events] for more details.
722
- # @param [String] webhooks_on_message_send_url The URL of the webhook to call in
723
- # response to the `on_message_send` event using the
724
- # `webhooks.on_message_send.method` HTTP method.
725
- # @param [String] webhooks_on_message_send_method The HTTP method to use when
726
- # calling the `webhooks.on_message_send.url`.
727
- # @param [String] webhooks_on_message_update_url The URL of the webhook to call in
728
- # response to the `on_message_update` event using the
729
- # `webhooks.on_message_update.method` HTTP method.
730
- # @param [String] webhooks_on_message_update_method The HTTP method to use when
731
- # calling the `webhooks.on_message_update.url`.
732
- # @param [String] webhooks_on_message_remove_url The URL of the webhook to call in
733
- # response to the `on_message_remove` event using the
734
- # `webhooks.on_message_remove.method` HTTP method.
735
- # @param [String] webhooks_on_message_remove_method The HTTP method to use when
736
- # calling the `webhooks.on_message_remove.url`.
737
- # @param [String] webhooks_on_channel_add_url The URL of the webhook to call in
738
- # response to the `on_channel_add` event using the
739
- # `webhooks.on_channel_add.method` HTTP method.
740
- # @param [String] webhooks_on_channel_add_method The HTTP method to use when
741
- # calling the `webhooks.on_channel_add.url`.
742
- # @param [String] webhooks_on_channel_destroy_url The URL of the webhook to call
743
- # in response to the `on_channel_destroy` event using the
744
- # `webhooks.on_channel_destroy.method` HTTP method.
745
- # @param [String] webhooks_on_channel_destroy_method The HTTP method to use when
746
- # calling the `webhooks.on_channel_destroy.url`.
747
- # @param [String] webhooks_on_channel_update_url The URL of the webhook to call in
748
- # response to the `on_channel_update` event using the
749
- # `webhooks.on_channel_update.method` HTTP method.
750
- # @param [String] webhooks_on_channel_update_method The HTTP method to use when
751
- # calling the `webhooks.on_channel_update.url`.
752
- # @param [String] webhooks_on_member_add_url The URL of the webhook to call in
753
- # response to the `on_member_add` event using the `webhooks.on_member_add.method`
754
- # HTTP method.
755
- # @param [String] webhooks_on_member_add_method The HTTP method to use when
756
- # calling the `webhooks.on_member_add.url`.
757
- # @param [String] webhooks_on_member_remove_url The URL of the webhook to call in
758
- # response to the `on_member_remove` event using the
759
- # `webhooks.on_member_remove.method` HTTP method.
760
- # @param [String] webhooks_on_member_remove_method The HTTP method to use when
761
- # calling the `webhooks.on_member_remove.url`.
762
- # @param [String] webhooks_on_message_sent_url The URL of the webhook to call in
763
- # response to the `on_message_sent` event using the
764
- # `webhooks.on_message_sent.method` HTTP method.
765
- # @param [String] webhooks_on_message_sent_method The URL of the webhook to call
766
- # in response to the `on_message_sent` event`.
767
- # @param [String] webhooks_on_message_updated_url The URL of the webhook to call
768
- # in response to the `on_message_updated` event using the
769
- # `webhooks.on_message_updated.method` HTTP method.
770
- # @param [String] webhooks_on_message_updated_method The HTTP method to use when
771
- # calling the `webhooks.on_message_updated.url`.
772
- # @param [String] webhooks_on_message_removed_url The URL of the webhook to call
773
- # in response to the `on_message_removed` event using the
774
- # `webhooks.on_message_removed.method` HTTP method.
775
- # @param [String] webhooks_on_message_removed_method The HTTP method to use when
776
- # calling the `webhooks.on_message_removed.url`.
777
- # @param [String] webhooks_on_channel_added_url The URL of the webhook to call in
778
- # response to the `on_channel_added` event using the
779
- # `webhooks.on_channel_added.method` HTTP method.
780
- # @param [String] webhooks_on_channel_added_method The URL of the webhook to call
781
- # in response to the `on_channel_added` event`.
782
- # @param [String] webhooks_on_channel_destroyed_url The URL of the webhook to call
783
- # in response to the `on_channel_added` event using the
784
- # `webhooks.on_channel_destroyed.method` HTTP method.
785
- # @param [String] webhooks_on_channel_destroyed_method The HTTP method to use when
786
- # calling the `webhooks.on_channel_destroyed.url`.
787
- # @param [String] webhooks_on_channel_updated_url The URL of the webhook to call
788
- # in response to the `on_channel_updated` event using the
789
- # `webhooks.on_channel_updated.method` HTTP method.
790
- # @param [String] webhooks_on_channel_updated_method The HTTP method to use when
791
- # calling the `webhooks.on_channel_updated.url`.
792
- # @param [String] webhooks_on_member_added_url The URL of the webhook to call in
793
- # response to the `on_channel_updated` event using the
794
- # `webhooks.on_channel_updated.method` HTTP method.
795
- # @param [String] webhooks_on_member_added_method The HTTP method to use when
796
- # calling the `webhooks.on_channel_updated.url`.
797
- # @param [String] webhooks_on_member_removed_url The URL of the webhook to call in
798
- # response to the `on_member_removed` event using the
799
- # `webhooks.on_member_removed.method` HTTP method.
800
- # @param [String] webhooks_on_member_removed_method The HTTP method to use when
801
- # calling the `webhooks.on_member_removed.url`.
802
- # @param [String] limits_channel_members The maximum number of Members that can be
803
- # added to Channels within this Service. Can be up to 1,000.
804
- # @param [String] limits_user_channels The maximum number of Channels Users can be
805
- # a Member of within this Service. Can be up to 1,000.
806
- # @return [ServiceInstance] Updated ServiceInstance
807
- def update(friendly_name: :unset, default_service_role_sid: :unset, default_channel_role_sid: :unset, default_channel_creator_role_sid: :unset, read_status_enabled: :unset, reachability_enabled: :unset, typing_indicator_timeout: :unset, consumption_report_interval: :unset, notifications_new_message_enabled: :unset, notifications_new_message_template: :unset, notifications_added_to_channel_enabled: :unset, notifications_added_to_channel_template: :unset, notifications_removed_from_channel_enabled: :unset, notifications_removed_from_channel_template: :unset, notifications_invited_to_channel_enabled: :unset, notifications_invited_to_channel_template: :unset, pre_webhook_url: :unset, post_webhook_url: :unset, webhook_method: :unset, webhook_filters: :unset, webhooks_on_message_send_url: :unset, webhooks_on_message_send_method: :unset, webhooks_on_message_update_url: :unset, webhooks_on_message_update_method: :unset, webhooks_on_message_remove_url: :unset, webhooks_on_message_remove_method: :unset, webhooks_on_channel_add_url: :unset, webhooks_on_channel_add_method: :unset, webhooks_on_channel_destroy_url: :unset, webhooks_on_channel_destroy_method: :unset, webhooks_on_channel_update_url: :unset, webhooks_on_channel_update_method: :unset, webhooks_on_member_add_url: :unset, webhooks_on_member_add_method: :unset, webhooks_on_member_remove_url: :unset, webhooks_on_member_remove_method: :unset, webhooks_on_message_sent_url: :unset, webhooks_on_message_sent_method: :unset, webhooks_on_message_updated_url: :unset, webhooks_on_message_updated_method: :unset, webhooks_on_message_removed_url: :unset, webhooks_on_message_removed_method: :unset, webhooks_on_channel_added_url: :unset, webhooks_on_channel_added_method: :unset, webhooks_on_channel_destroyed_url: :unset, webhooks_on_channel_destroyed_method: :unset, webhooks_on_channel_updated_url: :unset, webhooks_on_channel_updated_method: :unset, webhooks_on_member_added_url: :unset, webhooks_on_member_added_method: :unset, webhooks_on_member_removed_url: :unset, webhooks_on_member_removed_method: :unset, limits_channel_members: :unset, limits_user_channels: :unset)
808
- context.update(
809
- friendly_name: friendly_name,
810
- default_service_role_sid: default_service_role_sid,
811
- default_channel_role_sid: default_channel_role_sid,
812
- default_channel_creator_role_sid: default_channel_creator_role_sid,
813
- read_status_enabled: read_status_enabled,
814
- reachability_enabled: reachability_enabled,
815
- typing_indicator_timeout: typing_indicator_timeout,
816
- consumption_report_interval: consumption_report_interval,
817
- notifications_new_message_enabled: notifications_new_message_enabled,
818
- notifications_new_message_template: notifications_new_message_template,
819
- notifications_added_to_channel_enabled: notifications_added_to_channel_enabled,
820
- notifications_added_to_channel_template: notifications_added_to_channel_template,
821
- notifications_removed_from_channel_enabled: notifications_removed_from_channel_enabled,
822
- notifications_removed_from_channel_template: notifications_removed_from_channel_template,
823
- notifications_invited_to_channel_enabled: notifications_invited_to_channel_enabled,
824
- notifications_invited_to_channel_template: notifications_invited_to_channel_template,
825
- pre_webhook_url: pre_webhook_url,
826
- post_webhook_url: post_webhook_url,
827
- webhook_method: webhook_method,
828
- webhook_filters: webhook_filters,
829
- webhooks_on_message_send_url: webhooks_on_message_send_url,
830
- webhooks_on_message_send_method: webhooks_on_message_send_method,
831
- webhooks_on_message_update_url: webhooks_on_message_update_url,
832
- webhooks_on_message_update_method: webhooks_on_message_update_method,
833
- webhooks_on_message_remove_url: webhooks_on_message_remove_url,
834
- webhooks_on_message_remove_method: webhooks_on_message_remove_method,
835
- webhooks_on_channel_add_url: webhooks_on_channel_add_url,
836
- webhooks_on_channel_add_method: webhooks_on_channel_add_method,
837
- webhooks_on_channel_destroy_url: webhooks_on_channel_destroy_url,
838
- webhooks_on_channel_destroy_method: webhooks_on_channel_destroy_method,
839
- webhooks_on_channel_update_url: webhooks_on_channel_update_url,
840
- webhooks_on_channel_update_method: webhooks_on_channel_update_method,
841
- webhooks_on_member_add_url: webhooks_on_member_add_url,
842
- webhooks_on_member_add_method: webhooks_on_member_add_method,
843
- webhooks_on_member_remove_url: webhooks_on_member_remove_url,
844
- webhooks_on_member_remove_method: webhooks_on_member_remove_method,
845
- webhooks_on_message_sent_url: webhooks_on_message_sent_url,
846
- webhooks_on_message_sent_method: webhooks_on_message_sent_method,
847
- webhooks_on_message_updated_url: webhooks_on_message_updated_url,
848
- webhooks_on_message_updated_method: webhooks_on_message_updated_method,
849
- webhooks_on_message_removed_url: webhooks_on_message_removed_url,
850
- webhooks_on_message_removed_method: webhooks_on_message_removed_method,
851
- webhooks_on_channel_added_url: webhooks_on_channel_added_url,
852
- webhooks_on_channel_added_method: webhooks_on_channel_added_method,
853
- webhooks_on_channel_destroyed_url: webhooks_on_channel_destroyed_url,
854
- webhooks_on_channel_destroyed_method: webhooks_on_channel_destroyed_method,
855
- webhooks_on_channel_updated_url: webhooks_on_channel_updated_url,
856
- webhooks_on_channel_updated_method: webhooks_on_channel_updated_method,
857
- webhooks_on_member_added_url: webhooks_on_member_added_url,
858
- webhooks_on_member_added_method: webhooks_on_member_added_method,
859
- webhooks_on_member_removed_url: webhooks_on_member_removed_url,
860
- webhooks_on_member_removed_method: webhooks_on_member_removed_method,
861
- limits_channel_members: limits_channel_members,
862
- limits_user_channels: limits_user_channels,
863
- )
864
- end
865
-
866
- ##
867
- # Access the channels
868
- # @return [channels] channels
869
- def channels
870
- context.channels
871
- end
872
-
873
- ##
874
- # Access the roles
875
- # @return [roles] roles
876
- def roles
877
- context.roles
878
- end
879
-
880
- ##
881
- # Access the users
882
- # @return [users] users
883
- def users
884
- context.users
885
- end
886
-
887
- ##
888
- # Provide a user friendly representation
889
- def to_s
890
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
891
- "<Twilio.Chat.V1.ServiceInstance #{values}>"
892
- end
893
-
894
- ##
895
- # Provide a detailed, user friendly representation
896
- def inspect
897
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
898
- "<Twilio.Chat.V1.ServiceInstance #{values}>"
899
- end
900
1295
  end
901
- end
902
1296
  end
903
- end
904
- end
1297
+ end