twilio-ruby 5.0.0.rc18 → 5.0.0.rc19

Sign up to get free protection for your applications and to get access to all the features.
Files changed (369) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +9 -0
  3. data/lib/twilio-ruby/jwt/access_token.rb +25 -0
  4. data/lib/twilio-ruby/rest/accounts.rb +40 -0
  5. data/lib/twilio-ruby/rest/accounts/v1.rb +35 -0
  6. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +102 -0
  7. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +352 -0
  8. data/lib/twilio-ruby/rest/api.rb +30 -34
  9. data/lib/twilio-ruby/rest/api/v2010.rb +28 -32
  10. data/lib/twilio-ruby/rest/api/v2010/account.rb +132 -150
  11. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +71 -55
  12. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +29 -29
  13. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +58 -58
  14. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +37 -37
  15. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +45 -45
  16. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +39 -39
  17. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +39 -39
  18. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +39 -39
  19. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +102 -123
  20. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +33 -33
  21. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +38 -38
  22. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +52 -52
  23. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +42 -37
  24. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +83 -40
  25. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +131 -43
  26. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +42 -42
  27. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +172 -96
  28. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +404 -0
  29. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +332 -0
  30. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +62 -57
  31. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +62 -57
  32. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +62 -57
  33. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +37 -37
  34. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +78 -85
  35. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +19 -19
  36. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +47 -57
  37. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +18 -18
  38. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +18 -18
  39. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +46 -46
  40. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +40 -40
  41. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +50 -50
  42. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +36 -36
  43. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +101 -68
  44. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +372 -0
  45. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +356 -0
  46. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +42 -42
  47. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +43 -43
  48. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +37 -37
  49. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +27 -16
  50. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +48 -48
  51. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +43 -43
  52. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +65 -60
  53. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +43 -38
  54. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +43 -38
  55. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +48 -48
  56. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +44 -44
  57. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +20 -20
  58. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +42 -42
  59. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +13 -13
  60. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +78 -82
  61. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +45 -73
  62. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +45 -73
  63. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +45 -73
  64. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +45 -73
  65. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +45 -73
  66. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +45 -73
  67. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +45 -73
  68. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +45 -73
  69. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +52 -52
  70. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +18 -18
  71. data/lib/twilio-ruby/rest/chat.rb +16 -9
  72. data/lib/twilio-ruby/rest/chat/v1.rb +4 -4
  73. data/lib/twilio-ruby/rest/chat/v1/credential.rb +53 -47
  74. data/lib/twilio-ruby/rest/chat/v1/service.rb +446 -69
  75. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +114 -69
  76. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +363 -0
  77. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +99 -44
  78. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +76 -54
  79. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +45 -45
  80. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +101 -46
  81. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +223 -0
  82. data/lib/twilio-ruby/rest/chat/v2.rb +44 -0
  83. data/lib/twilio-ruby/rest/chat/v2/credential.rb +381 -0
  84. data/lib/twilio-ruby/rest/chat/v2/service.rb +633 -0
  85. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +513 -0
  86. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +363 -0
  87. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +406 -0
  88. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +418 -0
  89. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +373 -0
  90. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +433 -0
  91. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +223 -0
  92. data/lib/twilio-ruby/rest/client.rb +91 -75
  93. data/lib/twilio-ruby/rest/fax.rb +40 -0
  94. data/lib/twilio-ruby/rest/fax/v1.rb +35 -0
  95. data/lib/twilio-ruby/rest/fax/v1/fax.rb +397 -0
  96. data/lib/twilio-ruby/rest/ip_messaging.rb +16 -9
  97. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +4 -4
  98. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +53 -47
  99. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +446 -69
  100. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +114 -69
  101. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +363 -0
  102. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +99 -44
  103. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +76 -54
  104. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +45 -45
  105. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +101 -46
  106. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +223 -0
  107. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +44 -0
  108. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +381 -0
  109. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +633 -0
  110. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +513 -0
  111. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +363 -0
  112. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +406 -0
  113. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +418 -0
  114. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +373 -0
  115. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +433 -0
  116. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +223 -0
  117. data/lib/twilio-ruby/rest/lookups.rb +6 -6
  118. data/lib/twilio-ruby/rest/lookups/v1.rb +3 -3
  119. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +30 -25
  120. data/lib/twilio-ruby/rest/messaging.rb +40 -0
  121. data/lib/twilio-ruby/rest/messaging/v1.rb +35 -0
  122. data/lib/twilio-ruby/rest/messaging/v1/service.rb +524 -0
  123. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +331 -0
  124. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +336 -0
  125. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +336 -0
  126. data/lib/twilio-ruby/rest/monitor.rb +7 -7
  127. data/lib/twilio-ruby/rest/monitor/v1.rb +4 -4
  128. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +57 -85
  129. data/lib/twilio-ruby/rest/monitor/v1/event.rb +63 -81
  130. data/lib/twilio-ruby/rest/notify.rb +7 -7
  131. data/lib/twilio-ruby/rest/notify/v1.rb +4 -4
  132. data/lib/twilio-ruby/rest/notify/v1/credential.rb +53 -47
  133. data/lib/twilio-ruby/rest/notify/v1/service.rb +148 -60
  134. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +70 -86
  135. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +47 -33
  136. data/lib/twilio-ruby/rest/notify/v1/service/segment.rb +206 -0
  137. data/lib/twilio-ruby/rest/notify/v1/service/user.rb +418 -0
  138. data/lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb +247 -0
  139. data/lib/twilio-ruby/rest/notify/v1/service/user/user_binding.rb +405 -0
  140. data/lib/twilio-ruby/rest/preview.rb +34 -19
  141. data/lib/twilio-ruby/rest/preview/marketplace.rb +44 -0
  142. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +310 -0
  143. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +284 -0
  144. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +411 -0
  145. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +322 -0
  146. data/lib/twilio-ruby/rest/preview/sync.rb +3 -3
  147. data/lib/twilio-ruby/rest/preview/sync/service.rb +72 -61
  148. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +85 -46
  149. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +377 -0
  150. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +79 -47
  151. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +46 -46
  152. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +377 -0
  153. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +79 -47
  154. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +46 -46
  155. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +377 -0
  156. data/lib/twilio-ruby/rest/preview/wireless.rb +12 -12
  157. data/lib/twilio-ruby/rest/preview/wireless/command.rb +68 -45
  158. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +137 -73
  159. data/lib/twilio-ruby/rest/preview/wireless/{device.rb → sim.rb} +127 -150
  160. data/lib/twilio-ruby/rest/preview/wireless/{device → sim}/usage.rb +49 -49
  161. data/lib/twilio-ruby/rest/pricing.rb +8 -8
  162. data/lib/twilio-ruby/rest/pricing/v1.rb +5 -5
  163. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +16 -16
  164. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +33 -33
  165. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +16 -16
  166. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +33 -38
  167. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +18 -18
  168. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +33 -33
  169. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +26 -26
  170. data/lib/twilio-ruby/rest/taskrouter.rb +6 -6
  171. data/lib/twilio-ruby/rest/taskrouter/v1.rb +3 -3
  172. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +103 -82
  173. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +48 -43
  174. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +42 -42
  175. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +114 -75
  176. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +50 -40
  177. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +35 -35
  178. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +110 -78
  179. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +31 -30
  180. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +24 -24
  181. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +71 -61
  182. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +50 -40
  183. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +45 -45
  184. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +28 -23
  185. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +28 -23
  186. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +60 -50
  187. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +29 -24
  188. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +34 -29
  189. data/lib/twilio-ruby/rest/trunking.rb +6 -6
  190. data/lib/twilio-ruby/rest/trunking/v1.rb +3 -3
  191. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +67 -67
  192. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +39 -39
  193. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +39 -39
  194. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +47 -47
  195. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +58 -58
  196. data/lib/twilio-ruby/rest/video.rb +44 -0
  197. data/lib/twilio-ruby/rest/video/v1.rb +44 -0
  198. data/lib/twilio-ruby/rest/video/v1/recording.rb +341 -0
  199. data/lib/twilio-ruby/rest/video/v1/room.rb +411 -0
  200. data/lib/twilio-ruby/version.rb +1 -1
  201. data/spec/integration/accounts/v1/credential/public_key_spec.rb +226 -0
  202. data/spec/integration/accounts/v1/credential_spec.rb +10 -0
  203. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +7 -7
  204. data/spec/integration/api/v2010/account/address_spec.rb +32 -24
  205. data/spec/integration/api/v2010/account/application_spec.rb +24 -24
  206. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +11 -11
  207. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +7 -7
  208. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +7 -7
  209. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +7 -7
  210. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +11 -11
  211. data/spec/integration/api/v2010/account/call/feedback_spec.rb +14 -14
  212. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +14 -14
  213. data/spec/integration/api/v2010/account/call/notification_spec.rb +15 -15
  214. data/spec/integration/api/v2010/account/call/recording_spec.rb +15 -15
  215. data/spec/integration/api/v2010/account/call_spec.rb +24 -24
  216. data/spec/integration/api/v2010/account/conference/participant_spec.rb +97 -25
  217. data/spec/integration/api/v2010/account/conference_spec.rb +56 -17
  218. data/spec/integration/api/v2010/account/connect_app_spec.rb +15 -15
  219. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +135 -0
  220. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +223 -0
  221. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +12 -12
  222. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +12 -12
  223. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +12 -12
  224. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +32 -24
  225. data/spec/integration/api/v2010/account/key_spec.rb +19 -19
  226. data/spec/integration/api/v2010/account/message/feedback_spec.rb +25 -3
  227. data/spec/integration/api/v2010/account/message/media_spec.rb +15 -15
  228. data/spec/integration/api/v2010/account/message_spec.rb +34 -27
  229. data/spec/integration/api/v2010/account/new_key_spec.rb +5 -5
  230. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +5 -5
  231. data/spec/integration/api/v2010/account/notification_spec.rb +15 -15
  232. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +19 -19
  233. data/spec/integration/api/v2010/account/queue/member_spec.rb +15 -15
  234. data/spec/integration/api/v2010/account/queue_spec.rb +30 -27
  235. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +175 -0
  236. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +166 -0
  237. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +15 -15
  238. data/spec/integration/api/v2010/account/recording_spec.rb +16 -16
  239. data/spec/integration/api/v2010/account/short_code_spec.rb +15 -15
  240. data/spec/integration/api/v2010/account/signing_key_spec.rb +19 -19
  241. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +24 -24
  242. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +24 -24
  243. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +20 -20
  244. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +20 -20
  245. data/spec/integration/api/v2010/account/sip/domain_spec.rb +24 -24
  246. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +24 -24
  247. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +24 -24
  248. data/spec/integration/api/v2010/account/sip_spec.rb +1 -1
  249. data/spec/integration/api/v2010/account/token_spec.rb +6 -6
  250. data/spec/integration/api/v2010/account/transcription_spec.rb +15 -15
  251. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +7 -7
  252. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +7 -7
  253. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +7 -7
  254. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +7 -7
  255. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +7 -7
  256. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +7 -7
  257. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +7 -7
  258. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +7 -7
  259. data/spec/integration/api/v2010/account/usage/record_spec.rb +7 -7
  260. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +27 -27
  261. data/spec/integration/api/v2010/account/usage_spec.rb +1 -1
  262. data/spec/integration/api/v2010/account/validation_request_spec.rb +23 -3
  263. data/spec/integration/api/v2010/account_spec.rb +20 -24
  264. data/spec/integration/chat/v1/credential_spec.rb +31 -31
  265. data/spec/integration/chat/v1/service/channel/invite_spec.rb +210 -0
  266. data/spec/integration/chat/v1/service/channel/member_spec.rb +102 -31
  267. data/spec/integration/chat/v1/service/channel/message_spec.rb +210 -16
  268. data/spec/integration/chat/v1/service/channel_spec.rb +71 -55
  269. data/spec/integration/chat/v1/service/role_spec.rb +33 -33
  270. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +92 -0
  271. data/spec/integration/chat/v1/service/user_spec.rb +57 -33
  272. data/spec/integration/chat/v1/service_spec.rb +142 -106
  273. data/spec/integration/chat/v2/credential_spec.rb +223 -0
  274. data/spec/integration/chat/v2/service/channel/invite_spec.rb +210 -0
  275. data/spec/integration/chat/v2/service/channel/member_spec.rb +284 -0
  276. data/spec/integration/chat/v2/service/channel/message_spec.rb +294 -0
  277. data/spec/integration/chat/v2/service/channel_spec.rb +275 -0
  278. data/spec/integration/chat/v2/service/role_spec.rb +263 -0
  279. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +92 -0
  280. data/spec/integration/chat/v2/service/user_spec.rb +266 -0
  281. data/spec/integration/chat/v2/service_spec.rb +325 -0
  282. data/spec/integration/fax/v1/fax_spec.rb +231 -0
  283. data/spec/integration/ip_messaging/v1/credential_spec.rb +31 -31
  284. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +210 -0
  285. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +102 -31
  286. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +210 -16
  287. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +71 -55
  288. data/spec/integration/ip_messaging/v1/service/role_spec.rb +33 -33
  289. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +92 -0
  290. data/spec/integration/ip_messaging/v1/service/user_spec.rb +57 -33
  291. data/spec/integration/ip_messaging/v1/service_spec.rb +142 -106
  292. data/spec/integration/ip_messaging/v2/credential_spec.rb +223 -0
  293. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +210 -0
  294. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +284 -0
  295. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +294 -0
  296. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +275 -0
  297. data/spec/integration/ip_messaging/v2/service/role_spec.rb +263 -0
  298. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +92 -0
  299. data/spec/integration/ip_messaging/v2/service/user_spec.rb +266 -0
  300. data/spec/integration/ip_messaging/v2/service_spec.rb +325 -0
  301. data/spec/integration/lookups/v1/phone_number_spec.rb +5 -5
  302. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +170 -0
  303. data/spec/integration/messaging/v1/service/phone_number_spec.rb +173 -0
  304. data/spec/integration/messaging/v1/service/short_code_spec.rb +173 -0
  305. data/spec/integration/messaging/v1/service_spec.rb +243 -0
  306. data/spec/integration/monitor/v1/alert_spec.rb +57 -57
  307. data/spec/integration/monitor/v1/event_spec.rb +11 -11
  308. data/spec/integration/notify/v1/credential_spec.rb +23 -23
  309. data/spec/integration/notify/v1/service/binding_spec.rb +88 -71
  310. data/spec/integration/notify/v1/service/notification_spec.rb +7 -5
  311. data/spec/integration/notify/v1/service/segment_spec.rb +84 -0
  312. data/spec/integration/notify/v1/service/user/segment_memberships_spec.rb +118 -0
  313. data/spec/integration/notify/v1/service/user/user_binding_spec.rb +235 -0
  314. data/spec/integration/notify/v1/service/user_spec.rb +213 -0
  315. data/spec/integration/notify/v1/service_spec.rb +50 -30
  316. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +121 -0
  317. data/spec/integration/preview/marketplace/available_add_on_spec.rb +142 -0
  318. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +164 -0
  319. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +252 -0
  320. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +206 -0
  321. data/spec/integration/preview/sync/service/document_spec.rb +179 -17
  322. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +167 -11
  323. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +206 -0
  324. data/spec/integration/preview/sync/service/sync_list_spec.rb +143 -9
  325. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +167 -11
  326. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +206 -0
  327. data/spec/integration/preview/sync/service/sync_map_spec.rb +143 -9
  328. data/spec/integration/preview/sync/service_spec.rb +171 -11
  329. data/spec/integration/preview/wireless/command_spec.rb +120 -9
  330. data/spec/integration/preview/wireless/rate_plan_spec.rb +228 -7
  331. data/spec/integration/preview/wireless/sim/usage_spec.rb +49 -0
  332. data/spec/integration/preview/wireless/sim_spec.rb +184 -0
  333. data/spec/integration/pricing/v1/messaging/country_spec.rb +101 -5
  334. data/spec/integration/pricing/v1/messaging_spec.rb +1 -1
  335. data/spec/integration/pricing/v1/phone_number/country_spec.rb +11 -11
  336. data/spec/integration/pricing/v1/phone_number_spec.rb +1 -1
  337. data/spec/integration/pricing/v1/voice/country_spec.rb +11 -11
  338. data/spec/integration/pricing/v1/voice/number_spec.rb +5 -5
  339. data/spec/integration/pricing/v1/voice_spec.rb +1 -1
  340. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +29 -33
  341. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +11 -11
  342. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +15 -15
  343. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +11 -11
  344. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +12 -10
  345. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +17 -16
  346. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +52 -36
  347. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +101 -46
  348. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +15 -15
  349. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +15 -15
  350. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +6 -5
  351. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +6 -5
  352. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +39 -27
  353. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +13 -11
  354. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +47 -35
  355. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +10 -8
  356. data/spec/integration/taskrouter/v1/workspace_spec.rb +28 -24
  357. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +20 -20
  358. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +62 -62
  359. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +23 -23
  360. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +19 -19
  361. data/spec/integration/trunking/v1/trunk_spec.rb +23 -23
  362. data/spec/integration/video/v1/recording_spec.rb +120 -0
  363. data/spec/integration/video/v1/room_spec.rb +225 -0
  364. data/spec/jwt/access_token_spec.rb +22 -0
  365. metadata +158 -12
  366. data/lib/twilio-ruby/rest/api/v2010/account/sandbox.rb +0 -287
  367. data/spec/integration/api/v2010/account/sandbox_spec.rb +0 -99
  368. data/spec/integration/preview/wireless/device/usage_spec.rb +0 -25
  369. data/spec/integration/preview/wireless/device_spec.rb +0 -72
