twilio-ruby 5.4.2 → 5.4.3

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 (320) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +7 -0
  3. data/README.md +2 -2
  4. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +3 -11
  5. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +12 -44
  6. data/lib/twilio-ruby/rest/api/v2010/account.rb +52 -226
  7. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +9 -41
  8. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +4 -14
  9. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +11 -50
  10. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +6 -22
  11. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +6 -22
  12. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +2 -7
  13. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +2 -7
  14. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +2 -7
  15. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +14 -67
  16. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +8 -33
  17. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +6 -26
  18. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +4 -17
  19. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +4 -17
  20. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +11 -48
  21. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +5 -23
  22. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +10 -43
  23. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +11 -47
  24. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +6 -22
  25. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +3 -10
  26. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +4 -16
  27. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +4 -16
  28. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +4 -16
  29. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +12 -49
  30. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +13 -58
  31. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +2 -7
  32. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +3 -12
  33. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +4 -16
  34. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +4 -16
  35. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +7 -30
  36. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +8 -30
  37. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +16 -71
  38. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +7 -27
  39. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +9 -42
  40. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +5 -19
  41. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +3 -10
  42. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +5 -19
  43. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +9 -41
  44. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +12 -49
  45. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +8 -35
  46. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +13 -51
  47. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +8 -29
  48. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +13 -60
  49. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +6 -22
  50. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +6 -22
  51. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +13 -51
  52. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +7 -26
  53. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +4 -16
  54. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +8 -31
  55. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +5 -21
  56. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +11 -43
  57. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +3 -11
  58. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +3 -11
  59. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +3 -11
  60. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +3 -11
  61. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +3 -11
  62. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +3 -11
  63. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +3 -11
  64. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +3 -11
  65. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +9 -41
  66. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +3 -13
  67. data/lib/twilio-ruby/rest/chat/v1/credential.rb +10 -38
  68. data/lib/twilio-ruby/rest/chat/v1/service.rb +17 -68
  69. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +15 -73
  70. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +6 -25
  71. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +7 -29
  72. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +8 -34
  73. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +13 -54
  74. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +12 -53
  75. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +4 -14
  76. data/lib/twilio-ruby/rest/chat/v2/credential.rb +10 -38
  77. data/lib/twilio-ruby/rest/chat/v2/service.rb +43 -68
  78. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +344 -0
  79. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +14 -68
  80. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +6 -25
  81. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +5 -21
  82. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +5 -21
  83. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +13 -54
  84. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +42 -53
  85. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +361 -0
  86. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +4 -14
  87. data/lib/twilio-ruby/rest/fax/v1/fax.rb +12 -46
  88. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +9 -37
  89. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +10 -38
  90. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +17 -68
  91. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +15 -73
  92. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +6 -25
  93. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +7 -29
  94. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +8 -34
  95. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +13 -54
  96. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +12 -53
  97. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +4 -14
  98. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +10 -38
  99. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +43 -68
  100. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +344 -0
  101. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +14 -68
  102. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +6 -25
  103. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +5 -21
  104. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +5 -21
  105. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +13 -54
  106. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +42 -53
  107. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +361 -0
  108. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +4 -14
  109. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +7 -30
  110. data/lib/twilio-ruby/rest/messaging/v1/service.rb +16 -65
  111. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +11 -45
  112. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +11 -45
  113. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +11 -45
  114. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +6 -22
  115. data/lib/twilio-ruby/rest/monitor/v1/event.rb +6 -22
  116. data/lib/twilio-ruby/rest/notify/v1/credential.rb +10 -38
  117. data/lib/twilio-ruby/rest/notify/v1/service.rb +16 -66
  118. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +8 -35
  119. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +3 -13
  120. data/lib/twilio-ruby/rest/notify/v1/service/segment.rb +5 -18
  121. data/lib/twilio-ruby/rest/notify/v1/service/user.rb +12 -56
  122. data/lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb +3 -12
  123. data/lib/twilio-ruby/rest/notify/v1/service/user/user_binding.rb +5 -23
  124. data/lib/twilio-ruby/rest/preview/acc_security/service.rb +15 -58
  125. data/lib/twilio-ruby/rest/preview/acc_security/service/verification.rb +4 -18
  126. data/lib/twilio-ruby/rest/preview/acc_security/service/verification_check.rb +4 -17
  127. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +6 -23
  128. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +5 -18
  129. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +7 -29
  130. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +20 -81
  131. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +13 -58
  132. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +14 -60
  133. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +11 -50
  134. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +14 -62
  135. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +10 -38
  136. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +8 -31
  137. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +10 -38
  138. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +6 -21
  139. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +13 -51
  140. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +8 -27
  141. data/lib/twilio-ruby/rest/preview/proxy/service.rb +17 -70
  142. data/lib/twilio-ruby/rest/preview/proxy/service/phone_number.rb +11 -45
  143. data/lib/twilio-ruby/rest/preview/proxy/service/session.rb +14 -70
  144. data/lib/twilio-ruby/rest/preview/proxy/service/session/interaction.rb +3 -12
  145. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant.rb +3 -12
  146. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant/message_interaction.rb +5 -19
  147. data/lib/twilio-ruby/rest/preview/proxy/service/short_code.rb +11 -45
  148. data/lib/twilio-ruby/rest/preview/sync/service.rb +16 -65
  149. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +15 -64
  150. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +7 -29
  151. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +13 -57
  152. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +8 -34
  153. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +7 -29
  154. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +13 -57
  155. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +9 -40
  156. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +7 -29
  157. data/lib/twilio-ruby/rest/preview/wireless/command.rb +7 -26
  158. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +12 -46
  159. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +8 -31
  160. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +8 -31
  161. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +4 -16
  162. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +8 -29
  163. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +4 -16
  164. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +8 -29
  165. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +6 -23
  166. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +8 -29
  167. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +5 -19
  168. data/lib/twilio-ruby/rest/proxy/v1/service.rb +17 -70
  169. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +11 -45
  170. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +13 -64
  171. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +3 -12
  172. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +3 -12
  173. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +5 -19
  174. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +11 -45
  175. data/lib/twilio-ruby/rest/sync/v1/service.rb +18 -74
  176. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +15 -64
  177. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +7 -29
  178. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +13 -57
  179. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +8 -34
  180. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +7 -29
  181. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +13 -57
  182. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +9 -40
  183. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +7 -29
  184. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +11 -45
  185. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +3 -11
  186. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +27 -115
  187. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +13 -56
  188. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +7 -30
  189. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +10 -47
  190. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +5 -21
  191. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +8 -31
  192. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +11 -48
  193. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +3 -12
  194. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +5 -18
  195. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +3 -12
  196. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +3 -11
  197. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +17 -79
  198. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +5 -21
  199. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +7 -27
  200. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +4 -18
  201. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +7 -29
  202. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +8 -29
  203. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +6 -23
  204. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +14 -65
  205. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +3 -12
  206. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +5 -18
  207. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +3 -12
  208. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +6 -23
  209. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +8 -29
  210. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +6 -23
  211. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +18 -74
  212. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +11 -45
  213. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +10 -39
  214. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +11 -48
  215. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +11 -45
  216. data/lib/twilio-ruby/rest/video/v1/recording.rb +6 -22
  217. data/lib/twilio-ruby/rest/video/v1/room.rb +12 -46
  218. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +7 -30
  219. data/lib/twilio-ruby/rest/wireless/v1/command.rb +9 -39
  220. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +12 -46
  221. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +9 -35
  222. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +5 -22
  223. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +4 -17
  224. data/lib/twilio-ruby/version.rb +1 -1
  225. data/spec/integration/accounts/v1/credential/public_key_spec.rb +1 -3
  226. data/spec/integration/api/v2010/account/application_spec.rb +1 -3
  227. data/spec/integration/api/v2010/account/call/feedback_spec.rb +2 -6
  228. data/spec/integration/api/v2010/account/call_spec.rb +4 -11
  229. data/spec/integration/api/v2010/account/conference/participant_spec.rb +1 -4
  230. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +1 -3
  231. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +1 -3
  232. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +1 -3
  233. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +1 -3
  234. data/spec/integration/api/v2010/account/message_spec.rb +2 -6
  235. data/spec/integration/api/v2010/account/queue/member_spec.rb +1 -4
  236. data/spec/integration/api/v2010/account/queue_spec.rb +1 -3
  237. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +1 -4
  238. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +2 -6
  239. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +1 -3
  240. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +1 -3
  241. data/spec/integration/api/v2010/account/sip/domain_spec.rb +1 -3
  242. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +1 -4
  243. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +2 -6
  244. data/spec/integration/api/v2010/account/validation_request_spec.rb +1 -3
  245. data/spec/integration/chat/v1/credential_spec.rb +1 -3
  246. data/spec/integration/chat/v1/service/channel/invite_spec.rb +1 -3
  247. data/spec/integration/chat/v1/service/channel/member_spec.rb +1 -3
  248. data/spec/integration/chat/v1/service/channel/message_spec.rb +1 -3
  249. data/spec/integration/chat/v1/service/role_spec.rb +2 -8
  250. data/spec/integration/chat/v1/service/user_spec.rb +1 -3
  251. data/spec/integration/chat/v1/service_spec.rb +1 -3
  252. data/spec/integration/chat/v2/credential_spec.rb +1 -3
  253. data/spec/integration/chat/v2/service/binding_spec.rb +175 -0
  254. data/spec/integration/chat/v2/service/channel/invite_spec.rb +1 -3
  255. data/spec/integration/chat/v2/service/channel/member_spec.rb +1 -3
  256. data/spec/integration/chat/v2/service/role_spec.rb +2 -8
  257. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +178 -0
  258. data/spec/integration/chat/v2/service/user_spec.rb +9 -7
  259. data/spec/integration/chat/v2/service_spec.rb +9 -7
  260. data/spec/integration/fax/v1/fax_spec.rb +1 -4
  261. data/spec/integration/ip_messaging/v1/credential_spec.rb +1 -3
  262. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +1 -3
  263. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +1 -3
  264. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +1 -3
  265. data/spec/integration/ip_messaging/v1/service/role_spec.rb +2 -8
  266. data/spec/integration/ip_messaging/v1/service/user_spec.rb +1 -3
  267. data/spec/integration/ip_messaging/v1/service_spec.rb +1 -3
  268. data/spec/integration/ip_messaging/v2/credential_spec.rb +1 -3
  269. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +175 -0
  270. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +1 -3
  271. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +1 -3
  272. data/spec/integration/ip_messaging/v2/service/role_spec.rb +2 -8
  273. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +178 -0
  274. data/spec/integration/ip_messaging/v2/service/user_spec.rb +9 -7
  275. data/spec/integration/ip_messaging/v2/service_spec.rb +9 -7
  276. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +1 -3
  277. data/spec/integration/messaging/v1/service/phone_number_spec.rb +1 -3
  278. data/spec/integration/messaging/v1/service/short_code_spec.rb +1 -3
  279. data/spec/integration/messaging/v1/service_spec.rb +1 -3
  280. data/spec/integration/notify/v1/credential_spec.rb +1 -3
  281. data/spec/integration/notify/v1/service/binding_spec.rb +1 -5
  282. data/spec/integration/notify/v1/service/user/segment_memberships_spec.rb +1 -3
  283. data/spec/integration/notify/v1/service/user/user_binding_spec.rb +1 -4
  284. data/spec/integration/notify/v1/service/user_spec.rb +1 -3
  285. data/spec/integration/preview/acc_security/service/verification_check_spec.rb +1 -3
  286. data/spec/integration/preview/acc_security/service/verification_spec.rb +1 -4
  287. data/spec/integration/preview/acc_security/service_spec.rb +1 -3
  288. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +1 -3
  289. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +1 -5
  290. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +1 -3
  291. data/spec/integration/preview/proxy/service/phone_number_spec.rb +1 -3
  292. data/spec/integration/preview/proxy/service/session/participant_spec.rb +1 -3
  293. data/spec/integration/preview/proxy/service/short_code_spec.rb +1 -3
  294. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +1 -5
  295. data/spec/integration/preview/sync/service/document_spec.rb +1 -3
  296. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +2 -6
  297. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +1 -5
  298. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +2 -7
  299. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +1 -5
  300. data/spec/integration/preview/wireless/command_spec.rb +1 -3
  301. data/spec/integration/proxy/v1/service/phone_number_spec.rb +1 -3
  302. data/spec/integration/proxy/v1/service/session/participant_spec.rb +1 -3
  303. data/spec/integration/proxy/v1/service/short_code_spec.rb +1 -3
  304. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +1 -5
  305. data/spec/integration/sync/v1/service/document_spec.rb +1 -3
  306. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +2 -6
  307. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +1 -5
  308. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +2 -7
  309. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +1 -5
  310. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +1 -3
  311. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +1 -3
  312. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +1 -3
  313. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +1 -4
  314. data/spec/integration/taskrouter/v1/workspace_spec.rb +1 -3
  315. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +1 -3
  316. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +1 -3
  317. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +1 -3
  318. data/spec/integration/video/v1/room_spec.rb +1 -3
  319. data/spec/integration/wireless/v1/command_spec.rb +1 -3
  320. metadata +14 -2
