twilio-ruby 4.13.0 → 5.6.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (773) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -0
  3. data/.rubocop.yml +40 -0
  4. data/.rubocop_todo.yml +187 -0
  5. data/.travis.yml +11 -21
  6. data/AUTHORS.md +46 -32
  7. data/CHANGES.md +400 -62
  8. data/CONTRIBUTING.md +159 -0
  9. data/Gemfile +2 -2
  10. data/ISSUE_TEMPLATE.md +26 -0
  11. data/LICENSE.md +12 -12
  12. data/Makefile +18 -4
  13. data/README.md +76 -146
  14. data/Rakefile +54 -0
  15. data/UPGRADE.md +30 -0
  16. data/VERSIONS.md +36 -0
  17. data/examples/examples.rb +46 -57
  18. data/examples/{print-call-log.rb → print_call_log.rb} +6 -6
  19. data/githooks/pre-commit +1 -0
  20. data/lib/rack/twilio_webhook_authentication.rb +5 -6
  21. data/lib/twilio-ruby/framework/domain.rb +34 -0
  22. data/lib/twilio-ruby/framework/error.rb +33 -0
  23. data/lib/twilio-ruby/framework/helper.rb +9 -0
  24. data/lib/twilio-ruby/framework/obsolete_client.rb +10 -0
  25. data/lib/twilio-ruby/framework/page.rb +101 -0
  26. data/lib/twilio-ruby/framework/request.rb +39 -0
  27. data/lib/twilio-ruby/framework/resource.rb +21 -0
  28. data/lib/twilio-ruby/framework/response.rb +16 -0
  29. data/lib/twilio-ruby/framework/serialize.rb +79 -0
  30. data/lib/twilio-ruby/framework/twilio_response.rb +17 -0
  31. data/lib/twilio-ruby/framework/values.rb +7 -0
  32. data/lib/twilio-ruby/framework/version.rb +164 -0
  33. data/lib/twilio-ruby/http/http_client.rb +58 -0
  34. data/lib/twilio-ruby/jwt/access_token.rb +263 -0
  35. data/lib/twilio-ruby/jwt/client_capability.rb +100 -0
  36. data/lib/twilio-ruby/jwt/jwt.rb +51 -0
  37. data/lib/twilio-ruby/jwt/task_router.rb +170 -0
  38. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +338 -0
  39. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +345 -0
  40. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +119 -0
  41. data/lib/twilio-ruby/rest/accounts/v1.rb +33 -0
  42. data/lib/twilio-ruby/rest/accounts.rb +36 -10
  43. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +366 -0
  44. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +490 -0
  45. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +598 -0
  46. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +322 -0
  47. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +396 -0
  48. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +396 -0
  49. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +396 -0
  50. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +396 -0
  51. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +396 -0
  52. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +396 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +396 -0
  54. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +457 -0
  55. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +284 -0
  56. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +304 -0
  57. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +421 -0
  58. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +408 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +756 -0
  60. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +510 -0
  61. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +443 -0
  62. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +397 -0
  63. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +358 -0
  64. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +430 -0
  65. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +457 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +457 -0
  67. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +457 -0
  68. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +844 -0
  69. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +306 -0
  70. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +166 -0
  71. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +353 -0
  72. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +557 -0
  73. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +147 -0
  74. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +147 -0
  75. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +407 -0
  76. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +362 -0
  77. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +332 -0
  78. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +394 -0
  79. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +378 -0
  80. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +390 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +368 -0
  82. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +473 -0
  83. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +409 -0
  84. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +316 -0
  85. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +381 -0
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +388 -0
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +352 -0
  88. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +352 -0
  89. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +548 -0
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +394 -0
  91. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +393 -0
  92. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +153 -0
  93. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +162 -0
  94. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +350 -0
  95. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +302 -0
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +302 -0
  97. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +302 -0
  98. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +302 -0
  99. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +302 -0
  100. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +302 -0
  101. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +302 -0
  102. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +302 -0
  103. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +392 -0
  104. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +482 -0
  105. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +117 -0
  106. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +157 -0
  107. data/lib/twilio-ruby/rest/api/v2010/account.rb +936 -0
  108. data/lib/twilio-ruby/rest/api/v2010.rb +147 -0
  109. data/lib/twilio-ruby/rest/api.rb +234 -0
  110. data/lib/twilio-ruby/rest/chat/v1/credential.rb +382 -0
  111. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +374 -0
  112. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +416 -0
  113. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +428 -0
  114. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +503 -0
  115. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +362 -0
  116. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +240 -0
  117. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +433 -0
  118. data/lib/twilio-ruby/rest/chat/v1/service.rb +891 -0
  119. data/lib/twilio-ruby/rest/chat/v1.rb +56 -0
  120. data/lib/twilio-ruby/rest/chat/v2/credential.rb +382 -0
  121. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +349 -0
  122. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +374 -0
  123. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +442 -0
  124. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +479 -0
  125. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +525 -0
  126. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +362 -0
  127. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +361 -0
  128. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +240 -0
  129. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +463 -0
  130. data/lib/twilio-ruby/rest/chat/v2/service.rb +707 -0
  131. data/lib/twilio-ruby/rest/chat/v2.rb +56 -0
  132. data/lib/twilio-ruby/rest/chat.rb +59 -0
  133. data/lib/twilio-ruby/rest/client.rb +394 -153
  134. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +313 -0
  135. data/lib/twilio-ruby/rest/fax/v1/fax.rb +525 -0
  136. data/lib/twilio-ruby/rest/fax/v1.rb +41 -0
  137. data/lib/twilio-ruby/rest/fax.rb +44 -0
  138. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +382 -0
  139. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +374 -0
  140. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +416 -0
  141. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +428 -0
  142. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +503 -0
  143. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +362 -0
  144. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +240 -0
  145. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +433 -0
  146. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +891 -0
  147. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +56 -0
  148. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +382 -0
  149. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +349 -0
  150. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +374 -0
  151. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +442 -0
  152. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +479 -0
  153. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +525 -0
  154. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +362 -0
  155. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +361 -0
  156. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +240 -0
  157. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +463 -0
  158. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +707 -0
  159. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +56 -0
  160. data/lib/twilio-ruby/rest/ip_messaging.rb +59 -0
  161. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +219 -0
  162. data/lib/twilio-ruby/rest/lookups/v1.rb +41 -0
  163. data/lib/twilio-ruby/rest/lookups.rb +44 -0
  164. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +338 -0
  165. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +345 -0
  166. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +340 -0
  167. data/lib/twilio-ruby/rest/messaging/v1/service.rb +603 -0
  168. data/lib/twilio-ruby/rest/messaging/v1.rb +41 -0
  169. data/lib/twilio-ruby/rest/messaging.rb +44 -0
  170. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +389 -0
  171. data/lib/twilio-ruby/rest/monitor/v1/event.rb +372 -0
  172. data/lib/twilio-ruby/rest/monitor/v1.rb +56 -0
  173. data/lib/twilio-ruby/rest/monitor.rb +52 -0
  174. data/lib/twilio-ruby/rest/notify/v1/credential.rb +390 -0
  175. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +418 -0
  176. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +290 -0
  177. data/lib/twilio-ruby/rest/notify/v1/service/segment.rb +223 -0
  178. data/lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb +260 -0
  179. data/lib/twilio-ruby/rest/notify/v1/service/user/user_binding.rb +436 -0
  180. data/lib/twilio-ruby/rest/notify/v1/service/user.rb +424 -0
  181. data/lib/twilio-ruby/rest/notify/v1/service.rb +604 -0
  182. data/lib/twilio-ruby/rest/notify/v1.rb +56 -0
  183. data/lib/twilio-ruby/rest/notify.rb +52 -0
  184. data/lib/twilio-ruby/rest/preview/acc_security/service/verification.rb +183 -0
  185. data/lib/twilio-ruby/rest/preview/acc_security/service/verification_check.rb +180 -0
  186. data/lib/twilio-ruby/rest/preview/acc_security/service.rb +386 -0
  187. data/lib/twilio-ruby/rest/preview/acc_security.rb +41 -0
  188. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +209 -0
  189. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +201 -0
  190. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +225 -0
  191. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +56 -0
  192. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +390 -0
  193. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +373 -0
  194. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +433 -0
  195. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +384 -0
  196. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +477 -0
  197. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +42 -0
  198. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +400 -0
  199. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +438 -0
  200. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +634 -0
  201. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +58 -0
  202. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +301 -0
  203. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +320 -0
  204. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +337 -0
  205. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +417 -0
  206. data/lib/twilio-ruby/rest/preview/marketplace.rb +58 -0
  207. data/lib/twilio-ruby/rest/preview/proxy/service/phone_number.rb +345 -0
  208. data/lib/twilio-ruby/rest/preview/proxy/service/session/interaction.rb +435 -0
  209. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant/message_interaction.rb +453 -0
  210. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant.rb +512 -0
  211. data/lib/twilio-ruby/rest/preview/proxy/service/session.rb +495 -0
  212. data/lib/twilio-ruby/rest/preview/proxy/service/short_code.rb +340 -0
  213. data/lib/twilio-ruby/rest/preview/proxy/service.rb +462 -0
  214. data/lib/twilio-ruby/rest/preview/proxy.rb +41 -0
  215. data/lib/twilio-ruby/rest/preview/studio/flow/engagement/step.rb +348 -0
  216. data/lib/twilio-ruby/rest/preview/studio/flow/engagement.rb +370 -0
  217. data/lib/twilio-ruby/rest/preview/studio/flow.rb +353 -0
  218. data/lib/twilio-ruby/rest/preview/studio.rb +41 -0
  219. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +388 -0
  220. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +411 -0
  221. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +419 -0
  222. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +388 -0
  223. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +409 -0
  224. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +416 -0
  225. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +388 -0
  226. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +409 -0
  227. data/lib/twilio-ruby/rest/preview/sync/service.rb +470 -0
  228. data/lib/twilio-ruby/rest/preview/sync.rb +41 -0
  229. data/lib/twilio-ruby/rest/preview/understand/service/field_type/field_value.rb +375 -0
  230. data/lib/twilio-ruby/rest/preview/understand/service/field_type.rb +399 -0
  231. data/lib/twilio-ruby/rest/preview/understand/service/intent/field.rb +371 -0
  232. data/lib/twilio-ruby/rest/preview/understand/service/intent/sample.rb +407 -0
  233. data/lib/twilio-ruby/rest/preview/understand/service/intent.rb +425 -0
  234. data/lib/twilio-ruby/rest/preview/understand/service/model_build.rb +368 -0
  235. data/lib/twilio-ruby/rest/preview/understand/service/query.rb +422 -0
  236. data/lib/twilio-ruby/rest/preview/understand/service.rb +503 -0
  237. data/lib/twilio-ruby/rest/preview/understand.rb +41 -0
  238. data/lib/twilio-ruby/rest/preview/wireless/command.rb +378 -0
  239. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +416 -0
  240. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +228 -0
  241. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +536 -0
  242. data/lib/twilio-ruby/rest/preview/wireless.rb +71 -0
  243. data/lib/twilio-ruby/rest/preview.rb +199 -0
  244. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +277 -0
  245. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +123 -0
  246. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +270 -0
  247. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +123 -0
  248. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +277 -0
  249. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +201 -0
  250. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +139 -0
  251. data/lib/twilio-ruby/rest/pricing/v1.rb +47 -0
  252. data/lib/twilio-ruby/rest/pricing.rb +50 -2
  253. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +356 -0
  254. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +461 -0
  255. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +451 -0
  256. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +503 -0
  257. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +543 -0
  258. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +343 -0
  259. data/lib/twilio-ruby/rest/proxy/v1/service.rb +524 -0
  260. data/lib/twilio-ruby/rest/proxy/v1.rb +41 -0
  261. data/lib/twilio-ruby/rest/proxy.rb +44 -0
  262. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +348 -0
  263. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +370 -0
  264. data/lib/twilio-ruby/rest/studio/v1/flow.rb +346 -0
  265. data/lib/twilio-ruby/rest/studio/v1.rb +41 -0
  266. data/lib/twilio-ruby/rest/studio.rb +44 -0
  267. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +388 -0
  268. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +425 -0
  269. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +429 -0
  270. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +388 -0
  271. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +441 -0
  272. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +426 -0
  273. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +388 -0
  274. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +441 -0
  275. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +142 -0
  276. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +412 -0
  277. data/lib/twilio-ruby/rest/sync/v1/service.rb +503 -0
  278. data/lib/twilio-ruby/rest/sync/v1.rb +41 -0
  279. data/lib/twilio-ruby/rest/sync.rb +44 -0
  280. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +373 -0
  281. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +402 -0
  282. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +582 -0
  283. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +554 -0
  284. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +299 -0
  285. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +341 -0
  286. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +251 -0
  287. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +236 -0
  288. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +253 -0
  289. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +528 -0
  290. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +582 -0
  291. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +386 -0
  292. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +225 -0
  293. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +257 -0
  294. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +192 -0
  295. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +220 -0
  296. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +578 -0
  297. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +348 -0
  298. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +230 -0
  299. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +236 -0
  300. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +481 -0
  301. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +330 -0
  302. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +218 -0
  303. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +210 -0
  304. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +669 -0
  305. data/lib/twilio-ruby/rest/taskrouter/v1.rb +41 -0
  306. data/lib/twilio-ruby/rest/taskrouter.rb +44 -0
  307. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +323 -0
  308. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +323 -0
  309. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +410 -0
  310. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +451 -0
  311. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +528 -0
  312. data/lib/twilio-ruby/rest/trunking/v1.rb +41 -0
  313. data/lib/twilio-ruby/rest/trunking.rb +44 -0
  314. data/lib/twilio-ruby/rest/video/v1/composition.rb +429 -0
  315. data/lib/twilio-ruby/rest/video/v1/recording.rb +380 -0
  316. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +365 -0
  317. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +326 -0
  318. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +311 -0
  319. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +431 -0
  320. data/lib/twilio-ruby/rest/video/v1/room.rb +502 -0
  321. data/lib/twilio-ruby/rest/video/v1.rb +71 -0
  322. data/lib/twilio-ruby/rest/video.rb +60 -0
  323. data/lib/twilio-ruby/rest/wireless/v1/command.rb +358 -0
  324. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +433 -0
  325. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +294 -0
  326. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +234 -0
  327. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +567 -0
  328. data/lib/twilio-ruby/rest/wireless/v1.rb +71 -0
  329. data/lib/twilio-ruby/rest/wireless.rb +60 -0
  330. data/lib/twilio-ruby/{util → security}/request_validator.rb +21 -4
  331. data/lib/twilio-ruby/twiml/fax_response.rb +40 -0
  332. data/lib/twilio-ruby/twiml/messaging_response.rb +105 -0
  333. data/lib/twilio-ruby/twiml/twiml.rb +75 -0
  334. data/lib/twilio-ruby/twiml/voice_response.rb +541 -0
  335. data/lib/twilio-ruby/util/configuration.rb +7 -0
  336. data/lib/twilio-ruby/util.rb +3 -1
  337. data/lib/twilio-ruby/version.rb +1 -1
  338. data/lib/twilio-ruby.rb +30 -102
  339. data/spec/framework/request_spec.rb +36 -0
  340. data/spec/framework/serialize_spec.rb +80 -0
  341. data/spec/holodeck/holodeck.rb +61 -0
  342. data/spec/holodeck/hologram.rb +4 -0
  343. data/spec/http/http_client_spec.rb +122 -0
  344. data/spec/integration/accounts/v1/credential/aws_spec.rb +224 -0
  345. data/spec/integration/accounts/v1/credential/public_key_spec.rb +224 -0
  346. data/spec/integration/accounts/v1/credential_spec.rb +10 -0
  347. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +105 -0
  348. data/spec/integration/api/v2010/account/address_spec.rb +267 -0
  349. data/spec/integration/api/v2010/account/application_spec.rb +284 -0
  350. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +137 -0
  351. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +101 -0
  352. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +101 -0
  353. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +100 -0
  354. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +101 -0
  355. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +101 -0
  356. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +100 -0
  357. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +101 -0
  358. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +128 -0
  359. data/spec/integration/api/v2010/account/call/feedback_spec.rb +137 -0
  360. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +149 -0
  361. data/spec/integration/api/v2010/account/call/notification_spec.rb +179 -0
  362. data/spec/integration/api/v2010/account/call/recording_spec.rb +186 -0
  363. data/spec/integration/api/v2010/account/call_spec.rb +312 -0
  364. data/spec/integration/api/v2010/account/conference/participant_spec.rb +280 -0
  365. data/spec/integration/api/v2010/account/conference_spec.rb +177 -0
  366. data/spec/integration/api/v2010/account/connect_app_spec.rb +177 -0
  367. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +135 -0
  368. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +221 -0
  369. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +183 -0
  370. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +183 -0
  371. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +183 -0
  372. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +339 -0
  373. data/spec/integration/api/v2010/account/key_spec.rb +178 -0
  374. data/spec/integration/api/v2010/account/message/feedback_spec.rb +48 -0
  375. data/spec/integration/api/v2010/account/message/media_spec.rb +162 -0
  376. data/spec/integration/api/v2010/account/message_spec.rb +293 -0
  377. data/spec/integration/api/v2010/account/new_key_spec.rb +45 -0
  378. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +45 -0
  379. data/spec/integration/api/v2010/account/notification_spec.rb +172 -0
  380. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +193 -0
  381. data/spec/integration/api/v2010/account/queue/member_spec.rb +167 -0
  382. data/spec/integration/api/v2010/account/queue_spec.rb +240 -0
  383. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +175 -0
  384. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +166 -0
  385. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +174 -0
  386. data/spec/integration/api/v2010/account/recording_spec.rb +187 -0
  387. data/spec/integration/api/v2010/account/short_code_spec.rb +180 -0
  388. data/spec/integration/api/v2010/account/signing_key_spec.rb +178 -0
  389. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +254 -0
  390. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +242 -0
  391. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +208 -0
  392. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +218 -0
  393. data/spec/integration/api/v2010/account/sip/domain_spec.rb +285 -0
  394. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +258 -0
  395. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +252 -0
  396. data/spec/integration/api/v2010/account/sip_spec.rb +10 -0
  397. data/spec/integration/api/v2010/account/token_spec.rb +56 -0
  398. data/spec/integration/api/v2010/account/transcription_spec.rb +167 -0
  399. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +111 -0
  400. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +111 -0
  401. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +111 -0
  402. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +111 -0
  403. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +111 -0
  404. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +111 -0
  405. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +111 -0
  406. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +111 -0
  407. data/spec/integration/api/v2010/account/usage/record_spec.rb +108 -0
  408. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +283 -0
  409. data/spec/integration/api/v2010/account/usage_spec.rb +10 -0
  410. data/spec/integration/api/v2010/account/validation_request_spec.rb +46 -0
  411. data/spec/integration/api/v2010/account_spec.rb +254 -0
  412. data/spec/integration/chat/v1/credential_spec.rb +221 -0
  413. data/spec/integration/chat/v1/service/channel/invite_spec.rb +208 -0
  414. data/spec/integration/chat/v1/service/channel/member_spec.rb +282 -0
  415. data/spec/integration/chat/v1/service/channel/message_spec.rb +292 -0
  416. data/spec/integration/chat/v1/service/channel_spec.rb +275 -0
  417. data/spec/integration/chat/v1/service/role_spec.rb +261 -0
  418. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +92 -0
  419. data/spec/integration/chat/v1/service/user_spec.rb +264 -0
  420. data/spec/integration/chat/v1/service_spec.rb +297 -0
  421. data/spec/integration/chat/v2/credential_spec.rb +221 -0
  422. data/spec/integration/chat/v2/service/binding_spec.rb +175 -0
  423. data/spec/integration/chat/v2/service/channel/invite_spec.rb +208 -0
  424. data/spec/integration/chat/v2/service/channel/member_spec.rb +255 -0
  425. data/spec/integration/chat/v2/service/channel/message_spec.rb +403 -0
  426. data/spec/integration/chat/v2/service/channel_spec.rb +275 -0
  427. data/spec/integration/chat/v2/service/role_spec.rb +261 -0
  428. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +178 -0
  429. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +92 -0
  430. data/spec/integration/chat/v2/service/user_spec.rb +268 -0
  431. data/spec/integration/chat/v2/service_spec.rb +352 -0
  432. data/spec/integration/fax/v1/fax/fax_media_spec.rb +126 -0
  433. data/spec/integration/fax/v1/fax_spec.rb +269 -0
  434. data/spec/integration/ip_messaging/v1/credential_spec.rb +221 -0
  435. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +208 -0
  436. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +282 -0
  437. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +292 -0
  438. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +275 -0
  439. data/spec/integration/ip_messaging/v1/service/role_spec.rb +261 -0
  440. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +92 -0
  441. data/spec/integration/ip_messaging/v1/service/user_spec.rb +264 -0
  442. data/spec/integration/ip_messaging/v1/service_spec.rb +297 -0
  443. data/spec/integration/ip_messaging/v2/credential_spec.rb +221 -0
  444. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +175 -0
  445. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +208 -0
  446. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +255 -0
  447. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +403 -0
  448. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +275 -0
  449. data/spec/integration/ip_messaging/v2/service/role_spec.rb +261 -0
  450. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +178 -0
  451. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +92 -0
  452. data/spec/integration/ip_messaging/v2/service/user_spec.rb +268 -0
  453. data/spec/integration/ip_messaging/v2/service_spec.rb +352 -0
  454. data/spec/integration/lookups/v1/phone_number_spec.rb +70 -0
  455. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +168 -0
  456. data/spec/integration/messaging/v1/service/phone_number_spec.rb +199 -0
  457. data/spec/integration/messaging/v1/service/short_code_spec.rb +171 -0
  458. data/spec/integration/messaging/v1/service_spec.rb +261 -0
  459. data/spec/integration/monitor/v1/alert_spec.rb +161 -0
  460. data/spec/integration/monitor/v1/event_spec.rb +148 -0
  461. data/spec/integration/notify/v1/credential_spec.rb +221 -0
  462. data/spec/integration/notify/v1/service/binding_spec.rb +223 -0
  463. data/spec/integration/notify/v1/service/notification_spec.rb +97 -0
  464. data/spec/integration/notify/v1/service/segment_spec.rb +84 -0
  465. data/spec/integration/notify/v1/service/user/segment_memberships_spec.rb +116 -0
  466. data/spec/integration/notify/v1/service/user/user_binding_spec.rb +266 -0
  467. data/spec/integration/notify/v1/service/user_spec.rb +211 -0
  468. data/spec/integration/notify/v1/service_spec.rb +284 -0
  469. data/spec/integration/preview/acc_security/service/verification_check_spec.rb +50 -0
  470. data/spec/integration/preview/acc_security/service/verification_spec.rb +50 -0
  471. data/spec/integration/preview/acc_security/service_spec.rb +183 -0
  472. data/spec/integration/preview/bulk_exports/export/day_spec.rb +56 -0
  473. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +77 -0
  474. data/spec/integration/preview/bulk_exports/export_spec.rb +43 -0
  475. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +236 -0
  476. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +231 -0
  477. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +247 -0
  478. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +235 -0
  479. data/spec/integration/preview/deployed_devices/fleet_spec.rb +244 -0
  480. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +109 -0
  481. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +223 -0
  482. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +391 -0
  483. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +121 -0
  484. data/spec/integration/preview/marketplace/available_add_on_spec.rb +142 -0
  485. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +162 -0
  486. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +252 -0
  487. data/spec/integration/preview/proxy/service/phone_number_spec.rb +171 -0
  488. data/spec/integration/preview/proxy/service/session/interaction_spec.rb +104 -0
  489. data/spec/integration/preview/proxy/service/session/participant/message_interaction_spec.rb +164 -0
  490. data/spec/integration/preview/proxy/service/session/participant_spec.rb +224 -0
  491. data/spec/integration/preview/proxy/service/session_spec.rb +216 -0
  492. data/spec/integration/preview/proxy/service/short_code_spec.rb +171 -0
  493. data/spec/integration/preview/proxy/service_spec.rb +200 -0
  494. data/spec/integration/preview/studio/flow/engagement/step_spec.rb +96 -0
  495. data/spec/integration/preview/studio/flow/engagement_spec.rb +143 -0
  496. data/spec/integration/preview/studio/flow_spec.rb +115 -0
  497. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +202 -0
  498. data/spec/integration/preview/sync/service/document_spec.rb +252 -0
  499. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +252 -0
  500. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +202 -0
  501. data/spec/integration/preview/sync/service/sync_list_spec.rb +207 -0
  502. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +252 -0
  503. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +202 -0
  504. data/spec/integration/preview/sync/service/sync_map_spec.rb +207 -0
  505. data/spec/integration/preview/sync/service_spec.rb +244 -0
  506. data/spec/integration/preview/understand/service/field_type/field_value_spec.rb +205 -0
  507. data/spec/integration/preview/understand/service/field_type_spec.rb +244 -0
  508. data/spec/integration/preview/understand/service/intent/field_spec.rb +205 -0
  509. data/spec/integration/preview/understand/service/intent/sample_spec.rb +247 -0
  510. data/spec/integration/preview/understand/service/intent_spec.rb +252 -0
  511. data/spec/integration/preview/understand/service/model_build_spec.rb +231 -0
  512. data/spec/integration/preview/understand/service/query_spec.rb +300 -0
  513. data/spec/integration/preview/understand/service_spec.rb +256 -0
  514. data/spec/integration/preview/wireless/command_spec.rb +167 -0
  515. data/spec/integration/preview/wireless/rate_plan_spec.rb +260 -0
  516. data/spec/integration/preview/wireless/sim/usage_spec.rb +49 -0
  517. data/spec/integration/preview/wireless/sim_spec.rb +208 -0
  518. data/spec/integration/pricing/v1/messaging/country_spec.rb +137 -0
  519. data/spec/integration/pricing/v1/messaging_spec.rb +10 -0
  520. data/spec/integration/pricing/v1/phone_number/country_spec.rb +128 -0
  521. data/spec/integration/pricing/v1/phone_number_spec.rb +10 -0
  522. data/spec/integration/pricing/v1/voice/country_spec.rb +266 -0
  523. data/spec/integration/pricing/v1/voice/number_spec.rb +54 -0
  524. data/spec/integration/pricing/v1/voice_spec.rb +10 -0
  525. data/spec/integration/proxy/v1/service/phone_number_spec.rb +182 -0
  526. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +134 -0
  527. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +164 -0
  528. data/spec/integration/proxy/v1/service/session/participant_spec.rb +227 -0
  529. data/spec/integration/proxy/v1/service/session_spec.rb +228 -0
  530. data/spec/integration/proxy/v1/service/short_code_spec.rb +180 -0
  531. data/spec/integration/proxy/v1/service_spec.rb +213 -0
  532. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +96 -0
  533. data/spec/integration/studio/v1/flow/engagement_spec.rb +143 -0
  534. data/spec/integration/studio/v1/flow_spec.rb +114 -0
  535. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +202 -0
  536. data/spec/integration/sync/v1/service/document_spec.rb +255 -0
  537. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +255 -0
  538. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +202 -0
  539. data/spec/integration/sync/v1/service/sync_list_spec.rb +255 -0
  540. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +255 -0
  541. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +202 -0
  542. data/spec/integration/sync/v1/service/sync_map_spec.rb +255 -0
  543. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +45 -0
  544. data/spec/integration/sync/v1/service/sync_stream_spec.rb +247 -0
  545. data/spec/integration/sync/v1/service_spec.rb +252 -0
  546. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +234 -0
  547. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +157 -0
  548. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +192 -0
  549. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +127 -0
  550. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +94 -0
  551. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +79 -0
  552. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +106 -0
  553. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +144 -0
  554. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +296 -0
  555. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +324 -0
  556. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +192 -0
  557. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +186 -0
  558. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +90 -0
  559. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +87 -0
  560. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +68 -0
  561. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +114 -0
  562. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +292 -0
  563. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +95 -0
  564. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +55 -0
  565. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +69 -0
  566. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +270 -0
  567. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +92 -0
  568. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +70 -0
  569. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +103 -0
  570. data/spec/integration/taskrouter/v1/workspace_spec.rb +293 -0
  571. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +190 -0
  572. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +190 -0
  573. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +250 -0
  574. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +265 -0
  575. data/spec/integration/trunking/v1/trunk_spec.rb +276 -0
  576. data/spec/integration/video/v1/composition_spec.rb +223 -0
  577. data/spec/integration/video/v1/recording_spec.rb +171 -0
  578. data/spec/integration/video/v1/room/recording_spec.rb +146 -0
  579. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +94 -0
  580. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +132 -0
  581. data/spec/integration/video/v1/room/room_participant_spec.rb +185 -0
  582. data/spec/integration/video/v1/room_spec.rb +255 -0
  583. data/spec/integration/wireless/v1/command_spec.rb +164 -0
  584. data/spec/integration/wireless/v1/rate_plan_spec.rb +268 -0
  585. data/spec/integration/wireless/v1/sim/data_session_spec.rb +85 -0
  586. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +65 -0
  587. data/spec/integration/wireless/v1/sim_spec.rb +214 -0
  588. data/spec/jwt/access_token_spec.rb +149 -0
  589. data/spec/jwt/client_capability_spec.rb +104 -0
  590. data/spec/jwt/task_router_spec.rb +172 -0
  591. data/spec/rack/twilio_webhook_authentication_spec.rb +19 -23
  592. data/spec/rest/client_spec.rb +29 -257
  593. data/spec/{util → security}/request_validator_spec.rb +5 -5
  594. data/spec/spec_helper.rb +18 -1
  595. data/spec/support/fakeweb.rb +1 -1
  596. data/spec/twiml/messaging_response_spec.rb +95 -0
  597. data/spec/twiml/voice_response_spec.rb +479 -0
  598. data/twilio-ruby.gemspec +14 -11
  599. metadata +904 -248
  600. data/docs/Makefile +0 -130
  601. data/docs/_themes/LICENSE +0 -45
  602. data/docs/_themes/README.rst +0 -25
  603. data/docs/_themes/flask_theme_support.py +0 -86
  604. data/docs/_themes/kr/layout.html +0 -32
  605. data/docs/_themes/kr/relations.html +0 -19
  606. data/docs/_themes/kr/static/flasky.css_t +0 -469
  607. data/docs/_themes/kr/static/small_flask.css +0 -70
  608. data/docs/_themes/kr/theme.conf +0 -7
  609. data/docs/_themes/kr_small/layout.html +0 -22
  610. data/docs/_themes/kr_small/static/flasky.css_t +0 -287
  611. data/docs/_themes/kr_small/theme.conf +0 -10
  612. data/docs/changelog.rst +0 -1
  613. data/docs/conf.py +0 -266
  614. data/docs/faq.rst +0 -42
  615. data/docs/getting-started.rst +0 -117
  616. data/docs/index.rst +0 -135
  617. data/docs/make.bat +0 -170
  618. data/docs/src/pip-delete-this-directory.txt +0 -5
  619. data/docs/usage/accounts.rst +0 -89
  620. data/docs/usage/addresses.rst +0 -101
  621. data/docs/usage/applications.rst +0 -108
  622. data/docs/usage/basics.rst +0 -115
  623. data/docs/usage/caller-ids.rst +0 -47
  624. data/docs/usage/conferences.rst +0 -108
  625. data/docs/usage/errors.rst +0 -29
  626. data/docs/usage/lookups.rst +0 -62
  627. data/docs/usage/messages.rst +0 -137
  628. data/docs/usage/notifications.rst +0 -72
  629. data/docs/usage/phone-calls.rst +0 -185
  630. data/docs/usage/phone-numbers.rst +0 -189
  631. data/docs/usage/pricing.rst +0 -169
  632. data/docs/usage/queues.rst +0 -112
  633. data/docs/usage/recordings.rst +0 -98
  634. data/docs/usage/sip.rst +0 -104
  635. data/docs/usage/taskrouter-tokens.rst +0 -98
  636. data/docs/usage/taskrouter.rst +0 -440
  637. data/docs/usage/token-generation.rst +0 -115
  638. data/docs/usage/transcriptions.rst +0 -32
  639. data/docs/usage/twiml.rst +0 -69
  640. data/docs/usage/validation.rst +0 -107
  641. data/examples/taskrouter.examples.rb +0 -86
  642. data/issue_template.md +0 -25
  643. data/lib/twilio-ruby/rest/addresses/dependent_phone_numbers.rb +0 -6
  644. data/lib/twilio-ruby/rest/addresses.rb +0 -12
  645. data/lib/twilio-ruby/rest/applications.rb +0 -6
  646. data/lib/twilio-ruby/rest/authorized_connect_apps.rb +0 -6
  647. data/lib/twilio-ruby/rest/available_phone_numbers/country.rb +0 -10
  648. data/lib/twilio-ruby/rest/available_phone_numbers/local.rb +0 -11
  649. data/lib/twilio-ruby/rest/available_phone_numbers/mobile.rb +0 -11
  650. data/lib/twilio-ruby/rest/available_phone_numbers/toll_free.rb +0 -11
  651. data/lib/twilio-ruby/rest/available_phone_numbers.rb +0 -13
  652. data/lib/twilio-ruby/rest/base_client.rb +0 -131
  653. data/lib/twilio-ruby/rest/call_feedback.rb +0 -28
  654. data/lib/twilio-ruby/rest/call_feedback_summary.rb +0 -13
  655. data/lib/twilio-ruby/rest/calls.rb +0 -33
  656. data/lib/twilio-ruby/rest/conferences/participants.rb +0 -23
  657. data/lib/twilio-ruby/rest/conferences.rb +0 -12
  658. data/lib/twilio-ruby/rest/connect_apps.rb +0 -6
  659. data/lib/twilio-ruby/rest/errors.rb +0 -14
  660. data/lib/twilio-ruby/rest/incoming_phone_numbers/local.rb +0 -13
  661. data/lib/twilio-ruby/rest/incoming_phone_numbers/mobile.rb +0 -13
  662. data/lib/twilio-ruby/rest/incoming_phone_numbers/toll_free.rb +0 -13
  663. data/lib/twilio-ruby/rest/incoming_phone_numbers.rb +0 -17
  664. data/lib/twilio-ruby/rest/instance_resource.rb +0 -87
  665. data/lib/twilio-ruby/rest/ip-messaging/channels.rb +0 -15
  666. data/lib/twilio-ruby/rest/ip-messaging/credentials.rb +0 -19
  667. data/lib/twilio-ruby/rest/ip-messaging/members.rb +0 -8
  668. data/lib/twilio-ruby/rest/ip-messaging/messages.rb +0 -8
  669. data/lib/twilio-ruby/rest/ip-messaging/roles.rb +0 -8
  670. data/lib/twilio-ruby/rest/ip-messaging/services.rb +0 -17
  671. data/lib/twilio-ruby/rest/ip-messaging/users.rb +0 -8
  672. data/lib/twilio-ruby/rest/ip_messaging_client.rb +0 -100
  673. data/lib/twilio-ruby/rest/keys.rb +0 -6
  674. data/lib/twilio-ruby/rest/list_resource.rb +0 -100
  675. data/lib/twilio-ruby/rest/lookups/phone_numbers.rb +0 -17
  676. data/lib/twilio-ruby/rest/lookups_client.rb +0 -99
  677. data/lib/twilio-ruby/rest/media.rb +0 -14
  678. data/lib/twilio-ruby/rest/messages.rb +0 -22
  679. data/lib/twilio-ruby/rest/monitor/alerts.rb +0 -8
  680. data/lib/twilio-ruby/rest/monitor/events.rb +0 -8
  681. data/lib/twilio-ruby/rest/monitor_client.rb +0 -101
  682. data/lib/twilio-ruby/rest/next_gen_list_resource.rb +0 -36
  683. data/lib/twilio-ruby/rest/notifications.rb +0 -6
  684. data/lib/twilio-ruby/rest/outgoing_caller_ids.rb +0 -25
  685. data/lib/twilio-ruby/rest/pricing/countries.rb +0 -21
  686. data/lib/twilio-ruby/rest/pricing/messaging.rb +0 -15
  687. data/lib/twilio-ruby/rest/pricing/phone_numbers.rb +0 -14
  688. data/lib/twilio-ruby/rest/pricing/voice/numbers.rb +0 -19
  689. data/lib/twilio-ruby/rest/pricing/voice.rb +0 -15
  690. data/lib/twilio-ruby/rest/pricing_client.rb +0 -108
  691. data/lib/twilio-ruby/rest/queues/members.rb +0 -29
  692. data/lib/twilio-ruby/rest/queues.rb +0 -12
  693. data/lib/twilio-ruby/rest/recordings.rb +0 -35
  694. data/lib/twilio-ruby/rest/sandbox.rb +0 -5
  695. data/lib/twilio-ruby/rest/sip/credential_lists/credentials.rb +0 -6
  696. data/lib/twilio-ruby/rest/sip/credential_lists.rb +0 -11
  697. data/lib/twilio-ruby/rest/sip/domains/credential_list_mappings.rb +0 -6
  698. data/lib/twilio-ruby/rest/sip/domains/ip_access_control_list_mappings.rb +0 -6
  699. data/lib/twilio-ruby/rest/sip/domains.rb +0 -12
  700. data/lib/twilio-ruby/rest/sip/ip_access_control_lists/ip_addresses.rb +0 -6
  701. data/lib/twilio-ruby/rest/sip/ip_access_control_lists.rb +0 -11
  702. data/lib/twilio-ruby/rest/sip.rb +0 -10
  703. data/lib/twilio-ruby/rest/sms/messages.rb +0 -38
  704. data/lib/twilio-ruby/rest/sms/short_codes.rb +0 -8
  705. data/lib/twilio-ruby/rest/sms.rb +0 -11
  706. data/lib/twilio-ruby/rest/task_router/activities.rb +0 -8
  707. data/lib/twilio-ruby/rest/task_router/events.rb +0 -8
  708. data/lib/twilio-ruby/rest/task_router/reservations.rb +0 -8
  709. data/lib/twilio-ruby/rest/task_router/statistics.rb +0 -26
  710. data/lib/twilio-ruby/rest/task_router/task_queues.rb +0 -17
  711. data/lib/twilio-ruby/rest/task_router/task_queues_statistics.rb +0 -15
  712. data/lib/twilio-ruby/rest/task_router/tasks.rb +0 -15
  713. data/lib/twilio-ruby/rest/task_router/workers.rb +0 -19
  714. data/lib/twilio-ruby/rest/task_router/workers_statistics.rb +0 -8
  715. data/lib/twilio-ruby/rest/task_router/workflow_statistics.rb +0 -7
  716. data/lib/twilio-ruby/rest/task_router/workflows.rb +0 -11
  717. data/lib/twilio-ruby/rest/task_router/workspace_statistics.rb +0 -7
  718. data/lib/twilio-ruby/rest/task_router/workspaces.rb +0 -17
  719. data/lib/twilio-ruby/rest/task_router_client.rb +0 -176
  720. data/lib/twilio-ruby/rest/tokens.rb +0 -7
  721. data/lib/twilio-ruby/rest/transcriptions.rb +0 -6
  722. data/lib/twilio-ruby/rest/trunking/credential_lists.rb +0 -8
  723. data/lib/twilio-ruby/rest/trunking/ip_access_control_lists.rb +0 -8
  724. data/lib/twilio-ruby/rest/trunking/origination_urls.rb +0 -8
  725. data/lib/twilio-ruby/rest/trunking/phone_numbers.rb +0 -8
  726. data/lib/twilio-ruby/rest/trunking/trunks.rb +0 -19
  727. data/lib/twilio-ruby/rest/trunking_client.rb +0 -106
  728. data/lib/twilio-ruby/rest/usage/records.rb +0 -21
  729. data/lib/twilio-ruby/rest/usage/triggers.rb +0 -12
  730. data/lib/twilio-ruby/rest/usage.rb +0 -10
  731. data/lib/twilio-ruby/rest/utils.rb +0 -49
  732. data/lib/twilio-ruby/task_router/capability.rb +0 -230
  733. data/lib/twilio-ruby/task_router/workflow_builder.rb +0 -135
  734. data/lib/twilio-ruby/task_router.rb +0 -0
  735. data/lib/twilio-ruby/twiml/response.rb +0 -16
  736. data/lib/twilio-ruby/util/access_token.rb +0 -158
  737. data/lib/twilio-ruby/util/capability.rb +0 -64
  738. data/lib/twilio-ruby/util/client_config.rb +0 -29
  739. data/spec/rest/account_spec.rb +0 -89
  740. data/spec/rest/address_spec.rb +0 -11
  741. data/spec/rest/call_feedback_spec.rb +0 -12
  742. data/spec/rest/call_feedback_summary_spec.rb +0 -9
  743. data/spec/rest/call_spec.rb +0 -22
  744. data/spec/rest/conference_spec.rb +0 -11
  745. data/spec/rest/instance_resource_spec.rb +0 -15
  746. data/spec/rest/ip-messaging/channel_spec.rb +0 -21
  747. data/spec/rest/ip-messaging/service_spec.rb +0 -30
  748. data/spec/rest/ip_messaging_client_spec.rb +0 -21
  749. data/spec/rest/key_spec.rb +0 -11
  750. data/spec/rest/lookups/phone_number_spec.rb +0 -28
  751. data/spec/rest/message_spec.rb +0 -12
  752. data/spec/rest/monitor_client_spec.rb +0 -17
  753. data/spec/rest/numbers_spec.rb +0 -58
  754. data/spec/rest/pricing_client_spec.rb +0 -60
  755. data/spec/rest/queue_spec.rb +0 -11
  756. data/spec/rest/recording_spec.rb +0 -11
  757. data/spec/rest/sms/message_spec.rb +0 -37
  758. data/spec/rest/sms/messages_spec.rb +0 -31
  759. data/spec/rest/task_router/reservation_spec.rb +0 -14
  760. data/spec/rest/task_router/statistics_spec.rb +0 -37
  761. data/spec/rest/task_router/task_queue_spec.rb +0 -9
  762. data/spec/rest/token_spec.rb +0 -7
  763. data/spec/rest/trunking/trunk_spec.rb +0 -36
  764. data/spec/rest/utils_spec.rb +0 -45
  765. data/spec/task_router/workflow_builder_spec.rb +0 -501
  766. data/spec/task_router_deprecated_spec.rb +0 -139
  767. data/spec/task_router_spec.rb +0 -110
  768. data/spec/task_router_taskqueue_spec.rb +0 -111
  769. data/spec/task_router_worker_spec.rb +0 -146
  770. data/spec/task_router_workspace_spec.rb +0 -110
  771. data/spec/util/access_token_spec.rb +0 -161
  772. data/spec/util/capability_spec.rb +0 -186
  773. data/spec/util/client_config_spec.rb +0 -21