@@ -2,7 +2,7 @@
2
2
  # This code was generated by
3
3
  # \ / _ _ _| _ _
4
4
  # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
5
+ # / /
6
6
 
7
7
  module Twilio
8
8
  module REST
@@ -15,12 +15,12 @@ module Twilio
15
15
  # @return [CredentialList] CredentialList
16
16
  def initialize(version)
17
17
  super(version)
18
-
18
+
19
19
  # Path Solution
20
20
  @solution = {}
21
21
  @uri = "/Credentials"
22
22
  end
23
-
23
+
24
24
  ##
25
25
  # Lists CredentialInstance records from the API as a list.
26
26
  # Unlike stream(), this operation is eager and will load `limit` records into
@@ -38,7 +38,7 @@ module Twilio
38
38
  page_size: page_size
39
39
  ).entries
40
40
  end
41
-
41
+
42
42
  ##
43
43
  # Streams CredentialInstance records from the API as an Enumerable.
44
44
  # This operation lazily loads records as efficiently as possible until the limit
@@ -52,14 +52,14 @@ module Twilio
52
52
  # @return [Enumerable] Enumerable that will yield up to limit results
53
53
  def stream(limit: nil, page_size: nil)
54
54
  limits = @version.read_limits(limit, page_size)
55
-
55
+
56
56
  page = self.page(
57
57
  page_size: limits[:page_size],
58
58
  )