@@ -21,10 +21,7 @@ module Twilio
21
21
  super(version)
22
22
 
23
23
  # Path Solution
24
- @solution = {
25
- service_sid: service_sid,
26
- user_sid: user_sid
27
- }
24
+ @solution = {service_sid: service_sid, user_sid: user_sid}
28
25
  @uri = "/Services/#{@solution[:service_sid]}/Users/#{@solution[:user_sid]}/Channels"
29
26
  end
30
27
 
@@ -40,10 +37,7 @@ module Twilio
40
37
  # efficient page size, i.e. min(limit, 1000)
41
38
  # @return [Array] Array of up to limit results
42
39
  def list(limit: nil, page_size: nil)
43
- self.stream(
44
- limit: limit,
45
- page_size: page_size
46
- ).entries
40
+ self.stream(limit: limit, page_size: page_size).entries
47
41
  end
48
42
 
49
43
  ##
@@ -60,9 +54,7 @@ module Twilio
60
54
  def stream(limit: nil, page_size: nil)
61
55
  limits = @version.read_limits(limit, page_size)
62
56
 
63
- page = self.page(
64
- page_size: limits[:page_size],
65
- )
57
+ page = self.page(page_size: limits[:page_size],)
66
58
 
67
59
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
68
60
  end
@@ -74,9 +66,7 @@ module Twilio
74
66
  def each
