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
@@ -55,7 +55,7 @@ module Twilio
55
55
  # @param [Hash] payload Payload response from the API
56
56
  # @return [WorkerStatisticsInstance] WorkerStatisticsInstance
57
57
  def get_instance(payload)
58
- return WorkerStatisticsInstance.new(
58
+ WorkerStatisticsInstance.new(
59
59
  @version,
60
60
  payload,
61
61
  workspace_sid: @solution[:workspace_sid],
@@ -94,12 +94,12 @@ module Twilio
94
94
  # @param [Time] start_date The start_date
95
95
  # @param [Time] end_date The end_date
96
96
  # @return [WorkerStatisticsInstance] Fetched WorkerStatisticsInstance
97
- def fetch(minutes: nil, start_date: nil, end_date: nil)
98
- params = {
97
+ def fetch(minutes: :unset, start_date: :unset, end_date: :unset)
98
+ params = Twilio::Values.of({
99
99
  'Minutes' => minutes,
100
100
  'StartDate' => Twilio.serialize_iso8601(start_date),
101
101
  'EndDate' => Twilio.serialize_iso8601(end_date),
102
- }
102
+ })
103
103
 
104
104
  payload = @version.fetch(
105
105
  'GET',
@@ -107,7 +107,7 @@ module Twilio
107
107
  params,
108
108
  )
109
109
 
110
- return WorkerStatisticsInstance.new(
110
+ WorkerStatisticsInstance.new(
111
111
  @version,
112
112
  payload,
113
113
  workspace_sid: @solution[:workspace_sid],
@@ -193,7 +193,7 @@ module Twilio
193
193
  # @param [Time] start_date The start_date
194
194
  # @param [Time] end_date The end_date
195
195
  # @return [WorkerStatisticsInstance] Fetched WorkerStatisticsInstance
196
- def fetch(minutes: nil, start_date: nil, end_date: nil)
196
+ def fetch(minutes: :unset, start_date: :unset, end_date: :unset)
197
197
  context.fetch(
198
198
  minutes: minutes,
199
199
  start_date: start_date,
@@ -52,7 +52,7 @@ module Twilio
52
52
  # @param [Hash] payload Payload response from the API
53
53
  # @return [WorkersStatisticsInstance] WorkersStatisticsInstance
54
54
  def get_instance(payload)
55
- return WorkersStatisticsInstance.new(
55
+ WorkersStatisticsInstance.new(
56
56
  @version,
57
57
  payload,
58
58
  workspace_sid: @solution[:workspace_sid],
@@ -91,15 +91,15 @@ module Twilio
91
91
  # @param [String] task_queue_name The task_queue_name
92
92
  # @param [String] friendly_name The friendly_name
93
93
  # @return [WorkersStatisticsInstance] Fetched WorkersStatisticsInstance
94
- def fetch(minutes: nil, start_date: nil, end_date: nil, task_queue_sid: nil, task_queue_name: nil, friendly_name: nil)
95
- params = {
94
+ def fetch(minutes: :unset, start_date: :unset, end_date: :unset, task_queue_sid: :unset, task_queue_name: :unset, friendly_name: :unset)
95
+ params = Twilio::Values.of({
96
96
  'Minutes' => minutes,
97
97
  'StartDate' => Twilio.serialize_iso8601(start_date),
98
98
  'EndDate' => Twilio.serialize_iso8601(end_date),
99
99
  'TaskQueueSid' => task_queue_sid,
100
100
  'TaskQueueName' => task_queue_name,
101
101
  'FriendlyName' => friendly_name,
102
- }
102
+ })
103
103
 
104
104
  payload = @version.fetch(
105
105
  'GET',
@@ -107,7 +107,7 @@ module Twilio
107
107
  params,
108
108
  )
109
109
 
110
- return WorkersStatisticsInstance.new(
110
+ WorkersStatisticsInstance.new(
111
111
  @version,
112
112
  payload,
113
113
  workspace_sid: @solution[:workspace_sid],
@@ -192,7 +192,7 @@ module Twilio
192
192
  # @param [String] task_queue_name The task_queue_name
193
193
  # @param [String] friendly_name The friendly_name
194
194
  # @return [WorkersStatisticsInstance] Fetched WorkersStatisticsInstance
195
- def fetch(minutes: nil, start_date: nil, end_date: nil, task_queue_sid: nil, task_queue_name: nil, friendly_name: nil)
195
+ def fetch(minutes: :unset, start_date: :unset, end_date: :unset, task_queue_sid: :unset, task_queue_name: :unset, friendly_name: :unset)
196
196
  context.fetch(
197
197
  minutes: minutes,
198
198
  start_date: start_date,
@@ -37,7 +37,7 @@ module Twilio
37
37
  # but a limit is defined, stream() will attempt to read the
38
38
  # limit with the most efficient page size, i.e. min(limit, 1000)
39
39
  # @return [Array] Array of up to limit results
40
- def list(friendly_name: nil, limit: nil, page_size: nil)
40
+ def list(friendly_name: :unset, limit: nil, page_size: nil)
41
41
  self.stream(
42
42
  friendly_name: friendly_name,
43
43
  limit: limit,
@@ -57,7 +57,7 @@ module Twilio
57
57
  # but a limit is defined, stream() will attempt to read the
58
58
  # limit with the most efficient page size, i.e. min(limit, 1000)
59
59
  # @return [Enumerable] Enumerable that will yield up to limit results
60
- def stream(friendly_name: nil, limit: nil, page_size: nil)
60
+ def stream(friendly_name: :unset, limit: nil, page_size: nil)
61
61
  limits = @version.read_limits(limit, page_size)
62
62
 
63
63
  page = self.page(
@@ -99,19 +99,32 @@ module Twilio
99
99
  # @param [Integer] page_number Page Number, this value is simply for client state
100
100
  # @param [Integer] page_size Number of records to return, defaults to 50
101
101
  # @return [Page] Page of WorkflowInstance
102
- def page(friendly_name: nil, page_token: nil, page_number: nil, page_size: nil)
103
- params = {
102
+ def page(friendly_name: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
103
+ params = Twilio::Values.of({
104
104
  'FriendlyName' => friendly_name,
105
105
  'PageToken' => page_token,
106
106
  'Page' => page_number,
107
107
  'PageSize' => page_size,
108
- }
108
+ })
109
109
  response = @version.page(
110
110
  'GET',
111
111
  @uri,
112
112
  params
113
113
  )
114
- return WorkflowPage.new(@version, response, @solution)
114
+ WorkflowPage.new(@version, response, @solution)
115
+ end
116
+
117
+ ##
118
+ # Retrieve a single page of WorkflowInstance records from the API.
119
+ # Request is executed immediately.
120
+ # @param [String] target_url API-generated URL for the requested results page
121
+ # @return [Page] Page of WorkflowInstance
122
+ def get_page(target_url)
123
+ response = @version.domain.request(
124
+ 'GET',
125
+ target_url
126
+ )
127
+ WorkflowPage.new(@version, response, @solution)
115
128
  end
116
129
 
117
130
  ##
@@ -124,14 +137,14 @@ module Twilio
124
137
  # fallback_assignment_callback_url
125
138
  # @param [String] task_reservation_timeout The task_reservation_timeout
126
139
  # @return [WorkflowInstance] Newly created WorkflowInstance
127
- def create(friendly_name: nil, configuration: nil, assignment_callback_url: nil, fallback_assignment_callback_url: nil, task_reservation_timeout: nil)
128
- data = {
140
+ def create(friendly_name: nil, configuration: nil, assignment_callback_url: :unset, fallback_assignment_callback_url: :unset, task_reservation_timeout: :unset)
141
+ data = Twilio::Values.of({
129
142
  'FriendlyName' => friendly_name,
130
143
  'Configuration' => configuration,
131
144
  'AssignmentCallbackUrl' => assignment_callback_url,
132
145
  'FallbackAssignmentCallbackUrl' => fallback_assignment_callback_url,
133
146
  'TaskReservationTimeout' => task_reservation_timeout,
134
- }
147
+ })
135
148
 
136
149
  payload = @version.create(
137
150
  'POST',
@@ -139,7 +152,7 @@ module Twilio
139
152
  data: data
140
153
  )
141
154
 
142
- return WorkflowInstance.new(
155
+ WorkflowInstance.new(
143
156
  @version,
144
157
  payload,
145
158
  workspace_sid: @solution[:workspace_sid],
@@ -173,7 +186,7 @@ module Twilio
173
186
  # @param [Hash] payload Payload response from the API
174
187
  # @return [WorkflowInstance] WorkflowInstance
175
188
  def get_instance(payload)
176
- return WorkflowInstance.new(
189
+ WorkflowInstance.new(
177
190
  @version,
178
191
  payload,
179
192
  workspace_sid: @solution[:workspace_sid],
@@ -212,7 +225,7 @@ module Twilio
212
225
  # Fetch a WorkflowInstance
213
226
  # @return [WorkflowInstance] Fetched WorkflowInstance
214
227
  def fetch
215
- params = {}
228
+ params = Twilio::Values.of({})
216
229
 
217
230
  payload = @version.fetch(
218
231
  'GET',
@@ -220,7 +233,7 @@ module Twilio
220
233
  params,
221
234
  )
222
235
 
223
- return WorkflowInstance.new(
236
+ WorkflowInstance.new(
224
237
  @version,
225
238
  payload,
226
239
  workspace_sid: @solution[:workspace_sid],
@@ -237,14 +250,14 @@ module Twilio
237
250
  # @param [String] configuration The configuration
238
251
  # @param [String] task_reservation_timeout The task_reservation_timeout
239
252
  # @return [WorkflowInstance] Updated WorkflowInstance
240
- def update(friendly_name: nil, assignment_callback_url: nil, fallback_assignment_callback_url: nil, configuration: nil, task_reservation_timeout: nil)
241
- data = {
253
+ def update(friendly_name: :unset, assignment_callback_url: :unset, fallback_assignment_callback_url: :unset, configuration: :unset, task_reservation_timeout: :unset)
254
+ data = Twilio::Values.of({
242
255
  'FriendlyName' => friendly_name,
243
256
  'AssignmentCallbackUrl' => assignment_callback_url,
244
257
  'FallbackAssignmentCallbackUrl' => fallback_assignment_callback_url,
245
258
  'Configuration' => configuration,
246
259
  'TaskReservationTimeout' => task_reservation_timeout,
247
- }
260
+ })
248
261
 
249
262
  payload = @version.update(
250
263
  'POST',
@@ -252,7 +265,7 @@ module Twilio
252
265
  data: data,
253
266
  )
254
267
 
255
- return WorkflowInstance.new(
268
+ WorkflowInstance.new(
256
269
  @version,
257
270
  payload,
258
271
  workspace_sid: @solution[:workspace_sid],
@@ -264,14 +277,14 @@ module Twilio
264
277
  # Deletes the WorkflowInstance
265
278
  # @return [Boolean] true if delete succeeds, true otherwise
266
279
  def delete
267
- return @version.delete('delete', @uri)
280
+ @version.delete('delete', @uri)
268
281
  end
269
282
 
270
283
  ##
271
284
  # Access the statistics
272
285
  # @return [WorkflowStatisticsList] WorkflowStatisticsList
273
286
  def statistics
274
- return WorkflowStatisticsContext.new(
287
+ WorkflowStatisticsContext.new(
275
288
  @version,
276
289
  @solution[:workspace_sid],
277
290
  @solution[:sid],
@@ -406,7 +419,7 @@ module Twilio
406
419
  # @param [String] configuration The configuration
407
420
  # @param [String] task_reservation_timeout The task_reservation_timeout
408
421
  # @return [WorkflowInstance] Updated WorkflowInstance
409
- def update(friendly_name: nil, assignment_callback_url: nil, fallback_assignment_callback_url: nil, configuration: nil, task_reservation_timeout: nil)
422
+ def update(friendly_name: :unset, assignment_callback_url: :unset, fallback_assignment_callback_url: :unset, configuration: :unset, task_reservation_timeout: :unset)
410
423
  context.update(
411
424
  friendly_name: friendly_name,
412
425
  assignment_callback_url: assignment_callback_url,
@@ -55,7 +55,7 @@ module Twilio
55
55
  # @param [Hash] payload Payload response from the API
56
56
  # @return [WorkflowStatisticsInstance] WorkflowStatisticsInstance
57
57
  def get_instance(payload)
58
- return WorkflowStatisticsInstance.new(
58
+ WorkflowStatisticsInstance.new(
59
59
  @version,
60
60
  payload,
61
61
  workspace_sid: @solution[:workspace_sid],
@@ -94,12 +94,12 @@ module Twilio
94
94
  # @param [Time] start_date The start_date
95
95
  # @param [Time] end_date The end_date
96
96
  # @return [WorkflowStatisticsInstance] Fetched WorkflowStatisticsInstance
97
- def fetch(minutes: nil, start_date: nil, end_date: nil)
98
- params = {
97
+ def fetch(minutes: :unset, start_date: :unset, end_date: :unset)
98
+ params = Twilio::Values.of({
99
99
  'Minutes' => minutes,
100
100
  'StartDate' => Twilio.serialize_iso8601(start_date),
101
101
  'EndDate' => Twilio.serialize_iso8601(end_date),
102
- }
102
+ })
103
103
 
104
104
  payload = @version.fetch(
105
105
  'GET',
@@ -107,7 +107,7 @@ module Twilio
107
107
  params,
108
108
  )
109
109
 
110
- return WorkflowStatisticsInstance.new(
110
+ WorkflowStatisticsInstance.new(
111
111
  @version,
112
112
  payload,
113
113
  workspace_sid: @solution[:workspace_sid],
@@ -198,7 +198,7 @@ module Twilio
198
198
  # @param [Time] start_date The start_date
199
199
  # @param [Time] end_date The end_date
200
200
  # @return [WorkflowStatisticsInstance] Fetched WorkflowStatisticsInstance
201
- def fetch(minutes: nil, start_date: nil, end_date: nil)
201
+ def fetch(minutes: :unset, start_date: :unset, end_date: :unset)
202
202
  context.fetch(
203
203
  minutes: minutes,
204
204
  start_date: start_date,
@@ -51,7 +51,7 @@ module Twilio
51
51
  # @param [Hash] payload Payload response from the API
52
52
  # @return [WorkspaceStatisticsInstance] WorkspaceStatisticsInstance
53
53
  def get_instance(payload)
54
- return WorkspaceStatisticsInstance.new(
54
+ WorkspaceStatisticsInstance.new(
55
55
  @version,
56
56
  payload,
57
57
  workspace_sid: @solution[:workspace_sid],
@@ -87,12 +87,12 @@ module Twilio
87
87
  # @param [Time] start_date The start_date
88
88
  # @param [Time] end_date The end_date
89
89
  # @return [WorkspaceStatisticsInstance] Fetched WorkspaceStatisticsInstance
90
- def fetch(minutes: nil, start_date: nil, end_date: nil)
91
- params = {
90
+ def fetch(minutes: :unset, start_date: :unset, end_date: :unset)
91
+ params = Twilio::Values.of({
92
92
  'Minutes' => minutes,
93
93
  'StartDate' => Twilio.serialize_iso8601(start_date),
94
94
  'EndDate' => Twilio.serialize_iso8601(end_date),
95
- }
95
+ })
96
96
 
97
97
  payload = @version.fetch(
98
98
  'GET',
@@ -100,7 +100,7 @@ module Twilio
100
100
  params,
101
101
  )
102
102
 
103
- return WorkspaceStatisticsInstance.new(
103
+ WorkspaceStatisticsInstance.new(
104
104
  @version,
105
105
  payload,
106
106
  workspace_sid: @solution[:workspace_sid],
@@ -182,7 +182,7 @@ module Twilio
182
182
  # @param [Time] start_date The start_date
183
183
  # @param [Time] end_date The end_date
184
184
  # @return [WorkspaceStatisticsInstance] Fetched WorkspaceStatisticsInstance
185
- def fetch(minutes: nil, start_date: nil, end_date: nil)
185
+ def fetch(minutes: :unset, start_date: :unset, end_date: :unset)
186
186
  context.fetch(
187
187
  minutes: minutes,
188
188
  start_date: start_date,
@@ -26,8 +26,8 @@ module Twilio
26
26
  @v1 ||= V1.new self
27
27
  end
28
28
 
29
- def trunks
30
- self.v1.trunks
29
+ def trunks(sid=:unset)
30
+ self.v1.trunks(sid)
31
31
  end
32
32
 
33
33
  ##
@@ -31,15 +31,15 @@ module Twilio
31
31
  # @param [String] recording The recording
32
32
  # @param [Boolean] secure The secure
33
33
  # @return [TrunkInstance] Newly created TrunkInstance
34
- def create(friendly_name: nil, domain_name: nil, disaster_recovery_url: nil, disaster_recovery_method: nil, recording: nil, secure: nil)
35
- data = {
34
+ def create(friendly_name: :unset, domain_name: :unset, disaster_recovery_url: :unset, disaster_recovery_method: :unset, recording: :unset, secure: :unset)
35
+ data = Twilio::Values.of({
36
36
  'FriendlyName' => friendly_name,
37
37
  'DomainName' => domain_name,
38
38
  'DisasterRecoveryUrl' => disaster_recovery_url,
39
39
  'DisasterRecoveryMethod' => disaster_recovery_method,
40
40
  'Recording' => recording,
41
41
  'Secure' => secure,
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 TrunkInstance.new(
50
+ TrunkInstance.new(
51
51
  @version,
52
52
  payload,
53
53
  )
@@ -121,18 +121,31 @@ module Twilio
121
121
  # @param [Integer] page_number Page Number, this value is simply for client state
122
122
  # @param [Integer] page_size Number of records to return, defaults to 50
123
123
  # @return [Page] Page of TrunkInstance
124
- def page(page_token: nil, page_number: nil, page_size: nil)
125
- params = {
124
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
125
+ params = Twilio::Values.of({
126
126
  'PageToken' => page_token,
127
127
  'Page' => page_number,
128
128
  'PageSize' => page_size,
129
- }
129
+ })
130
130
  response = @version.page(
131
131
  'GET',
132
132
  @uri,
133
133
  params
134
134
  )
135
- return TrunkPage.new(@version, response, @solution)
135
+ TrunkPage.new(@version, response, @solution)
136
+ end
137
+
138
+ ##
139
+ # Retrieve a single page of TrunkInstance records from the API.
140
+ # Request is executed immediately.
141
+ # @param [String] target_url API-generated URL for the requested results page
142
+ # @return [Page] Page of TrunkInstance
143
+ def get_page(target_url)
144
+ response = @version.domain.request(
145
+ 'GET',
146
+ target_url
147
+ )
148
+ TrunkPage.new(@version, response, @solution)
136
149
  end
137
150
 
138
151
  ##
@@ -161,7 +174,7 @@ module Twilio
161
174
  # @param [Hash] payload Payload response from the API
162
175
  # @return [TrunkInstance] TrunkInstance
163
176
  def get_instance(payload)
164
- return TrunkInstance.new(
177
+ TrunkInstance.new(
165
178
  @version,
166
179
  payload,
167
180
  )
@@ -200,7 +213,7 @@ module Twilio
200
213
  # Fetch a TrunkInstance
201
214
  # @return [TrunkInstance] Fetched TrunkInstance
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 TrunkInstance.new(
224
+ TrunkInstance.new(
212
225
  @version,
213
226
  payload,
214
227
  sid: @solution[:sid],
@@ -219,7 +232,7 @@ module Twilio
219
232
  # Deletes the TrunkInstance
220
233
  # @return [Boolean] true if delete succeeds, true otherwise
221
234
  def delete
222
- return @version.delete('delete', @uri)
235
+ @version.delete('delete', @uri)
223
236
  end
224
237
 
225
238
  ##
@@ -231,15 +244,15 @@ module Twilio
231
244
  # @param [String] recording The recording
232
245
  # @param [Boolean] secure The secure
233
246
  # @return [TrunkInstance] Updated TrunkInstance
234
- def update(friendly_name: nil, domain_name: nil, disaster_recovery_url: nil, disaster_recovery_method: nil, recording: nil, secure: nil)
235
- data = {
247
+ def update(friendly_name: :unset, domain_name: :unset, disaster_recovery_url: :unset, disaster_recovery_method: :unset, recording: :unset, secure: :unset)
248
+ data = Twilio::Values.of({
236
249
  'FriendlyName' => friendly_name,
237
250
  'DomainName' => domain_name,
238
251
  'DisasterRecoveryUrl' => disaster_recovery_url,
239
252
  'DisasterRecoveryMethod' => disaster_recovery_method,
240
253
  'Recording' => recording,
241
254
  'Secure' => secure,
242
- }
255
+ })
243
256
 
244
257
  payload = @version.update(
245
258
  'POST',
@@ -247,7 +260,7 @@ module Twilio
247
260
  data: data,
248
261
  )
249
262
 
250
- return TrunkInstance.new(
263
+ TrunkInstance.new(
251
264
  @version,
252
265
  payload,
253
266
  sid: @solution[:sid],
@@ -479,7 +492,7 @@ module Twilio
479
492
  # @param [String] recording The recording
480
493
  # @param [Boolean] secure The secure
481
494
  # @return [TrunkInstance] Updated TrunkInstance
482
- def update(friendly_name: nil, domain_name: nil, disaster_recovery_url: nil, disaster_recovery_method: nil, recording: nil, secure: nil)
495
+ def update(friendly_name: :unset, domain_name: :unset, disaster_recovery_url: :unset, disaster_recovery_method: :unset, recording: :unset, secure: :unset)
483
496
  context.update(
484
497
  friendly_name: friendly_name,
485
498
  domain_name: domain_name,