@@ -0,0 +1,891 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+
7
+ module Twilio
8
+ module REST
9
+ class IpMessaging < Domain
10
+ class V1 < Version
11
+ class ServiceList < ListResource
12
+ ##
13
+ # Initialize the ServiceList
14
+ # @param [Version] version Version that contains the resource
15
+ # @return [ServiceList] ServiceList
16
+ def initialize(version)
17
+ super(version)
18
+
19
+ # Path Solution
20
+ @solution = {}
21
+ @uri = "/Services"
22
+ end
23
+
24
+ ##
25
+ # Retrieve a single page of ServiceInstance records from the API.
26
+ # Request is executed immediately.
27
+ # @param [String] friendly_name The friendly_name
28
+ # @return [ServiceInstance] Newly created ServiceInstance
29
+ def create(friendly_name: nil)
30
+ data = Twilio::Values.of({'FriendlyName' => friendly_name, })
31
+
32
+ payload = @version.create(
33
+ 'POST',
34
+ @uri,
35
+ data: data
36
+ )
37
+
38
+ ServiceInstance.new(@version, payload, )
39
+ end
40
+
41
+ ##
42
+ # Lists ServiceInstance records from the API as a list.
43
+ # Unlike stream(), this operation is eager and will load `limit` records into
44
+ # memory before returning.
45
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
46
+ # guarantees to never return more than limit. Default is no limit
47
+ # @param [Integer] page_size Number of records to fetch per request, when
48
+ # not set will use the default value of 50 records. If no page_size is defined
49
+ # but a limit is defined, stream() will attempt to read the limit with the most
50
+ # efficient page size, i.e. min(limit, 1000)
51
+ # @return [Array] Array of up to limit results
52
+ def list(limit: nil, page_size: nil)
53
+ self.stream(limit: limit, page_size: page_size).entries
54
+ end
55
+
56
+ ##
57
+ # Streams ServiceInstance records from the API as an Enumerable.
58
+ # This operation lazily loads records as efficiently as possible until the limit
59
+ # is reached.
60
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
61
+ # guarantees to never return more than limit. Default is no limit.
62
+ # @param [Integer] page_size Number of records to fetch per request, when
63
+ # not set will use the default value of 50 records. If no page_size is defined
64
+ # but a limit is defined, stream() will attempt to read the limit with the most
65
+ # efficient page size, i.e. min(limit, 1000)
66
+ # @return [Enumerable] Enumerable that will yield up to limit results
67
+ def stream(limit: nil, page_size: nil)
68
+ limits = @version.read_limits(limit, page_size)
69
+
70
+ page = self.page(page_size: limits[:page_size], )
71
+
72
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
73
+ end
74
+
75
+ ##
76
+ # When passed a block, yields ServiceInstance records from the API.
77
+ # This operation lazily loads records as efficiently as possible until the limit
78
+ # is reached.
79
+ def each
80
+ limits = @version.read_limits
81
+
82
+ page = self.page(page_size: limits[:page_size], )
83
+
84
+ @version.stream(page,
85
+ limit: limits[:limit],
86
+ page_limit: limits[:page_limit]).each {|x| yield x}
87
+ end
88
+
89
+ ##
90
+ # Retrieve a single page of ServiceInstance records from the API.
91
+ # Request is executed immediately.
92
+ # @param [String] page_token PageToken provided by the API
93
+ # @param [Integer] page_number Page Number, this value is simply for client state
94
+ # @param [Integer] page_size Number of records to return, defaults to 50
95
+ # @return [Page] Page of ServiceInstance
96
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
97
+ params = Twilio::Values.of({
98
+ 'PageToken' => page_token,
99
+ 'Page' => page_number,
100
+ 'PageSize' => page_size,
101
+ })
102
+ response = @version.page(
103
+ 'GET',
104
+ @uri,
105
+ params
106
+ )
107
+ ServicePage.new(@version, response, @solution)
108
+ end
109
+
110
+ ##
111
+ # Retrieve a single page of ServiceInstance records from the API.
112
+ # Request is executed immediately.
113
+ # @param [String] target_url API-generated URL for the requested results page
114
+ # @return [Page] Page of ServiceInstance
115
+ def get_page(target_url)
116
+ response = @version.domain.request(
117
+ 'GET',
118
+ target_url
119
+ )
120
+ ServicePage.new(@version, response, @solution)
121
+ end
122
+
123
+ ##
124
+ # Provide a user friendly representation
125
+ def to_s
126
+ '#<Twilio.IpMessaging.V1.ServiceList>'
127
+ end
128
+ end
129
+
130
+ class ServicePage < Page
131
+ ##
132
+ # Initialize the ServicePage
133
+ # @param [Version] version Version that contains the resource
134
+ # @param [Response] response Response from the API
135
+ # @param [Hash] solution Path solution for the resource
136
+ # @return [ServicePage] ServicePage
137
+ def initialize(version, response, solution)
138
+ super(version, response)
139
+
140
+ # Path Solution
141
+ @solution = solution
142
+ end
143
+
144
+ ##
145
+ # Build an instance of ServiceInstance
146
+ # @param [Hash] payload Payload response from the API
147
+ # @return [ServiceInstance] ServiceInstance
148
+ def get_instance(payload)
149
+ ServiceInstance.new(@version, payload, )
150
+ end
151
+
152
+ ##
153
+ # Provide a user friendly representation
154
+ def to_s
155
+ '<Twilio.IpMessaging.V1.ServicePage>'
156
+ end
157
+ end
158
+
159
+ class ServiceContext < InstanceContext
160
+ ##
161
+ # Initialize the ServiceContext
162
+ # @param [Version] version Version that contains the resource
163
+ # @param [String] sid The sid
164
+ # @return [ServiceContext] ServiceContext
165
+ def initialize(version, sid)
166
+ super(version)
167
+
168
+ # Path Solution
169
+ @solution = {sid: sid, }
170
+ @uri = "/Services/#{@solution[:sid]}"
171
+
172
+ # Dependents
173
+ @channels = nil
174
+ @roles = nil
175
+ @users = nil
176
+ end
177
+
178
+ ##
179
+ # Fetch a ServiceInstance
180
+ # @return [ServiceInstance] Fetched ServiceInstance
181
+ def fetch
182
+ params = Twilio::Values.of({})
183
+
184
+ payload = @version.fetch(
185
+ 'GET',
186
+ @uri,
187
+ params,
188
+ )
189
+
190
+ ServiceInstance.new(@version, payload, sid: @solution[:sid], )
191
+ end
192
+
193
+ ##
194
+ # Deletes the ServiceInstance
195
+ # @return [Boolean] true if delete succeeds, true otherwise
196
+ def delete
197
+ @version.delete('delete', @uri)
198
+ end
199
+
200
+ ##
201
+ # Update the ServiceInstance
202
+ # @param [String] friendly_name The friendly_name
203
+ # @param [String] default_service_role_sid The default_service_role_sid
204
+ # @param [String] default_channel_role_sid The default_channel_role_sid
205
+ # @param [String] default_channel_creator_role_sid The
206
+ # default_channel_creator_role_sid
207
+ # @param [Boolean] read_status_enabled The read_status_enabled
208
+ # @param [Boolean] reachability_enabled The reachability_enabled
209
+ # @param [String] typing_indicator_timeout The typing_indicator_timeout
210
+ # @param [String] consumption_report_interval The consumption_report_interval
211
+ # @param [Boolean] notifications_new_message_enabled The
212
+ # notifications.new_message.enabled
213
+ # @param [String] notifications_new_message_template The
214
+ # notifications.new_message.template
215
+ # @param [Boolean] notifications_added_to_channel_enabled The
216
+ # notifications.added_to_channel.enabled
217
+ # @param [String] notifications_added_to_channel_template The
218
+ # notifications.added_to_channel.template
219
+ # @param [Boolean] notifications_removed_from_channel_enabled The
220
+ # notifications.removed_from_channel.enabled
221
+ # @param [String] notifications_removed_from_channel_template The
222
+ # notifications.removed_from_channel.template
223
+ # @param [Boolean] notifications_invited_to_channel_enabled The
224
+ # notifications.invited_to_channel.enabled
225
+ # @param [String] notifications_invited_to_channel_template The
226
+ # notifications.invited_to_channel.template
227
+ # @param [String] pre_webhook_url The pre_webhook_url
228
+ # @param [String] post_webhook_url The post_webhook_url
229
+ # @param [String] webhook_method The webhook_method
230
+ # @param [String] webhook_filters The webhook_filters
231
+ # @param [String] webhooks_on_message_send_url The webhooks.on_message_send.url
232
+ # @param [String] webhooks_on_message_send_method The
233
+ # webhooks.on_message_send.method
234
+ # @param [String] webhooks_on_message_send_format The
235
+ # webhooks.on_message_send.format
236
+ # @param [String] webhooks_on_message_update_url The
237
+ # webhooks.on_message_update.url
238
+ # @param [String] webhooks_on_message_update_method The
239
+ # webhooks.on_message_update.method
240
+ # @param [String] webhooks_on_message_update_format The
241
+ # webhooks.on_message_update.format
242
+ # @param [String] webhooks_on_message_remove_url The
243
+ # webhooks.on_message_remove.url
244
+ # @param [String] webhooks_on_message_remove_method The
245
+ # webhooks.on_message_remove.method
246
+ # @param [String] webhooks_on_message_remove_format The
247
+ # webhooks.on_message_remove.format
248
+ # @param [String] webhooks_on_channel_add_url The webhooks.on_channel_add.url
249
+ # @param [String] webhooks_on_channel_add_method The
250
+ # webhooks.on_channel_add.method
251
+ # @param [String] webhooks_on_channel_add_format The
252
+ # webhooks.on_channel_add.format
253
+ # @param [String] webhooks_on_channel_destroy_url The
254
+ # webhooks.on_channel_destroy.url
255
+ # @param [String] webhooks_on_channel_destroy_method The
256
+ # webhooks.on_channel_destroy.method
257
+ # @param [String] webhooks_on_channel_destroy_format The
258
+ # webhooks.on_channel_destroy.format
259
+ # @param [String] webhooks_on_channel_update_url The
260
+ # webhooks.on_channel_update.url
261
+ # @param [String] webhooks_on_channel_update_method The
262
+ # webhooks.on_channel_update.method
263
+ # @param [String] webhooks_on_channel_update_format The
264
+ # webhooks.on_channel_update.format
265
+ # @param [String] webhooks_on_member_add_url The webhooks.on_member_add.url
266
+ # @param [String] webhooks_on_member_add_method The webhooks.on_member_add.method
267
+ # @param [String] webhooks_on_member_add_format The webhooks.on_member_add.format
268
+ # @param [String] webhooks_on_member_remove_url The webhooks.on_member_remove.url
269
+ # @param [String] webhooks_on_member_remove_method The
270
+ # webhooks.on_member_remove.method
271
+ # @param [String] webhooks_on_member_remove_format The
272
+ # webhooks.on_member_remove.format
273
+ # @param [String] webhooks_on_message_sent_url The webhooks.on_message_sent.url
274
+ # @param [String] webhooks_on_message_sent_method The
275
+ # webhooks.on_message_sent.method
276
+ # @param [String] webhooks_on_message_sent_format The
277
+ # webhooks.on_message_sent.format
278
+ # @param [String] webhooks_on_message_updated_url The
279
+ # webhooks.on_message_updated.url
280
+ # @param [String] webhooks_on_message_updated_method The
281
+ # webhooks.on_message_updated.method
282
+ # @param [String] webhooks_on_message_updated_format The
283
+ # webhooks.on_message_updated.format
284
+ # @param [String] webhooks_on_message_removed_url The
285
+ # webhooks.on_message_removed.url
286
+ # @param [String] webhooks_on_message_removed_method The
287
+ # webhooks.on_message_removed.method
288
+ # @param [String] webhooks_on_message_removed_format The
289
+ # webhooks.on_message_removed.format
290
+ # @param [String] webhooks_on_channel_added_url The webhooks.on_channel_added.url
291
+ # @param [String] webhooks_on_channel_added_method The
292
+ # webhooks.on_channel_added.method
293
+ # @param [String] webhooks_on_channel_added_format The
294
+ # webhooks.on_channel_added.format
295
+ # @param [String] webhooks_on_channel_destroyed_url The
296
+ # webhooks.on_channel_destroyed.url
297
+ # @param [String] webhooks_on_channel_destroyed_method The
298
+ # webhooks.on_channel_destroyed.method
299
+ # @param [String] webhooks_on_channel_destroyed_format The
300
+ # webhooks.on_channel_destroyed.format
301
+ # @param [String] webhooks_on_channel_updated_url The
302
+ # webhooks.on_channel_updated.url
303
+ # @param [String] webhooks_on_channel_updated_method The
304
+ # webhooks.on_channel_updated.method
305
+ # @param [String] webhooks_on_channel_updated_format The
306
+ # webhooks.on_channel_updated.format
307
+ # @param [String] webhooks_on_member_added_url The webhooks.on_member_added.url
308
+ # @param [String] webhooks_on_member_added_method The
309
+ # webhooks.on_member_added.method
310
+ # @param [String] webhooks_on_member_added_format The
311
+ # webhooks.on_member_added.format
312
+ # @param [String] webhooks_on_member_removed_url The
313
+ # webhooks.on_member_removed.url
314
+ # @param [String] webhooks_on_member_removed_method The
315
+ # webhooks.on_member_removed.method
316
+ # @param [String] webhooks_on_member_removed_format The
317
+ # webhooks.on_member_removed.format
318
+ # @param [String] limits_channel_members The limits.channel_members
319
+ # @param [String] limits_user_channels The limits.user_channels
320
+ # @return [ServiceInstance] Updated ServiceInstance
321
+ 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_send_format: :unset, webhooks_on_message_update_url: :unset, webhooks_on_message_update_method: :unset, webhooks_on_message_update_format: :unset, webhooks_on_message_remove_url: :unset, webhooks_on_message_remove_method: :unset, webhooks_on_message_remove_format: :unset, webhooks_on_channel_add_url: :unset, webhooks_on_channel_add_method: :unset, webhooks_on_channel_add_format: :unset, webhooks_on_channel_destroy_url: :unset, webhooks_on_channel_destroy_method: :unset, webhooks_on_channel_destroy_format: :unset, webhooks_on_channel_update_url: :unset, webhooks_on_channel_update_method: :unset, webhooks_on_channel_update_format: :unset, webhooks_on_member_add_url: :unset, webhooks_on_member_add_method: :unset, webhooks_on_member_add_format: :unset, webhooks_on_member_remove_url: :unset, webhooks_on_member_remove_method: :unset, webhooks_on_member_remove_format: :unset, webhooks_on_message_sent_url: :unset, webhooks_on_message_sent_method: :unset, webhooks_on_message_sent_format: :unset, webhooks_on_message_updated_url: :unset, webhooks_on_message_updated_method: :unset, webhooks_on_message_updated_format: :unset, webhooks_on_message_removed_url: :unset, webhooks_on_message_removed_method: :unset, webhooks_on_message_removed_format: :unset, webhooks_on_channel_added_url: :unset, webhooks_on_channel_added_method: :unset, webhooks_on_channel_added_format: :unset, webhooks_on_channel_destroyed_url: :unset, webhooks_on_channel_destroyed_method: :unset, webhooks_on_channel_destroyed_format: :unset, webhooks_on_channel_updated_url: :unset, webhooks_on_channel_updated_method: :unset, webhooks_on_channel_updated_format: :unset, webhooks_on_member_added_url: :unset, webhooks_on_member_added_method: :unset, webhooks_on_member_added_format: :unset, webhooks_on_member_removed_url: :unset, webhooks_on_member_removed_method: :unset, webhooks_on_member_removed_format: :unset, limits_channel_members: :unset, limits_user_channels: :unset)
322
+ data = Twilio::Values.of({
323
+ 'FriendlyName' => friendly_name,
324
+ 'DefaultServiceRoleSid' => default_service_role_sid,
325
+ 'DefaultChannelRoleSid' => default_channel_role_sid,
326
+ 'DefaultChannelCreatorRoleSid' => default_channel_creator_role_sid,
327
+ 'ReadStatusEnabled' => read_status_enabled,
328
+ 'ReachabilityEnabled' => reachability_enabled,
329
+ 'TypingIndicatorTimeout' => typing_indicator_timeout,
330
+ 'ConsumptionReportInterval' => consumption_report_interval,
331
+ 'Notifications.NewMessage.Enabled' => notifications_new_message_enabled,
332
+ 'Notifications.NewMessage.Template' => notifications_new_message_template,
333
+ 'Notifications.AddedToChannel.Enabled' => notifications_added_to_channel_enabled,
334
+ 'Notifications.AddedToChannel.Template' => notifications_added_to_channel_template,
335
+ 'Notifications.RemovedFromChannel.Enabled' => notifications_removed_from_channel_enabled,
336
+ 'Notifications.RemovedFromChannel.Template' => notifications_removed_from_channel_template,
337
+ 'Notifications.InvitedToChannel.Enabled' => notifications_invited_to_channel_enabled,
338
+ 'Notifications.InvitedToChannel.Template' => notifications_invited_to_channel_template,
339
+ 'PreWebhookUrl' => pre_webhook_url,
340
+ 'PostWebhookUrl' => post_webhook_url,
341
+ 'WebhookMethod' => webhook_method,
342
+ 'WebhookFilters' => Twilio.serialize_list(webhook_filters) { |e| e },
343
+ 'Webhooks.OnMessageSend.Url' => webhooks_on_message_send_url,
344
+ 'Webhooks.OnMessageSend.Method' => webhooks_on_message_send_method,
345
+ 'Webhooks.OnMessageSend.Format' => webhooks_on_message_send_format,
346
+ 'Webhooks.OnMessageUpdate.Url' => webhooks_on_message_update_url,
347
+ 'Webhooks.OnMessageUpdate.Method' => webhooks_on_message_update_method,
348
+ 'Webhooks.OnMessageUpdate.Format' => webhooks_on_message_update_format,
349
+ 'Webhooks.OnMessageRemove.Url' => webhooks_on_message_remove_url,
350
+ 'Webhooks.OnMessageRemove.Method' => webhooks_on_message_remove_method,
351
+ 'Webhooks.OnMessageRemove.Format' => webhooks_on_message_remove_format,
352
+ 'Webhooks.OnChannelAdd.Url' => webhooks_on_channel_add_url,
353
+ 'Webhooks.OnChannelAdd.Method' => webhooks_on_channel_add_method,
354
+ 'Webhooks.OnChannelAdd.Format' => webhooks_on_channel_add_format,
355
+ 'Webhooks.OnChannelDestroy.Url' => webhooks_on_channel_destroy_url,
356
+ 'Webhooks.OnChannelDestroy.Method' => webhooks_on_channel_destroy_method,
357
+ 'Webhooks.OnChannelDestroy.Format' => webhooks_on_channel_destroy_format,
358
+ 'Webhooks.OnChannelUpdate.Url' => webhooks_on_channel_update_url,
359
+ 'Webhooks.OnChannelUpdate.Method' => webhooks_on_channel_update_method,
360
+ 'Webhooks.OnChannelUpdate.Format' => webhooks_on_channel_update_format,
361
+ 'Webhooks.OnMemberAdd.Url' => webhooks_on_member_add_url,
362
+ 'Webhooks.OnMemberAdd.Method' => webhooks_on_member_add_method,
363
+ 'Webhooks.OnMemberAdd.Format' => webhooks_on_member_add_format,
364
+ 'Webhooks.OnMemberRemove.Url' => webhooks_on_member_remove_url,
365
+ 'Webhooks.OnMemberRemove.Method' => webhooks_on_member_remove_method,
366
+ 'Webhooks.OnMemberRemove.Format' => webhooks_on_member_remove_format,
367
+ 'Webhooks.OnMessageSent.Url' => webhooks_on_message_sent_url,
368
+ 'Webhooks.OnMessageSent.Method' => webhooks_on_message_sent_method,
369
+ 'Webhooks.OnMessageSent.Format' => webhooks_on_message_sent_format,
370
+ 'Webhooks.OnMessageUpdated.Url' => webhooks_on_message_updated_url,
371
+ 'Webhooks.OnMessageUpdated.Method' => webhooks_on_message_updated_method,
372
+ 'Webhooks.OnMessageUpdated.Format' => webhooks_on_message_updated_format,
373
+ 'Webhooks.OnMessageRemoved.Url' => webhooks_on_message_removed_url,
374
+ 'Webhooks.OnMessageRemoved.Method' => webhooks_on_message_removed_method,
375
+ 'Webhooks.OnMessageRemoved.Format' => webhooks_on_message_removed_format,
376
+ 'Webhooks.OnChannelAdded.Url' => webhooks_on_channel_added_url,
377
+ 'Webhooks.OnChannelAdded.Method' => webhooks_on_channel_added_method,
378
+ 'Webhooks.OnChannelAdded.Format' => webhooks_on_channel_added_format,
379
+ 'Webhooks.OnChannelDestroyed.Url' => webhooks_on_channel_destroyed_url,
380
+ 'Webhooks.OnChannelDestroyed.Method' => webhooks_on_channel_destroyed_method,
381
+ 'Webhooks.OnChannelDestroyed.Format' => webhooks_on_channel_destroyed_format,
382
+ 'Webhooks.OnChannelUpdated.Url' => webhooks_on_channel_updated_url,
383
+ 'Webhooks.OnChannelUpdated.Method' => webhooks_on_channel_updated_method,
384
+ 'Webhooks.OnChannelUpdated.Format' => webhooks_on_channel_updated_format,
385
+ 'Webhooks.OnMemberAdded.Url' => webhooks_on_member_added_url,
386
+ 'Webhooks.OnMemberAdded.Method' => webhooks_on_member_added_method,
387
+ 'Webhooks.OnMemberAdded.Format' => webhooks_on_member_added_format,
388
+ 'Webhooks.OnMemberRemoved.Url' => webhooks_on_member_removed_url,
389
+ 'Webhooks.OnMemberRemoved.Method' => webhooks_on_member_removed_method,
390
+ 'Webhooks.OnMemberRemoved.Format' => webhooks_on_member_removed_format,
391
+ 'Limits.ChannelMembers' => limits_channel_members,
392
+ 'Limits.UserChannels' => limits_user_channels,
393
+ })
394
+
395
+ payload = @version.update(
396
+ 'POST',
397
+ @uri,
398
+ data: data,
399
+ )
400
+
401
+ ServiceInstance.new(@version, payload, sid: @solution[:sid], )
402
+ end
403
+
404
+ ##
405
+ # Access the channels
406
+ # @return [ChannelList]
407
+ # @return [ChannelContext] if sid was passed.
408
+ def channels(sid=:unset)
409
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
410
+
411
+ if sid != :unset
412
+ return ChannelContext.new(@version, @solution[:sid], sid, )
413
+ end
414
+
415
+ unless @channels
416
+ @channels = ChannelList.new(@version, service_sid: @solution[:sid], )
417
+ end
418
+
419
+ @channels
420
+ end
421
+
422
+ ##
423
+ # Access the roles
424
+ # @return [RoleList]
425
+ # @return [RoleContext] if sid was passed.
426
+ def roles(sid=:unset)
427
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
428
+
429
+ if sid != :unset
430
+ return RoleContext.new(@version, @solution[:sid], sid, )
431
+ end
432
+
433
+ unless @roles
434
+ @roles = RoleList.new(@version, service_sid: @solution[:sid], )
435
+ end
436
+
437
+ @roles
438
+ end
439
+
440
+ ##
441
+ # Access the users
442
+ # @return [UserList]
443
+ # @return [UserContext] if sid was passed.
444
+ def users(sid=:unset)
445
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
446
+
447
+ if sid != :unset
448
+ return UserContext.new(@version, @solution[:sid], sid, )
449
+ end
450
+
451
+ unless @users
452
+ @users = UserList.new(@version, service_sid: @solution[:sid], )
453
+ end
454
+
455
+ @users
456
+ end
457
+
458
+ ##
459
+ # Provide a user friendly representation
460
+ def to_s
461
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
462
+ "#<Twilio.IpMessaging.V1.ServiceContext #{context}>"
463
+ end
464
+ end
465
+
466
+ class ServiceInstance < InstanceResource
467
+ ##
468
+ # Initialize the ServiceInstance
469
+ # @param [Version] version Version that contains the resource
470
+ # @param [Hash] payload payload that contains response from Twilio
471
+ # @param [String] sid The sid
472
+ # @return [ServiceInstance] ServiceInstance
473
+ def initialize(version, payload, sid: nil)
474
+ super(version)
475
+
476
+ # Marshaled Properties
477
+ @properties = {
478
+ 'sid' => payload['sid'],
479
+ 'account_sid' => payload['account_sid'],
480
+ 'friendly_name' => payload['friendly_name'],
481
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
482
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
483
+ 'default_service_role_sid' => payload['default_service_role_sid'],
484
+ 'default_channel_role_sid' => payload['default_channel_role_sid'],
485
+ 'default_channel_creator_role_sid' => payload['default_channel_creator_role_sid'],
486
+ 'read_status_enabled' => payload['read_status_enabled'],
487
+ 'reachability_enabled' => payload['reachability_enabled'],
488
+ 'typing_indicator_timeout' => payload['typing_indicator_timeout'].to_i,
489
+ 'consumption_report_interval' => payload['consumption_report_interval'].to_i,
490
+ 'limits' => payload['limits'],
491
+ 'webhooks' => payload['webhooks'],
492
+ 'pre_webhook_url' => payload['pre_webhook_url'],
493
+ 'post_webhook_url' => payload['post_webhook_url'],
494
+ 'webhook_method' => payload['webhook_method'],
495
+ 'webhook_filters' => payload['webhook_filters'],
496
+ 'notifications' => payload['notifications'],
497
+ 'url' => payload['url'],
498
+ 'links' => payload['links'],
499
+ }
500
+
501
+ # Context
502
+ @instance_context = nil
503
+ @params = {'sid' => sid || @properties['sid'], }
504
+ end
505
+
506
+ ##
507
+ # Generate an instance context for the instance, the context is capable of
508
+ # performing various actions. All instance actions are proxied to the context
509
+ # @return [ServiceContext] ServiceContext for this ServiceInstance
510
+ def context
511
+ unless @instance_context
512
+ @instance_context = ServiceContext.new(@version, @params['sid'], )
513
+ end
514
+ @instance_context
515
+ end
516
+
517
+ ##
518
+ # @return [String] The sid
519
+ def sid
520
+ @properties['sid']
521
+ end
522
+
523
+ ##
524
+ # @return [String] The account_sid
525
+ def account_sid
526
+ @properties['account_sid']
527
+ end
528
+
529
+ ##
530
+ # @return [String] The friendly_name
531
+ def friendly_name
532
+ @properties['friendly_name']
533
+ end
534
+
535
+ ##
536
+ # @return [Time] The date_created
537
+ def date_created
538
+ @properties['date_created']
539
+ end
540
+
541
+ ##
542
+ # @return [Time] The date_updated
543
+ def date_updated
544
+ @properties['date_updated']
545
+ end
546
+
547
+ ##
548
+ # @return [String] The default_service_role_sid
549
+ def default_service_role_sid
550
+ @properties['default_service_role_sid']
551
+ end
552
+
553
+ ##
554
+ # @return [String] The default_channel_role_sid
555
+ def default_channel_role_sid
556
+ @properties['default_channel_role_sid']
557
+ end
558
+
559
+ ##
560
+ # @return [String] The default_channel_creator_role_sid
561
+ def default_channel_creator_role_sid
562
+ @properties['default_channel_creator_role_sid']
563
+ end
564
+
565
+ ##
566
+ # @return [Boolean] The read_status_enabled
567
+ def read_status_enabled
568
+ @properties['read_status_enabled']
569
+ end
570
+
571
+ ##
572
+ # @return [Boolean] The reachability_enabled
573
+ def reachability_enabled
574
+ @properties['reachability_enabled']
575
+ end
576
+
577
+ ##
578
+ # @return [String] The typing_indicator_timeout
579
+ def typing_indicator_timeout
580
+ @properties['typing_indicator_timeout']
581
+ end
582
+
583
+ ##
584
+ # @return [String] The consumption_report_interval
585
+ def consumption_report_interval
586
+ @properties['consumption_report_interval']
587
+ end
588
+
589
+ ##
590
+ # @return [Hash] The limits
591
+ def limits
592
+ @properties['limits']
593
+ end
594
+
595
+ ##
596
+ # @return [Hash] The webhooks
597
+ def webhooks
598
+ @properties['webhooks']
599
+ end
600
+
601
+ ##
602
+ # @return [String] The pre_webhook_url
603
+ def pre_webhook_url
604
+ @properties['pre_webhook_url']
605
+ end
606
+
607
+ ##
608
+ # @return [String] The post_webhook_url
609
+ def post_webhook_url
610
+ @properties['post_webhook_url']
611
+ end
612
+
613
+ ##
614
+ # @return [String] The webhook_method
615
+ def webhook_method
616
+ @properties['webhook_method']
617
+ end
618
+
619
+ ##
620
+ # @return [String] The webhook_filters
621
+ def webhook_filters
622
+ @properties['webhook_filters']
623
+ end
624
+
625
+ ##
626
+ # @return [Hash] The notifications
627
+ def notifications
628
+ @properties['notifications']
629
+ end
630
+
631
+ ##
632
+ # @return [String] The url
633
+ def url
634
+ @properties['url']
635
+ end
636
+
637
+ ##
638
+ # @return [String] The links
639
+ def links
640
+ @properties['links']
641
+ end
642
+
643
+ ##
644
+ # Fetch a ServiceInstance
645
+ # @return [ServiceInstance] Fetched ServiceInstance
646
+ def fetch
647
+ context.fetch
648
+ end
649
+
650
+ ##
651
+ # Deletes the ServiceInstance
652
+ # @return [Boolean] true if delete succeeds, true otherwise
653
+ def delete
654
+ context.delete
655
+ end
656
+
657
+ ##
658
+ # Update the ServiceInstance
659
+ # @param [String] friendly_name The friendly_name
660
+ # @param [String] default_service_role_sid The default_service_role_sid
661
+ # @param [String] default_channel_role_sid The default_channel_role_sid
662
+ # @param [String] default_channel_creator_role_sid The
663
+ # default_channel_creator_role_sid
664
+ # @param [Boolean] read_status_enabled The read_status_enabled
665
+ # @param [Boolean] reachability_enabled The reachability_enabled
666
+ # @param [String] typing_indicator_timeout The typing_indicator_timeout
667
+ # @param [String] consumption_report_interval The consumption_report_interval
668
+ # @param [Boolean] notifications_new_message_enabled The
669
+ # notifications.new_message.enabled
670
+ # @param [String] notifications_new_message_template The
671
+ # notifications.new_message.template
672
+ # @param [Boolean] notifications_added_to_channel_enabled The
673
+ # notifications.added_to_channel.enabled
674
+ # @param [String] notifications_added_to_channel_template The
675
+ # notifications.added_to_channel.template
676
+ # @param [Boolean] notifications_removed_from_channel_enabled The
677
+ # notifications.removed_from_channel.enabled
678
+ # @param [String] notifications_removed_from_channel_template The
679
+ # notifications.removed_from_channel.template
680
+ # @param [Boolean] notifications_invited_to_channel_enabled The
681
+ # notifications.invited_to_channel.enabled
682
+ # @param [String] notifications_invited_to_channel_template The
683
+ # notifications.invited_to_channel.template
684
+ # @param [String] pre_webhook_url The pre_webhook_url
685
+ # @param [String] post_webhook_url The post_webhook_url
686
+ # @param [String] webhook_method The webhook_method
687
+ # @param [String] webhook_filters The webhook_filters
688
+ # @param [String] webhooks_on_message_send_url The webhooks.on_message_send.url
689
+ # @param [String] webhooks_on_message_send_method The
690
+ # webhooks.on_message_send.method
691
+ # @param [String] webhooks_on_message_send_format The
692
+ # webhooks.on_message_send.format
693
+ # @param [String] webhooks_on_message_update_url The
694
+ # webhooks.on_message_update.url
695
+ # @param [String] webhooks_on_message_update_method The
696
+ # webhooks.on_message_update.method
697
+ # @param [String] webhooks_on_message_update_format The
698
+ # webhooks.on_message_update.format
699
+ # @param [String] webhooks_on_message_remove_url The
700
+ # webhooks.on_message_remove.url
701
+ # @param [String] webhooks_on_message_remove_method The
702
+ # webhooks.on_message_remove.method
703
+ # @param [String] webhooks_on_message_remove_format The
704
+ # webhooks.on_message_remove.format
705
+ # @param [String] webhooks_on_channel_add_url The webhooks.on_channel_add.url
706
+ # @param [String] webhooks_on_channel_add_method The
707
+ # webhooks.on_channel_add.method
708
+ # @param [String] webhooks_on_channel_add_format The
709
+ # webhooks.on_channel_add.format
710
+ # @param [String] webhooks_on_channel_destroy_url The
711
+ # webhooks.on_channel_destroy.url
712
+ # @param [String] webhooks_on_channel_destroy_method The
713
+ # webhooks.on_channel_destroy.method
714
+ # @param [String] webhooks_on_channel_destroy_format The
715
+ # webhooks.on_channel_destroy.format
716
+ # @param [String] webhooks_on_channel_update_url The
717
+ # webhooks.on_channel_update.url
718
+ # @param [String] webhooks_on_channel_update_method The
719
+ # webhooks.on_channel_update.method
720
+ # @param [String] webhooks_on_channel_update_format The
721
+ # webhooks.on_channel_update.format
722
+ # @param [String] webhooks_on_member_add_url The webhooks.on_member_add.url
723
+ # @param [String] webhooks_on_member_add_method The webhooks.on_member_add.method
724
+ # @param [String] webhooks_on_member_add_format The webhooks.on_member_add.format
725
+ # @param [String] webhooks_on_member_remove_url The webhooks.on_member_remove.url
726
+ # @param [String] webhooks_on_member_remove_method The
727
+ # webhooks.on_member_remove.method
728
+ # @param [String] webhooks_on_member_remove_format The
729
+ # webhooks.on_member_remove.format
730
+ # @param [String] webhooks_on_message_sent_url The webhooks.on_message_sent.url
731
+ # @param [String] webhooks_on_message_sent_method The
732
+ # webhooks.on_message_sent.method
733
+ # @param [String] webhooks_on_message_sent_format The
734
+ # webhooks.on_message_sent.format
735
+ # @param [String] webhooks_on_message_updated_url The
736
+ # webhooks.on_message_updated.url
737
+ # @param [String] webhooks_on_message_updated_method The
738
+ # webhooks.on_message_updated.method
739
+ # @param [String] webhooks_on_message_updated_format The
740
+ # webhooks.on_message_updated.format
741
+ # @param [String] webhooks_on_message_removed_url The
742
+ # webhooks.on_message_removed.url
743
+ # @param [String] webhooks_on_message_removed_method The
744
+ # webhooks.on_message_removed.method
745
+ # @param [String] webhooks_on_message_removed_format The
746
+ # webhooks.on_message_removed.format
747
+ # @param [String] webhooks_on_channel_added_url The webhooks.on_channel_added.url
748
+ # @param [String] webhooks_on_channel_added_method The
749
+ # webhooks.on_channel_added.method
750
+ # @param [String] webhooks_on_channel_added_format The
751
+ # webhooks.on_channel_added.format
752
+ # @param [String] webhooks_on_channel_destroyed_url The
753
+ # webhooks.on_channel_destroyed.url
754
+ # @param [String] webhooks_on_channel_destroyed_method The
755
+ # webhooks.on_channel_destroyed.method
756
+ # @param [String] webhooks_on_channel_destroyed_format The
757
+ # webhooks.on_channel_destroyed.format
758
+ # @param [String] webhooks_on_channel_updated_url The
759
+ # webhooks.on_channel_updated.url
760
+ # @param [String] webhooks_on_channel_updated_method The
761
+ # webhooks.on_channel_updated.method
762
+ # @param [String] webhooks_on_channel_updated_format The
763
+ # webhooks.on_channel_updated.format
764
+ # @param [String] webhooks_on_member_added_url The webhooks.on_member_added.url
765
+ # @param [String] webhooks_on_member_added_method The
766
+ # webhooks.on_member_added.method
767
+ # @param [String] webhooks_on_member_added_format The
768
+ # webhooks.on_member_added.format
769
+ # @param [String] webhooks_on_member_removed_url The
770
+ # webhooks.on_member_removed.url
771
+ # @param [String] webhooks_on_member_removed_method The
772
+ # webhooks.on_member_removed.method
773
+ # @param [String] webhooks_on_member_removed_format The
774
+ # webhooks.on_member_removed.format
775
+ # @param [String] limits_channel_members The limits.channel_members
776
+ # @param [String] limits_user_channels The limits.user_channels
777
+ # @return [ServiceInstance] Updated ServiceInstance
778
+ 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_send_format: :unset, webhooks_on_message_update_url: :unset, webhooks_on_message_update_method: :unset, webhooks_on_message_update_format: :unset, webhooks_on_message_remove_url: :unset, webhooks_on_message_remove_method: :unset, webhooks_on_message_remove_format: :unset, webhooks_on_channel_add_url: :unset, webhooks_on_channel_add_method: :unset, webhooks_on_channel_add_format: :unset, webhooks_on_channel_destroy_url: :unset, webhooks_on_channel_destroy_method: :unset, webhooks_on_channel_destroy_format: :unset, webhooks_on_channel_update_url: :unset, webhooks_on_channel_update_method: :unset, webhooks_on_channel_update_format: :unset, webhooks_on_member_add_url: :unset, webhooks_on_member_add_method: :unset, webhooks_on_member_add_format: :unset, webhooks_on_member_remove_url: :unset, webhooks_on_member_remove_method: :unset, webhooks_on_member_remove_format: :unset, webhooks_on_message_sent_url: :unset, webhooks_on_message_sent_method: :unset, webhooks_on_message_sent_format: :unset, webhooks_on_message_updated_url: :unset, webhooks_on_message_updated_method: :unset, webhooks_on_message_updated_format: :unset, webhooks_on_message_removed_url: :unset, webhooks_on_message_removed_method: :unset, webhooks_on_message_removed_format: :unset, webhooks_on_channel_added_url: :unset, webhooks_on_channel_added_method: :unset, webhooks_on_channel_added_format: :unset, webhooks_on_channel_destroyed_url: :unset, webhooks_on_channel_destroyed_method: :unset, webhooks_on_channel_destroyed_format: :unset, webhooks_on_channel_updated_url: :unset, webhooks_on_channel_updated_method: :unset, webhooks_on_channel_updated_format: :unset, webhooks_on_member_added_url: :unset, webhooks_on_member_added_method: :unset, webhooks_on_member_added_format: :unset, webhooks_on_member_removed_url: :unset, webhooks_on_member_removed_method: :unset, webhooks_on_member_removed_format: :unset, limits_channel_members: :unset, limits_user_channels: :unset)
779
+ context.update(
780
+ friendly_name: friendly_name,
781
+ default_service_role_sid: default_service_role_sid,
782
+ default_channel_role_sid: default_channel_role_sid,
783
+ default_channel_creator_role_sid: default_channel_creator_role_sid,
784
+ read_status_enabled: read_status_enabled,
785
+ reachability_enabled: reachability_enabled,
786
+ typing_indicator_timeout: typing_indicator_timeout,
787
+ consumption_report_interval: consumption_report_interval,
788
+ notifications_new_message_enabled: notifications_new_message_enabled,
789
+ notifications_new_message_template: notifications_new_message_template,
790
+ notifications_added_to_channel_enabled: notifications_added_to_channel_enabled,
791
+ notifications_added_to_channel_template: notifications_added_to_channel_template,
792
+ notifications_removed_from_channel_enabled: notifications_removed_from_channel_enabled,
793
+ notifications_removed_from_channel_template: notifications_removed_from_channel_template,
794
+ notifications_invited_to_channel_enabled: notifications_invited_to_channel_enabled,
795
+ notifications_invited_to_channel_template: notifications_invited_to_channel_template,
796
+ pre_webhook_url: pre_webhook_url,
797
+ post_webhook_url: post_webhook_url,
798
+ webhook_method: webhook_method,
799
+ webhook_filters: webhook_filters,
800
+ webhooks_on_message_send_url: webhooks_on_message_send_url,
801
+ webhooks_on_message_send_method: webhooks_on_message_send_method,
802
+ webhooks_on_message_send_format: webhooks_on_message_send_format,
803
+ webhooks_on_message_update_url: webhooks_on_message_update_url,
804
+ webhooks_on_message_update_method: webhooks_on_message_update_method,
805
+ webhooks_on_message_update_format: webhooks_on_message_update_format,
806
+ webhooks_on_message_remove_url: webhooks_on_message_remove_url,
807
+ webhooks_on_message_remove_method: webhooks_on_message_remove_method,
808
+ webhooks_on_message_remove_format: webhooks_on_message_remove_format,
809
+ webhooks_on_channel_add_url: webhooks_on_channel_add_url,
810
+ webhooks_on_channel_add_method: webhooks_on_channel_add_method,
811
+ webhooks_on_channel_add_format: webhooks_on_channel_add_format,
812
+ webhooks_on_channel_destroy_url: webhooks_on_channel_destroy_url,
813
+ webhooks_on_channel_destroy_method: webhooks_on_channel_destroy_method,
814
+ webhooks_on_channel_destroy_format: webhooks_on_channel_destroy_format,
815
+ webhooks_on_channel_update_url: webhooks_on_channel_update_url,
816
+ webhooks_on_channel_update_method: webhooks_on_channel_update_method,
817
+ webhooks_on_channel_update_format: webhooks_on_channel_update_format,
818
+ webhooks_on_member_add_url: webhooks_on_member_add_url,
819
+ webhooks_on_member_add_method: webhooks_on_member_add_method,
820
+ webhooks_on_member_add_format: webhooks_on_member_add_format,
821
+ webhooks_on_member_remove_url: webhooks_on_member_remove_url,
822
+ webhooks_on_member_remove_method: webhooks_on_member_remove_method,
823
+ webhooks_on_member_remove_format: webhooks_on_member_remove_format,
824
+ webhooks_on_message_sent_url: webhooks_on_message_sent_url,
825
+ webhooks_on_message_sent_method: webhooks_on_message_sent_method,
826
+ webhooks_on_message_sent_format: webhooks_on_message_sent_format,
827
+ webhooks_on_message_updated_url: webhooks_on_message_updated_url,
828
+ webhooks_on_message_updated_method: webhooks_on_message_updated_method,
829
+ webhooks_on_message_updated_format: webhooks_on_message_updated_format,
830
+ webhooks_on_message_removed_url: webhooks_on_message_removed_url,
831
+ webhooks_on_message_removed_method: webhooks_on_message_removed_method,
832
+ webhooks_on_message_removed_format: webhooks_on_message_removed_format,
833
+ webhooks_on_channel_added_url: webhooks_on_channel_added_url,
834
+ webhooks_on_channel_added_method: webhooks_on_channel_added_method,
835
+ webhooks_on_channel_added_format: webhooks_on_channel_added_format,
836
+ webhooks_on_channel_destroyed_url: webhooks_on_channel_destroyed_url,
837
+ webhooks_on_channel_destroyed_method: webhooks_on_channel_destroyed_method,
838
+ webhooks_on_channel_destroyed_format: webhooks_on_channel_destroyed_format,
839
+ webhooks_on_channel_updated_url: webhooks_on_channel_updated_url,
840
+ webhooks_on_channel_updated_method: webhooks_on_channel_updated_method,
841
+ webhooks_on_channel_updated_format: webhooks_on_channel_updated_format,
842
+ webhooks_on_member_added_url: webhooks_on_member_added_url,
843
+ webhooks_on_member_added_method: webhooks_on_member_added_method,
844
+ webhooks_on_member_added_format: webhooks_on_member_added_format,
845
+ webhooks_on_member_removed_url: webhooks_on_member_removed_url,
846
+ webhooks_on_member_removed_method: webhooks_on_member_removed_method,
847
+ webhooks_on_member_removed_format: webhooks_on_member_removed_format,
848
+ limits_channel_members: limits_channel_members,
849
+ limits_user_channels: limits_user_channels,
850
+ )
851
+ end
852
+
853
+ ##
854
+ # Access the channels
855
+ # @return [channels] channels
856
+ def channels
857
+ context.channels
858
+ end
859
+
860
+ ##
861
+ # Access the roles
862
+ # @return [roles] roles
863
+ def roles
864
+ context.roles
865
+ end
866
+
867
+ ##
868
+ # Access the users
869
+ # @return [users] users
870
+ def users
871
+ context.users
872
+ end
873
+
874
+ ##
875
+ # Provide a user friendly representation
876
+ def to_s
877
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
878
+ "<Twilio.IpMessaging.V1.ServiceInstance #{values}>"
879
+ end
880
+
881
+ ##
882
+ # Provide a detailed, user friendly representation
883
+ def inspect
884
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
885
+ "<Twilio.IpMessaging.V1.ServiceInstance #{values}>"
886
+ end
887
+ end
888
+ end
889
+ end
890
+ end
891
+ end