twilio-ruby 5.0.0.rc26 → 5.0.0

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 (328) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +21 -0
  3. data/.rubocop_todo.yml +187 -0
  4. data/.travis.yml +13 -0
  5. data/CHANGES.md +4 -0
  6. data/Gemfile +2 -2
  7. data/Makefile +8 -1
  8. data/Rakefile +3 -7
  9. data/examples/examples.rb +12 -10
  10. data/examples/{print-call-log.rb → print_call_log.rb} +4 -4
  11. data/lib/rack/twilio_webhook_authentication.rb +2 -3
  12. data/lib/twilio-ruby/framework/domain.rb +2 -6
  13. data/lib/twilio-ruby/framework/error.rb +0 -1
  14. data/lib/twilio-ruby/framework/helper.rb +1 -1
  15. data/lib/twilio-ruby/framework/page.rb +23 -25
  16. data/lib/twilio-ruby/framework/resource.rb +2 -2
  17. data/lib/twilio-ruby/framework/serialize.rb +5 -12
  18. data/lib/twilio-ruby/framework/twilio_response.rb +1 -1
  19. data/lib/twilio-ruby/framework/values.rb +2 -2
  20. data/lib/twilio-ruby/framework/version.rb +19 -37
  21. data/lib/twilio-ruby/http/http_client.rb +5 -6
  22. data/lib/twilio-ruby/jwt/access_token.rb +27 -41
  23. data/lib/twilio-ruby/jwt/client_capability.rb +11 -16
  24. data/lib/twilio-ruby/jwt/jwt.rb +7 -13
  25. data/lib/twilio-ruby/jwt/task_router.rb +40 -38
  26. data/lib/twilio-ruby/rest/accounts.rb +2 -0
  27. data/lib/twilio-ruby/rest/accounts/v1.rb +2 -0
  28. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +2 -2
  29. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +12 -7
  30. data/lib/twilio-ruby/rest/api.rb +96 -0
  31. data/lib/twilio-ruby/rest/api/v2010.rb +5 -0
  32. data/lib/twilio-ruby/rest/api/v2010/account.rb +66 -56
  33. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +30 -13
  34. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +22 -8
  35. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +40 -11
  36. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +20 -9
  37. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +16 -15
  38. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +26 -28
  39. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +26 -28
  40. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +26 -28
  41. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +64 -34
  42. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +12 -4
  43. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +28 -3
  44. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +37 -16
  45. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +25 -15
  46. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +28 -27
  47. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +28 -19
  48. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +22 -9
  49. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +62 -58
  50. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +52 -12
  51. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +52 -12
  52. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +52 -12
  53. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +8 -9
  54. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +47 -20
  55. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +12 -2
  56. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +17 -17
  57. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +10 -2
  58. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +10 -2
  59. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +37 -16
  60. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +14 -13
  61. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +20 -10
  62. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +10 -10
  63. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +37 -21
  64. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +22 -13
  65. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +22 -13
  66. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +26 -9
  67. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +24 -13
  68. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +8 -9
  69. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +8 -10
  70. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +16 -11
  71. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +14 -9
  72. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +36 -13
  73. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +14 -10
  74. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +14 -10
  75. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +16 -11
  76. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +16 -9
  77. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +14 -2
  78. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +26 -9
  79. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +4 -6
  80. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +44 -33
  81. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +28 -11
  82. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +28 -11
  83. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +28 -11
  84. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +28 -11
  85. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +28 -11
  86. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +28 -11
  87. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +28 -11
  88. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +28 -11
  89. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +32 -15
  90. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +10 -1
  91. data/lib/twilio-ruby/rest/chat.rb +8 -0
  92. data/lib/twilio-ruby/rest/chat/v1.rb +8 -0
  93. data/lib/twilio-ruby/rest/chat/v1/credential.rb +16 -7
  94. data/lib/twilio-ruby/rest/chat/v1/service.rb +48 -13
  95. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +34 -15
  96. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +20 -10
  97. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +22 -10
  98. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +26 -10
  99. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +18 -8
  100. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +30 -10
  101. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +16 -8
  102. data/lib/twilio-ruby/rest/chat/v2.rb +8 -0
  103. data/lib/twilio-ruby/rest/chat/v2/credential.rb +16 -7
  104. data/lib/twilio-ruby/rest/chat/v2/service.rb +46 -13
  105. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +34 -15
  106. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +20 -10
  107. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +22 -10
  108. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +26 -10
  109. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +18 -8
  110. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +30 -10
  111. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +16 -8
  112. data/lib/twilio-ruby/rest/client.rb +94 -45
  113. data/lib/twilio-ruby/rest/ip_messaging.rb +8 -0
  114. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +8 -0
  115. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +16 -7
  116. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +48 -13
  117. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +34 -15
  118. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +20 -10
  119. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +22 -10
  120. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +26 -10
  121. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +18 -8
  122. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +30 -10
  123. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +16 -8
  124. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +8 -0
  125. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +16 -7
  126. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +46 -13
  127. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +34 -15
  128. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +20 -10
  129. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +22 -10
  130. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +26 -10
  131. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +18 -8
  132. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +30 -10
  133. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +16 -8
  134. data/lib/twilio-ruby/rest/lookups.rb +4 -0
  135. data/lib/twilio-ruby/rest/lookups/v1.rb +9 -5
  136. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +14 -1
  137. data/lib/twilio-ruby/rest/monitor.rb +8 -0
  138. data/lib/twilio-ruby/rest/monitor/v1.rb +8 -0
  139. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +34 -10
  140. data/lib/twilio-ruby/rest/monitor/v1/event.rb +28 -13
  141. data/lib/twilio-ruby/rest/pricing.rb +6 -0
  142. data/lib/twilio-ruby/rest/pricing/v1.rb +6 -0
  143. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +8 -2
  144. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +12 -7
  145. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +8 -2
  146. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +10 -7
  147. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +10 -4
  148. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +12 -7
  149. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +14 -1
  150. data/lib/twilio-ruby/rest/taskrouter.rb +4 -0
  151. data/lib/twilio-ruby/rest/taskrouter/v1.rb +4 -0
  152. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +46 -24
  153. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +16 -10
  154. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +30 -17
  155. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +42 -19
  156. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +22 -10
  157. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +16 -8
  158. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +34 -15
  159. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +12 -3
  160. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +10 -11
  161. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +34 -23
  162. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +22 -10
  163. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +28 -9
  164. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +10 -3
  165. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +10 -2
  166. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +28 -11
  167. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +12 -3
  168. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +10 -2
  169. data/lib/twilio-ruby/rest/trunking.rb +4 -0
  170. data/lib/twilio-ruby/rest/trunking/v1.rb +4 -0
  171. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +36 -15
  172. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +14 -8
  173. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +14 -8
  174. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +22 -8
  175. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +52 -8
  176. data/lib/twilio-ruby/rest/video.rb +8 -0
  177. data/lib/twilio-ruby/rest/video/v1.rb +8 -0
  178. data/lib/twilio-ruby/rest/video/v1/recording.rb +26 -12
  179. data/lib/twilio-ruby/rest/video/v1/room.rb +34 -13
  180. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +28 -12
  181. data/lib/twilio-ruby/security/request_validator.rb +1 -2
  182. data/lib/twilio-ruby/twiml/messaging_response.rb +7 -19
  183. data/lib/twilio-ruby/twiml/twiml.rb +8 -14
  184. data/lib/twilio-ruby/twiml/voice_response.rb +157 -169
  185. data/lib/twilio-ruby/util.rb +1 -1
  186. data/lib/twilio-ruby/version.rb +1 -1
  187. data/spec/framework/serialize_spec.rb +17 -30
  188. data/spec/holodeck/holodeck.rb +6 -6
  189. data/spec/jwt/access_token_spec.rb +0 -6
  190. data/spec/jwt/client_capability_spec.rb +3 -3
  191. data/spec/jwt/task_router_spec.rb +16 -21
  192. data/spec/rack/twilio_webhook_authentication_spec.rb +12 -16
  193. data/spec/spec_helper.rb +2 -2
  194. data/spec/support/fakeweb.rb +1 -1
  195. data/spec/twiml/voice_response_spec.rb +33 -20
  196. data/twilio-ruby.gemspec +7 -3
  197. metadata +21 -193
  198. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +0 -420
  199. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +0 -345
  200. data/lib/twilio-ruby/rest/fax.rb +0 -40
  201. data/lib/twilio-ruby/rest/fax/v1.rb +0 -37
  202. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -520
  203. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +0 -321
  204. data/lib/twilio-ruby/rest/messaging.rb +0 -40
  205. data/lib/twilio-ruby/rest/messaging/v1.rb +0 -37
  206. data/lib/twilio-ruby/rest/messaging/v1/service.rb +0 -604
  207. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +0 -344
  208. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +0 -349
  209. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +0 -349
  210. data/lib/twilio-ruby/rest/notify.rb +0 -44
  211. data/lib/twilio-ruby/rest/notify/v1.rb +0 -48
  212. data/lib/twilio-ruby/rest/notify/v1/credential.rb +0 -394
  213. data/lib/twilio-ruby/rest/notify/v1/service.rb +0 -611
  214. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +0 -414
  215. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +0 -249
  216. data/lib/twilio-ruby/rest/notify/v1/service/segment.rb +0 -219
  217. data/lib/twilio-ruby/rest/notify/v1/service/user.rb +0 -437
  218. data/lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb +0 -247
  219. data/lib/twilio-ruby/rest/notify/v1/service/user/user_binding.rb +0 -418
  220. data/lib/twilio-ruby/rest/preview.rb +0 -107
  221. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -48
  222. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -198
  223. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +0 -209
  224. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -232
  225. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +0 -37
  226. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +0 -539
  227. data/lib/twilio-ruby/rest/preview/marketplace.rb +0 -48
  228. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +0 -326
  229. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +0 -297
  230. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +0 -427
  231. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +0 -335
  232. data/lib/twilio-ruby/rest/preview/proxy.rb +0 -37
  233. data/lib/twilio-ruby/rest/preview/proxy/service.rb +0 -489
  234. data/lib/twilio-ruby/rest/preview/proxy/service/phone_number.rb +0 -349
  235. data/lib/twilio-ruby/rest/preview/proxy/service/session.rb +0 -525
  236. data/lib/twilio-ruby/rest/preview/proxy/service/session/interaction.rb +0 -406
  237. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant.rb +0 -495
  238. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant/message_interaction.rb +0 -422
  239. data/lib/twilio-ruby/rest/preview/proxy/service/short_code.rb +0 -349
  240. data/lib/twilio-ruby/rest/preview/sync.rb +0 -37
  241. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -491
  242. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -431
  243. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -390
  244. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -426
  245. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -422
  246. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -390
  247. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -426
  248. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -424
  249. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -390
  250. data/lib/twilio-ruby/rest/preview/wireless.rb +0 -59
  251. data/lib/twilio-ruby/rest/preview/wireless/command.rb +0 -371
  252. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +0 -414
  253. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +0 -512
  254. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +0 -220
  255. data/lib/twilio-ruby/rest/sync.rb +0 -40
  256. data/lib/twilio-ruby/rest/sync/v1.rb +0 -37
  257. data/lib/twilio-ruby/rest/sync/v1/service.rb +0 -491
  258. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +0 -431
  259. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +0 -390
  260. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +0 -426
  261. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +0 -422
  262. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +0 -390
  263. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +0 -426
  264. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +0 -424
  265. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +0 -390
  266. data/lib/twilio-ruby/rest/wireless.rb +0 -48
  267. data/lib/twilio-ruby/rest/wireless/v1.rb +0 -59
  268. data/lib/twilio-ruby/rest/wireless/v1/command.rb +0 -357
  269. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +0 -427
  270. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +0 -516
  271. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +0 -235
  272. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -135
  273. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -223
  274. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -126
  275. data/spec/integration/fax/v1/fax_spec.rb +0 -272
  276. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -170
  277. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -201
  278. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -173
  279. data/spec/integration/messaging/v1/service_spec.rb +0 -263
  280. data/spec/integration/notify/v1/credential_spec.rb +0 -223
  281. data/spec/integration/notify/v1/service/binding_spec.rb +0 -227
  282. data/spec/integration/notify/v1/service/notification_spec.rb +0 -97
  283. data/spec/integration/notify/v1/service/segment_spec.rb +0 -84
  284. data/spec/integration/notify/v1/service/user/segment_memberships_spec.rb +0 -118
  285. data/spec/integration/notify/v1/service/user/user_binding_spec.rb +0 -269
  286. data/spec/integration/notify/v1/service/user_spec.rb +0 -213
  287. data/spec/integration/notify/v1/service_spec.rb +0 -280
  288. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -56
  289. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -79
  290. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -43
  291. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -276
  292. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -121
  293. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -142
  294. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -164
  295. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -252
  296. data/spec/integration/preview/proxy/service/phone_number_spec.rb +0 -173
  297. data/spec/integration/preview/proxy/service/session/interaction_spec.rb +0 -104
  298. data/spec/integration/preview/proxy/service/session/participant/message_interaction_spec.rb +0 -164
  299. data/spec/integration/preview/proxy/service/session/participant_spec.rb +0 -226
  300. data/spec/integration/preview/proxy/service/session_spec.rb +0 -216
  301. data/spec/integration/preview/proxy/service/short_code_spec.rb +0 -173
  302. data/spec/integration/preview/proxy/service_spec.rb +0 -200
  303. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -206
  304. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  305. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -256
  306. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -206
  307. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -207
  308. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -257
  309. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -206
  310. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -207
  311. data/spec/integration/preview/sync/service_spec.rb +0 -244
  312. data/spec/integration/preview/wireless/command_spec.rb +0 -169
  313. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -260
  314. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -49
  315. data/spec/integration/preview/wireless/sim_spec.rb +0 -208
  316. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -206
  317. data/spec/integration/sync/v1/service/document_spec.rb +0 -254
  318. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -256
  319. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -206
  320. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -207
  321. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  322. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -206
  323. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -207
  324. data/spec/integration/sync/v1/service_spec.rb +0 -244
  325. data/spec/integration/wireless/v1/command_spec.rb +0 -166
  326. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -268
  327. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -65
  328. data/spec/integration/wireless/v1/sim_spec.rb +0 -208
