twilio-ruby 5.0.0.alpha1 → 5.0.0.rc2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (493) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +11 -2
  3. data/AUTHORS.md +32 -46
  4. data/CHANGES.md +1 -124
  5. data/Gemfile +2 -2
  6. data/LICENSE.md +12 -12
  7. data/Makefile +2 -15
  8. data/README.md +37 -29
  9. data/Rakefile +0 -54
  10. data/examples/examples.rb +57 -46
  11. data/examples/{print_call_log.rb → print-call-log.rb} +7 -7
  12. data/lib/rack/twilio_webhook_authentication.rb +6 -5
  13. data/lib/twilio-ruby.rb +16 -17
  14. data/lib/twilio-ruby/compatibility/v2010/account/call/feedback.rb +15 -0
  15. data/lib/twilio-ruby/compatibility/v2010/account/queue/member.rb +23 -0
  16. data/lib/twilio-ruby/framework/domain.rb +2 -2
  17. data/lib/twilio-ruby/framework/exception.rb +14 -0
  18. data/lib/twilio-ruby/framework/helper.rb +1 -1
  19. data/lib/twilio-ruby/framework/page.rb +30 -28
  20. data/lib/twilio-ruby/framework/resource.rb +2 -2
  21. data/lib/twilio-ruby/framework/serialize.rb +7 -58
  22. data/lib/twilio-ruby/framework/twilio_response.rb +1 -1
  23. data/lib/twilio-ruby/framework/version.rb +48 -43
  24. data/lib/twilio-ruby/http/http_client.rb +8 -8
  25. data/lib/twilio-ruby/rest/api.rb +33 -141
  26. data/lib/twilio-ruby/rest/api/v2010.rb +31 -50
  27. data/lib/twilio-ruby/rest/api/v2010/account.rb +239 -389
  28. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +122 -145
  29. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +56 -76
  30. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +127 -144
  31. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +83 -85
  32. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +97 -92
  33. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +77 -142
  34. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +77 -142
  35. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +77 -142
  36. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +184 -232
  37. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +84 -73
  38. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +80 -85
  39. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +115 -126
  40. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +99 -114
  41. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +112 -150
  42. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +109 -228
  43. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +98 -101
  44. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +164 -287
  45. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +90 -152
  46. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +90 -152
  47. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +90 -152
  48. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +138 -195
  49. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +100 -90
  50. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +106 -118
  51. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +105 -96
  52. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +117 -119
  53. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +95 -84
  54. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +103 -194
  55. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +93 -100
  56. data/lib/twilio-ruby/rest/api/v2010/account/sandbox.rb +304 -0
  57. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +30 -42
  58. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +113 -111
  59. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +115 -104
  60. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +133 -159
  61. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +96 -94
  62. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +96 -94
  63. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +114 -111
  64. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +113 -108
  65. data/lib/twilio-ruby/rest/api/v2010/account/sms.rb +140 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/sms/short_code.rb +431 -0
  67. data/lib/twilio-ruby/rest/api/v2010/account/sms/sms_message.rb +467 -0
  68. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +34 -41
  69. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +90 -98
  70. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +24 -21
  71. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +118 -139
  72. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +62 -106
  73. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +62 -106
  74. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +62 -106
  75. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +62 -106
  76. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +62 -106
  77. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +62 -106
  78. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +62 -106
  79. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +62 -106
  80. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +124 -130
  81. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +31 -35
  82. data/lib/twilio-ruby/rest/client.rb +88 -249
  83. data/lib/twilio-ruby/rest/{accounts.rb → conversations.rb} +14 -16
  84. data/lib/twilio-ruby/rest/conversations/v1.rb +35 -0
  85. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +270 -0
  86. data/lib/twilio-ruby/rest/{notify/v1/service/segment.rb → conversations/v1/conversation/completed.rb} +101 -101
  87. data/lib/twilio-ruby/rest/{preview/bulk_exports/export/day.rb → conversations/v1/conversation/in_progress.rb} +109 -95
  88. data/lib/twilio-ruby/rest/{messaging/v1/service/phone_number.rb → conversations/v1/conversation/participant.rb} +171 -178
  89. data/lib/twilio-ruby/rest/ip_messaging.rb +11 -26
  90. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +7 -19
  91. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +112 -113
  92. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +131 -542
  93. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +132 -194
  94. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +103 -159
  95. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +102 -183
  96. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +112 -107
  97. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +113 -186
  98. data/lib/twilio-ruby/rest/lookups.rb +8 -12
  99. data/lib/twilio-ruby/rest/lookups/v1.rb +7 -13
  100. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +54 -71
  101. data/lib/twilio-ruby/rest/monitor.rb +11 -19
  102. data/lib/twilio-ruby/rest/monitor/v1.rb +7 -19
  103. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +133 -121
  104. data/lib/twilio-ruby/rest/monitor/v1/event.rb +127 -116
  105. data/lib/twilio-ruby/rest/pricing.rb +11 -17
  106. data/lib/twilio-ruby/rest/pricing/v1.rb +9 -21
  107. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +23 -27
  108. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +74 -71
  109. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +23 -27
  110. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +79 -69
  111. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +27 -33
  112. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +74 -71
  113. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +52 -47
  114. data/lib/twilio-ruby/rest/taskrouter.rb +8 -12
  115. data/lib/twilio-ruby/rest/taskrouter/v1.rb +5 -11
  116. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +153 -260
  117. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +114 -115
  118. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +101 -105
  119. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +139 -216
  120. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +106 -194
  121. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +145 -187
  122. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +65 -57
  123. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +57 -62
  124. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +135 -217
  125. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +60 -54
  126. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +56 -52
  127. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +123 -140
  128. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +61 -57
  129. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +72 -52
  130. data/lib/twilio-ruby/rest/trunking.rb +8 -12
  131. data/lib/twilio-ruby/rest/trunking/v1.rb +5 -11
  132. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +134 -157
  133. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +93 -89
  134. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +93 -89
  135. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +111 -114
  136. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +112 -146
  137. data/lib/twilio-ruby/task_router.rb +0 -0
  138. data/lib/twilio-ruby/task_router/capability.rb +87 -0
  139. data/lib/twilio-ruby/twiml/response.rb +16 -0
  140. data/lib/twilio-ruby/util.rb +1 -1
  141. data/lib/twilio-ruby/util/access_token.rb +70 -0
  142. data/lib/twilio-ruby/util/capability.rb +64 -0
  143. data/lib/twilio-ruby/util/client_config.rb +29 -0
  144. data/lib/twilio-ruby/{security → util}/request_validator.rb +4 -21
  145. data/lib/twilio-ruby/version.rb +1 -1
  146. data/spec/holodeck/holodeck.rb +6 -6
  147. data/spec/holodeck/hologram.rb +1 -0
  148. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +8 -8
  149. data/spec/integration/api/v2010/account/address_spec.rb +29 -37
  150. data/spec/integration/api/v2010/account/application_spec.rb +29 -29
  151. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +13 -13
  152. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +8 -9
  153. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +8 -9
  154. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +8 -9
  155. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +13 -13
  156. data/spec/integration/api/v2010/account/call/feedback_spec.rb +17 -17
  157. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +19 -19
  158. data/spec/integration/api/v2010/account/call/notification_spec.rb +18 -18
  159. data/spec/integration/api/v2010/account/call/recording_spec.rb +20 -32
  160. data/spec/integration/api/v2010/account/call_spec.rb +29 -29
  161. data/spec/integration/api/v2010/account/conference/participant_spec.rb +35 -107
  162. data/spec/integration/api/v2010/account/conference_spec.rb +19 -58
  163. data/spec/integration/api/v2010/account/connect_app_spec.rb +18 -18
  164. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +14 -16
  165. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +14 -16
  166. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +14 -16
  167. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +29 -41
  168. data/spec/integration/api/v2010/account/message/media_spec.rb +18 -18
  169. data/spec/integration/api/v2010/account/message_spec.rb +35 -41
  170. data/spec/integration/api/v2010/account/notification_spec.rb +18 -18
  171. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +23 -23
  172. data/spec/integration/api/v2010/account/queue/member_spec.rb +18 -18
  173. data/spec/integration/api/v2010/account/queue_spec.rb +32 -35
  174. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +18 -18
  175. data/spec/integration/api/v2010/account/recording_spec.rb +21 -42
  176. data/spec/integration/api/v2010/account/sandbox_spec.rb +99 -0
  177. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +36 -32
  178. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +29 -29
  179. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +24 -24
  180. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +24 -24
  181. data/spec/integration/api/v2010/account/sip/domain_spec.rb +29 -29
  182. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +36 -32
  183. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +29 -29
  184. data/spec/integration/api/v2010/account/sip_spec.rb +1 -1
  185. data/spec/integration/api/v2010/account/{short_code_spec.rb → sms/short_code_spec.rb} +25 -18
  186. data/spec/integration/api/v2010/account/sms/sms_message_spec.rb +275 -0
  187. data/spec/integration/{accounts/v1/credential_spec.rb → api/v2010/account/sms_spec.rb} +2 -2
  188. data/spec/integration/api/v2010/account/token_spec.rb +7 -7
  189. data/spec/integration/api/v2010/account/transcription_spec.rb +18 -18
  190. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +8 -8
  191. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +8 -8
  192. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +8 -8
  193. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +8 -8
  194. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +8 -8
  195. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +8 -8
  196. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +8 -8
  197. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +8 -8
  198. data/spec/integration/api/v2010/account/usage/record_spec.rb +8 -8
  199. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +32 -32
  200. data/spec/integration/api/v2010/account/usage_spec.rb +1 -1
  201. data/spec/integration/api/v2010/account/validation_request_spec.rb +4 -24
  202. data/spec/integration/api/v2010/account_spec.rb +28 -24
  203. data/spec/integration/conversations/v1/conversation/completed_spec.rb +89 -0
  204. data/spec/integration/conversations/v1/conversation/in_progress_spec.rb +89 -0
  205. data/spec/integration/conversations/v1/conversation/participant_spec.rb +174 -0
  206. data/spec/integration/conversations/v1/conversation_spec.rb +49 -0
  207. data/spec/integration/ip_messaging/v1/credential_spec.rb +24 -155
  208. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +13 -217
  209. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +10 -241
  210. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +23 -205
  211. data/spec/integration/ip_messaging/v1/service/role_spec.rb +19 -184
  212. data/spec/integration/ip_messaging/v1/service/user_spec.rb +24 -194
  213. data/spec/integration/ip_messaging/v1/service_spec.rb +17 -229
  214. data/spec/integration/lookups/v1/phone_number_spec.rb +6 -17
  215. data/spec/integration/monitor/v1/alert_spec.rb +60 -60
  216. data/spec/integration/monitor/v1/event_spec.rb +13 -13
  217. data/spec/integration/pricing/v1/messaging/country_spec.rb +7 -103
  218. data/spec/integration/pricing/v1/messaging_spec.rb +1 -1
  219. data/spec/integration/pricing/v1/phone_number/country_spec.rb +13 -13
  220. data/spec/integration/pricing/v1/phone_number_spec.rb +1 -1
  221. data/spec/integration/pricing/v1/voice/country_spec.rb +13 -13
  222. data/spec/integration/pricing/v1/voice/number_spec.rb +6 -6
  223. data/spec/integration/pricing/v1/voice_spec.rb +1 -1
  224. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +38 -34
  225. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +13 -13
  226. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +24 -21
  227. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +11 -13
  228. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +17 -18
  229. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +41 -57
  230. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +50 -113
  231. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +6 -7
  232. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +6 -7
  233. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +68 -96
  234. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +12 -14
  235. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +43 -54
  236. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +9 -11
  237. data/spec/integration/taskrouter/v1/workspace_spec.rb +51 -71
  238. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +24 -24
  239. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +66 -66
  240. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +28 -28
  241. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +23 -23
  242. data/spec/integration/trunking/v1/trunk_spec.rb +28 -28
  243. data/spec/rack/twilio_webhook_authentication_spec.rb +23 -19
  244. data/spec/spec_helper.rb +2 -2
  245. data/spec/support/fakeweb.rb +1 -1
  246. data/spec/task_router_spec.rb +114 -0
  247. data/spec/util/access_token_spec.rb +103 -0
  248. data/spec/util/capability_spec.rb +186 -0
  249. data/spec/util/client_config_spec.rb +21 -0
  250. data/spec/{security → util}/request_validator_spec.rb +5 -5
  251. data/twilio-ruby.gemspec +8 -12
  252. metadata +90 -416
  253. data/.rubocop.yml +0 -21
  254. data/.rubocop_todo.yml +0 -187
  255. data/VERSIONS.md +0 -64
  256. data/lib/twilio-ruby/framework/error.rb +0 -30
  257. data/lib/twilio-ruby/framework/values.rb +0 -7
  258. data/lib/twilio-ruby/jwt/access_token.rb +0 -232
  259. data/lib/twilio-ruby/jwt/client_capability.rb +0 -102
  260. data/lib/twilio-ruby/jwt/jwt.rb +0 -50
  261. data/lib/twilio-ruby/jwt/task_router.rb +0 -174
  262. data/lib/twilio-ruby/rest/accounts/v1.rb +0 -39
  263. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +0 -105
  264. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +0 -370
  265. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +0 -431
  266. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +0 -350
  267. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +0 -336
  268. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +0 -165
  269. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +0 -153
  270. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +0 -153
  271. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +0 -397
  272. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +0 -378
  273. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +0 -430
  274. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +0 -336
  275. data/lib/twilio-ruby/rest/chat.rb +0 -59
  276. data/lib/twilio-ruby/rest/chat/v1.rb +0 -56
  277. data/lib/twilio-ruby/rest/chat/v1/credential.rb +0 -403
  278. data/lib/twilio-ruby/rest/chat/v1/service.rb +0 -935
  279. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +0 -554
  280. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +0 -386
  281. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +0 -431
  282. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +0 -447
  283. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +0 -396
  284. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +0 -467
  285. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +0 -244
  286. data/lib/twilio-ruby/rest/chat/v2.rb +0 -56
  287. data/lib/twilio-ruby/rest/chat/v2/credential.rb +0 -403
  288. data/lib/twilio-ruby/rest/chat/v2/service.rb +0 -688
  289. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +0 -554
  290. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +0 -386
  291. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +0 -431
  292. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +0 -447
  293. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +0 -396
  294. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +0 -467
  295. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +0 -244
  296. data/lib/twilio-ruby/rest/fax.rb +0 -44
  297. data/lib/twilio-ruby/rest/fax/v1.rb +0 -41
  298. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -541
  299. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +0 -326
  300. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +0 -386
  301. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +0 -244
  302. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +0 -56
  303. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +0 -403
  304. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +0 -688
  305. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +0 -554
  306. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +0 -386
  307. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +0 -431
  308. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +0 -447
  309. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +0 -396
  310. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +0 -467
  311. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +0 -244
  312. data/lib/twilio-ruby/rest/messaging.rb +0 -44
  313. data/lib/twilio-ruby/rest/messaging/v1.rb +0 -41
  314. data/lib/twilio-ruby/rest/messaging/v1/service.rb +0 -637
  315. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +0 -352
  316. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +0 -359
  317. data/lib/twilio-ruby/rest/notify.rb +0 -52
  318. data/lib/twilio-ruby/rest/notify/v1.rb +0 -56
  319. data/lib/twilio-ruby/rest/notify/v1/credential.rb +0 -403
  320. data/lib/twilio-ruby/rest/notify/v1/service.rb +0 -639
  321. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +0 -430
  322. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +0 -288
  323. data/lib/twilio-ruby/rest/notify/v1/service/user.rb +0 -445
  324. data/lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb +0 -254
  325. data/lib/twilio-ruby/rest/notify/v1/service/user/user_binding.rb +0 -434
  326. data/lib/twilio-ruby/rest/preview.rb +0 -145
  327. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -56
  328. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -203
  329. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -243
  330. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +0 -42
  331. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +0 -557
  332. data/lib/twilio-ruby/rest/preview/marketplace.rb +0 -58
  333. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +0 -333
  334. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +0 -301
  335. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +0 -440
  336. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +0 -341
  337. data/lib/twilio-ruby/rest/preview/proxy.rb +0 -41
  338. data/lib/twilio-ruby/rest/preview/proxy/service.rb +0 -500
  339. data/lib/twilio-ruby/rest/preview/proxy/service/phone_number.rb +0 -359
  340. data/lib/twilio-ruby/rest/preview/proxy/service/session.rb +0 -536
  341. data/lib/twilio-ruby/rest/preview/proxy/service/session/interaction.rb +0 -429
  342. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant.rb +0 -506
  343. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant/message_interaction.rb +0 -452
  344. data/lib/twilio-ruby/rest/preview/proxy/service/short_code.rb +0 -359
  345. data/lib/twilio-ruby/rest/preview/sync.rb +0 -41
  346. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -504
  347. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -445
  348. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -395
  349. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -438
  350. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -430
  351. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -395
  352. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -438
  353. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -432
  354. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -395
  355. data/lib/twilio-ruby/rest/preview/wireless.rb +0 -71
  356. data/lib/twilio-ruby/rest/preview/wireless/command.rb +0 -382
  357. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +0 -435
  358. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +0 -544
  359. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +0 -236
  360. data/lib/twilio-ruby/rest/sync.rb +0 -44
  361. data/lib/twilio-ruby/rest/sync/v1.rb +0 -41
  362. data/lib/twilio-ruby/rest/sync/v1/service.rb +0 -504
  363. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +0 -445
  364. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +0 -395
  365. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +0 -438
  366. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +0 -430
  367. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +0 -395
  368. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +0 -438
  369. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +0 -432
  370. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +0 -395
  371. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +0 -315
  372. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +0 -461
  373. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +0 -406
  374. data/lib/twilio-ruby/rest/video.rb +0 -52
  375. data/lib/twilio-ruby/rest/video/v1.rb +0 -56
  376. data/lib/twilio-ruby/rest/video/v1/recording.rb +0 -382
  377. data/lib/twilio-ruby/rest/video/v1/room.rb +0 -485
  378. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -381
  379. data/lib/twilio-ruby/rest/wireless.rb +0 -60
  380. data/lib/twilio-ruby/rest/wireless/v1.rb +0 -71
  381. data/lib/twilio-ruby/rest/wireless/v1/command.rb +0 -367
  382. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +0 -452
  383. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +0 -548
  384. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +0 -235
  385. data/lib/twilio-ruby/twiml/messaging_response.rb +0 -141
  386. data/lib/twilio-ruby/twiml/twiml.rb +0 -69
  387. data/lib/twilio-ruby/twiml/voice_response.rb +0 -916
  388. data/spec/framework/serialize_spec.rb +0 -59
  389. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -226
  390. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -135
  391. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -223
  392. data/spec/integration/api/v2010/account/key_spec.rb +0 -178
  393. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -48
  394. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -45
  395. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -45
  396. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -175
  397. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -166
  398. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -178
  399. data/spec/integration/chat/v1/credential_spec.rb +0 -223
  400. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -210
  401. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -284
  402. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -294
  403. data/spec/integration/chat/v1/service/channel_spec.rb +0 -275
  404. data/spec/integration/chat/v1/service/role_spec.rb +0 -263
  405. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -92
  406. data/spec/integration/chat/v1/service/user_spec.rb +0 -266
  407. data/spec/integration/chat/v1/service_spec.rb +0 -299
  408. data/spec/integration/chat/v2/credential_spec.rb +0 -223
  409. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -210
  410. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -284
  411. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -294
  412. data/spec/integration/chat/v2/service/channel_spec.rb +0 -275
  413. data/spec/integration/chat/v2/service/role_spec.rb +0 -263
  414. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -92
  415. data/spec/integration/chat/v2/service/user_spec.rb +0 -266
  416. data/spec/integration/chat/v2/service_spec.rb +0 -325
  417. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -126
  418. data/spec/integration/fax/v1/fax_spec.rb +0 -272
  419. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -210
  420. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -92
  421. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -223
  422. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -210
  423. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -284
  424. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -294
  425. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -275
  426. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -263
  427. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -92
  428. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -266
  429. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -325
  430. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -170
  431. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -201
  432. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -173
  433. data/spec/integration/messaging/v1/service_spec.rb +0 -263
  434. data/spec/integration/notify/v1/credential_spec.rb +0 -223
  435. data/spec/integration/notify/v1/service/binding_spec.rb +0 -227
  436. data/spec/integration/notify/v1/service/notification_spec.rb +0 -97
  437. data/spec/integration/notify/v1/service/segment_spec.rb +0 -84
  438. data/spec/integration/notify/v1/service/user/segment_memberships_spec.rb +0 -118
  439. data/spec/integration/notify/v1/service/user/user_binding_spec.rb +0 -269
  440. data/spec/integration/notify/v1/service/user_spec.rb +0 -213
  441. data/spec/integration/notify/v1/service_spec.rb +0 -280
  442. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -56
  443. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -79
  444. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -43
  445. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -280
  446. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -121
  447. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -142
  448. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -164
  449. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -252
  450. data/spec/integration/preview/proxy/service/phone_number_spec.rb +0 -173
  451. data/spec/integration/preview/proxy/service/session/interaction_spec.rb +0 -104
  452. data/spec/integration/preview/proxy/service/session/participant/message_interaction_spec.rb +0 -164
  453. data/spec/integration/preview/proxy/service/session/participant_spec.rb +0 -226
  454. data/spec/integration/preview/proxy/service/session_spec.rb +0 -216
  455. data/spec/integration/preview/proxy/service/short_code_spec.rb +0 -173
  456. data/spec/integration/preview/proxy/service_spec.rb +0 -200
  457. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -206
  458. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  459. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -256
  460. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -206
  461. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -207
  462. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -257
  463. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -206
  464. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -207
  465. data/spec/integration/preview/sync/service_spec.rb +0 -244
  466. data/spec/integration/preview/wireless/command_spec.rb +0 -169
  467. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -260
  468. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -49
  469. data/spec/integration/preview/wireless/sim_spec.rb +0 -208
  470. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -206
  471. data/spec/integration/sync/v1/service/document_spec.rb +0 -254
  472. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -256
  473. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -206
  474. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -207
  475. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  476. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -206
  477. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -207
  478. data/spec/integration/sync/v1/service_spec.rb +0 -244
  479. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -127
  480. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -192
  481. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -201
  482. data/spec/integration/video/v1/recording_spec.rb +0 -165
  483. data/spec/integration/video/v1/room/recording_spec.rb +0 -146
  484. data/spec/integration/video/v1/room_spec.rb +0 -237
  485. data/spec/integration/wireless/v1/command_spec.rb +0 -166
  486. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -268
  487. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -65
  488. data/spec/integration/wireless/v1/sim_spec.rb +0 -208
  489. data/spec/jwt/access_token_spec.rb +0 -130
  490. data/spec/jwt/client_capability_spec.rb +0 -104
  491. data/spec/jwt/task_router_spec.rb +0 -172
  492. data/spec/twiml/messaging_response_spec.rb +0 -90
  493. data/spec/twiml/voice_response_spec.rb +0 -474
