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,59 +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
10
- class Wireless < Version
11
- ##
12
- # Initialize the Wireless version of Preview
13
- def initialize(domain)
14
- super
15
- @version = 'wireless'
16
- @commands = nil
17
- @rate_plans = nil
18
- @sims = nil
19
- end
20
-
21
- def commands(sid=:unset)
22
- if sid.nil?
23
- raise ArgumentError, 'sid cannot be nil'
24
- elsif sid == :unset
25
- @commands ||= CommandList.new self
26
- else
27
- CommandContext.new(self, sid)
28
- end
29
- end
30
-
31
- def rate_plans(sid=:unset)
32
- if sid.nil?
33
- raise ArgumentError, 'sid cannot be nil'
34
- elsif sid == :unset
35
- @rate_plans ||= RatePlanList.new self
36
- else
37
- RatePlanContext.new(self, sid)
38
- end
39
- end
40
-
41
- def sims(sid=:unset)
42
- if sid.nil?
43
- raise ArgumentError, 'sid cannot be nil'
44
- elsif sid == :unset
45
- @sims ||= SimList.new self
46
- else
47
- SimContext.new(self, sid)
48
- end
49
- end
50
-
51
- ##
52
- # Provide a user friendly representation
53
- def to_s
54
- '<Twilio::REST::Preview::Wireless>'
55
- end
56
- end
57
- end
58
- end
59
- end
@@ -1,371 +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 Wireless < Version
11
- class CommandList < ListResource
12
- ##
13
- # Initialize the CommandList
14
- # @param [Version] version Version that contains the resource
15
- # @return [CommandList] CommandList
16
- def initialize(version)
17
- super(version)
18
-
19
- # Path Solution
20
- @solution = {}
21
- @uri = "/Commands"
22
- end
23
-
24
- ##
25
- # Lists CommandInstance records from the API as a list.
26
- # Unlike stream(), this operation is eager and will load `limit` records into
27
- # memory before returning.
28
- # @param [String] device The device
29
- # @param [String] sim The sim
30
- # @param [String] status The status
31
- # @param [String] direction The direction
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(device: :unset, sim: :unset, status: :unset, direction: :unset, limit: nil, page_size: nil)
40
- self.stream(
41
- device: device,
42
- sim: sim,
43
- status: status,
44
- direction: direction,
45
- limit: limit,
46
- page_size: page_size
47
- ).entries
48
- end
49
-
50
- ##
51
- # Streams CommandInstance records from the API as an Enumerable.
52
- # This operation lazily loads records as efficiently as possible until the limit
53
- # is reached.
54
- # @param [String] device The device
55
- # @param [String] sim The sim
56
- # @param [String] status The status
57
- # @param [String] direction The direction
58
- # @param [Integer] limit Upper limit for the number of records to return. stream()
59
- # guarantees to never return more than limit. Default is no limit
60
- # @param [Integer] page_size Number of records to fetch per request, when not set will use
61
- # the default value of 50 records. If no page_size is defined
62
- # but a limit is defined, stream() will attempt to read the
63
- # limit with the most efficient page size, i.e. min(limit, 1000)
64
- # @return [Enumerable] Enumerable that will yield up to limit results
65
- def stream(device: :unset, sim: :unset, status: :unset, direction: :unset, limit: nil, page_size: nil)
66
- limits = @version.read_limits(limit, page_size)
67
-
68
- page = self.page(
69
- device: device,
70
- sim: sim,
71
- status: status,
72
- direction: direction,
73
- page_size: limits[:page_size],
74
- )
75
-
76
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
77
- end
78
-
79
- ##
80
- # When passed a block, yields CommandInstance records from the API.
81
- # This operation lazily loads records as efficiently as possible until the limit
82
- # is reached.
83
- # @param [String] device The device
84
- # @param [String] sim The sim
85
- # @param [String] status The status
86
- # @param [String] direction The direction
87
- # @param [Integer] limit Upper limit for the number of records to return. stream()
88
- # guarantees to never return more than limit. Default is no limit
89
- # @param [Integer] page_size Number of records to fetch per request, when not set will use
90
- # the default value of 50 records. If no page_size is defined
91
- # but a limit is defined, stream() will attempt to read the
92
- # limit with the most efficient page size, i.e. min(limit, 1000)
93
- def each
94
- limits = @version.read_limits
95
-
96
- page = self.page(
97
- page_size: limits[:page_size],
98
- )
99
-
100
- @version.stream(page,
101
- limit: limits[:limit],
102
- page_limit: limits[:page_limit]).each {|x| yield x}
103
- end
104
-
105
- ##
106
- # Retrieve a single page of CommandInstance records from the API.
107
- # Request is executed immediately.
108
- # @param [String] device The device
109
- # @param [String] sim The sim
110
- # @param [String] status The status
111
- # @param [String] direction The direction
112
- # @param [String] page_token PageToken provided by the API
113
- # @param [Integer] page_number Page Number, this value is simply for client state
114
- # @param [Integer] page_size Number of records to return, defaults to 50
115
- # @return [Page] Page of CommandInstance
116
- def page(device: :unset, sim: :unset, status: :unset, direction: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
117
- params = Twilio::Values.of({
118
- 'Device' => device,
119
- 'Sim' => sim,
120
- 'Status' => status,
121
- 'Direction' => direction,
122
- 'PageToken' => page_token,
123
- 'Page' => page_number,
124
- 'PageSize' => page_size,
125
- })
126
- response = @version.page(
127
- 'GET',
128
- @uri,
129
- params
130
- )
131
- CommandPage.new(@version, response, @solution)
132
- end
133
-
134
- ##
135
- # Retrieve a single page of CommandInstance records from the API.
136
- # Request is executed immediately.
137
- # @param [String] target_url API-generated URL for the requested results page
138
- # @return [Page] Page of CommandInstance
139
- def get_page(target_url)
140
- response = @version.domain.request(
141
- 'GET',
142
- target_url
143
- )
144
- CommandPage.new(@version, response, @solution)
145
- end
146
-
147
- ##
148
- # Retrieve a single page of CommandInstance records from the API.
149
- # Request is executed immediately.
150
- # @param [String] command The command
151
- # @param [String] device The device
152
- # @param [String] sim The sim
153
- # @param [String] callback_method The callback_method
154
- # @param [String] callback_url The callback_url
155
- # @param [String] command_mode The command_mode
156
- # @param [String] include_sid The include_sid
157
- # @return [CommandInstance] Newly created CommandInstance
158
- def create(command: nil, device: :unset, sim: :unset, callback_method: :unset, callback_url: :unset, command_mode: :unset, include_sid: :unset)
159
- data = Twilio::Values.of({
160
- 'Command' => command,
161
- 'Device' => device,
162
- 'Sim' => sim,
163
- 'CallbackMethod' => callback_method,
164
- 'CallbackUrl' => callback_url,
165
- 'CommandMode' => command_mode,
166
- 'IncludeSid' => include_sid,
167
- })
168
-
169
- payload = @version.create(
170
- 'POST',
171
- @uri,
172
- data: data
173
- )
174
-
175
- CommandInstance.new(
176
- @version,
177
- payload,
178
- )
179
- end
180
-
181
- ##
182
- # Provide a user friendly representation
183
- def to_s
184
- '#<Twilio.Preview.Wireless.CommandList>'
185
- end
186
- end
187
-
188
- class CommandPage < Page
189
- ##
190
- # Initialize the CommandPage
191
- # @param [Version] version Version that contains the resource
192
- # @param [Response] response Response from the API
193
- # @param [Hash] solution Path solution for the resource
194
- # @return [CommandPage] CommandPage
195
- def initialize(version, response, solution)
196
- super(version, response)
197
-
198
- # Path Solution
199
- @solution = solution
200
- end
201
-
202
- ##
203
- # Build an instance of CommandInstance
204
- # @param [Hash] payload Payload response from the API
205
- # @return [CommandInstance] CommandInstance
206
- def get_instance(payload)
207
- CommandInstance.new(
208
- @version,
209
- payload,
210
- )
211
- end
212
-
213
- ##
214
- # Provide a user friendly representation
215
- def to_s
216
- '<Twilio.Preview.Wireless.CommandPage>'
217
- end
218
- end
219
-
220
- class CommandContext < InstanceContext
221
- ##
222
- # Initialize the CommandContext
223
- # @param [Version] version Version that contains the resource
224
- # @param [String] sid The sid
225
- # @return [CommandContext] CommandContext
226
- def initialize(version, sid)
227
- super(version)
228
-
229
- # Path Solution
230
- @solution = {
231
- sid: sid,
232
- }
233
- @uri = "/Commands/#{@solution[:sid]}"
234
- end
235
-
236
- ##
237
- # Fetch a CommandInstance
238
- # @return [CommandInstance] Fetched CommandInstance
239
- def fetch
240
- params = Twilio::Values.of({})
241
-
242
- payload = @version.fetch(
243
- 'GET',
244
- @uri,
245
- params,
246
- )
247
-
248
- CommandInstance.new(
249
- @version,
250
- payload,
251
- sid: @solution[:sid],
252
- )
253
- end
254
-
255
- ##
256
- # Provide a user friendly representation
257
- def to_s
258
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
259
- "#<Twilio.Preview.Wireless.CommandContext #{context}>"
260
- end
261
- end
262
-
263
- class CommandInstance < InstanceResource
264
- ##
265
- # Initialize the CommandInstance
266
- # @param [Version] version Version that contains the resource
267
- # @param [Hash] payload payload that contains response from Twilio
268
- # @param [String] sid The sid
269
- # @return [CommandInstance] CommandInstance
270
- def initialize(version, payload, sid: nil)
271
- super(version)
272
-
273
- # Marshaled Properties
274
- @properties = {
275
- 'sid' => payload['sid'],
276
- 'account_sid' => payload['account_sid'],
277
- 'device_sid' => payload['device_sid'],
278
- 'sim_sid' => payload['sim_sid'],
279
- 'command' => payload['command'],
280
- 'command_mode' => payload['command_mode'],
281
- 'status' => payload['status'],
282
- 'direction' => payload['direction'],
283
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
284
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
285
- 'url' => payload['url'],
286
- }
287
-
288
- # Context
289
- @instance_context = nil
290
- @params = {
291
- 'sid' => sid || @properties['sid'],
292
- }
293
- end
294
-
295
- ##
296
- # Generate an instance context for the instance, the context is capable of
297
- # performing various actions. All instance actions are proxied to the context
298
- # @param [Version] version Version that contains the resource
299
- # @return [CommandContext] CommandContext for this CommandInstance
300
- def context
301
- unless @instance_context
302
- @instance_context = CommandContext.new(
303
- @version,
304
- @params['sid'],
305
- )
306
- end
307
- @instance_context
308
- end
309
-
310
- def sid
311
- @properties['sid']
312
- end
313
-
314
- def account_sid
315
- @properties['account_sid']
316
- end
317
-
318
- def device_sid
319
- @properties['device_sid']
320
- end
321
-
322
- def sim_sid
323
- @properties['sim_sid']
324
- end
325
-
326
- def command
327
- @properties['command']
328
- end
329
-
330
- def command_mode
331
- @properties['command_mode']
332
- end
333
-
334
- def status
335
- @properties['status']
336
- end
337
-
338
- def direction
339
- @properties['direction']
340
- end
341
-
342
- def date_created
343
- @properties['date_created']
344
- end
345
-
346
- def date_updated
347
- @properties['date_updated']
348
- end
349
-
350
- def url
351
- @properties['url']
352
- end
353
-
354
- ##
355
- # Fetch a CommandInstance
356
- # @return [CommandInstance] Fetched CommandInstance
357
- def fetch
358
- context.fetch
359
- end
360
-
361
- ##
362
- # Provide a user friendly representation
363
- def to_s
364
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
365
- "<Twilio.Preview.Wireless.CommandInstance #{values}>"
366
- end
367
- end
368
- end
369
- end
370
- end
371
- end
@@ -1,414 +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 Wireless < Version
11
- class RatePlanList < ListResource
12
- ##
13
- # Initialize the RatePlanList
14
- # @param [Version] version Version that contains the resource
15
- # @return [RatePlanList] RatePlanList
16
- def initialize(version)
17
- super(version)
18
-
19
- # Path Solution
20
- @solution = {}
21
- @uri = "/RatePlans"
22
- end
23
-
24
- ##
25
- # Lists RatePlanInstance records from the API as a list.
26
- # Unlike stream(), this operation is eager and will load `limit` records into
27
- # memory before returning.
28
- # @param [Integer] limit Upper limit for the number of records to return. stream()
29
- # guarantees to never return more than limit. Default is no limit
30
- # @param [Integer] page_size Number of records to fetch per request, when not set will use
31
- # the default value of 50 records. If no page_size is defined
32
- # but a limit is defined, stream() will attempt to read the
33
- # limit with the most efficient page size, i.e. min(limit, 1000)
34
- # @return [Array] Array of up to limit results
35
- def list(limit: nil, page_size: nil)
36
- self.stream(
37
- limit: limit,
38
- page_size: page_size
39
- ).entries
40
- end
41
-
42
- ##
43
- # Streams RatePlanInstance records from the API as an Enumerable.
44
- # This operation lazily loads records as efficiently as possible until the limit
45
- # is reached.
46
- # @param [Integer] limit Upper limit for the number of records to return. stream()
47
- # guarantees to never return more than limit. Default is no limit
48
- # @param [Integer] page_size Number of records to fetch per request, when not set will use
49
- # the default value of 50 records. If no page_size is defined
50
- # but a limit is defined, stream() will attempt to read the
51
- # limit with the most efficient page size, i.e. min(limit, 1000)
52
- # @return [Enumerable] Enumerable that will yield up to limit results
53
- def stream(limit: nil, page_size: nil)
54
- limits = @version.read_limits(limit, page_size)
55
-
56
- page = self.page(
57
- page_size: limits[:page_size],
58
- )
59
-
60
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
61
- end
62
-
63
- ##
64
- # When passed a block, yields RatePlanInstance records from the API.
65
- # This operation lazily loads records as efficiently as possible until the limit
66
- # is reached.
67
- # @param [Integer] limit Upper limit for the number of records to return. stream()
68
- # guarantees to never return more than limit. Default is no limit
69
- # @param [Integer] page_size Number of records to fetch per request, when not set will use
70
- # the default value of 50 records. If no page_size is defined
71
- # but a limit is defined, stream() will attempt to read the
72
- # limit with the most efficient page size, i.e. min(limit, 1000)
73
- def each
74
- limits = @version.read_limits
75
-
76
- page = self.page(
77
- page_size: limits[:page_size],
78
- )
79
-
80
- @version.stream(page,
81
- limit: limits[:limit],
82
- page_limit: limits[:page_limit]).each {|x| yield x}
83
- end
84
-
85
- ##
86
- # Retrieve a single page of RatePlanInstance records from the API.
87
- # Request is executed immediately.
88
- # @param [String] page_token PageToken provided by the API
89
- # @param [Integer] page_number Page Number, this value is simply for client state
90
- # @param [Integer] page_size Number of records to return, defaults to 50
91
- # @return [Page] Page of RatePlanInstance
92
- def page(page_token: :unset, page_number: :unset, page_size: :unset)
93
- params = Twilio::Values.of({
94
- 'PageToken' => page_token,
95
- 'Page' => page_number,
96
- 'PageSize' => page_size,
97
- })
98
- response = @version.page(
99
- 'GET',
100
- @uri,
101
- params
102
- )
103
- RatePlanPage.new(@version, response, @solution)
104
- end
105
-
106
- ##
107
- # Retrieve a single page of RatePlanInstance records from the API.
108
- # Request is executed immediately.
109
- # @param [String] target_url API-generated URL for the requested results page
110
- # @return [Page] Page of RatePlanInstance
111
- def get_page(target_url)
112
- response = @version.domain.request(
113
- 'GET',
114
- target_url
115
- )
116
- RatePlanPage.new(@version, response, @solution)
117
- end
118
-
119
- ##
120
- # Retrieve a single page of RatePlanInstance records from the API.
121
- # Request is executed immediately.
122
- # @param [String] unique_name The unique_name
123
- # @param [String] friendly_name The friendly_name
124
- # @param [Boolean] data_enabled The data_enabled
125
- # @param [String] data_limit The data_limit
126
- # @param [String] data_metering The data_metering
127
- # @param [Boolean] messaging_enabled The messaging_enabled
128
- # @param [Boolean] voice_enabled The voice_enabled
129
- # @param [Boolean] commands_enabled The commands_enabled
130
- # @param [Boolean] national_roaming_enabled The national_roaming_enabled
131
- # @param [String] international_roaming The international_roaming
132
- # @return [RatePlanInstance] Newly created RatePlanInstance
133
- def create(unique_name: :unset, friendly_name: :unset, data_enabled: :unset, data_limit: :unset, data_metering: :unset, messaging_enabled: :unset, voice_enabled: :unset, commands_enabled: :unset, national_roaming_enabled: :unset, international_roaming: :unset)
134
- data = Twilio::Values.of({
135
- 'UniqueName' => unique_name,
136
- 'FriendlyName' => friendly_name,
137
- 'DataEnabled' => data_enabled,
138
- 'DataLimit' => data_limit,
139
- 'DataMetering' => data_metering,
140
- 'MessagingEnabled' => messaging_enabled,
141
- 'VoiceEnabled' => voice_enabled,
142
- 'CommandsEnabled' => commands_enabled,
143
- 'NationalRoamingEnabled' => national_roaming_enabled,
144
- 'InternationalRoaming' => international_roaming,
145
- })
146
-
147
- payload = @version.create(
148
- 'POST',
149
- @uri,
150
- data: data
151
- )
152
-
153
- RatePlanInstance.new(
154
- @version,
155
- payload,
156
- )
157
- end
158
-
159
- ##
160
- # Provide a user friendly representation
161
- def to_s
162
- '#<Twilio.Preview.Wireless.RatePlanList>'
163
- end
164
- end
165
-
166
- class RatePlanPage < Page
167
- ##
168
- # Initialize the RatePlanPage
169
- # @param [Version] version Version that contains the resource
170
- # @param [Response] response Response from the API
171
- # @param [Hash] solution Path solution for the resource
172
- # @return [RatePlanPage] RatePlanPage
173
- def initialize(version, response, solution)
174
- super(version, response)
175
-
176
- # Path Solution
177
- @solution = solution
178
- end
179
-
180
- ##
181
- # Build an instance of RatePlanInstance
182
- # @param [Hash] payload Payload response from the API
183
- # @return [RatePlanInstance] RatePlanInstance
184
- def get_instance(payload)
185
- RatePlanInstance.new(
186
- @version,
187
- payload,
188
- )
189
- end
190
-
191
- ##
192
- # Provide a user friendly representation
193
- def to_s
194
- '<Twilio.Preview.Wireless.RatePlanPage>'
195
- end
196
- end
197
-
198
- class RatePlanContext < InstanceContext
199
- ##
200
- # Initialize the RatePlanContext
201
- # @param [Version] version Version that contains the resource
202
- # @param [String] sid The sid
203
- # @return [RatePlanContext] RatePlanContext
204
- def initialize(version, sid)
205
- super(version)
206
-
207
- # Path Solution
208
- @solution = {
209
- sid: sid,
210
- }
211
- @uri = "/RatePlans/#{@solution[:sid]}"
212
- end
213
-
214
- ##
215
- # Fetch a RatePlanInstance
216
- # @return [RatePlanInstance] Fetched RatePlanInstance
217
- def fetch
218
- params = Twilio::Values.of({})
219
-
220
- payload = @version.fetch(
221
- 'GET',
222
- @uri,
223
- params,
224
- )
225
-
226
- RatePlanInstance.new(
227
- @version,
228
- payload,
229
- sid: @solution[:sid],
230
- )
231
- end
232
-
233
- ##
234
- # Update the RatePlanInstance
235
- # @param [String] unique_name The unique_name
236
- # @param [String] friendly_name The friendly_name
237
- # @return [RatePlanInstance] Updated RatePlanInstance
238
- def update(unique_name: :unset, friendly_name: :unset)
239
- data = Twilio::Values.of({
240
- 'UniqueName' => unique_name,
241
- 'FriendlyName' => friendly_name,
242
- })
243
-
244
- payload = @version.update(
245
- 'POST',
246
- @uri,
247
- data: data,
248
- )
249
-
250
- RatePlanInstance.new(
251
- @version,
252
- payload,
253
- sid: @solution[:sid],
254
- )
255
- end
256
-
257
- ##
258
- # Deletes the RatePlanInstance
259
- # @return [Boolean] true if delete succeeds, true otherwise
260
- def delete
261
- @version.delete('delete', @uri)
262
- end
263
-
264
- ##
265
- # Provide a user friendly representation
266
- def to_s
267
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
268
- "#<Twilio.Preview.Wireless.RatePlanContext #{context}>"
269
- end
270
- end
271
-
272
- class RatePlanInstance < InstanceResource
273
- ##
274
- # Initialize the RatePlanInstance
275
- # @param [Version] version Version that contains the resource
276
- # @param [Hash] payload payload that contains response from Twilio
277
- # @param [String] sid The sid
278
- # @return [RatePlanInstance] RatePlanInstance
279
- def initialize(version, payload, sid: nil)
280
- super(version)
281
-
282
- # Marshaled Properties
283
- @properties = {
284
- 'sid' => payload['sid'],
285
- 'unique_name' => payload['unique_name'],
286
- 'account_sid' => payload['account_sid'],
287
- 'friendly_name' => payload['friendly_name'],
288
- 'data_enabled' => payload['data_enabled'],
289
- 'data_metering' => payload['data_metering'],
290
- 'data_limit' => payload['data_limit'].to_i,
291
- 'messaging_enabled' => payload['messaging_enabled'],
292
- 'voice_enabled' => payload['voice_enabled'],
293
- 'national_roaming_enabled' => payload['national_roaming_enabled'],
294
- 'international_roaming' => payload['international_roaming'],
295
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
296
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
297
- 'url' => payload['url'],
298
- }
299
-
300
- # Context
301
- @instance_context = nil
302
- @params = {
303
- 'sid' => sid || @properties['sid'],
304
- }
305
- end
306
-
307
- ##
308
- # Generate an instance context for the instance, the context is capable of
309
- # performing various actions. All instance actions are proxied to the context
310
- # @param [Version] version Version that contains the resource
311
- # @return [RatePlanContext] RatePlanContext for this RatePlanInstance
312
- def context
313
- unless @instance_context
314
- @instance_context = RatePlanContext.new(
315
- @version,
316
- @params['sid'],
317
- )
318
- end
319
- @instance_context
320
- end
321
-
322
- def sid
323
- @properties['sid']
324
- end
325
-
326
- def unique_name
327
- @properties['unique_name']
328
- end
329
-
330
- def account_sid
331
- @properties['account_sid']
332
- end
333
-
334
- def friendly_name
335
- @properties['friendly_name']
336
- end
337
-
338
- def data_enabled
339
- @properties['data_enabled']
340
- end
341
-
342
- def data_metering
343
- @properties['data_metering']
344
- end
345
-
346
- def data_limit
347
- @properties['data_limit']
348
- end
349
-
350
- def messaging_enabled
351
- @properties['messaging_enabled']
352
- end
353
-
354
- def voice_enabled
355
- @properties['voice_enabled']
356
- end
357
-
358
- def national_roaming_enabled
359
- @properties['national_roaming_enabled']
360
- end
361
-
362
- def international_roaming
363
- @properties['international_roaming']
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
- ##
379
- # Fetch a RatePlanInstance
380
- # @return [RatePlanInstance] Fetched RatePlanInstance
381
- def fetch
382
- context.fetch
383
- end
384
-
385
- ##
386
- # Update the RatePlanInstance
387
- # @param [String] unique_name The unique_name
388
- # @param [String] friendly_name The friendly_name
389
- # @return [RatePlanInstance] Updated RatePlanInstance
390
- def update(unique_name: :unset, friendly_name: :unset)
391
- context.update(
392
- unique_name: unique_name,
393
- friendly_name: friendly_name,
394
- )
395
- end
396
-
397
- ##
398
- # Deletes the RatePlanInstance
399
- # @return [Boolean] true if delete succeeds, true otherwise
400
- def delete
401
- context.delete
402
- end
403
-
404
- ##
405
- # Provide a user friendly representation
406
- def to_s
407
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
408
- "<Twilio.Preview.Wireless.RatePlanInstance #{values}>"
409
- end
410
- end
411
- end
412
- end
413
- end
414
- end