59
-
59
+
60
60
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
61
61
  end
62
-
62
+
63
63
  ##
64
64
  # When passed a block, yields CredentialInstance records from the API.
65
65
  # This operation lazily loads records as efficiently as possible until the limit
@@ -72,16 +72,16 @@ module Twilio
72
72
  # limit with the most efficient page size, i.e. min(limit, 1000)
73
73
  def each
74
74
  limits = @version.read_limits
75
-
75
+
76
76
  page = self.page(
77
77
  page_size: limits[:page_size],
78
78
  )
79
-
79
+
80
80
  @version.stream(page,
81
81
  limit: limits[:limit],
82
82
  page_limit: limits[:page_limit]).each {|x| yield x}
83
83
  end
84
-
84
+
85
85
  ##
86
86
  # Retrieve a single page of CredentialInstance records from the API.
87
87
  # Request is executed immediately.
@@ -102,7 +102,7 @@ module Twilio
102
102
  )
103
103
  return CredentialPage.new(@version, response, @solution)
104
104
  end
105
-
105
+
106
106
  ##
107
107
  # Retrieve a single page of CredentialInstance records from the API.
108
108
  # Request is executed immediately.
@@ -112,8 +112,9 @@ module Twilio
112
112
  # @param [String] private_key The private_key
113
113
  # @param [Boolean] sandbox The sandbox