@@ -1,427 +0,0 @@
1
- ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
6
-
7
- module Twilio
8
- module REST
9
- class Preview < Domain
10
- class Marketplace < Version
11
- class InstalledAddOnList < ListResource
12
- ##
13
- # Initialize the InstalledAddOnList
14
- # @param [Version] version Version that contains the resource
15
- # @return [InstalledAddOnList] InstalledAddOnList
16
- def initialize(version)
17
- super(version)
18
-
19
- # Path Solution
20
- @solution = {}
21
- @uri = "/InstalledAddOns"
22
- end
23
-
24
- ##
25
- # Retrieve a single page of InstalledAddOnInstance records from the API.
26
- # Request is executed immediately.
27
- # @param [String] available_add_on_sid A 34 character string that uniquely
28
- # identifies the Add-on to be installed.
29
- # @param [Boolean] accept_terms_of_service A boolean that reflects your decision
30
- # whether to accept the Terms of Service
31
- # @param [Hash] configuration The JSON object representing the configuration of
32
- # the new Add-on installation.
33
- # @param [String] unique_name The human-readable string that uniquely identifies
34
- # this Add-on installation for an Account.
35
- # @return [InstalledAddOnInstance] Newly created InstalledAddOnInstance
36
- def create(available_add_on_sid: nil, accept_terms_of_service: nil, configuration: :unset, unique_name: :unset)
37
- data = Twilio::Values.of({
38
- 'AvailableAddOnSid' => available_add_on_sid,
39
- 'AcceptTermsOfService' => accept_terms_of_service,
40
- 'Configuration' => Twilio.serialize_object(configuration),
41
- 'UniqueName' => unique_name,
42
- })
43
-
44
- payload = @version.create(
45
- 'POST',
46
- @uri,
47
- data: data
48
- )
49
-
50
- InstalledAddOnInstance.new(
51
- @version,
52
- payload,
53
- )
54
- end
55
-
56
- ##
57
- # Lists InstalledAddOnInstance records from the API as a list.
58
- # Unlike stream(), this operation is eager and will load `limit` records into
59
- # memory before returning.
60
- # @param [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 not set will use
63
- # the default value of 50 records. If no page_size is defined
64
- # but a limit is defined, stream() will attempt to read the
65
- # limit with the most efficient page size, i.e. min(limit, 1000)
66
- # @return [Array] Array of up to limit results
67
- def list(limit: nil, page_size: nil)
68
- self.stream(
69
- limit: limit,
70
- page_size: page_size
71
- ).entries
72
- end
73
-
74
- ##
75
- # Streams InstalledAddOnInstance records from the API as an Enumerable.
76
- # This operation lazily loads records as efficiently as possible until the limit
77
- # is reached.
78
- # @param [Integer] limit Upper limit for the number of records to return. stream()
79
- # guarantees to never return more than limit. Default is no limit
80
- # @param [Integer] page_size Number of records to fetch per request, when not set will use
81
- # the default value of 50 records. If no page_size is defined
82
- # but a limit is defined, stream() will attempt to read the
83
- # limit with the most efficient page size, i.e. min(limit, 1000)
84
- # @return [Enumerable] Enumerable that will yield up to limit results
85
- def stream(limit: nil, page_size: nil)
86
- limits = @version.read_limits(limit, page_size)
87
-
88
- page = self.page(
89
- page_size: limits[:page_size],
90
- )
91
-
92
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
93
- end
94
-
95
- ##
96
- # When passed a block, yields InstalledAddOnInstance records from the API.
97
- # This operation lazily loads records as efficiently as possible until the limit
98
- # is reached.
99
- # @param [Integer] limit Upper limit for the number of records to return. stream()
100
- # guarantees to never return more than limit. Default is no limit
101
- # @param [Integer] page_size Number of records to fetch per request, when not set will use
102
- # the default value of 50 records. If no page_size is defined
103
- # but a limit is defined, stream() will attempt to read the
104
- # limit with the most efficient page size, i.e. min(limit, 1000)
105
- def each
106
- limits = @version.read_limits
107
-
108
- page = self.page(
109
- page_size: limits[:page_size],
110
- )
111
-
112
- @version.stream(page,
113
- limit: limits[:limit],
114
- page_limit: limits[:page_limit]).each {|x| yield x}
115
- end
116
-
117
- ##
118
- # Retrieve a single page of InstalledAddOnInstance records from the API.
119
- # Request is executed immediately.
120
- # @param [String] page_token PageToken provided by the API
121
- # @param [Integer] page_number Page Number, this value is simply for client state
122
- # @param [Integer] page_size Number of records to return, defaults to 50
123
- # @return [Page] Page of InstalledAddOnInstance
124
- def page(page_token: :unset, page_number: :unset, page_size: :unset)
125
- params = Twilio::Values.of({
126
- 'PageToken' => page_token,
127
- 'Page' => page_number,
128
- 'PageSize' => page_size,
129
- })
130
- response = @version.page(
131
- 'GET',
132
- @uri,
133
- params
134
- )
135
- InstalledAddOnPage.new(@version, response, @solution)
136
- end
137
-
138
- ##
139
- # Retrieve a single page of InstalledAddOnInstance records from the API.
140
- # Request is executed immediately.
141
- # @param [String] target_url API-generated URL for the requested results page
142
- # @return [Page] Page of InstalledAddOnInstance
143
- def get_page(target_url)
144
- response = @version.domain.request(
145
- 'GET',
146
- target_url
147
- )
148
- InstalledAddOnPage.new(@version, response, @solution)
149
- end
150
-
151
- ##
152
- # Provide a user friendly representation
153
- def to_s
154
- '#<Twilio.Preview.Marketplace.InstalledAddOnList>'
155
- end
156
- end
157
-
158
- class InstalledAddOnPage < Page
159
- ##
160
- # Initialize the InstalledAddOnPage
161
- # @param [Version] version Version that contains the resource
162
- # @param [Response] response Response from the API
163
- # @param [Hash] solution Path solution for the resource
164
- # @return [InstalledAddOnPage] InstalledAddOnPage
165
- def initialize(version, response, solution)
166
- super(version, response)
167
-
168
- # Path Solution
169
- @solution = solution
170
- end
171
-
172
- ##
173
- # Build an instance of InstalledAddOnInstance
174
- # @param [Hash] payload Payload response from the API
175
- # @return [InstalledAddOnInstance] InstalledAddOnInstance
176
- def get_instance(payload)
177
- InstalledAddOnInstance.new(
178
- @version,
179
- payload,
180
- )
181
- end
182
-
183
- ##
184
- # Provide a user friendly representation
185
- def to_s
186
- '<Twilio.Preview.Marketplace.InstalledAddOnPage>'
187
- end
188
- end
189
-
190
- class InstalledAddOnContext < InstanceContext
191
- ##
192
- # Initialize the InstalledAddOnContext
193
- # @param [Version] version Version that contains the resource
194
- # @param [String] sid The Installed Add-on Sid that uniquely identifies this
195
- # resource
196
- # @return [InstalledAddOnContext] InstalledAddOnContext
197
- def initialize(version, sid)
198
- super(version)
199
-
200
- # Path Solution
201
- @solution = {
202
- sid: sid,
203
- }
204
- @uri = "/InstalledAddOns/#{@solution[:sid]}"
205
-
206
- # Dependents
207
- @extensions = nil
208
- end
209
-
210
- ##
211
- # Deletes the InstalledAddOnInstance
212
- # @return [Boolean] true if delete succeeds, true otherwise
213
- def delete
214
- @version.delete('delete', @uri)
215
- end
216
-
217
- ##
218
- # Fetch a InstalledAddOnInstance
219
- # @return [InstalledAddOnInstance] Fetched InstalledAddOnInstance
220
- def fetch
221
- params = Twilio::Values.of({})
222
-
223
- payload = @version.fetch(
224
- 'GET',
225
- @uri,
226
- params,
227
- )
228
-
229
- InstalledAddOnInstance.new(
230
- @version,
231
- payload,
232
- sid: @solution[:sid],
233
- )
234
- end
235
-
236
- ##
237
- # Update the InstalledAddOnInstance
238
- # @param [Hash] configuration The JSON object representing the configuration of
239
- # the Add-on installation.
240
- # @param [String] unique_name The human-readable string that uniquely identifies
241
- # this Add-on installation for an Account.
242
- # @return [InstalledAddOnInstance] Updated InstalledAddOnInstance
243
- def update(configuration: :unset, unique_name: :unset)
244
- data = Twilio::Values.of({
245
- 'Configuration' => Twilio.serialize_object(configuration),
246
- 'UniqueName' => unique_name,
247
- })
248
-
249
- payload = @version.update(
250
- 'POST',
251
- @uri,
252
- data: data,
253
- )
254
-
255
- InstalledAddOnInstance.new(
256
- @version,
257
- payload,
258
- sid: @solution[:sid],
259
- )
260
- end
261
-
262
- ##
263
- # Access the extensions
264
- # @return [InstalledAddOnExtensionList] if a(n) InstalledAddOnExtensionList object was created.
265
- # @return [InstalledAddOnExtensionContext] if a(n) InstalledAddOnExtensionContext object was created.
266
- def extensions(sid=:unset)
267
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
268
-
269
- if sid != :unset
270
- return InstalledAddOnExtensionContext.new(
271
- @version,
272
- @solution[:sid],
273
- sid,
274
- )
275
- end
276
-
277
- unless @extensions
278
- @extensions = InstalledAddOnExtensionList.new(
279
- @version,
280
- installed_add_on_sid: @solution[:sid],
281
- )
282
- end
283
-
284
- @extensions
285
- end
286
-
287
- ##
288
- # Provide a user friendly representation
289
- def to_s
290
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
291
- "#<Twilio.Preview.Marketplace.InstalledAddOnContext #{context}>"
292
- end
293
- end
294
-
295
- class InstalledAddOnInstance < InstanceResource
296
- ##
297
- # Initialize the InstalledAddOnInstance
298
- # @param [Version] version Version that contains the resource
299
- # @param [Hash] payload payload that contains response from Twilio
300
- # @param [String] sid The Installed Add-on Sid that uniquely identifies this
301
- # resource
302
- # @return [InstalledAddOnInstance] InstalledAddOnInstance
303
- def initialize(version, payload, sid: nil)
304
- super(version)
305
-
306
- # Marshaled Properties
307
- @properties = {
308
- 'sid' => payload['sid'],
309
- 'account_sid' => payload['account_sid'],
310
- 'friendly_name' => payload['friendly_name'],
311
- 'description' => payload['description'],
312
- 'configuration' => payload['configuration'],
313
- 'unique_name' => payload['unique_name'],
314
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
315
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
316
- 'url' => payload['url'],
317
- 'links' => payload['links'],
318
- }
319
-
320
- # Context
321
- @instance_context = nil
322
- @params = {
323
- 'sid' => sid || @properties['sid'],
324
- }
325
- end
326
-
327
- ##
328
- # Generate an instance context for the instance, the context is capable of
329
- # performing various actions. All instance actions are proxied to the context
330
- # @param [Version] version Version that contains the resource
331
- # @return [InstalledAddOnContext] InstalledAddOnContext for this InstalledAddOnInstance
332
- def context
333
- unless @instance_context
334
- @instance_context = InstalledAddOnContext.new(
335
- @version,
336
- @params['sid'],
337
- )
338
- end
339
- @instance_context
340
- end
341
-
342
- def sid
343
- @properties['sid']
344
- end
345
-
346
- def account_sid
347
- @properties['account_sid']
348
- end
349
-
350
- def friendly_name
351
- @properties['friendly_name']
352
- end
353
-
354
- def description
355
- @properties['description']
356
- end
357
-
358
- def configuration
359
- @properties['configuration']
360
- end
361
-
362
- def unique_name
363
- @properties['unique_name']
364
- end
365
-
366
- def date_created
367
- @properties['date_created']
368
- end
369
-
370
- def date_updated
371
- @properties['date_updated']
372
- end
373
-
374
- def url
375
- @properties['url']
376
- end
377
-
378
- def links
379
- @properties['links']
380
- end
381
-
382
- ##
383
- # Deletes the InstalledAddOnInstance
384
- # @return [Boolean] true if delete succeeds, true otherwise
385
- def delete
386
- context.delete
387
- end
388
-
389
- ##
390
- # Fetch a InstalledAddOnInstance
391
- # @return [InstalledAddOnInstance] Fetched InstalledAddOnInstance
392
- def fetch
393
- context.fetch
394
- end
395
-
396
- ##
397
- # Update the InstalledAddOnInstance
398
- # @param [Hash] configuration The JSON object representing the configuration of
399
- # the Add-on installation.
400
- # @param [String] unique_name The human-readable string that uniquely identifies
401
- # this Add-on installation for an Account.
402
- # @return [InstalledAddOnInstance] Updated InstalledAddOnInstance
403
- def update(configuration: :unset, unique_name: :unset)
404
- context.update(
405
- configuration: configuration,
406
- unique_name: unique_name,
407
- )
408
- end
409
-
410
- ##
411
- # Access the extensions
412
- # @return [extensions] extensions
413
- def extensions
414
- context.extensions
415
- end
416
-
417
- ##
418
- # Provide a user friendly representation
419
- def to_s
420
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
421
- "<Twilio.Preview.Marketplace.InstalledAddOnInstance #{values}>"
422
- end
423
- end
424
- end
425
- end
426
- end
427
- end
@@ -1,335 +0,0 @@
1
- ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
6
-
7
- module Twilio
8
- module REST
9
- class Preview < Domain
10
- class Marketplace < Version
11
- class InstalledAddOnContext < InstanceContext
12
- class InstalledAddOnExtensionList < ListResource
13
- ##
14
- # Initialize the InstalledAddOnExtensionList
15
- # @param [Version] version Version that contains the resource
16
- # @param [String] installed_add_on_sid The installed_add_on_sid
17
- # @return [InstalledAddOnExtensionList] InstalledAddOnExtensionList
18
- def initialize(version, installed_add_on_sid: nil)
19
- super(version)
20
-
21
- # Path Solution
22
- @solution = {
23
- installed_add_on_sid: installed_add_on_sid
24
- }
25
- @uri = "/InstalledAddOns/#{@solution[:installed_add_on_sid]}/Extensions"
26
- end
27
-
28
- ##
29
- # Lists InstalledAddOnExtensionInstance records from the API as a list.
30
- # Unlike stream(), this operation is eager and will load `limit` records into
31
- # memory before returning.
32
- # @param [Integer] limit Upper limit for the number of records to return. stream()
33
- # guarantees to never return more than limit. Default is no limit
34
- # @param [Integer] page_size Number of records to fetch per request, when not set will use
35
- # the default value of 50 records. If no page_size is defined
36
- # but a limit is defined, stream() will attempt to read the
37
- # limit with the most efficient page size, i.e. min(limit, 1000)
38
- # @return [Array] Array of up to limit results
39
- def list(limit: nil, page_size: nil)
40
- self.stream(
41
- limit: limit,
42
- page_size: page_size
43
- ).entries
44
- end
45
-
46
- ##
47
- # Streams InstalledAddOnExtensionInstance records from the API as an Enumerable.
48
- # This operation lazily loads records as efficiently as possible until the limit
49
- # is reached.
50
- # @param [Integer] limit Upper limit for the number of records to return. stream()
51
- # guarantees to never return more than limit. Default is no limit
52
- # @param [Integer] page_size Number of records to fetch per request, when not set will use
53
- # the default value of 50 records. If no page_size is defined
54
- # but a limit is defined, stream() will attempt to read the
55
- # limit with the most efficient page size, i.e. min(limit, 1000)
56
- # @return [Enumerable] Enumerable that will yield up to limit results
57
- def stream(limit: nil, page_size: nil)
58
- limits = @version.read_limits(limit, page_size)
59
-
60
- page = self.page(
61
- page_size: limits[:page_size],
62
- )
63
-
64
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
65
- end
66
-
67
- ##
68
- # When passed a block, yields InstalledAddOnExtensionInstance records from the API.
69
- # This operation lazily loads records as efficiently as possible until the limit
70
- # is reached.
71
- # @param [Integer] limit Upper limit for the number of records to return. stream()
72
- # guarantees to never return more than limit. Default is no limit
73
- # @param [Integer] page_size Number of records to fetch per request, when not set will use
74
- # the default value of 50 records. If no page_size is defined
75
- # but a limit is defined, stream() will attempt to read the
76
- # limit with the most efficient page size, i.e. min(limit, 1000)
77
- def each
78
- limits = @version.read_limits
79
-
80
- page = self.page(
81
- page_size: limits[:page_size],
82
- )
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 InstalledAddOnExtensionInstance 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 InstalledAddOnExtensionInstance
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
- InstalledAddOnExtensionPage.new(@version, response, @solution)
108
- end
109
-
110
- ##
111
- # Retrieve a single page of InstalledAddOnExtensionInstance 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 InstalledAddOnExtensionInstance
115
- def get_page(target_url)
116
- response = @version.domain.request(
117
- 'GET',
118
- target_url
119
- )
120
- InstalledAddOnExtensionPage.new(@version, response, @solution)
121
- end
122
-
123
- ##
124
- # Provide a user friendly representation
125
- def to_s
126
- '#<Twilio.Preview.Marketplace.InstalledAddOnExtensionList>'
127
- end
128
- end
129
-
130
- class InstalledAddOnExtensionPage < Page
131
- ##
132
- # Initialize the InstalledAddOnExtensionPage
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
- # @param [String] installed_add_on_sid The installed_add_on_sid
137
- # @return [InstalledAddOnExtensionPage] InstalledAddOnExtensionPage
138
- def initialize(version, response, solution)
139
- super(version, response)
140
-
141
- # Path Solution
142
- @solution = solution
143
- end
144
-
145
- ##
146
- # Build an instance of InstalledAddOnExtensionInstance
147
- # @param [Hash] payload Payload response from the API
148
- # @return [InstalledAddOnExtensionInstance] InstalledAddOnExtensionInstance
149
- def get_instance(payload)
150
- InstalledAddOnExtensionInstance.new(
151
- @version,
152
- payload,
153
- installed_add_on_sid: @solution[:installed_add_on_sid],
154
- )
155
- end
156
-
157
- ##
158
- # Provide a user friendly representation
159
- def to_s
160
- '<Twilio.Preview.Marketplace.InstalledAddOnExtensionPage>'
161
- end
162
- end
163
-
164
- class InstalledAddOnExtensionContext < InstanceContext
165
- ##
166
- # Initialize the InstalledAddOnExtensionContext
167
- # @param [Version] version Version that contains the resource
168
- # @param [String] installed_add_on_sid The installed_add_on_sid
169
- # @param [String] sid The Extension Sid that uniquely identifies this resource
170
- # @return [InstalledAddOnExtensionContext] InstalledAddOnExtensionContext
171
- def initialize(version, installed_add_on_sid, sid)
172
- super(version)
173
-
174
- # Path Solution
175
- @solution = {
176
- installed_add_on_sid: installed_add_on_sid,
177
- sid: sid,
178
- }
179
- @uri = "/InstalledAddOns/#{@solution[:installed_add_on_sid]}/Extensions/#{@solution[:sid]}"
180
- end
181
-
182
- ##
183
- # Fetch a InstalledAddOnExtensionInstance
184
- # @return [InstalledAddOnExtensionInstance] Fetched InstalledAddOnExtensionInstance
185
- def fetch
186
- params = Twilio::Values.of({})
187
-
188
- payload = @version.fetch(
189
- 'GET',
190
- @uri,
191
- params,
192
- )
193
-
194
- InstalledAddOnExtensionInstance.new(
195
- @version,
196
- payload,
197
- installed_add_on_sid: @solution[:installed_add_on_sid],
198
- sid: @solution[:sid],
199
- )
200
- end
201
-
202
- ##
203
- # Update the InstalledAddOnExtensionInstance
204
- # @param [Boolean] enabled A Boolean indicating if the Extension will be invoked.
205
- # @return [InstalledAddOnExtensionInstance] Updated InstalledAddOnExtensionInstance
206
- def update(enabled: nil)
207
- data = Twilio::Values.of({
208
- 'Enabled' => enabled,
209
- })
210
-
211
- payload = @version.update(
212
- 'POST',
213
- @uri,
214
- data: data,
215
- )
216
-
217
- InstalledAddOnExtensionInstance.new(
218
- @version,
219
- payload,
220
- installed_add_on_sid: @solution[:installed_add_on_sid],
221
- sid: @solution[:sid],
222
- )
223
- end
224
-
225
- ##
226
- # Provide a user friendly representation
227
- def to_s
228
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
229
- "#<Twilio.Preview.Marketplace.InstalledAddOnExtensionContext #{context}>"
230
- end
231
- end
232
-
233
- class InstalledAddOnExtensionInstance < InstanceResource
234
- ##
235
- # Initialize the InstalledAddOnExtensionInstance
236
- # @param [Version] version Version that contains the resource
237
- # @param [Hash] payload payload that contains response from Twilio
238
- # @param [String] installed_add_on_sid The installed_add_on_sid
239
- # @param [String] sid The Extension Sid that uniquely identifies this resource
240
- # @return [InstalledAddOnExtensionInstance] InstalledAddOnExtensionInstance
241
- def initialize(version, payload, installed_add_on_sid: nil, sid: nil)
242
- super(version)
243
-
244
- # Marshaled Properties
245
- @properties = {
246
- 'sid' => payload['sid'],
247
- 'installed_add_on_sid' => payload['installed_add_on_sid'],
248
- 'friendly_name' => payload['friendly_name'],
249
- 'product_name' => payload['product_name'],
250
- 'unique_name' => payload['unique_name'],
251
- 'enabled' => payload['enabled'],
252
- 'url' => payload['url'],
253
- }
254
-
255
- # Context
256
- @instance_context = nil
257
- @params = {
258
- 'installed_add_on_sid' => installed_add_on_sid,
259
- 'sid' => sid || @properties['sid'],
260
- }
261
- end
262
-
263
- ##
264
- # Generate an instance context for the instance, the context is capable of
265
- # performing various actions. All instance actions are proxied to the context
266
- # @param [Version] version Version that contains the resource
267
- # @return [InstalledAddOnExtensionContext] InstalledAddOnExtensionContext for this InstalledAddOnExtensionInstance
268
- def context
269
- unless @instance_context
270
- @instance_context = InstalledAddOnExtensionContext.new(
271
- @version,
272
- @params['installed_add_on_sid'],
273
- @params['sid'],
274
- )
275
- end
276
- @instance_context
277
- end
278
-
279
- def sid
280
- @properties['sid']
281
- end
282
-
283
- def installed_add_on_sid
284
- @properties['installed_add_on_sid']
285
- end
286
-
287
- def friendly_name
288
- @properties['friendly_name']
289
- end
290
-
291
- def product_name
292
- @properties['product_name']
293
- end
294
-
295
- def unique_name
296
- @properties['unique_name']
297
- end
298
-
299
- def enabled
300
- @properties['enabled']
301
- end
302
-
303
- def url
304
- @properties['url']
305
- end
306
-
307
- ##
308
- # Fetch a InstalledAddOnExtensionInstance
309
- # @return [InstalledAddOnExtensionInstance] Fetched InstalledAddOnExtensionInstance
310
- def fetch
311
- context.fetch
312
- end
313
-
314
- ##
315
- # Update the InstalledAddOnExtensionInstance
316
- # @param [Boolean] enabled A Boolean indicating if the Extension will be invoked.
317
- # @return [InstalledAddOnExtensionInstance] Updated InstalledAddOnExtensionInstance
318
- def update(enabled: nil)
319
- context.update(
320
- enabled: enabled,
321
- )
322
- end
323
-
324
- ##
325
- # Provide a user friendly representation
326
- def to_s
327
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
328
- "<Twilio.Preview.Marketplace.InstalledAddOnExtensionInstance #{values}>"
329
- end
330
- end
331
- end
332
- end
333
- end
334
- end
335
- end