@@ -1,639 +0,0 @@
1
- ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
6
-
7
- module Twilio
8
- module REST
9
- class Notify < 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
- # @param [String] apn_credential_sid The apn_credential_sid
29
- # @param [String] gcm_credential_sid The gcm_credential_sid
30
- # @param [String] messaging_service_sid The messaging_service_sid
31
- # @param [String] facebook_messenger_page_id The facebook_messenger_page_id
32
- # @param [String] default_apn_notification_protocol_version The
33
- # default_apn_notification_protocol_version
34
- # @param [String] default_gcm_notification_protocol_version The
35
- # default_gcm_notification_protocol_version
36
- # @param [String] fcm_credential_sid The fcm_credential_sid
37
- # @param [String] default_fcm_notification_protocol_version The
38
- # default_fcm_notification_protocol_version
39
- # @param [Boolean] log_enabled The log_enabled
40
- # @param [String] alexa_skill_id The alexa_skill_id
41
- # @param [String] default_alexa_notification_protocol_version The
42
- # default_alexa_notification_protocol_version
43
- # @return [ServiceInstance] Newly created ServiceInstance
44
- def create(friendly_name: :unset, apn_credential_sid: :unset, gcm_credential_sid: :unset, messaging_service_sid: :unset, facebook_messenger_page_id: :unset, default_apn_notification_protocol_version: :unset, default_gcm_notification_protocol_version: :unset, fcm_credential_sid: :unset, default_fcm_notification_protocol_version: :unset, log_enabled: :unset, alexa_skill_id: :unset, default_alexa_notification_protocol_version: :unset)
45
- data = Twilio::Values.of({
46
- 'FriendlyName' => friendly_name,
47
- 'ApnCredentialSid' => apn_credential_sid,
48
- 'GcmCredentialSid' => gcm_credential_sid,
49
- 'MessagingServiceSid' => messaging_service_sid,
50
- 'FacebookMessengerPageId' => facebook_messenger_page_id,
51
- 'DefaultApnNotificationProtocolVersion' => default_apn_notification_protocol_version,
52
- 'DefaultGcmNotificationProtocolVersion' => default_gcm_notification_protocol_version,
53
- 'FcmCredentialSid' => fcm_credential_sid,
54
- 'DefaultFcmNotificationProtocolVersion' => default_fcm_notification_protocol_version,
55
- 'LogEnabled' => log_enabled,
56
- 'AlexaSkillId' => alexa_skill_id,
57
- 'DefaultAlexaNotificationProtocolVersion' => default_alexa_notification_protocol_version,
58
- })
59
-
60
- payload = @version.create(
61
- 'POST',
62
- @uri,
63
- data: data
64
- )
65
-
66
- ServiceInstance.new(
67
- @version,
68
- payload,
69
- )
70
- end
71
-
72
- ##
73
- # Lists ServiceInstance records from the API as a list.
74
- # Unlike stream(), this operation is eager and will load `limit` records into
75
- # memory before returning.
76
- # @param [String] friendly_name The friendly_name
77
- # @param [Integer] limit Upper limit for the number of records to return. stream()
78
- # guarantees to never return more than limit. Default is no limit
79
- # @param [Integer] page_size Number of records to fetch per request, when not set will use
80
- # the default value of 50 records. If no page_size is defined
81
- # but a limit is defined, stream() will attempt to read the
82
- # limit with the most efficient page size, i.e. min(limit, 1000)
83
- # @return [Array] Array of up to limit results
84
- def list(friendly_name: :unset, limit: nil, page_size: nil)
85
- self.stream(
86
- friendly_name: friendly_name,
87
- limit: limit,
88
- page_size: page_size
89
- ).entries
90
- end
91
-
92
- ##
93
- # Streams ServiceInstance records from the API as an Enumerable.
94
- # This operation lazily loads records as efficiently as possible until the limit
95
- # is reached.
96
- # @param [String] friendly_name The friendly_name
97
- # @param [Integer] limit Upper limit for the number of records to return. stream()
98
- # guarantees to never return more than limit. Default is no limit
99
- # @param [Integer] page_size Number of records to fetch per request, when not set will use
100
- # the default value of 50 records. If no page_size is defined
101
- # but a limit is defined, stream() will attempt to read the
102
- # limit with the most efficient page size, i.e. min(limit, 1000)
103
- # @return [Enumerable] Enumerable that will yield up to limit results
104
- def stream(friendly_name: :unset, limit: nil, page_size: nil)
105
- limits = @version.read_limits(limit, page_size)
106
-
107
- page = self.page(
108
- friendly_name: friendly_name,
109
- page_size: limits[:page_size],
110
- )
111
-
112
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
113
- end
114
-
115
- ##
116
- # When passed a block, yields ServiceInstance records from the API.
117
- # This operation lazily loads records as efficiently as possible until the limit
118
- # is reached.
119
- def each
120
- limits = @version.read_limits
121
-
122
- page = self.page(
123
- page_size: limits[:page_size],
124
- )
125
-
126
- @version.stream(page,
127
- limit: limits[:limit],
128
- page_limit: limits[:page_limit]).each {|x| yield x}
129
- end
130
-
131
- ##
132
- # Retrieve a single page of ServiceInstance records from the API.
133
- # Request is executed immediately.
134
- # @param [String] friendly_name The friendly_name
135
- # @param [String] page_token PageToken provided by the API
136
- # @param [Integer] page_number Page Number, this value is simply for client state
137
- # @param [Integer] page_size Number of records to return, defaults to 50
138
- # @return [Page] Page of ServiceInstance
139
- def page(friendly_name: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
140
- params = Twilio::Values.of({
141
- 'FriendlyName' => friendly_name,
142
- 'PageToken' => page_token,
143
- 'Page' => page_number,
144
- 'PageSize' => page_size,
145
- })
146
- response = @version.page(
147
- 'GET',
148
- @uri,
149
- params
150
- )
151
- ServicePage.new(@version, response, @solution)
152
- end
153
-
154
- ##
155
- # Retrieve a single page of ServiceInstance records from the API.
156
- # Request is executed immediately.
157
- # @param [String] target_url API-generated URL for the requested results page
158
- # @return [Page] Page of ServiceInstance
159
- def get_page(target_url)
160
- response = @version.domain.request(
161
- 'GET',
162
- target_url
163
- )
164
- ServicePage.new(@version, response, @solution)
165
- end
166
-
167
- ##
168
- # Provide a user friendly representation
169
- def to_s
170
- '#<Twilio.Notify.V1.ServiceList>'
171
- end
172
- end
173
-
174
- class ServicePage < Page
175
- ##
176
- # Initialize the ServicePage
177
- # @param [Version] version Version that contains the resource
178
- # @param [Response] response Response from the API
179
- # @param [Hash] solution Path solution for the resource
180
- # @return [ServicePage] ServicePage
181
- def initialize(version, response, solution)
182
- super(version, response)
183
-
184
- # Path Solution
185
- @solution = solution
186
- end
187
-
188
- ##
189
- # Build an instance of ServiceInstance
190
- # @param [Hash] payload Payload response from the API
191
- # @return [ServiceInstance] ServiceInstance
192
- def get_instance(payload)
193
- ServiceInstance.new(
194
- @version,
195
- payload,
196
- )
197
- end
198
-
199
- ##
200
- # Provide a user friendly representation
201
- def to_s
202
- '<Twilio.Notify.V1.ServicePage>'
203
- end
204
- end
205
-
206
- class ServiceContext < InstanceContext
207
- ##
208
- # Initialize the ServiceContext
209
- # @param [Version] version Version that contains the resource
210
- # @param [String] sid The sid
211
- # @return [ServiceContext] ServiceContext
212
- def initialize(version, sid)
213
- super(version)
214
-
215
- # Path Solution
216
- @solution = {
217
- sid: sid,
218
- }
219
- @uri = "/Services/#{@solution[:sid]}"
220
-
221
- # Dependents
222
- @bindings = nil
223
- @notifications = nil
224
- @users = nil
225
- @segments = nil
226
- end
227
-
228
- ##
229
- # Deletes the ServiceInstance
230
- # @return [Boolean] true if delete succeeds, true otherwise
231
- def delete
232
- @version.delete('delete', @uri)
233
- end
234
-
235
- ##
236
- # Fetch a ServiceInstance
237
- # @return [ServiceInstance] Fetched ServiceInstance
238
- def fetch
239
- params = Twilio::Values.of({})
240
-
241
- payload = @version.fetch(
242
- 'GET',
243
- @uri,
244
- params,
245
- )
246
-
247
- ServiceInstance.new(
248
- @version,
249
- payload,
250
- sid: @solution[:sid],
251
- )
252
- end
253
-
254
- ##
255
- # Update the ServiceInstance
256
- # @param [String] friendly_name The friendly_name
257
- # @param [String] apn_credential_sid The apn_credential_sid
258
- # @param [String] gcm_credential_sid The gcm_credential_sid
259
- # @param [String] messaging_service_sid The messaging_service_sid
260
- # @param [String] facebook_messenger_page_id The facebook_messenger_page_id
261
- # @param [String] default_apn_notification_protocol_version The
262
- # default_apn_notification_protocol_version
263
- # @param [String] default_gcm_notification_protocol_version The
264
- # default_gcm_notification_protocol_version
265
- # @param [String] fcm_credential_sid The fcm_credential_sid
266
- # @param [String] default_fcm_notification_protocol_version The
267
- # default_fcm_notification_protocol_version
268
- # @param [Boolean] log_enabled The log_enabled
269
- # @param [String] alexa_skill_id The alexa_skill_id
270
- # @param [String] default_alexa_notification_protocol_version The
271
- # default_alexa_notification_protocol_version
272
- # @return [ServiceInstance] Updated ServiceInstance
273
- def update(friendly_name: :unset, apn_credential_sid: :unset, gcm_credential_sid: :unset, messaging_service_sid: :unset, facebook_messenger_page_id: :unset, default_apn_notification_protocol_version: :unset, default_gcm_notification_protocol_version: :unset, fcm_credential_sid: :unset, default_fcm_notification_protocol_version: :unset, log_enabled: :unset, alexa_skill_id: :unset, default_alexa_notification_protocol_version: :unset)
274
- data = Twilio::Values.of({
275
- 'FriendlyName' => friendly_name,
276
- 'ApnCredentialSid' => apn_credential_sid,
277
- 'GcmCredentialSid' => gcm_credential_sid,
278
- 'MessagingServiceSid' => messaging_service_sid,
279
- 'FacebookMessengerPageId' => facebook_messenger_page_id,
280
- 'DefaultApnNotificationProtocolVersion' => default_apn_notification_protocol_version,
281
- 'DefaultGcmNotificationProtocolVersion' => default_gcm_notification_protocol_version,
282
- 'FcmCredentialSid' => fcm_credential_sid,
283
- 'DefaultFcmNotificationProtocolVersion' => default_fcm_notification_protocol_version,
284
- 'LogEnabled' => log_enabled,
285
- 'AlexaSkillId' => alexa_skill_id,
286
- 'DefaultAlexaNotificationProtocolVersion' => default_alexa_notification_protocol_version,
287
- })
288
-
289
- payload = @version.update(
290
- 'POST',
291
- @uri,
292
- data: data,
293
- )
294
-
295
- ServiceInstance.new(
296
- @version,
297
- payload,
298
- sid: @solution[:sid],
299
- )
300
- end
301
-
302
- ##
303
- # Access the bindings
304
- # @return [BindingList]
305
- # @return [BindingContext] if sid was passed.
306
- def bindings(sid=:unset)
307
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
308
-
309
- if sid != :unset
310
- return BindingContext.new(
311
- @version,
312
- @solution[:sid],
313
- sid,
314
- )
315
- end
316
-
317
- unless @bindings
318
- @bindings = BindingList.new(
319
- @version,
320
- service_sid: @solution[:sid],
321
- )
322
- end
323
-
324
- @bindings
325
- end
326
-
327
- ##
328
- # Access the notifications
329
- # @return [NotificationList]
330
- # @return [NotificationContext]
331
- def notifications
332
- unless @notifications
333
- @notifications = NotificationList.new(
334
- @version,
335
- service_sid: @solution[:sid],
336
- )
337
- end
338
-
339
- @notifications
340
- end
341
-
342
- ##
343
- # Access the users
344
- # @return [UserList]
345
- # @return [UserContext] if identity was passed.
346
- def users(identity=:unset)
347
- raise ArgumentError, 'identity cannot be nil' if identity.nil?
348
-
349
- if identity != :unset
350
- return UserContext.new(
351
- @version,
352
- @solution[:sid],
353
- identity,
354
- )
355
- end
356
-
357
- unless @users
358
- @users = UserList.new(
359
- @version,
360
- service_sid: @solution[:sid],
361
- )
362
- end
363
-
364
- @users
365
- end
366
-
367
- ##
368
- # Access the segments
369
- # @return [SegmentList]
370
- # @return [SegmentContext]
371
- def segments
372
- unless @segments
373
- @segments = SegmentList.new(
374
- @version,
375
- service_sid: @solution[:sid],
376
- )
377
- end
378
-
379
- @segments
380
- end
381
-
382
- ##
383
- # Provide a user friendly representation
384
- def to_s
385
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
386
- "#<Twilio.Notify.V1.ServiceContext #{context}>"
387
- end
388
- end
389
-
390
- class ServiceInstance < InstanceResource
391
- ##
392
- # Initialize the ServiceInstance
393
- # @param [Version] version Version that contains the resource
394
- # @param [Hash] payload payload that contains response from Twilio
395
- # @param [String] sid The sid
396
- # @return [ServiceInstance] ServiceInstance
397
- def initialize(version, payload, sid: nil)
398
- super(version)
399
-
400
- # Marshaled Properties
401
- @properties = {
402
- 'sid' => payload['sid'],
403
- 'account_sid' => payload['account_sid'],
404
- 'friendly_name' => payload['friendly_name'],
405
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
406
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
407
- 'apn_credential_sid' => payload['apn_credential_sid'],
408
- 'gcm_credential_sid' => payload['gcm_credential_sid'],
409
- 'fcm_credential_sid' => payload['fcm_credential_sid'],
410
- 'messaging_service_sid' => payload['messaging_service_sid'],
411
- 'facebook_messenger_page_id' => payload['facebook_messenger_page_id'],
412
- 'default_apn_notification_protocol_version' => payload['default_apn_notification_protocol_version'],
413
- 'default_gcm_notification_protocol_version' => payload['default_gcm_notification_protocol_version'],
414
- 'default_fcm_notification_protocol_version' => payload['default_fcm_notification_protocol_version'],
415
- 'log_enabled' => payload['log_enabled'],
416
- 'url' => payload['url'],
417
- 'links' => payload['links'],
418
- 'alexa_skill_id' => payload['alexa_skill_id'],
419
- 'default_alexa_notification_protocol_version' => payload['default_alexa_notification_protocol_version'],
420
- }
421
-
422
- # Context
423
- @instance_context = nil
424
- @params = {
425
- 'sid' => sid || @properties['sid'],
426
- }
427
- end
428
-
429
- ##
430
- # Generate an instance context for the instance, the context is capable of
431
- # performing various actions. All instance actions are proxied to the context
432
- # @return [ServiceContext] ServiceContext for this ServiceInstance
433
- def context
434
- unless @instance_context
435
- @instance_context = ServiceContext.new(
436
- @version,
437
- @params['sid'],
438
- )
439
- end
440
- @instance_context
441
- end
442
-
443
- ##
444
- # @return [String] The sid
445
- def sid
446
- @properties['sid']
447
- end
448
-
449
- ##
450
- # @return [String] The account_sid
451
- def account_sid
452
- @properties['account_sid']
453
- end
454
-
455
- ##
456
- # @return [String] The friendly_name
457
- def friendly_name
458
- @properties['friendly_name']
459
- end
460
-
461
- ##
462
- # @return [Time] The date_created
463
- def date_created
464
- @properties['date_created']
465
- end
466
-
467
- ##
468
- # @return [Time] The date_updated
469
- def date_updated
470
- @properties['date_updated']
471
- end
472
-
473
- ##
474
- # @return [String] The apn_credential_sid
475
- def apn_credential_sid
476
- @properties['apn_credential_sid']
477
- end
478
-
479
- ##
480
- # @return [String] The gcm_credential_sid
481
- def gcm_credential_sid
482
- @properties['gcm_credential_sid']
483
- end
484
-
485
- ##
486
- # @return [String] The fcm_credential_sid
487
- def fcm_credential_sid
488
- @properties['fcm_credential_sid']
489
- end
490
-
491
- ##
492
- # @return [String] The messaging_service_sid
493
- def messaging_service_sid
494
- @properties['messaging_service_sid']
495
- end
496
-
497
- ##
498
- # @return [String] The facebook_messenger_page_id
499
- def facebook_messenger_page_id
500
- @properties['facebook_messenger_page_id']
501
- end
502
-
503
- ##
504
- # @return [String] The default_apn_notification_protocol_version
505
- def default_apn_notification_protocol_version
506
- @properties['default_apn_notification_protocol_version']
507
- end
508
-
509
- ##
510
- # @return [String] The default_gcm_notification_protocol_version
511
- def default_gcm_notification_protocol_version
512
- @properties['default_gcm_notification_protocol_version']
513
- end
514
-
515
- ##
516
- # @return [String] The default_fcm_notification_protocol_version
517
- def default_fcm_notification_protocol_version
518
- @properties['default_fcm_notification_protocol_version']
519
- end
520
-
521
- ##
522
- # @return [Boolean] The log_enabled
523
- def log_enabled
524
- @properties['log_enabled']
525
- end
526
-
527
- ##
528
- # @return [String] The url
529
- def url
530
- @properties['url']
531
- end
532
-
533
- ##
534
- # @return [String] The links
535
- def links
536
- @properties['links']
537
- end
538
-
539
- ##
540
- # @return [String] The alexa_skill_id
541
- def alexa_skill_id
542
- @properties['alexa_skill_id']
543
- end
544
-
545
- ##
546
- # @return [String] The default_alexa_notification_protocol_version
547
- def default_alexa_notification_protocol_version
548
- @properties['default_alexa_notification_protocol_version']
549
- end
550
-
551
- ##
552
- # Deletes the ServiceInstance
553
- # @return [Boolean] true if delete succeeds, true otherwise
554
- def delete
555
- context.delete
556
- end
557
-
558
- ##
559
- # Fetch a ServiceInstance
560
- # @return [ServiceInstance] Fetched ServiceInstance
561
- def fetch
562
- context.fetch
563
- end
564
-
565
- ##
566
- # Update the ServiceInstance
567
- # @param [String] friendly_name The friendly_name
568
- # @param [String] apn_credential_sid The apn_credential_sid
569
- # @param [String] gcm_credential_sid The gcm_credential_sid
570
- # @param [String] messaging_service_sid The messaging_service_sid
571
- # @param [String] facebook_messenger_page_id The facebook_messenger_page_id
572
- # @param [String] default_apn_notification_protocol_version The
573
- # default_apn_notification_protocol_version
574
- # @param [String] default_gcm_notification_protocol_version The
575
- # default_gcm_notification_protocol_version
576
- # @param [String] fcm_credential_sid The fcm_credential_sid
577
- # @param [String] default_fcm_notification_protocol_version The
578
- # default_fcm_notification_protocol_version
579
- # @param [Boolean] log_enabled The log_enabled
580
- # @param [String] alexa_skill_id The alexa_skill_id
581
- # @param [String] default_alexa_notification_protocol_version The
582
- # default_alexa_notification_protocol_version
583
- # @return [ServiceInstance] Updated ServiceInstance
584
- def update(friendly_name: :unset, apn_credential_sid: :unset, gcm_credential_sid: :unset, messaging_service_sid: :unset, facebook_messenger_page_id: :unset, default_apn_notification_protocol_version: :unset, default_gcm_notification_protocol_version: :unset, fcm_credential_sid: :unset, default_fcm_notification_protocol_version: :unset, log_enabled: :unset, alexa_skill_id: :unset, default_alexa_notification_protocol_version: :unset)
585
- context.update(
586
- friendly_name: friendly_name,
587
- apn_credential_sid: apn_credential_sid,
588
- gcm_credential_sid: gcm_credential_sid,
589
- messaging_service_sid: messaging_service_sid,
590
- facebook_messenger_page_id: facebook_messenger_page_id,
591
- default_apn_notification_protocol_version: default_apn_notification_protocol_version,
592
- default_gcm_notification_protocol_version: default_gcm_notification_protocol_version,
593
- fcm_credential_sid: fcm_credential_sid,
594
- default_fcm_notification_protocol_version: default_fcm_notification_protocol_version,
595
- log_enabled: log_enabled,
596
- alexa_skill_id: alexa_skill_id,
597
- default_alexa_notification_protocol_version: default_alexa_notification_protocol_version,
598
- )
599
- end
600
-
601
- ##
602
- # Access the bindings
603
- # @return [bindings] bindings
604
- def bindings
605
- context.bindings
606
- end
607
-
608
- ##
609
- # Access the notifications
610
- # @return [notifications] notifications
611
- def notifications
612
- context.notifications
613
- end
614
-
615
- ##
616
- # Access the users
617
- # @return [users] users
618
- def users
619
- context.users
620
- end
621
-
622
- ##
623
- # Access the segments
624
- # @return [segments] segments
625
- def segments
626
- context.segments
627
- end
628
-
629
- ##
630
- # Provide a user friendly representation
631
- def to_s
632
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
633
- "<Twilio.Notify.V1.ServiceInstance #{values}>"
634
- end
635
- end
636
- end
637
- end
638
- end
639
- end