114
114
  # @param [String] api_key The api_key
115
+ # @param [String] secret The secret
115
116
  # @return [CredentialInstance] Newly created CredentialInstance
116
- def create(type: nil, friendly_name: nil, certificate: nil, private_key: nil, sandbox: nil, api_key: nil)
117
+ def create(type: nil, friendly_name: nil, certificate: nil, private_key: nil, sandbox: nil, api_key: nil, secret: nil)
117
118
  data = {
118
119
  'Type' => type,
119
120
  'FriendlyName' => friendly_name,
@@ -121,27 +122,28 @@ module Twilio
121
122
  'PrivateKey' => private_key,
122
123
  'Sandbox' => sandbox,
123
124
  'ApiKey' => api_key,
125
+ 'Secret' => secret,
124
126
  }
125
-
127
+
126
128
  payload = @version.create(
127
129
  'POST',
128
130
  @uri,
129
131
  data: data
130
132
  )
131
-
133
+
132
134
  return CredentialInstance.new(
133
135
  @version,
134
136
  payload,
135
137
  )
136
138
  end
137
-
139
+
138
140
  ##
139
141
  # Provide a user friendly representation
140
142
  def to_s
141
143
  '#<Twilio.Notify.V1.CredentialList>'
142
144
  end
143
145
  end
144
-
146
+
145
147
  class CredentialPage < Page
146
148
  ##
147
149
  # Initialize the CredentialPage
@@ -151,11 +153,11 @@ module Twilio
151
153
  # @return [CredentialPage] CredentialPage
152
154
  def initialize(version, response, solution)
153
155
  super(version, response)
154
-
156
+
155
157
  # Path Solution
156
158
  @solution = solution
157
159
  end
158
-
160
+
159
161
  ##
160
162
  # Build an instance of CredentialInstance
161
163
  # @param [Hash] payload Payload response from the API
@@ -166,14 +168,14 @@ module Twilio
166
168
  payload,
167
169
  )
168
170
  end
169
-
171
+
170
172
  ##
171
173
  # Provide a user friendly representation
172
174
  def to_s
173
175
  '<Twilio.Notify.V1.CredentialPage>'
174
176
  end
175
177
  end
176
-
178
+
177
179
  class CredentialContext < InstanceContext
178
180
  ##
179
181
  # Initialize the CredentialContext
@@ -182,33 +184,33 @@ module Twilio
182
184
  # @return [CredentialContext] CredentialContext
183
185
  def initialize(version, sid)
184
186
  super(version)
185
-
187
+
186
188
  # Path Solution
187
189
  @solution = {
188
190
  sid: sid,
189
191
  }
190
192
  @uri = "/Credentials/#{@solution[:sid]}"
191
193
  end
192
-
194
+
193
195
  ##
194
196
  # Fetch a CredentialInstance
195
197
  # @return [CredentialInstance] Fetched CredentialInstance
196
198
  def fetch
197
199
  params = {}
198
-
200
+
199
201
  payload = @version.fetch(
200
202
  'GET',
201
203
  @uri,
202
204
  params,
203
205
  )
204
-
206
+
205
207
  return CredentialInstance.new(
206
208
  @version,
207
209
  payload,
208
210
  sid: @solution[:sid],
209
211
  )
210
212
  end