75
67
  limits = @version.read_limits
76
68
 
77
- page = self.page(
78
- page_size: limits[:page_size],
79
- )
69
+ page = self.page(page_size: limits[:page_size],)
80
70
 
81
71
  @version.stream(page,
82
72
  limit: limits[:limit],
@@ -33,10 +33,7 @@ module Twilio
33
33
  # efficient page size, i.e. min(limit, 1000)
34
34
  # @return [Array] Array of up to limit results
35
35
  def list(limit: nil, page_size: nil)
36
- self.stream(
37
- limit: limit,
38
- page_size: page_size
39
- ).entries
36
+ self.stream(limit: limit, page_size: page_size).entries
40
37
  end
41
38
 
42
39
  ##
@@ -53,9 +50,7 @@ module Twilio
53
50
  def stream(limit: nil, page_size: nil)
54
51
  limits = @version.read_limits(limit, page_size)
55
52
 
56
- page = self.page(
57
- page_size: limits[:page_size],
58
- )
53
+ page = self.page(page_size: limits[:page_size],)
59
54
 
60
55
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
61
56
  end
@@ -67,9 +62,7 @@ module Twilio
67
62
  def each
68
63
  limits = @version.read_limits
69
64
 
70
- page = self.page(
71
- page_size: limits[:page_size],
72
- )
65
+ page = self.page(page_size: limits[:page_size],)
73
66
 
74
67
  @version.stream(page,
75
68
  limit: limits[:limit],
@@ -138,10 +131,7 @@ module Twilio
138
131
  data: data
139
132
  )
140
133
 
141
- CredentialInstance.new(
142
- @version,
143
- payload,
144
- )
134
+ CredentialInstance.new(@version, payload,)
145
135
  end
146
136
 
147
137
  ##
@@ -170,10 +160,7 @@ module Twilio
170
160
  # @param [Hash] payload Payload response from the API
171
161
  # @return [CredentialInstance] CredentialInstance
172
162
  def get_instance(payload)
173
- CredentialInstance.new(
174
- @version,
175
- payload,
176
- )
163
+ CredentialInstance.new(@version, payload,)
177
164
  end
178
165
 
179
166
  ##
@@ -193,9 +180,7 @@ module Twilio
193
180
  super(version)
194
181
 
195
182
  # Path Solution
196
- @solution = {
197
- sid: sid,
198
- }
183
+ @solution = {sid: sid,}
199
184
  @uri = "/Credentials/#{@solution[:sid]}"
200
185
  end
201
186
 
@@ -211,11 +196,7 @@ module Twilio
211
196
  params,
212
197
  )
