twilio-ruby 5.0.0.rc21 → 5.0.0.rc22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (238) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +3 -0
  3. data/lib/twilio-ruby.rb +7 -3
  4. data/lib/twilio-ruby/framework/domain.rb +5 -1
  5. data/lib/twilio-ruby/framework/page.rb +4 -4
  6. data/lib/twilio-ruby/framework/serialize.rb +3 -2
  7. data/lib/twilio-ruby/framework/values.rb +7 -0
  8. data/lib/twilio-ruby/framework/version.rb +4 -6
  9. data/lib/twilio-ruby/jwt/access_token.rb +160 -134
  10. data/lib/twilio-ruby/jwt/client_capability.rb +98 -0
  11. data/lib/twilio-ruby/jwt/jwt.rb +56 -0
  12. data/lib/twilio-ruby/jwt/task_router.rb +108 -139
  13. data/lib/twilio-ruby/rest/accounts.rb +1 -1
  14. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +1 -1
  15. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +30 -17
  16. data/lib/twilio-ruby/rest/api.rb +2 -2
  17. data/lib/twilio-ruby/rest/api/v2010/account.rb +31 -18
  18. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +32 -19
  19. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +18 -5
  20. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +32 -19
  21. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +20 -7
  22. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +20 -7
  23. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +20 -7
  24. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +20 -7
  25. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +20 -7
  26. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +33 -20
  27. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +13 -13
  28. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +8 -8
  29. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +23 -10
  30. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +23 -10
  31. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +27 -14
  32. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +32 -19
  33. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +25 -12
  34. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +32 -19
  35. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +24 -11
  36. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +20 -7
  37. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +24 -11
  38. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +24 -11
  39. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +24 -11
  40. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +26 -13
  41. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +30 -17
  42. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +5 -5
  43. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +23 -10
  44. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +5 -5
  45. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +5 -5
  46. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +23 -10
  47. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +28 -15
  48. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +30 -17
  49. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +23 -10
  50. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +23 -10
  51. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +21 -8
  52. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +21 -8
  53. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +21 -8
  54. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +27 -14
  55. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +26 -13
  56. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +1 -1
  57. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +27 -14
  58. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +29 -16
  59. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +30 -17
  60. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +24 -11
  61. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +24 -11
  62. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +27 -14
  63. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +29 -16
  64. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +5 -5
  65. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +21 -8
  66. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +1 -1
  67. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +20 -7
  68. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +20 -7
  69. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +20 -7
  70. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +20 -7
  71. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +20 -7
  72. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +20 -7
  73. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +20 -7
  74. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +20 -7
  75. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +20 -7
  76. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +32 -19
  77. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +5 -5
  78. data/lib/twilio-ruby/rest/chat.rb +4 -4
  79. data/lib/twilio-ruby/rest/chat/v1/credential.rb +30 -17
  80. data/lib/twilio-ruby/rest/chat/v1/service.rb +29 -16
  81. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +32 -19
  82. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +27 -14
  83. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +32 -19
  84. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +32 -19
  85. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +27 -14
  86. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +30 -17
  87. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +18 -5
  88. data/lib/twilio-ruby/rest/chat/v2/credential.rb +30 -17
  89. data/lib/twilio-ruby/rest/chat/v2/service.rb +29 -16
  90. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +32 -19
  91. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +27 -14
  92. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +32 -19
  93. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +32 -19
  94. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +27 -14
  95. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +30 -17
  96. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +18 -5
  97. data/lib/twilio-ruby/rest/fax.rb +2 -2
  98. data/lib/twilio-ruby/rest/fax/v1/fax.rb +32 -19
  99. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +21 -8
  100. data/lib/twilio-ruby/rest/ip_messaging.rb +4 -4
  101. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +30 -17
  102. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +29 -16
  103. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +32 -19
  104. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +27 -14
  105. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +32 -19
  106. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +32 -19
  107. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +27 -14
  108. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +30 -17
  109. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +18 -5
  110. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +30 -17
  111. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +29 -16
  112. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +32 -19
  113. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +27 -14
  114. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +32 -19
  115. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +32 -19
  116. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +27 -14
  117. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +30 -17
  118. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +18 -5
  119. data/lib/twilio-ruby/rest/lookups.rb +2 -2
  120. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +6 -6
  121. data/lib/twilio-ruby/rest/messaging.rb +2 -2
  122. data/lib/twilio-ruby/rest/messaging/v1/service.rb +30 -17
  123. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +24 -11
  124. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +24 -11
  125. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +24 -11
  126. data/lib/twilio-ruby/rest/monitor.rb +4 -4
  127. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +23 -10
  128. data/lib/twilio-ruby/rest/monitor/v1/event.rb +22 -9
  129. data/lib/twilio-ruby/rest/notify.rb +4 -4
  130. data/lib/twilio-ruby/rest/notify/v1/credential.rb +30 -17
  131. data/lib/twilio-ruby/rest/notify/v1/service.rb +32 -19
  132. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +27 -14
  133. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +5 -5
  134. data/lib/twilio-ruby/rest/notify/v1/service/segment.rb +18 -5
  135. data/lib/twilio-ruby/rest/notify/v1/service/user.rb +27 -14
  136. data/lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb +7 -7
  137. data/lib/twilio-ruby/rest/notify/v1/service/user/user_binding.rb +27 -14
  138. data/lib/twilio-ruby/rest/preview.rb +18 -18
  139. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +3 -3
  140. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +18 -5
  141. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +8 -8
  142. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +32 -19
  143. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +20 -7
  144. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +20 -7
  145. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +30 -17
  146. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +23 -10
  147. data/lib/twilio-ruby/rest/preview/proxy/service.rb +30 -17
  148. data/lib/twilio-ruby/rest/preview/proxy/service/phone_number.rb +24 -11
  149. data/lib/twilio-ruby/rest/preview/proxy/service/session.rb +32 -19
  150. data/lib/twilio-ruby/rest/preview/proxy/service/session/interaction.rb +22 -9
  151. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant.rb +32 -19
  152. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant/message_interaction.rb +24 -11
  153. data/lib/twilio-ruby/rest/preview/proxy/service/short_code.rb +24 -11
  154. data/lib/twilio-ruby/rest/preview/sync/service.rb +30 -17
  155. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +28 -15
  156. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +24 -11
  157. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +25 -12
  158. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +29 -16
  159. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +24 -11
  160. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +25 -12
  161. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +29 -16
  162. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +24 -11
  163. data/lib/twilio-ruby/rest/preview/wireless/command.rb +26 -13
  164. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +30 -17
  165. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +28 -15
  166. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +6 -6
  167. data/lib/twilio-ruby/rest/pricing.rb +3 -3
  168. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +1 -1
  169. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +20 -7
  170. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +1 -1
  171. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +20 -7
  172. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +1 -1
  173. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +20 -7
  174. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +3 -3
  175. data/lib/twilio-ruby/rest/sync.rb +2 -2
  176. data/lib/twilio-ruby/rest/sync/v1/service.rb +30 -17
  177. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +28 -15
  178. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +24 -11
  179. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +25 -12
  180. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +29 -16
  181. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +24 -11
  182. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +25 -12
  183. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +29 -16
  184. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +24 -11
  185. data/lib/twilio-ruby/rest/taskrouter.rb +2 -2
  186. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +33 -20
  187. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +32 -19
  188. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +22 -9
  189. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +32 -19
  190. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +27 -14
  191. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +20 -7
  192. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +33 -20
  193. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +6 -6
  194. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +20 -7
  195. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +33 -20
  196. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +27 -14
  197. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +25 -12
  198. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +6 -6
  199. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +6 -6
  200. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +33 -20
  201. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +6 -6
  202. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +6 -6
  203. data/lib/twilio-ruby/rest/trunking.rb +2 -2
  204. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +30 -17
  205. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +24 -11
  206. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +24 -11
  207. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +29 -16
  208. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +24 -11
  209. data/lib/twilio-ruby/rest/video.rb +4 -4
  210. data/lib/twilio-ruby/rest/video/v1/recording.rb +23 -10
  211. data/lib/twilio-ruby/rest/video/v1/room.rb +29 -16
  212. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +20 -7
  213. data/lib/twilio-ruby/rest/wireless.rb +6 -6
  214. data/lib/twilio-ruby/rest/wireless/v1/command.rb +26 -13
  215. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +30 -17
  216. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +27 -14
  217. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +20 -7
  218. data/lib/twilio-ruby/twiml/messaging_response.rb +147 -0
  219. data/lib/twilio-ruby/twiml/twiml.rb +77 -0
  220. data/lib/twilio-ruby/twiml/voice_response.rb +925 -0
  221. data/lib/twilio-ruby/version.rb +1 -1
  222. data/spec/holodeck/hologram.rb +0 -1
  223. data/spec/jwt/access_token_spec.rb +126 -182
  224. data/spec/jwt/client_capability_spec.rb +104 -0
  225. data/spec/jwt/task_router_spec.rb +164 -97
  226. data/spec/twiml/messaging_response_spec.rb +62 -0
  227. data/spec/twiml/voice_response_spec.rb +452 -0
  228. data/twilio-ruby.gemspec +4 -2
  229. metadata +36 -23
  230. data/lib/twilio-ruby/compatibility/v2010/account/call/feedback.rb +0 -15
  231. data/lib/twilio-ruby/compatibility/v2010/account/queue/member.rb +0 -23
  232. data/lib/twilio-ruby/jwt/capability.rb +0 -64
  233. data/lib/twilio-ruby/twiml/response.rb +0 -16
  234. data/spec/jwt/capability_spec.rb +0 -186
  235. data/spec/jwt/task_router_taskqueue_spec.rb +0 -111
  236. data/spec/jwt/task_router_worker_spec.rb +0 -146
  237. data/spec/jwt/task_router_workspace_spec.rb +0 -110
  238. data/spec/twiml/twiml_response_spec.rb +0 -47