211
-
213
+
212
214
  ##
213
215
  # Update the CredentialInstance
214
216
  # @param [String] friendly_name The friendly_name
@@ -216,36 +218,38 @@ module Twilio
216
218
  # @param [String] private_key The private_key
217
219
  # @param [Boolean] sandbox The sandbox
218
220
  # @param [String] api_key The api_key
221
+ # @param [String] secret The secret
219
222
  # @return [CredentialInstance] Updated CredentialInstance
220
- def update(friendly_name: nil, certificate: nil, private_key: nil, sandbox: nil, api_key: nil)
223
+ def update(friendly_name: nil, certificate: nil, private_key: nil, sandbox: nil, api_key: nil, secret: nil)
221
224
  data = {
222
225
  'FriendlyName' => friendly_name,
223
226
  'Certificate' => certificate,
224
227
  'PrivateKey' => private_key,
225
228
  'Sandbox' => sandbox,
226
229
  'ApiKey' => api_key,
230
+ 'Secret' => secret,
227
231
  }
228
-
232
+
229
233
  payload = @version.update(
230
234
  'POST',
231
235
  @uri,
232
236
  data: data,
233
237
  )
234
-
238
+
235
239
  return CredentialInstance.new(
236
240
  @version,
237
241
  payload,
238
242
  sid: @solution[:sid],
239
243
  )
240
244
  end
241
-
245
+
242
246
  ##
243
247
  # Deletes the CredentialInstance
244
248
  # @return [Boolean] true if delete succeeds, true otherwise
245
249
  def delete
246
250
  return @version.delete('delete', @uri)
247
251
  end
248
-
252
+
249
253
  ##
250
254
  # Provide a user friendly representation
251
255
  def to_s
@@ -253,7 +257,7 @@ module Twilio
253
257
  "#<Twilio.Notify.V1.CredentialContext #{context}>"
254
258
  end
255
259
  end
256
-
260
+
257
261
  class CredentialInstance < InstanceResource
258
262
  ##
259
263
  # Initialize the CredentialInstance
@@ -263,7 +267,7 @@ module Twilio
263
267
  # @return [CredentialInstance] CredentialInstance
264
268
  def initialize(version, payload, sid: nil)
265
269
  super(version)
266
-
270
+
267
271
  # Marshaled Properties
268
272
  @properties = {
269
273
  'sid' => payload['sid'],
@@ -275,14 +279,14 @@ module Twilio
275
279
  'date_updated' => Twilio.deserialize_iso8601(payload['date_updated']),
276
280
  'url' => payload['url'],
277
281
  }
278
-
282
+
279
283
  # Context
280
284
  @instance_context = nil
281
285
  @params = {
282
286
  'sid' => sid || @properties['sid'],
283
287
  }
284
288
  end
285
-
289
+
286
290
  ##
287
291
  # Generate an instance context for the instance, the context is capable of
288
292
  # performing various actions. All instance actions are proxied to the context
@@ -297,46 +301,46 @@ module Twilio
297
301
  end
298
302
  @instance_context
299
303
  end
300
-
304
+
301
305
  def sid
302
306
  @properties['sid']
303
307
  end
304
-
308
+
305
309
  def account_sid
306
310
  @properties['account_sid']
307
311
  end
308
-
312
+
309
313
  def friendly_name
310
314
  @properties['friendly_name']
311
315
  end
312
-
316
+
313
317
  def type
314
318
  @properties['type']
315
319
  end
316
-
320
+
317
321
  def sandbox
318
322
  @properties['sandbox']
319
323
  end
320
-
324
+
321
325
  def date_created
322
326
  @properties['date_created']
323
327
  end
324
-
328
+
325
329
  def date_updated
326
330
  @properties['date_updated']
327
331
  end
328
-
332
+
329
333
  def url
330
334
  @properties['url']
331
335
  end
332
-
336
+
333
337
  ##
334
338
  # Fetch a CredentialInstance
335
339
  # @return [CredentialInstance] Fetched CredentialInstance
336
340
  def fetch
337
341
  context.fetch
338
342
  end
339
-
343
+
340
344
  ##
341
345
  # Update the CredentialInstance
342
346
  # @param [String] friendly_name The friendly_name
@@ -344,24 +348,26 @@ module Twilio
344
348
  # @param [String] private_key The private_key
345
349
  # @param [Boolean] sandbox The sandbox
346
350
  # @param [String] api_key The api_key
351
+ # @param [String] secret The secret
347
352
  # @return [CredentialInstance] Updated CredentialInstance
348
- def update(friendly_name: nil, certificate: nil, private_key: nil, sandbox: nil, api_key: nil)
353
+ def update(friendly_name: nil, certificate: nil, private_key: nil, sandbox: nil, api_key: nil, secret: nil)
349
354
  context.update(
350
355
  friendly_name: friendly_name,
351
356
  certificate: certificate,
352
357
  private_key: private_key,
353
358
  sandbox: sandbox,
354
359
  api_key: api_key,
360
+ secret: secret,
355
361
  )
356
362
  end
357
-
363
+
358
364
  ##
359
365
  # Deletes the CredentialInstance
360
366
  # @return [Boolean] true if delete succeeds, true otherwise
361
367
  def delete
362
368
  context.delete
363
369
  end
364
-
370
+
365
371
  ##
366
372
  # Provide a user friendly representation
367
373
  def to_s
@@ -2,7 +2,7 @@
2
2
  # This code was generated by
3
3
  # \ / _ _ _| _ _
4
4
  # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
5
+ # / /
6
6
 
7
7
  module Twilio
8
8
  module REST
@@ -15,12 +15,12 @@ module Twilio
15
15
  # @return [ServiceList] ServiceList
16
16
  def initialize(version)
17
17
  super(version)
18
-
18
+
19
19
  # Path Solution
20
20
  @solution = {}
21
21
  @uri = "/Services"
22
22
  end
23
-
23
+
24
24
  ##
25
25
  # Retrieve a single page of ServiceInstance records from the API.