213
198
 
214
- CredentialInstance.new(
215
- @version,
216
- payload,
217
- sid: @solution[:sid],
218
- )
199
+ CredentialInstance.new(@version, payload, sid: @solution[:sid],)
219
200
  end
220
201
 
221
202
  ##
@@ -243,11 +224,7 @@ module Twilio
243
224
  data: data,
244
225
  )
245
226
 
246
- CredentialInstance.new(
247
- @version,
248
- payload,
249
- sid: @solution[:sid],
250
- )
227
+ CredentialInstance.new(@version, payload, sid: @solution[:sid],)
251
228
  end
252
229
 
253
230
  ##
@@ -289,9 +266,7 @@ module Twilio
289
266
 
290
267
  # Context
291
268
  @instance_context = nil
292
- @params = {
293
- 'sid' => sid || @properties['sid'],
294
- }
269
+ @params = {'sid' => sid || @properties['sid'],}
295
270
  end
296
271
 
297
272
  ##
@@ -300,10 +275,7 @@ module Twilio
300
275
  # @return [CredentialContext] CredentialContext for this CredentialInstance
301
276
  def context
302
277
  unless @instance_context
303
- @instance_context = CredentialContext.new(
304
- @version,
305
- @params['sid'],
306
- )
278
+ @instance_context = CredentialContext.new(@version, @params['sid'],)
307
279
  end
308
280
  @instance_context
309
281
  end
