twilio-ruby 5.0.0.rc18 → 5.0.0.rc19

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 (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