26
26
  # Request is executed immediately.
@@ -33,8 +33,12 @@ module Twilio
33
33
  # default_apn_notification_protocol_version
34
34
  # @param [String] default_gcm_notification_protocol_version The
35
35
  # default_gcm_notification_protocol_version
36
+ # @param [String] fcm_credential_sid The fcm_credential_sid
37
+ # @param [String] default_fcm_notification_protocol_version The
38
+ # default_fcm_notification_protocol_version
39
+ # @param [Boolean] log_enabled The log_enabled
36
40
  # @return [ServiceInstance] Newly created ServiceInstance
37
- def create(friendly_name: nil, apn_credential_sid: nil, gcm_credential_sid: nil, messaging_service_sid: nil, facebook_messenger_page_id: nil, default_apn_notification_protocol_version: nil, default_gcm_notification_protocol_version: nil)
41
+ def create(friendly_name: nil, apn_credential_sid: nil, gcm_credential_sid: nil, messaging_service_sid: nil, facebook_messenger_page_id: nil, default_apn_notification_protocol_version: nil, default_gcm_notification_protocol_version: nil, fcm_credential_sid: nil, default_fcm_notification_protocol_version: nil, log_enabled: nil)
38
42
  data = {
39
43
  'FriendlyName' => friendly_name,
40
44
  'ApnCredentialSid' => apn_credential_sid,
@@ -43,20 +47,23 @@ module Twilio
43
47
  'FacebookMessengerPageId' => facebook_messenger_page_id,
44
48
  'DefaultApnNotificationProtocolVersion' => default_apn_notification_protocol_version,
45
49
  'DefaultGcmNotificationProtocolVersion' => default_gcm_notification_protocol_version,
50
+ 'FcmCredentialSid' => fcm_credential_sid,
51
+ 'DefaultFcmNotificationProtocolVersion' => default_fcm_notification_protocol_version,
52
+ 'LogEnabled' => log_enabled,
46
53
  }
47
-
54
+
48
55
  payload = @version.create(
49
56
  'POST',
50
57
  @uri,
51
58
  data: data
52
59
  )
53
-
60
+
54
61
  return ServiceInstance.new(
55
62
  @version,
56
63
  payload,
57
64
  )
58
65
  end
59
-
66
+
60
67
  ##
61
68
  # Lists ServiceInstance records from the API as a list.
62
69
  # Unlike stream(), this operation is eager and will load `limit` records into
@@ -76,7 +83,7 @@ module Twilio
76
83
  page_size: page_size
77
84
  ).entries
78
85
  end
79
-
86
+
80
87
  ##
81
88
  # Streams ServiceInstance records from the API as an Enumerable.
82
89
  # This operation lazily loads records as efficiently as possible until the limit
@@ -91,15 +98,15 @@ module Twilio
91
98
  # @return [Enumerable] Enumerable that will yield up to limit results
92
99
  def stream(friendly_name: nil, limit: nil, page_size: nil)
93
100
  limits = @version.read_limits(limit, page_size)
94
-
101
+
95
102
  page = self.page(
96
103
  friendly_name: friendly_name,
97
104
  page_size: limits[:page_size],
98
105
  )
99
-
106
+
100
107
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
101
108
  end
102
-
109
+
103
110
  ##
104
111
  # When passed a block, yields ServiceInstance records from the API.
105
112
  # This operation lazily loads records as efficiently as possible until the limit
@@ -113,16 +120,16 @@ module Twilio
113
120
  # limit with the most efficient page size, i.e. min(limit, 1000)
114
121
  def each
115
122
  limits = @version.read_limits
116
-
123
+
117
124
  page = self.page(
118
125
  page_size: limits[:page_size],
119
126
  )
120
-
127
+
121
128
  @version.stream(page,
122
129
  limit: limits[:limit],
123
130
  page_limit: limits[:page_limit]).each {|x| yield x}
124
131
  end
125
-
132
+
126
133
  ##
127
134
  # Retrieve a single page of ServiceInstance records from the API.
128
135
  # Request is executed immediately.
@@ -145,14 +152,14 @@ module Twilio
145
152
  )
146
153
  return ServicePage.new(@version, response, @solution)
147
154
  end
148
-
155
+
149
156
  ##
150
157
  # Provide a user friendly representation
151
158
  def to_s
152
159
  '#<Twilio.Notify.V1.ServiceList>'
153
160
  end
154
161
  end
155
-
162
+
156
163
  class ServicePage < Page
157
164
  ##
158
165
  # Initialize the ServicePage
@@ -162,11 +169,11 @@ module Twilio
162
169
  # @return [ServicePage] ServicePage
163
170
  def initialize(version, response, solution)
164
171
  super(version, response)
165
-
172
+
166
173
  # Path Solution
167
174
  @solution = solution
168
175
  end
169
-
176
+
170
177
  ##
171
178
  # Build an instance of ServiceInstance
172
179
  # @param [Hash] payload Payload response from the API
@@ -177,14 +184,14 @@ module Twilio
177
184
  payload,
178
185
  )
179
186
  end
180
-
187
+
181
188
  ##
182
189
  # Provide a user friendly representation
183
190
  def to_s
184
191
  '<Twilio.Notify.V1.ServicePage>'
185
192
  end
186
193
  end
187
-
194
+
188
195
  class ServiceContext < InstanceContext
189
196
  ##
190
197
  # Initialize the ServiceContext
@@ -193,44 +200,46 @@ module Twilio
193
200
  # @return [ServiceContext] ServiceContext
194
201
  def initialize(version, sid)
195
202
  super(version)
196
-
203
+
197
204
  # Path Solution
198
205
  @solution = {
199
206
  sid: sid,
200
207
  }
201
208
  @uri = "/Services/#{@solution[:sid]}"
202
-
209
+
203
210
  # Dependents
204
211
  @bindings = nil
205
212
  @notifications = nil
213
+ @users = nil
214
+ @segments = nil
206
215
  end
207
-
216
+
208
217
  ##
209
218
  # Deletes the ServiceInstance