@@ -27,9 +27,7 @@ module Twilio
27
27
  # @param [String] friendly_name The friendly_name
28
28
  # @return [ServiceInstance] Newly created ServiceInstance
29
29
  def create(friendly_name: nil)
30
- data = Twilio::Values.of({
31
- 'FriendlyName' => friendly_name,
32
- })
30
+ data = Twilio::Values.of({'FriendlyName' => friendly_name,})
33
31
 
34
32
  payload = @version.create(
35
33
  'POST',
@@ -37,10 +35,7 @@ module Twilio
37
35
  data: data
38
36
  )
39
37
 
40
- ServiceInstance.new(
41
- @version,
42
- payload,
43
- )
38
+ ServiceInstance.new(@version, payload,)
44
39
  end
45
40
 
46
41
  ##
@@ -55,10 +50,7 @@ module Twilio
55
50
  # efficient page size, i.e. min(limit, 1000)
56
51
  # @return [Array] Array of up to limit results
57
52
  def list(limit: nil, page_size: nil)
58
- self.stream(
59
- limit: limit,
60
- page_size: page_size
61
- ).entries
53
+ self.stream(limit: limit, page_size: page_size).entries
62
54
  end
63
55
 
64
56
  ##
@@ -75,9 +67,7 @@ module Twilio
75
67
  def stream(limit: nil, page_size: nil)
76
68
  limits = @version.read_limits(limit, page_size)
77
69
 
78
- page = self.page(
79
- page_size: limits[:page_size],
80
- )
70
+ page = self.page(page_size: limits[:page_size],)
81
71
 
82
72
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
83
73
  end
@@ -89,9 +79,7 @@ module Twilio
89
79
  def each
90
80
  limits = @version.read_limits
91
81
 
92
- page = self.page(
93
- page_size: limits[:page_size],
94
- )
82
+ page = self.page(page_size: limits[:page_size],)
95
83
 
96
84
  @version.stream(page,
97
85
  limit: limits[:limit],
@@ -158,10 +146,7 @@ module Twilio
158
146
  # @param [Hash] payload Payload response from the API
159
147
  # @return [ServiceInstance] ServiceInstance
160
148
  def get_instance(payload)
161
- ServiceInstance.new(
162
- @version,
163
- payload,
164
- )
149
+ ServiceInstance.new(@version, payload,)
165
150
  end
166
151
 
167
152
  ##
@@ -181,15 +166,14 @@ module Twilio
181
166
  super(version)
182
167
 
183
168
  # Path Solution
184
- @solution = {
185
- sid: sid,
186
- }
169
+ @solution = {sid: sid,}
187
170
  @uri = "/Services/#{@solution[:sid]}"
188
171
 
189
172
  # Dependents
190
173
  @channels = nil
191
174
  @roles = nil
192
175
  @users = nil
176
+ @bindings = nil
193
177
  end
194
178
 
195
179
  ##
@@ -204,11 +188,7 @@ module Twilio
204
188
  params,
205
189
  )
206
190
 
207
- ServiceInstance.new(
208
- @version,
209
- payload,
210
- sid: @solution[:sid],
211
- )
191
+ ServiceInstance.new(@version, payload, sid: @solution[:sid],)
212
192
  end
213
193
 
214
194
  ##
@@ -305,11 +285,7 @@ module Twilio
305
285
  data: data,
306
286
  )
307
287
 
308
- ServiceInstance.new(
309
- @version,
310
- payload,
311
- sid: @solution[:sid],
312
- )
288
+ ServiceInstance.new(@version, payload, sid: @solution[:sid],)
313
289
  end
314
290
 
315
291
  ##
@@ -320,18 +296,11 @@ module Twilio
320
296
  raise ArgumentError, 'sid cannot be nil' if sid.nil?
321
297
 
322
298
  if sid != :unset
323
- return ChannelContext.new(
324
- @version,
325
- @solution[:sid],
326
- sid,
327
- )
299
+ return ChannelContext.new(@version, @solution[:sid], sid,)
328
300
  end
329
301
 
330
302
  unless @channels
331
- @channels = ChannelList.new(
332
- @version,
333
- service_sid: @solution[:sid],
334
- )
303
+ @channels = ChannelList.new(@version, service_sid: @solution[:sid],)
335
304
  end
336
305
 
337
306
  @channels
@@ -345,18 +314,11 @@ module Twilio
345
314
  raise ArgumentError, 'sid cannot be nil' if sid.nil?
346
315
 
347
316
  if sid != :unset
348
- return RoleContext.new(
349
- @version,
350
- @solution[:sid],
351
- sid,
352
- )
317
+ return RoleContext.new(@version, @solution[:sid], sid,)
353
318
  end
354
319
 
355
320
  unless @roles