@@ -27,9 +27,9 @@ module Twilio
27
27
  # @param [String] friendly_name The friendly_name
28
28
  # @return [ServiceInstance] Newly created ServiceInstance
29
29
  def create(friendly_name: nil)
30
- data = {
30
+ data = Twilio::Values.of({
31
31
  'FriendlyName' => friendly_name,
32
- }
32
+ })
33
33
 
34
34
  payload = @version.create(
35
35
  'POST',
@@ -37,7 +37,7 @@ module Twilio
37
37
  data: data
38
38
  )
39
39
 
40
- return ServiceInstance.new(
40
+ ServiceInstance.new(
41
41
  @version,
42
42
  payload,
43
43
  )
@@ -111,18 +111,31 @@ module Twilio
111
111
  # @param [Integer] page_number Page Number, this value is simply for client state
112
112
  # @param [Integer] page_size Number of records to return, defaults to 50
113
113
  # @return [Page] Page of ServiceInstance
114
- def page(page_token: nil, page_number: nil, page_size: nil)
115
- params = {
114
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
115
+ params = Twilio::Values.of({
116
116
  'PageToken' => page_token,
117
117
  'Page' => page_number,
118
118
  'PageSize' => page_size,
119
- }
119
+ })
120
120
  response = @version.page(
121
121
  'GET',
122
122
  @uri,
123
123
  params
124
124
  )
125
- return ServicePage.new(@version, response, @solution)
125
+ ServicePage.new(@version, response, @solution)
126
+ end
127
+
128
+ ##
129
+ # Retrieve a single page of ServiceInstance records from the API.
130
+ # Request is executed immediately.
131
+ # @param [String] target_url API-generated URL for the requested results page
132
+ # @return [Page] Page of ServiceInstance
133
+ def get_page(target_url)
134
+ response = @version.domain.request(
135
+ 'GET',
136
+ target_url
137
+ )
138
+ ServicePage.new(@version, response, @solution)
126
139
  end
127
140
 
128
141
  ##
@@ -151,7 +164,7 @@ module Twilio
151
164
  # @param [Hash] payload Payload response from the API
152
165
  # @return [ServiceInstance] ServiceInstance
153
166
  def get_instance(payload)
154
- return ServiceInstance.new(
167
+ ServiceInstance.new(
155
168
  @version,
156
169
  payload,
157
170
  )
@@ -189,7 +202,7 @@ module Twilio
189
202
  # Fetch a ServiceInstance
190
203
  # @return [ServiceInstance] Fetched ServiceInstance
191
204
  def fetch
192
- params = {}
205
+ params = Twilio::Values.of({})
193
206
 
194
207
  payload = @version.fetch(
195
208
  'GET',
@@ -197,7 +210,7 @@ module Twilio
197
210
  params,
198
211
  )
199
212
 
200
- return ServiceInstance.new(
213
+ ServiceInstance.new(
201
214
  @version,
202
215
  payload,
203
216
  sid: @solution[:sid],
@@ -208,7 +221,7 @@ module Twilio
208
221
  # Deletes the ServiceInstance
209
222
  # @return [Boolean] true if delete succeeds, true otherwise
210
223
  def delete
211
- return @version.delete('delete', @uri)
224
+ @version.delete('delete', @uri)
212
225
  end
213
226
 
214
227
  ##
@@ -255,8 +268,8 @@ module Twilio
255
268
  # @param [String] limits_channel_members The limits.channel_members
256
269
  # @param [String] limits_user_channels The limits.user_channels
257
270
  # @return [ServiceInstance] Updated ServiceInstance
258
- def update(friendly_name: nil, default_service_role_sid: nil, default_channel_role_sid: nil, default_channel_creator_role_sid: nil, read_status_enabled: nil, reachability_enabled: nil, typing_indicator_timeout: nil, consumption_report_interval: nil, notifications_new_message_enabled: nil, notifications_new_message_template: nil, notifications_new_message_sound: nil, notifications_new_message_badge_count_enabled: nil, notifications_added_to_channel_enabled: nil, notifications_added_to_channel_template: nil, notifications_added_to_channel_sound: nil, notifications_removed_from_channel_enabled: nil, notifications_removed_from_channel_template: nil, notifications_removed_from_channel_sound: nil, notifications_invited_to_channel_enabled: nil, notifications_invited_to_channel_template: nil, notifications_invited_to_channel_sound: nil, pre_webhook_url: nil, post_webhook_url: nil, webhook_method: nil, webhook_filters: nil, limits_channel_members: nil, limits_user_channels: nil)
259
- data = {
271
+ def update(friendly_name: :unset, default_service_role_sid: :unset, default_channel_role_sid: :unset, default_channel_creator_role_sid: :unset, read_status_enabled: :unset, reachability_enabled: :unset, typing_indicator_timeout: :unset, consumption_report_interval: :unset, notifications_new_message_enabled: :unset, notifications_new_message_template: :unset, notifications_new_message_sound: :unset, notifications_new_message_badge_count_enabled: :unset, notifications_added_to_channel_enabled: :unset, notifications_added_to_channel_template: :unset, notifications_added_to_channel_sound: :unset, notifications_removed_from_channel_enabled: :unset, notifications_removed_from_channel_template: :unset, notifications_removed_from_channel_sound: :unset, notifications_invited_to_channel_enabled: :unset, notifications_invited_to_channel_template: :unset, notifications_invited_to_channel_sound: :unset, pre_webhook_url: :unset, post_webhook_url: :unset, webhook_method: :unset, webhook_filters: :unset, limits_channel_members: :unset, limits_user_channels: :unset)
272
+ data = Twilio::Values.of({
260
273
  'FriendlyName' => friendly_name,
261
274
  'DefaultServiceRoleSid' => default_service_role_sid,
262
275
  'DefaultChannelRoleSid' => default_channel_role_sid,
@@ -284,7 +297,7 @@ module Twilio
284
297
  'WebhookFilters' => webhook_filters,
285
298
  'Limits.ChannelMembers' => limits_channel_members,
286
299
  'Limits.UserChannels' => limits_user_channels,
287
- }
300
+ })
288
301
 
289
302
  payload = @version.update(
290
303
  'POST',
@@ -292,7 +305,7 @@ module Twilio
292
305
  data: data,
293
306
  )
294
307
 
295
- return ServiceInstance.new(
308
+ ServiceInstance.new(
296
309
  @version,
297
310
  payload,
298
311
  sid: @solution[:sid],
@@ -567,7 +580,7 @@ module Twilio
567
580
  # @param [String] limits_channel_members The limits.channel_members
568
581
  # @param [String] limits_user_channels The limits.user_channels
569
582
  # @return [ServiceInstance] Updated ServiceInstance
570
- def update(friendly_name: nil, default_service_role_sid: nil, default_channel_role_sid: nil, default_channel_creator_role_sid: nil, read_status_enabled: nil, reachability_enabled: nil, typing_indicator_timeout: nil, consumption_report_interval: nil, notifications_new_message_enabled: nil, notifications_new_message_template: nil, notifications_new_message_sound: nil, notifications_new_message_badge_count_enabled: nil, notifications_added_to_channel_enabled: nil, notifications_added_to_channel_template: nil, notifications_added_to_channel_sound: nil, notifications_removed_from_channel_enabled: nil, notifications_removed_from_channel_template: nil, notifications_removed_from_channel_sound: nil, notifications_invited_to_channel_enabled: nil, notifications_invited_to_channel_template: nil, notifications_invited_to_channel_sound: nil, pre_webhook_url: nil, post_webhook_url: nil, webhook_method: nil, webhook_filters: nil, limits_channel_members: nil, limits_user_channels: nil)
583
+ def update(friendly_name: :unset, default_service_role_sid: :unset, default_channel_role_sid: :unset, default_channel_creator_role_sid: :unset, read_status_enabled: :unset, reachability_enabled: :unset, typing_indicator_timeout: :unset, consumption_report_interval: :unset, notifications_new_message_enabled: :unset, notifications_new_message_template: :unset, notifications_new_message_sound: :unset, notifications_new_message_badge_count_enabled: :unset, notifications_added_to_channel_enabled: :unset, notifications_added_to_channel_template: :unset, notifications_added_to_channel_sound: :unset, notifications_removed_from_channel_enabled: :unset, notifications_removed_from_channel_template: :unset, notifications_removed_from_channel_sound: :unset, notifications_invited_to_channel_enabled: :unset, notifications_invited_to_channel_template: :unset, notifications_invited_to_channel_sound: :unset, pre_webhook_url: :unset, post_webhook_url: :unset, webhook_method: :unset, webhook_filters: :unset, limits_channel_members: :unset, limits_user_channels: :unset)
571
584
  context.update(
572
585
  friendly_name: friendly_name,
573
586
  default_service_role_sid: default_service_role_sid,
@@ -33,13 +33,13 @@ module Twilio
33
33
  # @param [String] attributes The attributes
34
34
  # @param [channel.ChannelType] type The type
35
35
  # @return [ChannelInstance] Newly created ChannelInstance
36
- def create(friendly_name: nil, unique_name: nil, attributes: nil, type: nil)
37
- data = {
36
+ def create(friendly_name: :unset, unique_name: :unset, attributes: :unset, type: :unset)
37
+ data = Twilio::Values.of({
38
38
  'FriendlyName' => friendly_name,
39
39
  'UniqueName' => unique_name,
40
40
  'Attributes' => attributes,
41
41
  'Type' => type,
42
- }
42
+ })
43
43
 
44
44
  payload = @version.create(
45
45
  'POST',
@@ -47,7 +47,7 @@ module Twilio
47
47
  data: data
48
48
  )
49
49
 
50
- return ChannelInstance.new(
50
+ ChannelInstance.new(
51
51
  @version,
52
52
  payload,
53
53
  service_sid: @solution[:service_sid],
@@ -66,7 +66,7 @@ module Twilio
66
66
  # but a limit is defined, stream() will attempt to read the
67
67
  # limit with the most efficient page size, i.e. min(limit, 1000)
68
68
  # @return [Array] Array of up to limit results
69
- def list(type: nil, limit: nil, page_size: nil)
69
+ def list(type: :unset, limit: nil, page_size: nil)
70
70
  self.stream(
71
71
  type: type,
72
72
  limit: limit,
@@ -86,7 +86,7 @@ module Twilio
86
86
  # but a limit is defined, stream() will attempt to read the
87
87
  # limit with the most efficient page size, i.e. min(limit, 1000)
88
88
  # @return [Enumerable] Enumerable that will yield up to limit results
89
- def stream(type: nil, limit: nil, page_size: nil)
89
+ def stream(type: :unset, limit: nil, page_size: nil)
90
90
  limits = @version.read_limits(limit, page_size)
91
91
 
92
92
  page = self.page(
@@ -128,19 +128,32 @@ module Twilio
128
128
  # @param [Integer] page_number Page Number, this value is simply for client state
129
129
  # @param [Integer] page_size Number of records to return, defaults to 50
130
130
  # @return [Page] Page of ChannelInstance
131
- def page(type: nil, page_token: nil, page_number: nil, page_size: nil)
132
- params = {
131
+ def page(type: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
132
+ params = Twilio::Values.of({
133
133
  'Type' => type,
134
134
  'PageToken' => page_token,
135
135
  'Page' => page_number,
136
136
  'PageSize' => page_size,
137
- }
137
+ })
138
138
  response = @version.page(
139
139
  'GET',
140
140
  @uri,
141
141
  params
142
142
  )
143
- return ChannelPage.new(@version, response, @solution)
143
+ ChannelPage.new(@version, response, @solution)
144
+ end
145
+
146
+ ##
147
+ # Retrieve a single page of ChannelInstance records from the API.
148
+ # Request is executed immediately.
149
+ # @param [String] target_url API-generated URL for the requested results page
150
+ # @return [Page] Page of ChannelInstance
151
+ def get_page(target_url)
152
+ response = @version.domain.request(
153
+ 'GET',
154
+ target_url
155
+ )
156
+ ChannelPage.new(@version, response, @solution)
144
157
  end
145
158
 
146
159
  ##
@@ -170,7 +183,7 @@ module Twilio
170
183
  # @param [Hash] payload Payload response from the API
171
184
  # @return [ChannelInstance] ChannelInstance
172
185
  def get_instance(payload)
173
- return ChannelInstance.new(
186
+ ChannelInstance.new(
174
187
  @version,
175
188
  payload,
176
189
  service_sid: @solution[:service_sid],
@@ -211,7 +224,7 @@ module Twilio
211
224
  # Fetch a ChannelInstance
212
225
  # @return [ChannelInstance] Fetched ChannelInstance
213
226
  def fetch
214
- params = {}
227
+ params = Twilio::Values.of({})
215
228
 
216
229
  payload = @version.fetch(
217
230
  'GET',
@@ -219,7 +232,7 @@ module Twilio
219
232
  params,
220
233
  )
221
234
 
222
- return ChannelInstance.new(
235
+ ChannelInstance.new(
223
236
  @version,
224
237
  payload,
225
238
  service_sid: @solution[:service_sid],
@@ -231,7 +244,7 @@ module Twilio
231
244
  # Deletes the ChannelInstance
232
245
  # @return [Boolean] true if delete succeeds, true otherwise
233
246
  def delete
234
- return @version.delete('delete', @uri)
247
+ @version.delete('delete', @uri)
235
248
  end
236
249
 
237
250
  ##
@@ -240,12 +253,12 @@ module Twilio
240
253
  # @param [String] unique_name The unique_name
241
254
  # @param [String] attributes The attributes
242
255
  # @return [ChannelInstance] Updated ChannelInstance
243
- def update(friendly_name: nil, unique_name: nil, attributes: nil)
244
- data = {
256
+ def update(friendly_name: :unset, unique_name: :unset, attributes: :unset)
257
+ data = Twilio::Values.of({
245
258
  'FriendlyName' => friendly_name,
246
259
  'UniqueName' => unique_name,
247
260
  'Attributes' => attributes,
248
- }
261
+ })
249
262
 
250
263
  payload = @version.update(
251
264
  'POST',
@@ -253,7 +266,7 @@ module Twilio
253
266
  data: data,
254
267
  )
255
268
 
256
- return ChannelInstance.new(
269
+ ChannelInstance.new(
257
270
  @version,
258
271
  payload,
259
272
  service_sid: @solution[:service_sid],
@@ -470,7 +483,7 @@ module Twilio
470
483
  # @param [String] unique_name The unique_name
471
484
  # @param [String] attributes The attributes
472
485
  # @return [ChannelInstance] Updated ChannelInstance
473
- def update(friendly_name: nil, unique_name: nil, attributes: nil)
486
+ def update(friendly_name: :unset, unique_name: :unset, attributes: :unset)
474
487
  context.update(
475
488
  friendly_name: friendly_name,
476
489
  unique_name: unique_name,
@@ -34,11 +34,11 @@ module Twilio
34
34
  # @param [String] identity The identity
35
35
  # @param [String] role_sid The role_sid
36
36
  # @return [InviteInstance] Newly created InviteInstance
37
- def create(identity: nil, role_sid: nil)
38
- data = {
37
+ def create(identity: nil, role_sid: :unset)
38
+ data = Twilio::Values.of({
39
39
  'Identity' => identity,
40
40
  'RoleSid' => role_sid,
41
- }
41
+ })
42
42
 
43
43
  payload = @version.create(
44
44
  'POST',
@@ -46,7 +46,7 @@ module Twilio
46
46
  data: data
47
47
  )
48
48
 
49
- return InviteInstance.new(
49
+ InviteInstance.new(
50
50
  @version,
51
51
  payload,
52
52
  service_sid: @solution[:service_sid],
@@ -66,7 +66,7 @@ module Twilio
66
66
  # but a limit is defined, stream() will attempt to read the
67
67
  # limit with the most efficient page size, i.e. min(limit, 1000)
68
68
  # @return [Array] Array of up to limit results
69
- def list(identity: nil, limit: nil, page_size: nil)
69
+ def list(identity: :unset, limit: nil, page_size: nil)
70
70
  self.stream(
71
71
  identity: identity,
72
72
  limit: limit,
@@ -86,7 +86,7 @@ module Twilio
86
86
  # but a limit is defined, stream() will attempt to read the
87
87
  # limit with the most efficient page size, i.e. min(limit, 1000)
88
88
  # @return [Enumerable] Enumerable that will yield up to limit results
89
- def stream(identity: nil, limit: nil, page_size: nil)
89
+ def stream(identity: :unset, limit: nil, page_size: nil)
90
90
  limits = @version.read_limits(limit, page_size)
91
91
 
92
92
  page = self.page(
@@ -128,19 +128,32 @@ module Twilio
128
128
  # @param [Integer] page_number Page Number, this value is simply for client state
129
129
  # @param [Integer] page_size Number of records to return, defaults to 50
130
130
  # @return [Page] Page of InviteInstance
131
- def page(identity: nil, page_token: nil, page_number: nil, page_size: nil)
132
- params = {
131
+ def page(identity: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
132
+ params = Twilio::Values.of({
133
133
  'Identity' => identity,
134
134
  'PageToken' => page_token,
135
135
  'Page' => page_number,
136
136
  'PageSize' => page_size,
137
- }
137
+ })
138
138
  response = @version.page(
139
139
  'GET',
140
140
  @uri,
141
141
  params
142
142
  )
143
- return InvitePage.new(@version, response, @solution)
143
+ InvitePage.new(@version, response, @solution)
144
+ end
145
+
146
+ ##
147
+ # Retrieve a single page of InviteInstance records from the API.
148
+ # Request is executed immediately.
149
+ # @param [String] target_url API-generated URL for the requested results page
150
+ # @return [Page] Page of InviteInstance
151
+ def get_page(target_url)
152
+ response = @version.domain.request(
153
+ 'GET',
154
+ target_url
155
+ )
156
+ InvitePage.new(@version, response, @solution)
144
157
  end
145
158
 
146
159
  ##
@@ -171,7 +184,7 @@ module Twilio
171
184
  # @param [Hash] payload Payload response from the API
172
185
  # @return [InviteInstance] InviteInstance
173
186
  def get_instance(payload)
174
- return InviteInstance.new(
187
+ InviteInstance.new(
175
188
  @version,
176
189
  payload,
177
190
  service_sid: @solution[:service_sid],
@@ -210,7 +223,7 @@ module Twilio
210
223
  # Fetch a InviteInstance
211
224
  # @return [InviteInstance] Fetched InviteInstance
212
225
  def fetch
213
- params = {}
226
+ params = Twilio::Values.of({})
214
227
 
215
228
  payload = @version.fetch(
216
229
  'GET',
@@ -218,7 +231,7 @@ module Twilio
218
231
  params,
219
232
  )
220
233
 
221
- return InviteInstance.new(
234
+ InviteInstance.new(
222
235
  @version,
223
236
  payload,
224
237
  service_sid: @solution[:service_sid],
@@ -231,7 +244,7 @@ module Twilio
231
244
  # Deletes the InviteInstance
232
245
  # @return [Boolean] true if delete succeeds, true otherwise
233
246
  def delete
234
- return @version.delete('delete', @uri)
247
+ @version.delete('delete', @uri)
235
248
  end
236
249
 
237
250
  ##
@@ -34,11 +34,11 @@ module Twilio
34
34
  # @param [String] identity The identity
35
35
  # @param [String] role_sid The role_sid
36
36
  # @return [MemberInstance] Newly created MemberInstance
37
- def create(identity: nil, role_sid: nil)
38
- data = {
37
+ def create(identity: nil, role_sid: :unset)
38
+ data = Twilio::Values.of({
39
39
  'Identity' => identity,
40
40
  'RoleSid' => role_sid,
41
- }
41
+ })
42
42
 
43
43
  payload = @version.create(
44
44
  'POST',
@@ -46,7 +46,7 @@ module Twilio
46
46
  data: data
47
47
  )
48
48
 
49
- return MemberInstance.new(
49
+ MemberInstance.new(
50
50
  @version,
51
51
  payload,
52
52
  service_sid: @solution[:service_sid],
@@ -66,7 +66,7 @@ module Twilio
66
66
  # but a limit is defined, stream() will attempt to read the
67
67
  # limit with the most efficient page size, i.e. min(limit, 1000)
68
68
  # @return [Array] Array of up to limit results
69
- def list(identity: nil, limit: nil, page_size: nil)
69
+ def list(identity: :unset, limit: nil, page_size: nil)
70
70
  self.stream(
71
71
  identity: identity,
72
72
  limit: limit,
@@ -86,7 +86,7 @@ module Twilio
86
86
  # but a limit is defined, stream() will attempt to read the
87
87
  # limit with the most efficient page size, i.e. min(limit, 1000)
88
88
  # @return [Enumerable] Enumerable that will yield up to limit results
89
- def stream(identity: nil, limit: nil, page_size: nil)
89
+ def stream(identity: :unset, limit: nil, page_size: nil)
90
90
  limits = @version.read_limits(limit, page_size)
91
91
 
92
92
  page = self.page(
@@ -128,19 +128,32 @@ module Twilio
128
128
  # @param [Integer] page_number Page Number, this value is simply for client state
129
129
  # @param [Integer] page_size Number of records to return, defaults to 50
130
130
  # @return [Page] Page of MemberInstance
131
- def page(identity: nil, page_token: nil, page_number: nil, page_size: nil)
132
- params = {
131
+ def page(identity: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
132
+ params = Twilio::Values.of({
133
133
  'Identity' => identity,
134
134
  'PageToken' => page_token,
135
135
  'Page' => page_number,
136
136
  'PageSize' => page_size,
137
- }
137
+ })
138
138
  response = @version.page(
139
139
  'GET',
140
140
  @uri,
141
141
  params
142
142
  )
143
- return MemberPage.new(@version, response, @solution)
143
+ MemberPage.new(@version, response, @solution)
144
+ end
145
+
146
+ ##
147
+ # Retrieve a single page of MemberInstance records from the API.
148
+ # Request is executed immediately.
149
+ # @param [String] target_url API-generated URL for the requested results page
150
+ # @return [Page] Page of MemberInstance
151
+ def get_page(target_url)
152
+ response = @version.domain.request(
153
+ 'GET',
154
+ target_url
155
+ )
156
+ MemberPage.new(@version, response, @solution)
144
157
  end
145
158
 
146
159
  ##
@@ -171,7 +184,7 @@ module Twilio
171
184
  # @param [Hash] payload Payload response from the API
172
185
  # @return [MemberInstance] MemberInstance
173
186
  def get_instance(payload)
174
- return MemberInstance.new(
187
+ MemberInstance.new(
175
188
  @version,
176
189
  payload,
177
190
  service_sid: @solution[:service_sid],
@@ -210,7 +223,7 @@ module Twilio
210
223
  # Fetch a MemberInstance
211
224
  # @return [MemberInstance] Fetched MemberInstance
212
225
  def fetch
213
- params = {}
226
+ params = Twilio::Values.of({})
214
227
 
215
228
  payload = @version.fetch(
216
229
  'GET',
@@ -218,7 +231,7 @@ module Twilio
218
231
  params,
219
232
  )
220
233
 
221
- return MemberInstance.new(
234
+ MemberInstance.new(
222
235
  @version,
223
236
  payload,
224
237
  service_sid: @solution[:service_sid],
@@ -231,7 +244,7 @@ module Twilio
231
244
  # Deletes the MemberInstance
232
245
  # @return [Boolean] true if delete succeeds, true otherwise
233
246
  def delete
234
- return @version.delete('delete', @uri)
247
+ @version.delete('delete', @uri)
235
248
  end
236
249
 
237
250
  ##
@@ -239,11 +252,11 @@ module Twilio
239
252
  # @param [String] role_sid The role_sid
240
253
  # @param [String] last_consumed_message_index The last_consumed_message_index
241
254
  # @return [MemberInstance] Updated MemberInstance
242
- def update(role_sid: nil, last_consumed_message_index: nil)
243
- data = {
255
+ def update(role_sid: :unset, last_consumed_message_index: :unset)
256
+ data = Twilio::Values.of({
244
257
  'RoleSid' => role_sid,
245
258
  'LastConsumedMessageIndex' => last_consumed_message_index,
246
- }
259
+ })
247
260
 
248
261
  payload = @version.update(
249
262
  'POST',
@@ -251,7 +264,7 @@ module Twilio
251
264
  data: data,
252
265
  )
253
266
 
254
- return MemberInstance.new(
267
+ MemberInstance.new(
255
268
  @version,
256
269
  payload,
257
270
  service_sid: @solution[:service_sid],
@@ -384,7 +397,7 @@ module Twilio
384
397
  # @param [String] role_sid The role_sid
385
398
  # @param [String] last_consumed_message_index The last_consumed_message_index
386
399
  # @return [MemberInstance] Updated MemberInstance
387
- def update(role_sid: nil, last_consumed_message_index: nil)
400
+ def update(role_sid: :unset, last_consumed_message_index: :unset)
388
401
  context.update(
389
402
  role_sid: role_sid,
390
403
  last_consumed_message_index: last_consumed_message_index,