210
219
  # @return [Boolean] true if delete succeeds, true otherwise
211
220
  def delete
212
221
  return @version.delete('delete', @uri)
213
222
  end
214
-
223
+
215
224
  ##
216
225
  # Fetch a ServiceInstance
217
226
  # @return [ServiceInstance] Fetched ServiceInstance
218
227
  def fetch
219
228
  params = {}
220
-
229
+
221
230
  payload = @version.fetch(
222
231
  'GET',
223
232
  @uri,
224
233
  params,
225
234
  )
226
-
235
+
227
236
  return ServiceInstance.new(
228
237
  @version,
229
238
  payload,
230
239
  sid: @solution[:sid],
231
240
  )
232
241
  end
233
-
242
+
234
243
  ##
235
244
  # Update the ServiceInstance
236
245
  # @param [String] friendly_name The friendly_name
@@ -242,8 +251,12 @@ module Twilio
242
251
  # default_apn_notification_protocol_version
243
252
  # @param [String] default_gcm_notification_protocol_version The
244
253
  # default_gcm_notification_protocol_version
254
+ # @param [String] fcm_credential_sid The fcm_credential_sid
255
+ # @param [String] default_fcm_notification_protocol_version The
256
+ # default_fcm_notification_protocol_version
257
+ # @param [Boolean] log_enabled The log_enabled
245
258
  # @return [ServiceInstance] Updated ServiceInstance
246
- def update(friendly_name: nil, apn_credential_sid: nil, gcm_credential_sid: nil, messaging_service_sid: nil, facebook_messenger_page_id: nil, default_apn_notification_protocol_version: nil, default_gcm_notification_protocol_version: nil)
259
+ def update(friendly_name: nil, apn_credential_sid: nil, gcm_credential_sid: nil, messaging_service_sid: nil, facebook_messenger_page_id: nil, default_apn_notification_protocol_version: nil, default_gcm_notification_protocol_version: nil, fcm_credential_sid: nil, default_fcm_notification_protocol_version: nil, log_enabled: nil)
247
260
  data = {
248
261
  'FriendlyName' => friendly_name,
249
262
  'ApnCredentialSid' => apn_credential_sid,
@@ -252,21 +265,24 @@ module Twilio
252
265
  'FacebookMessengerPageId' => facebook_messenger_page_id,
253
266
  'DefaultApnNotificationProtocolVersion' => default_apn_notification_protocol_version,
254
267
  'DefaultGcmNotificationProtocolVersion' => default_gcm_notification_protocol_version,
268
+ 'FcmCredentialSid' => fcm_credential_sid,
269
+ 'DefaultFcmNotificationProtocolVersion' => default_fcm_notification_protocol_version,
270
+ 'LogEnabled' => log_enabled,
255
271
  }
256
-
272
+
257
273
  payload = @version.update(
258
274
  'POST',
259
275
  @uri,
260
276
  data: data,
261
277
  )
262
-
278
+
263
279
  return ServiceInstance.new(
264
280
  @version,
265
281
  payload,
266
282
  sid: @solution[:sid],
267
283
  )
268
284
  end
269
-
285
+
270
286
  ##
271
287
  # Access the bindings
272
288
  # @return [BindingList] BindingList
@@ -278,17 +294,17 @@ module Twilio
278
294
  sid,
279
295
  )
280
296
  end
281
-
297
+
282
298
  unless @bindings
283
299
  @bindings = BindingList.new(
284
300
  @version,
285
301
  service_sid: @solution[:sid],
286
302
  )
287
303
  end
288
-
304
+
289
305
  @bindings
290
306
  end
291
-
307
+
292
308
  ##
293
309
  # Access the notifications
294
310
  # @return [NotificationList] NotificationList
@@ -299,10 +315,46 @@ module Twilio
299
315
  service_sid: @solution[:sid],
300
316
  )
301
317
  end
302
-
318
+
303
319
  @notifications
304
320
  end
305
-
321
+
322
+ ##
323
+ # Access the users
324
+ # @return [UserList] UserList
325
+ def users(identity=:unset)
326
+ if identity != :unset
327
+ return UserContext.new(
328
+ @version,
329
+ @solution[:sid],
330
+ identity,
331
+ )
332
+ end
333
+
334
+ unless @users
335
+ @users = UserList.new(
336
+ @version,
337
+ service_sid: @solution[:sid],
338
+ )
339
+ end
340
+
341
+ @users
342
+ end
343
+
344
+ ##
345
+ # Access the segments
346
+ # @return [SegmentList] SegmentList
347
+ def segments
348
+ unless @segments
349
+ @segments = SegmentList.new(
350
+ @version,
351
+ service_sid: @solution[:sid],
352
+ )
353
+ end
354
+
355
+ @segments
356
+ end
357
+
306
358
  ##
307
359
  # Provide a user friendly representation
308
360
  def to_s
@@ -310,7 +362,7 @@ module Twilio
310
362
  "#<Twilio.Notify.V1.ServiceContext #{context}>"
311
363
  end
312
364
  end
313
-
365
+
314
366
  class ServiceInstance < InstanceResource
315
367
  ##
316
368
  # Initialize the ServiceInstance
@@ -320,7 +372,7 @@ module Twilio
320
372
  # @return [ServiceInstance] ServiceInstance
321
373
  def initialize(version, payload, sid: nil)
322
374
  super(version)
323
-
375
+
324
376
  # Marshaled Properties
325
377
  @properties = {
326
378
  'sid' => payload['sid'],
@@ -330,21 +382,24 @@ module Twilio
330
382
  'date_updated' => Twilio.deserialize_iso8601(payload['date_updated']),
331
383
  'apn_credential_sid' => payload['apn_credential_sid'],
332
384
  'gcm_credential_sid' => payload['gcm_credential_sid'],
385
+ 'fcm_credential_sid' => payload['fcm_credential_sid'],
333
386
  'messaging_service_sid' => payload['messaging_service_sid'],
334
387
  'facebook_messenger_page_id' => payload['facebook_messenger_page_id'],
335
388
  'default_apn_notification_protocol_version' => payload['default_apn_notification_protocol_version'],
336
389
  'default_gcm_notification_protocol_version' => payload['default_gcm_notification_protocol_version'],
390
+ 'default_fcm_notification_protocol_version' => payload['default_fcm_notification_protocol_version'],
391
+ 'log_enabled' => payload['log_enabled'],
337
392
  'url' => payload['url'],
338
393
  'links' => payload['links'],
339
394
  }