356
- @roles = RoleList.new(
357
- @version,
358
- service_sid: @solution[:sid],
359
- )
321
+ @roles = RoleList.new(@version, service_sid: @solution[:sid],)
360
322
  end
361
323
 
362
324
  @roles
@@ -370,23 +332,34 @@ module Twilio
370
332
  raise ArgumentError, 'sid cannot be nil' if sid.nil?
371
333
 
372
334
  if sid != :unset
373
- return UserContext.new(
374
- @version,
375
- @solution[:sid],
376
- sid,
377
- )
335
+ return UserContext.new(@version, @solution[:sid], sid,)
378
336
  end
379
337
 
380
338
  unless @users
381
- @users = UserList.new(
382
- @version,
383
- service_sid: @solution[:sid],
384
- )
339
+ @users = UserList.new(@version, service_sid: @solution[:sid],)
385
340
  end
386
341
 
387
342
  @users
388
343
  end
389
344
 
345
+ ##
346
+ # Access the bindings
347
+ # @return [BindingList]
348
+ # @return [BindingContext] if sid was passed.
349
+ def bindings(sid=:unset)
350
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
351
+
352
+ if sid != :unset
353
+ return BindingContext.new(@version, @solution[:sid], sid,)
354
+ end
355
+
356
+ unless @bindings
357
+ @bindings = BindingList.new(@version, service_sid: @solution[:sid],)
358
+ end
359
+
360
+ @bindings
361
+ end
362
+
390
363
  ##
391
364
  # Provide a user friendly representation
392
365
  def to_s
@@ -434,9 +407,7 @@ module Twilio
434
407
 
435
408
  # Context
436
409
  @instance_context = nil
437
- @params = {
438
- 'sid' => sid || @properties['sid'],
439
- }
410
+ @params = {'sid' => sid || @properties['sid'],}
440
411
  end
441
412
 
442
413
  ##
@@ -445,10 +416,7 @@ module Twilio
445
416
  # @return [ServiceContext] ServiceContext for this ServiceInstance
446
417
  def context
447
418
  unless @instance_context
448
- @instance_context = ServiceContext.new(
449
- @version,
450
- @params['sid'],
451
- )
419
+ @instance_context = ServiceContext.new(@version, @params['sid'],)
452
420
  end
453
421
  @instance_context
454
422
  end
@@ -708,6 +676,13 @@ module Twilio
708
676
  context.users
709
677
  end
710
678
 
679
+ ##
680
+ # Access the bindings
681
+ # @return [bindings] bindings
682
+ def bindings
683
+ context.bindings
684
+ end
685
+
711
686
  ##
712
687
  # Provide a user friendly representation
713
688
  def to_s
