twilio-ruby 5.0.0.rc21 → 5.0.0.rc22

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 (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
@@ -31,9 +31,9 @@ module Twilio
31
31
  # @param [String] sid The phone-number Sid that uniquely identifies this resource
32
32
  # @return [PhoneNumberInstance] Newly created PhoneNumberInstance
33
33
  def create(sid: nil)
34
- data = {
34
+ data = Twilio::Values.of({
35
35
  'Sid' => sid,
36
- }
36
+ })
37
37
 
38
38
  payload = @version.create(
39
39
  'POST',
@@ -41,7 +41,7 @@ module Twilio
41
41
  data: data
42
42
  )
43
43
 
44
- return PhoneNumberInstance.new(
44
+ PhoneNumberInstance.new(
45
45
  @version,
46
46
  payload,
47
47
  service_sid: @solution[:service_sid],
@@ -116,18 +116,31 @@ module Twilio
116
116
  # @param [Integer] page_number Page Number, this value is simply for client state
117
117
  # @param [Integer] page_size Number of records to return, defaults to 50
118
118
  # @return [Page] Page of PhoneNumberInstance
119
- def page(page_token: nil, page_number: nil, page_size: nil)
120
- params = {
119
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
120
+ params = Twilio::Values.of({
121
121
  'PageToken' => page_token,
122
122
  'Page' => page_number,
123
123
  'PageSize' => page_size,
124
- }
124
+ })
125
125
  response = @version.page(
126
126
  'GET',
127
127
  @uri,
128
128
  params
129
129
  )
130
- return PhoneNumberPage.new(@version, response, @solution)
130
+ PhoneNumberPage.new(@version, response, @solution)
131
+ end
132
+
133
+ ##
134
+ # Retrieve a single page of PhoneNumberInstance records from the API.
135
+ # Request is executed immediately.
136
+ # @param [String] target_url API-generated URL for the requested results page
137
+ # @return [Page] Page of PhoneNumberInstance
138
+ def get_page(target_url)
139
+ response = @version.domain.request(
140
+ 'GET',
141
+ target_url
142
+ )
143
+ PhoneNumberPage.new(@version, response, @solution)
131
144
  end
132
145
 
133
146
  ##
@@ -157,7 +170,7 @@ module Twilio
157
170
  # @param [Hash] payload Payload response from the API
158
171
  # @return [PhoneNumberInstance] PhoneNumberInstance
159
172
  def get_instance(payload)
160
- return PhoneNumberInstance.new(
173
+ PhoneNumberInstance.new(
161
174
  @version,
162
175
  payload,
163
176
  service_sid: @solution[:service_sid],
@@ -193,14 +206,14 @@ module Twilio
193
206
  # Deletes the PhoneNumberInstance
194
207
  # @return [Boolean] true if delete succeeds, true otherwise
195
208
  def delete
196
- return @version.delete('delete', @uri)
209
+ @version.delete('delete', @uri)
197
210
  end
198
211
 
199
212
  ##
200
213
  # Fetch a PhoneNumberInstance
201
214
  # @return [PhoneNumberInstance] Fetched PhoneNumberInstance
202
215
  def fetch
203
- params = {}
216
+ params = Twilio::Values.of({})
204
217
 
205
218
  payload = @version.fetch(
206
219
  'GET',
@@ -208,7 +221,7 @@ module Twilio
208
221
  params,
209
222
  )
210
223
 
211
- return PhoneNumberInstance.new(
224
+ PhoneNumberInstance.new(
212
225
  @version,
213
226
  payload,
214
227
  service_sid: @solution[:service_sid],
@@ -41,7 +41,7 @@ module Twilio
41
41
  # but a limit is defined, stream() will attempt to read the
42
42
  # limit with the most efficient page size, i.e. min(limit, 1000)
43
43
  # @return [Array] Array of up to limit results
44
- def list(unique_name: nil, status: nil, limit: nil, page_size: nil)
44
+ def list(unique_name: :unset, status: :unset, limit: nil, page_size: nil)
45
45
  self.stream(
46
46
  unique_name: unique_name,
47
47
  status: status,
@@ -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 [Enumerable] Enumerable that will yield up to limit results
69
- def stream(unique_name: nil, status: nil, limit: nil, page_size: nil)
69
+ def stream(unique_name: :unset, status: :unset, limit: nil, page_size: nil)
70
70
  limits = @version.read_limits(limit, page_size)
71
71
 
72
72
  page = self.page(
@@ -117,20 +117,33 @@ module Twilio
117
117
  # @param [Integer] page_number Page Number, this value is simply for client state
118
118
  # @param [Integer] page_size Number of records to return, defaults to 50
119
119
  # @return [Page] Page of SessionInstance
120
- def page(unique_name: nil, status: nil, page_token: nil, page_number: nil, page_size: nil)
121
- params = {
120
+ def page(unique_name: :unset, status: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
121
+ params = Twilio::Values.of({
122
122
  'UniqueName' => unique_name,
123
123
  'Status' => status,
124
124
  'PageToken' => page_token,
125
125
  'Page' => page_number,
126
126
  'PageSize' => page_size,
127
- }
127
+ })
128
128
  response = @version.page(
129
129
  'GET',
130
130
  @uri,
131
131
  params
132
132
  )
133
- return SessionPage.new(@version, response, @solution)
133
+ SessionPage.new(@version, response, @solution)
134
+ end
135
+
136
+ ##
137
+ # Retrieve a single page of SessionInstance records from the API.
138
+ # Request is executed immediately.
139
+ # @param [String] target_url API-generated URL for the requested results page
140
+ # @return [Page] Page of SessionInstance
141
+ def get_page(target_url)
142
+ response = @version.domain.request(
143
+ 'GET',
144
+ target_url
145
+ )
146
+ SessionPage.new(@version, response, @solution)
134
147
  end
135
148
 
136
149
  ##
@@ -145,13 +158,13 @@ module Twilio
145
158
  # or `completed`.
146
159
  # @param [String] participants The participants
147
160
  # @return [SessionInstance] Newly created SessionInstance
148
- def create(unique_name: nil, ttl: nil, status: nil, participants: nil)
149
- data = {
161
+ def create(unique_name: :unset, ttl: :unset, status: :unset, participants: :unset)
162
+ data = Twilio::Values.of({
150
163
  'UniqueName' => unique_name,
151
164
  'Ttl' => ttl,
152
165
  'Status' => status,
153
166
  'Participants' => participants,
154
- }
167
+ })
155
168
 
156
169
  payload = @version.create(
157
170
  'POST',
@@ -159,7 +172,7 @@ module Twilio
159
172
  data: data
160
173
  )
161
174
 
162
- return SessionInstance.new(
175
+ SessionInstance.new(
163
176
  @version,
164
177
  payload,
165
178
  service_sid: @solution[:service_sid],
@@ -193,7 +206,7 @@ module Twilio
193
206
  # @param [Hash] payload Payload response from the API
194
207
  # @return [SessionInstance] SessionInstance
195
208
  def get_instance(payload)
196
- return SessionInstance.new(
209
+ SessionInstance.new(
197
210
  @version,
198
211
  payload,
199
212
  service_sid: @solution[:service_sid],
@@ -233,7 +246,7 @@ module Twilio
233
246
  # Fetch a SessionInstance
234
247
  # @return [SessionInstance] Fetched SessionInstance
235
248
  def fetch
236
- params = {}
249
+ params = Twilio::Values.of({})
237
250
 
238
251
  payload = @version.fetch(
239
252
  'GET',
@@ -241,7 +254,7 @@ module Twilio
241
254
  params,
242
255
  )
243
256
 
244
- return SessionInstance.new(
257
+ SessionInstance.new(
245
258
  @version,
246
259
  payload,
247
260
  service_sid: @solution[:service_sid],
@@ -253,7 +266,7 @@ module Twilio
253
266
  # Deletes the SessionInstance
254
267
  # @return [Boolean] true if delete succeeds, true otherwise
255
268
  def delete
256
- return @version.delete('delete', @uri)
269
+ @version.delete('delete', @uri)
257
270
  end
258
271
 
259
272
  ##
@@ -267,13 +280,13 @@ module Twilio
267
280
  # or `completed`.
268
281
  # @param [String] participants The participants
269
282
  # @return [SessionInstance] Updated SessionInstance
270
- def update(unique_name: nil, ttl: nil, status: nil, participants: nil)
271
- data = {
283
+ def update(unique_name: :unset, ttl: :unset, status: :unset, participants: :unset)
284
+ data = Twilio::Values.of({
272
285
  'UniqueName' => unique_name,
273
286
  'Ttl' => ttl,
274
287
  'Status' => status,
275
288
  'Participants' => participants,
276
- }
289
+ })
277
290
 
278
291
  payload = @version.update(
279
292
  'POST',
@@ -281,7 +294,7 @@ module Twilio
281
294
  data: data,
282
295
  )
283
296
 
284
- return SessionInstance.new(
297
+ SessionInstance.new(
285
298
  @version,
286
299
  payload,
287
300
  service_sid: @solution[:service_sid],
@@ -469,7 +482,7 @@ module Twilio
469
482
  # or `completed`.
470
483
  # @param [String] participants The participants
471
484
  # @return [SessionInstance] Updated SessionInstance
472
- def update(unique_name: nil, ttl: nil, status: nil, participants: nil)
485
+ def update(unique_name: :unset, ttl: :unset, status: :unset, participants: :unset)
473
486
  context.update(
474
487
  unique_name: unique_name,
475
488
  ttl: ttl,
@@ -45,7 +45,7 @@ module Twilio
45
45
  # but a limit is defined, stream() will attempt to read the
46
46
  # limit with the most efficient page size, i.e. min(limit, 1000)
47
47
  # @return [Array] Array of up to limit results
48
- def list(inbound_participant_status: nil, outbound_participant_status: nil, limit: nil, page_size: nil)
48
+ def list(inbound_participant_status: :unset, outbound_participant_status: :unset, limit: nil, page_size: nil)
49
49
  self.stream(
50
50
  inbound_participant_status: inbound_participant_status,
51
51
  outbound_participant_status: outbound_participant_status,
@@ -71,7 +71,7 @@ module Twilio
71
71
  # but a limit is defined, stream() will attempt to read the
72
72
  # limit with the most efficient page size, i.e. min(limit, 1000)
73
73
  # @return [Enumerable] Enumerable that will yield up to limit results
74
- def stream(inbound_participant_status: nil, outbound_participant_status: nil, limit: nil, page_size: nil)
74
+ def stream(inbound_participant_status: :unset, outbound_participant_status: :unset, limit: nil, page_size: nil)
75
75
  limits = @version.read_limits(limit, page_size)
76
76
 
77
77
  page = self.page(
@@ -124,20 +124,33 @@ module Twilio
124
124
  # @param [Integer] page_number Page Number, this value is simply for client state
125
125
  # @param [Integer] page_size Number of records to return, defaults to 50
126
126
  # @return [Page] Page of InteractionInstance
127
- def page(inbound_participant_status: nil, outbound_participant_status: nil, page_token: nil, page_number: nil, page_size: nil)
128
- params = {
127
+ def page(inbound_participant_status: :unset, outbound_participant_status: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
128
+ params = Twilio::Values.of({
129
129
  'InboundParticipantStatus' => inbound_participant_status,
130
130
  'OutboundParticipantStatus' => outbound_participant_status,
131
131
  'PageToken' => page_token,
132
132
  'Page' => page_number,
133
133
  'PageSize' => page_size,
134
- }
134
+ })
135
135
  response = @version.page(
136
136
  'GET',
137
137
  @uri,
138
138
  params
139
139
  )
140
- return InteractionPage.new(@version, response, @solution)
140
+ InteractionPage.new(@version, response, @solution)
141
+ end
142
+
143
+ ##
144
+ # Retrieve a single page of InteractionInstance records from the API.
145
+ # Request is executed immediately.
146
+ # @param [String] target_url API-generated URL for the requested results page
147
+ # @return [Page] Page of InteractionInstance
148
+ def get_page(target_url)
149
+ response = @version.domain.request(
150
+ 'GET',
151
+ target_url
152
+ )
153
+ InteractionPage.new(@version, response, @solution)
141
154
  end
142
155
 
143
156
  ##
@@ -168,7 +181,7 @@ module Twilio
168
181
  # @param [Hash] payload Payload response from the API
169
182
  # @return [InteractionInstance] InteractionInstance
170
183
  def get_instance(payload)
171
- return InteractionInstance.new(
184
+ InteractionInstance.new(
172
185
  @version,
173
186
  payload,
174
187
  service_sid: @solution[:service_sid],
@@ -208,7 +221,7 @@ module Twilio
208
221
  # Fetch a InteractionInstance
209
222
  # @return [InteractionInstance] Fetched InteractionInstance
210
223
  def fetch
211
- params = {}
224
+ params = Twilio::Values.of({})
212
225
 
213
226
  payload = @version.fetch(
214
227
  'GET',
@@ -216,7 +229,7 @@ module Twilio
216
229
  params,
217
230
  )
218
231
 
219
- return InteractionInstance.new(
232
+ InteractionInstance.new(
220
233
  @version,
221
234
  payload,
222
235
  service_sid: @solution[:service_sid],
@@ -43,7 +43,7 @@ module Twilio
43
43
  # but a limit is defined, stream() will attempt to read the
44
44
  # limit with the most efficient page size, i.e. min(limit, 1000)
45
45
  # @return [Array] Array of up to limit results
46
- def list(identifier: nil, participant_type: nil, limit: nil, page_size: nil)
46
+ def list(identifier: :unset, participant_type: :unset, limit: nil, page_size: nil)
47
47
  self.stream(
48
48
  identifier: identifier,
49
49
  participant_type: participant_type,
@@ -67,7 +67,7 @@ module Twilio
67
67
  # but a limit is defined, stream() will attempt to read the
68
68
  # limit with the most efficient page size, i.e. min(limit, 1000)
69
69
  # @return [Enumerable] Enumerable that will yield up to limit results
70
- def stream(identifier: nil, participant_type: nil, limit: nil, page_size: nil)
70
+ def stream(identifier: :unset, participant_type: :unset, limit: nil, page_size: nil)
71
71
  limits = @version.read_limits(limit, page_size)
72
72
 
73
73
  page = self.page(
@@ -116,20 +116,33 @@ module Twilio
116
116
  # @param [Integer] page_number Page Number, this value is simply for client state
117
117
  # @param [Integer] page_size Number of records to return, defaults to 50
118
118
  # @return [Page] Page of ParticipantInstance
119
- def page(identifier: nil, participant_type: nil, page_token: nil, page_number: nil, page_size: nil)
120
- params = {
119
+ def page(identifier: :unset, participant_type: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
120
+ params = Twilio::Values.of({
121
121
  'Identifier' => identifier,
122
122
  'ParticipantType' => participant_type,
123
123
  'PageToken' => page_token,
124
124
  'Page' => page_number,
125
125
  'PageSize' => page_size,
126
- }
126
+ })
127
127
  response = @version.page(
128
128
  'GET',
129
129
  @uri,
130
130
  params
131
131
  )
132
- return ParticipantPage.new(@version, response, @solution)
132
+ ParticipantPage.new(@version, response, @solution)
133
+ end
134
+
135
+ ##
136
+ # Retrieve a single page of ParticipantInstance records from the API.
137
+ # Request is executed immediately.
138
+ # @param [String] target_url API-generated URL for the requested results page
139
+ # @return [Page] Page of ParticipantInstance
140
+ def get_page(target_url)
141
+ response = @version.domain.request(
142
+ 'GET',
143
+ target_url
144
+ )
145
+ ParticipantPage.new(@version, response, @solution)
133
146
  end
134
147
 
135
148
  ##
@@ -142,12 +155,12 @@ module Twilio
142
155
  # @param [participant.ParticipantType] participant_type The Type of this
143
156
  # Participant. One of `sms`, `voice` or `phone`.
144
157
  # @return [ParticipantInstance] Newly created ParticipantInstance
145
- def create(identifier: nil, friendly_name: nil, participant_type: nil)
146
- data = {
158
+ def create(identifier: nil, friendly_name: :unset, participant_type: :unset)
159
+ data = Twilio::Values.of({
147
160
  'Identifier' => identifier,
148
161
  'FriendlyName' => friendly_name,
149
162
  'ParticipantType' => participant_type,
150
- }
163
+ })
151
164
 
152
165
  payload = @version.create(
153
166
  'POST',
@@ -155,7 +168,7 @@ module Twilio
155
168
  data: data
156
169
  )
157
170
 
158
- return ParticipantInstance.new(
171
+ ParticipantInstance.new(
159
172
  @version,
160
173
  payload,
161
174
  service_sid: @solution[:service_sid],
@@ -191,7 +204,7 @@ module Twilio
191
204
  # @param [Hash] payload Payload response from the API
192
205
  # @return [ParticipantInstance] ParticipantInstance
193
206
  def get_instance(payload)
194
- return ParticipantInstance.new(
207
+ ParticipantInstance.new(
195
208
  @version,
196
209
  payload,
197
210
  service_sid: @solution[:service_sid],
@@ -234,7 +247,7 @@ module Twilio
234
247
  # Fetch a ParticipantInstance
235
248
  # @return [ParticipantInstance] Fetched ParticipantInstance
236
249
  def fetch
237
- params = {}
250
+ params = Twilio::Values.of({})
238
251
 
239
252
  payload = @version.fetch(
240
253
  'GET',
@@ -242,7 +255,7 @@ module Twilio
242
255
  params,
243
256
  )
244
257
 
245
- return ParticipantInstance.new(
258
+ ParticipantInstance.new(
246
259
  @version,
247
260
  payload,
248
261
  service_sid: @solution[:service_sid],
@@ -255,7 +268,7 @@ module Twilio
255
268
  # Deletes the ParticipantInstance
256
269
  # @return [Boolean] true if delete succeeds, true otherwise
257
270
  def delete
258
- return @version.delete('delete', @uri)
271
+ @version.delete('delete', @uri)
259
272
  end
260
273
 
261
274
  ##
@@ -267,12 +280,12 @@ module Twilio
267
280
  # @param [String] friendly_name A human readable description of this resource, up
268
281
  # to 64 characters.
269
282
  # @return [ParticipantInstance] Updated ParticipantInstance
270
- def update(participant_type: nil, identifier: nil, friendly_name: nil)
271
- data = {
283
+ def update(participant_type: :unset, identifier: :unset, friendly_name: :unset)
284
+ data = Twilio::Values.of({
272
285
  'ParticipantType' => participant_type,
273
286
  'Identifier' => identifier,
274
287
  'FriendlyName' => friendly_name,
275
- }
288
+ })
276
289
 
277
290
  payload = @version.update(
278
291
  'POST',
@@ -280,7 +293,7 @@ module Twilio
280
293
  data: data,
281
294
  )
282
295
 
283
- return ParticipantInstance.new(
296
+ ParticipantInstance.new(
284
297
  @version,
285
298
  payload,
286
299
  service_sid: @solution[:service_sid],
@@ -449,7 +462,7 @@ module Twilio
449
462
  # @param [String] friendly_name A human readable description of this resource, up
450
463
  # to 64 characters.
451
464
  # @return [ParticipantInstance] Updated ParticipantInstance
452
- def update(participant_type: nil, identifier: nil, friendly_name: nil)
465
+ def update(participant_type: :unset, identifier: :unset, friendly_name: :unset)
453
466
  context.update(
454
467
  participant_type: participant_type,
455
468
  identifier: identifier,