340
-
395
+
341
396
  # Context
342
397
  @instance_context = nil
343
398
  @params = {
344
399
  'sid' => sid || @properties['sid'],
345
400
  }
346
401
  end
347
-
402
+
348
403
  ##
349
404
  # Generate an instance context for the instance, the context is capable of
350
405
  # performing various actions. All instance actions are proxied to the context
@@ -359,73 +414,85 @@ module Twilio
359
414
  end
360
415
  @instance_context
361
416
  end
362
-
417
+
363
418
  def sid
364
419
  @properties['sid']
365
420
  end
366
-
421
+
367
422
  def account_sid
368
423
  @properties['account_sid']
369
424
  end
370
-
425
+
371
426
  def friendly_name
372
427
  @properties['friendly_name']
373
428
  end
374
-
429
+
375
430
  def date_created
376
431
  @properties['date_created']
377
432
  end
378
-
433
+
379
434
  def date_updated
380
435
  @properties['date_updated']
381
436
  end
382
-
437
+
383
438
  def apn_credential_sid
384
439
  @properties['apn_credential_sid']
385
440
  end
386
-
441
+
387
442
  def gcm_credential_sid
388
443
  @properties['gcm_credential_sid']
389
444
  end
390
-
445
+
446
+ def fcm_credential_sid
447
+ @properties['fcm_credential_sid']
448
+ end
449
+
391
450
  def messaging_service_sid
392
451
  @properties['messaging_service_sid']
393
452
  end
394
-
453
+
395
454
  def facebook_messenger_page_id
396
455
  @properties['facebook_messenger_page_id']
397
456
  end
398
-
457
+
399
458
  def default_apn_notification_protocol_version
400
459
  @properties['default_apn_notification_protocol_version']
401
460
  end
402
-
461
+
403
462
  def default_gcm_notification_protocol_version
404
463
  @properties['default_gcm_notification_protocol_version']
405
464
  end
406
-
465
+
466
+ def default_fcm_notification_protocol_version
467
+ @properties['default_fcm_notification_protocol_version']
468
+ end
469
+
470
+ def log_enabled
471
+ @properties['log_enabled']
472
+ end
473
+
407
474
  def url
408
475
  @properties['url']
409
476
  end
410
-
477
+
411
478
  def links
412
479
  @properties['links']
413
480
  end
414
-
481
+
415
482
  ##
416
483
  # Deletes the ServiceInstance
417
484
  # @return [Boolean] true if delete succeeds, true otherwise
418
485
  def delete
419
486
  context.delete
420
487
  end
421
-
488
+
422
489
  ##
423
490
  # Fetch a ServiceInstance
424
491
  # @return [ServiceInstance] Fetched ServiceInstance
425
492
  def fetch
426
493
  context.fetch
427
494
  end
428
-
495
+
429
496
  ##
430
497
  # Update the ServiceInstance
431
498
  # @param [String] friendly_name The friendly_name
@@ -437,8 +504,12 @@ module Twilio
437
504
  # default_apn_notification_protocol_version
438
505
  # @param [String] default_gcm_notification_protocol_version The
439
506
  # default_gcm_notification_protocol_version
507
+ # @param [String] fcm_credential_sid The fcm_credential_sid
508
+ # @param [String] default_fcm_notification_protocol_version The
509
+ # default_fcm_notification_protocol_version
510
+ # @param [Boolean] log_enabled The log_enabled
440
511
  # @return [ServiceInstance] Updated ServiceInstance
441
- def update(friendly_name: nil, apn_credential_sid: nil, gcm_credential_sid: nil, messaging_service_sid: nil, facebook_messenger_page_id: nil, default_apn_notification_protocol_version: nil, default_gcm_notification_protocol_version: nil)
512
+ def update(friendly_name: nil, apn_credential_sid: nil, gcm_credential_sid: nil, messaging_service_sid: nil, facebook_messenger_page_id: nil, default_apn_notification_protocol_version: nil, default_gcm_notification_protocol_version: nil, fcm_credential_sid: nil, default_fcm_notification_protocol_version: nil, log_enabled: nil)
442
513
  context.update(
443
514
  friendly_name: friendly_name,
444
515
  apn_credential_sid: apn_credential_sid,
@@ -447,23 +518,40 @@ module Twilio
447
518
  facebook_messenger_page_id: facebook_messenger_page_id,
448
519
  default_apn_notification_protocol_version: default_apn_notification_protocol_version,
449
520
  default_gcm_notification_protocol_version: default_gcm_notification_protocol_version,
521
+ fcm_credential_sid: fcm_credential_sid,
522
+ default_fcm_notification_protocol_version: default_fcm_notification_protocol_version,
523
+ log_enabled: log_enabled,
450
524
  )
451
525
  end
452
-
526
+
453
527
  ##
454
528
  # Access the bindings
455
529
  # @return [bindings] bindings
456
530
  def bindings
457
531
  context.bindings
458
532
  end
459
-
533
+
460
534
  ##
461
535
  # Access the notifications
462
536
  # @return [notifications] notifications
463
537
  def notifications
464
538
  context.notifications
465
539
  end
466
-
540
+
541
+ ##
542
+ # Access the users
543
+ # @return [users] users
544
+ def users
545
+ context.users
546
+ end
547
+
548
+ ##
549
+ # Access the segments
550
+ # @return [segments] segments
551
+ def segments
552
+ context.segments
553
+ end
554
+
467
555
  ##
468
556
  # Provide a user friendly representation
469
557
  def to_s