@@ -0,0 +1,344 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+
7
+ module Twilio
8
+ module REST
9
+ class IpMessaging < Domain
10
+ class V2 < Version
11
+ class ServiceContext < InstanceContext
12
+ class BindingList < ListResource
13
+ ##
14
+ # Initialize the BindingList
15
+ # @param [Version] version Version that contains the resource
16
+ # @param [String] service_sid The service_sid
17
+ # @return [BindingList] BindingList
18
+ def initialize(version, service_sid: nil)
19
+ super(version)
20
+
21
+ # Path Solution
22
+ @solution = {service_sid: service_sid}
23
+ @uri = "/Services/#{@solution[:service_sid]}/Bindings"
24
+ end
25
+
26
+ ##
27
+ # Lists BindingInstance records from the API as a list.
28
+ # Unlike stream(), this operation is eager and will load `limit` records into
29
+ # memory before returning.
30
+ # @param [binding.BindingType] binding_type The binding_type
31
+ # @param [String] identity The identity
32
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
33
+ # guarantees to never return more than limit. Default is no limit
34
+ # @param [Integer] page_size Number of records to fetch per request, when
35
+ # not set will use the default value of 50 records. If no page_size is defined
36
+ # but a limit is defined, stream() will attempt to read the limit with the most
37
+ # efficient page size, i.e. min(limit, 1000)
38
+ # @return [Array] Array of up to limit results
39
+ def list(binding_type: :unset, identity: :unset, limit: nil, page_size: nil)
40
+ self.stream(binding_type: binding_type, identity: identity, limit: limit, page_size: page_size).entries
41
+ end
42
+
43
+ ##
44
+ # Streams BindingInstance records from the API as an Enumerable.
45
+ # This operation lazily loads records as efficiently as possible until the limit
46
+ # is reached.
47
+ # @param [binding.BindingType] binding_type The binding_type
48
+ # @param [String] identity The identity
49
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
50
+ # guarantees to never return more than limit. Default is no limit.
51
+ # @param [Integer] page_size Number of records to fetch per request, when
52
+ # not set will use the default value of 50 records. If no page_size is defined
53
+ # but a limit is defined, stream() will attempt to read the limit with the most
54
+ # efficient page size, i.e. min(limit, 1000)
55
+ # @return [Enumerable] Enumerable that will yield up to limit results
56
+ def stream(binding_type: :unset, identity: :unset, limit: nil, page_size: nil)
57
+ limits = @version.read_limits(limit, page_size)
58
+
59
+ page = self.page(binding_type: binding_type, identity: identity, page_size: limits[:page_size],)
60
+
61
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
62
+ end
63
+
64
+ ##
65
+ # When passed a block, yields BindingInstance records from the API.
66
+ # This operation lazily loads records as efficiently as possible until the limit
67
+ # is reached.
68
+ def each
69
+ limits = @version.read_limits
70
+
71
+ page = self.page(page_size: limits[:page_size],)
72
+
73
+ @version.stream(page,
74
+ limit: limits[:limit],
75
+ page_limit: limits[:page_limit]).each {|x| yield x}
76
+ end
77
+
78
+ ##
79
+ # Retrieve a single page of BindingInstance records from the API.
80
+ # Request is executed immediately.
81
+ # @param [binding.BindingType] binding_type The binding_type
82
+ # @param [String] identity The identity
83
+ # @param [String] page_token PageToken provided by the API
84
+ # @param [Integer] page_number Page Number, this value is simply for client state
85
+ # @param [Integer] page_size Number of records to return, defaults to 50
86
+ # @return [Page] Page of BindingInstance
87
+ def page(binding_type: :unset, identity: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
88
+ params = Twilio::Values.of({
89
+ 'BindingType' => binding_type,
90
+ 'Identity' => identity,
91
+ 'PageToken' => page_token,
92
+ 'Page' => page_number,
93
+ 'PageSize' => page_size,
94
+ })
95
+ response = @version.page(
96
+ 'GET',
97
+ @uri,
98
+ params
99
+ )
100
+ BindingPage.new(@version, response, @solution)
101
+ end
102
+
103
+ ##
104
+ # Retrieve a single page of BindingInstance records from the API.
105
+ # Request is executed immediately.
106
+ # @param [String] target_url API-generated URL for the requested results page
107
+ # @return [Page] Page of BindingInstance
108
+ def get_page(target_url)
109
+ response = @version.domain.request(
110
+ 'GET',
111
+ target_url
112
+ )
113
+ BindingPage.new(@version, response, @solution)
114
+ end
115
+
116
+ ##
117
+ # Provide a user friendly representation
118
+ def to_s
119
+ '#<Twilio.IpMessaging.V2.BindingList>'
120
+ end
121
+ end
122
+
123
+ class BindingPage < Page
124
+ ##
125
+ # Initialize the BindingPage
126
+ # @param [Version] version Version that contains the resource
127
+ # @param [Response] response Response from the API
128
+ # @param [Hash] solution Path solution for the resource
129
+ # @return [BindingPage] BindingPage
130
+ def initialize(version, response, solution)
131
+ super(version, response)
132
+
133
+ # Path Solution
134
+ @solution = solution
135
+ end
136
+
137
+ ##
138
+ # Build an instance of BindingInstance
139
+ # @param [Hash] payload Payload response from the API
140
+ # @return [BindingInstance] BindingInstance
141
+ def get_instance(payload)
142
+ BindingInstance.new(@version, payload, service_sid: @solution[:service_sid],)
143
+ end
144
+
145
+ ##
146
+ # Provide a user friendly representation
147
+ def to_s
148
+ '<Twilio.IpMessaging.V2.BindingPage>'
149
+ end
150
+ end
151
+
152
+ class BindingContext < InstanceContext
153
+ ##
154
+ # Initialize the BindingContext
155
+ # @param [Version] version Version that contains the resource
156
+ # @param [String] service_sid The service_sid
157
+ # @param [String] sid The sid
158
+ # @return [BindingContext] BindingContext
159
+ def initialize(version, service_sid, sid)
160
+ super(version)
161
+
162
+ # Path Solution
163
+ @solution = {service_sid: service_sid, sid: sid,}
164
+ @uri = "/Services/#{@solution[:service_sid]}/Bindings/#{@solution[:sid]}"
165
+ end
166
+
167
+ ##
168
+ # Fetch a BindingInstance
169
+ # @return [BindingInstance] Fetched BindingInstance
170
+ def fetch
171
+ params = Twilio::Values.of({})
172
+
173
+ payload = @version.fetch(
174
+ 'GET',
175
+ @uri,
176
+ params,
177
+ )
178
+
179
+ BindingInstance.new(@version, payload, service_sid: @solution[:service_sid], sid: @solution[:sid],)
180
+ end
181
+
182
+ ##
183
+ # Deletes the BindingInstance
184
+ # @return [Boolean] true if delete succeeds, true otherwise
185
+ def delete
186
+ @version.delete('delete', @uri)
187
+ end
188
+
189
+ ##
190
+ # Provide a user friendly representation
191
+ def to_s
192
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
193
+ "#<Twilio.IpMessaging.V2.BindingContext #{context}>"
194
+ end
195
+ end
196
+
197
+ class BindingInstance < InstanceResource
198
+ ##
199
+ # Initialize the BindingInstance
200
+ # @param [Version] version Version that contains the resource
201
+ # @param [Hash] payload payload that contains response from Twilio
202
+ # @param [String] service_sid The service_sid
203
+ # @param [String] sid The sid
204
+ # @return [BindingInstance] BindingInstance
205
+ def initialize(version, payload, service_sid: nil, sid: nil)
206
+ super(version)
207
+
208
+ # Marshaled Properties
209
+ @properties = {
210
+ 'sid' => payload['sid'],
211
+ 'account_sid' => payload['account_sid'],
212
+ 'service_sid' => payload['service_sid'],
213
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
214
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
215
+ 'endpoint' => payload['endpoint'],
216
+ 'identity' => payload['identity'],
217
+ 'credential_sid' => payload['credential_sid'],
218
+ 'binding_type' => payload['binding_type'],
219
+ 'message_types' => payload['message_types'],
220
+ 'url' => payload['url'],
221
+ 'links' => payload['links'],
222
+ }
223
+
224
+ # Context
225
+ @instance_context = nil
226
+ @params = {'service_sid' => service_sid, 'sid' => sid || @properties['sid'],}
227
+ end
228
+
229
+ ##
230
+ # Generate an instance context for the instance, the context is capable of
231
+ # performing various actions. All instance actions are proxied to the context
232
+ # @return [BindingContext] BindingContext for this BindingInstance
233
+ def context
234
+ unless @instance_context
235
+ @instance_context = BindingContext.new(@version, @params['service_sid'], @params['sid'],)
236
+ end
237
+ @instance_context
238
+ end
239
+
240
+ ##
241
+ # @return [String] The sid
242
+ def sid
243
+ @properties['sid']
244
+ end
245
+
246
+ ##
247
+ # @return [String] The account_sid
248
+ def account_sid
249
+ @properties['account_sid']
250
+ end
251
+
252
+ ##
253
+ # @return [String] The service_sid
254
+ def service_sid
255
+ @properties['service_sid']
256
+ end
257
+
258
+ ##
259
+ # @return [Time] The date_created
260
+ def date_created
261
+ @properties['date_created']
262
+ end
263
+
264
+ ##
265
+ # @return [Time] The date_updated
266
+ def date_updated
267
+ @properties['date_updated']
268
+ end
269
+
270
+ ##
271
+ # @return [String] The endpoint
272
+ def endpoint
273
+ @properties['endpoint']
274
+ end
275
+
276
+ ##
277
+ # @return [String] The identity
278
+ def identity
279
+ @properties['identity']
280
+ end
281
+
282
+ ##
283
+ # @return [String] The credential_sid
284
+ def credential_sid
285
+ @properties['credential_sid']
286
+ end
287
+
288
+ ##
289
+ # @return [binding.BindingType] The binding_type
290
+ def binding_type
291
+ @properties['binding_type']
292
+ end
293
+
294
+ ##
295
+ # @return [String] The message_types
296
+ def message_types
297
+ @properties['message_types']
298
+ end
299
+
300
+ ##
301
+ # @return [String] The url
302
+ def url
303
+ @properties['url']
304
+ end
305
+
306
+ ##
307
+ # @return [String] The links
308
+ def links
309
+ @properties['links']
310
+ end
311
+
312
+ ##
313
+ # Fetch a BindingInstance
314
+ # @return [BindingInstance] Fetched BindingInstance
315
+ def fetch
316
+ context.fetch
317
+ end
318
+
319
+ ##
320
+ # Deletes the BindingInstance
321
+ # @return [Boolean] true if delete succeeds, true otherwise
322
+ def delete
323
+ context.delete
324
+ end
325
+
326
+ ##
327
+ # Provide a user friendly representation
328
+ def to_s
329
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
330
+ "<Twilio.IpMessaging.V2.BindingInstance #{values}>"
331
+ end
332
+
333
+ ##
334
+ # Provide a detailed, user friendly representation
335
+ def inspect
336
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
337
+ "<Twilio.IpMessaging.V2.BindingInstance #{values}>"
338
+ end
339
+ end
340
+ end
341
+ end
342
+ end
343
+ end
344
+ end