twilio-ruby 5.0.0.alpha1 → 5.0.0.rc2

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 (493) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +11 -2
  3. data/AUTHORS.md +32 -46
  4. data/CHANGES.md +1 -124
  5. data/Gemfile +2 -2
  6. data/LICENSE.md +12 -12
  7. data/Makefile +2 -15
  8. data/README.md +37 -29
  9. data/Rakefile +0 -54
  10. data/examples/examples.rb +57 -46
  11. data/examples/{print_call_log.rb → print-call-log.rb} +7 -7
  12. data/lib/rack/twilio_webhook_authentication.rb +6 -5
  13. data/lib/twilio-ruby.rb +16 -17
  14. data/lib/twilio-ruby/compatibility/v2010/account/call/feedback.rb +15 -0
  15. data/lib/twilio-ruby/compatibility/v2010/account/queue/member.rb +23 -0
  16. data/lib/twilio-ruby/framework/domain.rb +2 -2
  17. data/lib/twilio-ruby/framework/exception.rb +14 -0
  18. data/lib/twilio-ruby/framework/helper.rb +1 -1
  19. data/lib/twilio-ruby/framework/page.rb +30 -28
  20. data/lib/twilio-ruby/framework/resource.rb +2 -2
  21. data/lib/twilio-ruby/framework/serialize.rb +7 -58
  22. data/lib/twilio-ruby/framework/twilio_response.rb +1 -1
  23. data/lib/twilio-ruby/framework/version.rb +48 -43
  24. data/lib/twilio-ruby/http/http_client.rb +8 -8
  25. data/lib/twilio-ruby/rest/api.rb +33 -141
  26. data/lib/twilio-ruby/rest/api/v2010.rb +31 -50
  27. data/lib/twilio-ruby/rest/api/v2010/account.rb +239 -389
  28. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +122 -145
  29. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +56 -76
  30. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +127 -144
  31. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +83 -85
  32. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +97 -92
  33. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +77 -142
  34. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +77 -142
  35. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +77 -142
  36. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +184 -232
  37. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +84 -73
  38. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +80 -85
  39. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +115 -126
  40. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +99 -114
  41. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +112 -150
  42. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +109 -228
  43. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +98 -101
  44. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +164 -287
  45. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +90 -152
  46. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +90 -152
  47. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +90 -152
  48. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +138 -195
  49. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +100 -90
  50. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +106 -118
  51. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +105 -96
  52. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +117 -119
  53. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +95 -84
  54. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +103 -194
  55. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +93 -100
  56. data/lib/twilio-ruby/rest/api/v2010/account/sandbox.rb +304 -0
  57. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +30 -42
  58. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +113 -111
  59. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +115 -104
  60. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +133 -159
  61. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +96 -94
  62. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +96 -94
  63. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +114 -111
  64. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +113 -108
  65. data/lib/twilio-ruby/rest/api/v2010/account/sms.rb +140 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/sms/short_code.rb +431 -0
  67. data/lib/twilio-ruby/rest/api/v2010/account/sms/sms_message.rb +467 -0
  68. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +34 -41
  69. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +90 -98
  70. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +24 -21
  71. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +118 -139
  72. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +62 -106
  73. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +62 -106
  74. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +62 -106
  75. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +62 -106
  76. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +62 -106
  77. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +62 -106
  78. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +62 -106
  79. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +62 -106
  80. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +124 -130
  81. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +31 -35
  82. data/lib/twilio-ruby/rest/client.rb +88 -249
  83. data/lib/twilio-ruby/rest/{accounts.rb → conversations.rb} +14 -16
  84. data/lib/twilio-ruby/rest/conversations/v1.rb +35 -0
  85. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +270 -0
  86. data/lib/twilio-ruby/rest/{notify/v1/service/segment.rb → conversations/v1/conversation/completed.rb} +101 -101
  87. data/lib/twilio-ruby/rest/{preview/bulk_exports/export/day.rb → conversations/v1/conversation/in_progress.rb} +109 -95
  88. data/lib/twilio-ruby/rest/{messaging/v1/service/phone_number.rb → conversations/v1/conversation/participant.rb} +171 -178
  89. data/lib/twilio-ruby/rest/ip_messaging.rb +11 -26
  90. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +7 -19
  91. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +112 -113
  92. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +131 -542
  93. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +132 -194
  94. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +103 -159
  95. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +102 -183
  96. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +112 -107
  97. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +113 -186
  98. data/lib/twilio-ruby/rest/lookups.rb +8 -12
  99. data/lib/twilio-ruby/rest/lookups/v1.rb +7 -13
  100. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +54 -71
  101. data/lib/twilio-ruby/rest/monitor.rb +11 -19
  102. data/lib/twilio-ruby/rest/monitor/v1.rb +7 -19
  103. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +133 -121
  104. data/lib/twilio-ruby/rest/monitor/v1/event.rb +127 -116
  105. data/lib/twilio-ruby/rest/pricing.rb +11 -17
  106. data/lib/twilio-ruby/rest/pricing/v1.rb +9 -21
  107. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +23 -27
  108. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +74 -71
  109. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +23 -27
  110. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +79 -69
  111. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +27 -33
  112. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +74 -71
  113. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +52 -47
  114. data/lib/twilio-ruby/rest/taskrouter.rb +8 -12
  115. data/lib/twilio-ruby/rest/taskrouter/v1.rb +5 -11
  116. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +153 -260
  117. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +114 -115
  118. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +101 -105
  119. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +139 -216
  120. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +106 -194
  121. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +145 -187
  122. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +65 -57
  123. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +57 -62
  124. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +135 -217
  125. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +60 -54
  126. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +56 -52
  127. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +123 -140
  128. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +61 -57
  129. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +72 -52
  130. data/lib/twilio-ruby/rest/trunking.rb +8 -12
  131. data/lib/twilio-ruby/rest/trunking/v1.rb +5 -11
  132. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +134 -157
  133. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +93 -89
  134. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +93 -89
  135. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +111 -114
  136. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +112 -146
  137. data/lib/twilio-ruby/task_router.rb +0 -0
  138. data/lib/twilio-ruby/task_router/capability.rb +87 -0
  139. data/lib/twilio-ruby/twiml/response.rb +16 -0
  140. data/lib/twilio-ruby/util.rb +1 -1
  141. data/lib/twilio-ruby/util/access_token.rb +70 -0
  142. data/lib/twilio-ruby/util/capability.rb +64 -0
  143. data/lib/twilio-ruby/util/client_config.rb +29 -0
  144. data/lib/twilio-ruby/{security → util}/request_validator.rb +4 -21
  145. data/lib/twilio-ruby/version.rb +1 -1
  146. data/spec/holodeck/holodeck.rb +6 -6
  147. data/spec/holodeck/hologram.rb +1 -0
  148. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +8 -8
  149. data/spec/integration/api/v2010/account/address_spec.rb +29 -37
  150. data/spec/integration/api/v2010/account/application_spec.rb +29 -29
  151. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +13 -13
  152. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +8 -9
  153. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +8 -9
  154. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +8 -9
  155. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +13 -13
  156. data/spec/integration/api/v2010/account/call/feedback_spec.rb +17 -17
  157. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +19 -19
  158. data/spec/integration/api/v2010/account/call/notification_spec.rb +18 -18
  159. data/spec/integration/api/v2010/account/call/recording_spec.rb +20 -32
  160. data/spec/integration/api/v2010/account/call_spec.rb +29 -29
  161. data/spec/integration/api/v2010/account/conference/participant_spec.rb +35 -107
  162. data/spec/integration/api/v2010/account/conference_spec.rb +19 -58
  163. data/spec/integration/api/v2010/account/connect_app_spec.rb +18 -18
  164. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +14 -16
  165. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +14 -16
  166. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +14 -16
  167. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +29 -41
  168. data/spec/integration/api/v2010/account/message/media_spec.rb +18 -18
  169. data/spec/integration/api/v2010/account/message_spec.rb +35 -41
  170. data/spec/integration/api/v2010/account/notification_spec.rb +18 -18
  171. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +23 -23
  172. data/spec/integration/api/v2010/account/queue/member_spec.rb +18 -18
  173. data/spec/integration/api/v2010/account/queue_spec.rb +32 -35
  174. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +18 -18
  175. data/spec/integration/api/v2010/account/recording_spec.rb +21 -42
  176. data/spec/integration/api/v2010/account/sandbox_spec.rb +99 -0
  177. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +36 -32
  178. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +29 -29
  179. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +24 -24
  180. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +24 -24
  181. data/spec/integration/api/v2010/account/sip/domain_spec.rb +29 -29
  182. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +36 -32
  183. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +29 -29
  184. data/spec/integration/api/v2010/account/sip_spec.rb +1 -1
  185. data/spec/integration/api/v2010/account/{short_code_spec.rb → sms/short_code_spec.rb} +25 -18
  186. data/spec/integration/api/v2010/account/sms/sms_message_spec.rb +275 -0
  187. data/spec/integration/{accounts/v1/credential_spec.rb → api/v2010/account/sms_spec.rb} +2 -2
  188. data/spec/integration/api/v2010/account/token_spec.rb +7 -7
  189. data/spec/integration/api/v2010/account/transcription_spec.rb +18 -18
  190. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +8 -8
  191. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +8 -8
  192. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +8 -8
  193. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +8 -8
  194. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +8 -8
  195. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +8 -8
  196. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +8 -8
  197. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +8 -8
  198. data/spec/integration/api/v2010/account/usage/record_spec.rb +8 -8
  199. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +32 -32
  200. data/spec/integration/api/v2010/account/usage_spec.rb +1 -1
  201. data/spec/integration/api/v2010/account/validation_request_spec.rb +4 -24
  202. data/spec/integration/api/v2010/account_spec.rb +28 -24
  203. data/spec/integration/conversations/v1/conversation/completed_spec.rb +89 -0
  204. data/spec/integration/conversations/v1/conversation/in_progress_spec.rb +89 -0
  205. data/spec/integration/conversations/v1/conversation/participant_spec.rb +174 -0
  206. data/spec/integration/conversations/v1/conversation_spec.rb +49 -0
  207. data/spec/integration/ip_messaging/v1/credential_spec.rb +24 -155
  208. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +13 -217
  209. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +10 -241
  210. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +23 -205
  211. data/spec/integration/ip_messaging/v1/service/role_spec.rb +19 -184
  212. data/spec/integration/ip_messaging/v1/service/user_spec.rb +24 -194
  213. data/spec/integration/ip_messaging/v1/service_spec.rb +17 -229
  214. data/spec/integration/lookups/v1/phone_number_spec.rb +6 -17
  215. data/spec/integration/monitor/v1/alert_spec.rb +60 -60
  216. data/spec/integration/monitor/v1/event_spec.rb +13 -13
  217. data/spec/integration/pricing/v1/messaging/country_spec.rb +7 -103
  218. data/spec/integration/pricing/v1/messaging_spec.rb +1 -1
  219. data/spec/integration/pricing/v1/phone_number/country_spec.rb +13 -13
  220. data/spec/integration/pricing/v1/phone_number_spec.rb +1 -1
  221. data/spec/integration/pricing/v1/voice/country_spec.rb +13 -13
  222. data/spec/integration/pricing/v1/voice/number_spec.rb +6 -6
  223. data/spec/integration/pricing/v1/voice_spec.rb +1 -1
  224. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +38 -34
  225. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +13 -13
  226. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +24 -21
  227. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +11 -13
  228. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +17 -18
  229. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +41 -57
  230. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +50 -113
  231. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +6 -7
  232. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +6 -7
  233. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +68 -96
  234. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +12 -14
  235. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +43 -54
  236. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +9 -11
  237. data/spec/integration/taskrouter/v1/workspace_spec.rb +51 -71
  238. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +24 -24
  239. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +66 -66
  240. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +28 -28
  241. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +23 -23
  242. data/spec/integration/trunking/v1/trunk_spec.rb +28 -28
  243. data/spec/rack/twilio_webhook_authentication_spec.rb +23 -19
  244. data/spec/spec_helper.rb +2 -2
  245. data/spec/support/fakeweb.rb +1 -1
  246. data/spec/task_router_spec.rb +114 -0
  247. data/spec/util/access_token_spec.rb +103 -0
  248. data/spec/util/capability_spec.rb +186 -0
  249. data/spec/util/client_config_spec.rb +21 -0
  250. data/spec/{security → util}/request_validator_spec.rb +5 -5
  251. data/twilio-ruby.gemspec +8 -12
  252. metadata +90 -416
  253. data/.rubocop.yml +0 -21
  254. data/.rubocop_todo.yml +0 -187
  255. data/VERSIONS.md +0 -64
  256. data/lib/twilio-ruby/framework/error.rb +0 -30
  257. data/lib/twilio-ruby/framework/values.rb +0 -7
  258. data/lib/twilio-ruby/jwt/access_token.rb +0 -232
  259. data/lib/twilio-ruby/jwt/client_capability.rb +0 -102
  260. data/lib/twilio-ruby/jwt/jwt.rb +0 -50
  261. data/lib/twilio-ruby/jwt/task_router.rb +0 -174
  262. data/lib/twilio-ruby/rest/accounts/v1.rb +0 -39
  263. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +0 -105
  264. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +0 -370
  265. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +0 -431
  266. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +0 -350
  267. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +0 -336
  268. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +0 -165
  269. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +0 -153
  270. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +0 -153
  271. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +0 -397
  272. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +0 -378
  273. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +0 -430
  274. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +0 -336
  275. data/lib/twilio-ruby/rest/chat.rb +0 -59
  276. data/lib/twilio-ruby/rest/chat/v1.rb +0 -56
  277. data/lib/twilio-ruby/rest/chat/v1/credential.rb +0 -403
  278. data/lib/twilio-ruby/rest/chat/v1/service.rb +0 -935
  279. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +0 -554
  280. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +0 -386
  281. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +0 -431
  282. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +0 -447
  283. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +0 -396
  284. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +0 -467
  285. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +0 -244
  286. data/lib/twilio-ruby/rest/chat/v2.rb +0 -56
  287. data/lib/twilio-ruby/rest/chat/v2/credential.rb +0 -403
  288. data/lib/twilio-ruby/rest/chat/v2/service.rb +0 -688
  289. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +0 -554
  290. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +0 -386
  291. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +0 -431
  292. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +0 -447
  293. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +0 -396
  294. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +0 -467
  295. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +0 -244
  296. data/lib/twilio-ruby/rest/fax.rb +0 -44
  297. data/lib/twilio-ruby/rest/fax/v1.rb +0 -41
  298. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -541
  299. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +0 -326
  300. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +0 -386
  301. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +0 -244
  302. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +0 -56
  303. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +0 -403
  304. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +0 -688
  305. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +0 -554
  306. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +0 -386
  307. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +0 -431
  308. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +0 -447
  309. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +0 -396
  310. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +0 -467
  311. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +0 -244
  312. data/lib/twilio-ruby/rest/messaging.rb +0 -44
  313. data/lib/twilio-ruby/rest/messaging/v1.rb +0 -41
  314. data/lib/twilio-ruby/rest/messaging/v1/service.rb +0 -637
  315. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +0 -352
  316. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +0 -359
  317. data/lib/twilio-ruby/rest/notify.rb +0 -52
  318. data/lib/twilio-ruby/rest/notify/v1.rb +0 -56
  319. data/lib/twilio-ruby/rest/notify/v1/credential.rb +0 -403
  320. data/lib/twilio-ruby/rest/notify/v1/service.rb +0 -639
  321. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +0 -430
  322. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +0 -288
  323. data/lib/twilio-ruby/rest/notify/v1/service/user.rb +0 -445
  324. data/lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb +0 -254
  325. data/lib/twilio-ruby/rest/notify/v1/service/user/user_binding.rb +0 -434
  326. data/lib/twilio-ruby/rest/preview.rb +0 -145
  327. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -56
  328. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -203
  329. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -243
  330. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +0 -42
  331. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +0 -557
  332. data/lib/twilio-ruby/rest/preview/marketplace.rb +0 -58
  333. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +0 -333
  334. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +0 -301
  335. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +0 -440
  336. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +0 -341
  337. data/lib/twilio-ruby/rest/preview/proxy.rb +0 -41
  338. data/lib/twilio-ruby/rest/preview/proxy/service.rb +0 -500
  339. data/lib/twilio-ruby/rest/preview/proxy/service/phone_number.rb +0 -359
  340. data/lib/twilio-ruby/rest/preview/proxy/service/session.rb +0 -536
  341. data/lib/twilio-ruby/rest/preview/proxy/service/session/interaction.rb +0 -429
  342. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant.rb +0 -506
  343. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant/message_interaction.rb +0 -452
  344. data/lib/twilio-ruby/rest/preview/proxy/service/short_code.rb +0 -359
  345. data/lib/twilio-ruby/rest/preview/sync.rb +0 -41
  346. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -504
  347. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -445
  348. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -395
  349. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -438
  350. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -430
  351. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -395
  352. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -438
  353. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -432
  354. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -395
  355. data/lib/twilio-ruby/rest/preview/wireless.rb +0 -71
  356. data/lib/twilio-ruby/rest/preview/wireless/command.rb +0 -382
  357. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +0 -435
  358. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +0 -544
  359. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +0 -236
  360. data/lib/twilio-ruby/rest/sync.rb +0 -44
  361. data/lib/twilio-ruby/rest/sync/v1.rb +0 -41
  362. data/lib/twilio-ruby/rest/sync/v1/service.rb +0 -504
  363. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +0 -445
  364. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +0 -395
  365. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +0 -438
  366. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +0 -430
  367. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +0 -395
  368. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +0 -438
  369. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +0 -432
  370. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +0 -395
  371. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +0 -315
  372. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +0 -461
  373. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +0 -406
  374. data/lib/twilio-ruby/rest/video.rb +0 -52
  375. data/lib/twilio-ruby/rest/video/v1.rb +0 -56
  376. data/lib/twilio-ruby/rest/video/v1/recording.rb +0 -382
  377. data/lib/twilio-ruby/rest/video/v1/room.rb +0 -485
  378. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -381
  379. data/lib/twilio-ruby/rest/wireless.rb +0 -60
  380. data/lib/twilio-ruby/rest/wireless/v1.rb +0 -71
  381. data/lib/twilio-ruby/rest/wireless/v1/command.rb +0 -367
  382. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +0 -452
  383. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +0 -548
  384. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +0 -235
  385. data/lib/twilio-ruby/twiml/messaging_response.rb +0 -141
  386. data/lib/twilio-ruby/twiml/twiml.rb +0 -69
  387. data/lib/twilio-ruby/twiml/voice_response.rb +0 -916
  388. data/spec/framework/serialize_spec.rb +0 -59
  389. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -226
  390. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -135
  391. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -223
  392. data/spec/integration/api/v2010/account/key_spec.rb +0 -178
  393. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -48
  394. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -45
  395. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -45
  396. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -175
  397. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -166
  398. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -178
  399. data/spec/integration/chat/v1/credential_spec.rb +0 -223
  400. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -210
  401. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -284
  402. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -294
  403. data/spec/integration/chat/v1/service/channel_spec.rb +0 -275
  404. data/spec/integration/chat/v1/service/role_spec.rb +0 -263
  405. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -92
  406. data/spec/integration/chat/v1/service/user_spec.rb +0 -266
  407. data/spec/integration/chat/v1/service_spec.rb +0 -299
  408. data/spec/integration/chat/v2/credential_spec.rb +0 -223
  409. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -210
  410. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -284
  411. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -294
  412. data/spec/integration/chat/v2/service/channel_spec.rb +0 -275
  413. data/spec/integration/chat/v2/service/role_spec.rb +0 -263
  414. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -92
  415. data/spec/integration/chat/v2/service/user_spec.rb +0 -266
  416. data/spec/integration/chat/v2/service_spec.rb +0 -325
  417. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -126
  418. data/spec/integration/fax/v1/fax_spec.rb +0 -272
  419. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -210
  420. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -92
  421. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -223
  422. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -210
  423. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -284
  424. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -294
  425. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -275
  426. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -263
  427. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -92
  428. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -266
  429. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -325
  430. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -170
  431. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -201
  432. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -173
  433. data/spec/integration/messaging/v1/service_spec.rb +0 -263
  434. data/spec/integration/notify/v1/credential_spec.rb +0 -223
  435. data/spec/integration/notify/v1/service/binding_spec.rb +0 -227
  436. data/spec/integration/notify/v1/service/notification_spec.rb +0 -97
  437. data/spec/integration/notify/v1/service/segment_spec.rb +0 -84
  438. data/spec/integration/notify/v1/service/user/segment_memberships_spec.rb +0 -118
  439. data/spec/integration/notify/v1/service/user/user_binding_spec.rb +0 -269
  440. data/spec/integration/notify/v1/service/user_spec.rb +0 -213
  441. data/spec/integration/notify/v1/service_spec.rb +0 -280
  442. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -56
  443. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -79
  444. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -43
  445. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -280
  446. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -121
  447. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -142
  448. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -164
  449. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -252
  450. data/spec/integration/preview/proxy/service/phone_number_spec.rb +0 -173
  451. data/spec/integration/preview/proxy/service/session/interaction_spec.rb +0 -104
  452. data/spec/integration/preview/proxy/service/session/participant/message_interaction_spec.rb +0 -164
  453. data/spec/integration/preview/proxy/service/session/participant_spec.rb +0 -226
  454. data/spec/integration/preview/proxy/service/session_spec.rb +0 -216
  455. data/spec/integration/preview/proxy/service/short_code_spec.rb +0 -173
  456. data/spec/integration/preview/proxy/service_spec.rb +0 -200
  457. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -206
  458. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  459. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -256
  460. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -206
  461. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -207
  462. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -257
  463. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -206
  464. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -207
  465. data/spec/integration/preview/sync/service_spec.rb +0 -244
  466. data/spec/integration/preview/wireless/command_spec.rb +0 -169
  467. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -260
  468. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -49
  469. data/spec/integration/preview/wireless/sim_spec.rb +0 -208
  470. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -206
  471. data/spec/integration/sync/v1/service/document_spec.rb +0 -254
  472. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -256
  473. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -206
  474. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -207
  475. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  476. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -206
  477. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -207
  478. data/spec/integration/sync/v1/service_spec.rb +0 -244
  479. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -127
  480. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -192
  481. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -201
  482. data/spec/integration/video/v1/recording_spec.rb +0 -165
  483. data/spec/integration/video/v1/room/recording_spec.rb +0 -146
  484. data/spec/integration/video/v1/room_spec.rb +0 -237
  485. data/spec/integration/wireless/v1/command_spec.rb +0 -166
  486. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -268
  487. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -65
  488. data/spec/integration/wireless/v1/sim_spec.rb +0 -208
  489. data/spec/jwt/access_token_spec.rb +0 -130
  490. data/spec/jwt/client_capability_spec.rb +0 -104
  491. data/spec/jwt/task_router_spec.rb +0 -172
  492. data/spec/twiml/messaging_response_spec.rb +0 -90
  493. data/spec/twiml/voice_response_spec.rb +0 -474
@@ -1,235 +0,0 @@
1
- ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
6
-
7
- module Twilio
8
- module REST
9
- class Wireless < Domain
10
- class V1 < Version
11
- class SimContext < InstanceContext
12
- class UsageRecordList < ListResource
13
- ##
14
- # Initialize the UsageRecordList
15
- # @param [Version] version Version that contains the resource
16
- # @param [String] sim_sid The sim_sid
17
- # @return [UsageRecordList] UsageRecordList
18
- def initialize(version, sim_sid: nil)
19
- super(version)
20
-
21
- # Path Solution
22
- @solution = {
23
- sim_sid: sim_sid
24
- }
25
- @uri = "/Sims/#{@solution[:sim_sid]}/UsageRecords"
26
- end
27
-
28
- ##
29
- # Lists UsageRecordInstance records from the API as a list.
30
- # Unlike stream(), this operation is eager and will load `limit` records into
31
- # memory before returning.
32
- # @param [Time] end_ The end
33
- # @param [Time] start The start
34
- # @param [usage_record.Granularity] granularity The granularity
35
- # @param [Integer] limit Upper limit for the number of records to return. stream()
36
- # guarantees to never return more than limit. Default is no limit
37
- # @param [Integer] page_size Number of records to fetch per request, when not set will use
38
- # the default value of 50 records. If no page_size is defined
39
- # but a limit is defined, stream() will attempt to read the
40
- # limit with the most efficient page size, i.e. min(limit, 1000)
41
- # @return [Array] Array of up to limit results
42
- def list(end_: :unset, start: :unset, granularity: :unset, limit: nil, page_size: nil)
43
- self.stream(
44
- end_: end_,
45
- start: start,
46
- granularity: granularity,
47
- limit: limit,
48
- page_size: page_size
49
- ).entries
50
- end
51
-
52
- ##
53
- # Streams UsageRecordInstance records from the API as an Enumerable.
54
- # This operation lazily loads records as efficiently as possible until the limit
55
- # is reached.
56
- # @param [Time] end_ The end
57
- # @param [Time] start The start
58
- # @param [usage_record.Granularity] granularity The granularity
59
- # @param [Integer] limit Upper limit for the number of records to return. stream()
60
- # guarantees to never return more than limit. Default is no limit
61
- # @param [Integer] page_size Number of records to fetch per request, when not set will use
62
- # the default value of 50 records. If no page_size is defined
63
- # but a limit is defined, stream() will attempt to read the
64
- # limit with the most efficient page size, i.e. min(limit, 1000)
65
- # @return [Enumerable] Enumerable that will yield up to limit results
66
- def stream(end_: :unset, start: :unset, granularity: :unset, limit: nil, page_size: nil)
67
- limits = @version.read_limits(limit, page_size)
68
-
69
- page = self.page(
70
- end_: end_,
71
- start: start,
72
- granularity: granularity,
73
- page_size: limits[:page_size],
74
- )
75
-
76
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
77
- end
78
-
79
- ##
80
- # When passed a block, yields UsageRecordInstance records from the API.
81
- # This operation lazily loads records as efficiently as possible until the limit
82
- # is reached.
83
- def each
84
- limits = @version.read_limits
85
-
86
- page = self.page(
87
- page_size: limits[:page_size],
88
- )
89
-
90
- @version.stream(page,
91
- limit: limits[:limit],
92
- page_limit: limits[:page_limit]).each {|x| yield x}
93
- end
94
-
95
- ##
96
- # Retrieve a single page of UsageRecordInstance records from the API.
97
- # Request is executed immediately.
98
- # @param [Time] end_ The end
99
- # @param [Time] start The start
100
- # @param [usage_record.Granularity] granularity The granularity
101
- # @param [String] page_token PageToken provided by the API
102
- # @param [Integer] page_number Page Number, this value is simply for client state
103
- # @param [Integer] page_size Number of records to return, defaults to 50
104
- # @return [Page] Page of UsageRecordInstance
105
- def page(end_: :unset, start: :unset, granularity: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
106
- params = Twilio::Values.of({
107
- 'End' => Twilio.serialize_iso8601_datetime(end_),
108
- 'Start' => Twilio.serialize_iso8601_datetime(start),
109
- 'Granularity' => granularity,
110
- 'PageToken' => page_token,
111
- 'Page' => page_number,
112
- 'PageSize' => page_size,
113
- })
114
- response = @version.page(
115
- 'GET',
116
- @uri,
117
- params
118
- )
119
- UsageRecordPage.new(@version, response, @solution)
120
- end
121
-
122
- ##
123
- # Retrieve a single page of UsageRecordInstance records from the API.
124
- # Request is executed immediately.
125
- # @param [String] target_url API-generated URL for the requested results page
126
- # @return [Page] Page of UsageRecordInstance
127
- def get_page(target_url)
128
- response = @version.domain.request(
129
- 'GET',
130
- target_url
131
- )
132
- UsageRecordPage.new(@version, response, @solution)
133
- end
134
-
135
- ##
136
- # Provide a user friendly representation
137
- def to_s
138
- '#<Twilio.Wireless.V1.UsageRecordList>'
139
- end
140
- end
141
-
142
- class UsageRecordPage < Page
143
- ##
144
- # Initialize the UsageRecordPage
145
- # @param [Version] version Version that contains the resource
146
- # @param [Response] response Response from the API
147
- # @param [Hash] solution Path solution for the resource
148
- # @return [UsageRecordPage] UsageRecordPage
149
- def initialize(version, response, solution)
150
- super(version, response)
151
-
152
- # Path Solution
153
- @solution = solution
154
- end
155
-
156
- ##
157
- # Build an instance of UsageRecordInstance
158
- # @param [Hash] payload Payload response from the API
159
- # @return [UsageRecordInstance] UsageRecordInstance
160
- def get_instance(payload)
161
- UsageRecordInstance.new(
162
- @version,
163
- payload,
164
- sim_sid: @solution[:sim_sid],
165
- )
166
- end
167
-
168
- ##
169
- # Provide a user friendly representation
170
- def to_s
171
- '<Twilio.Wireless.V1.UsageRecordPage>'
172
- end
173
- end
174
-
175
- class UsageRecordInstance < InstanceResource
176
- ##
177
- # Initialize the UsageRecordInstance
178
- # @param [Version] version Version that contains the resource
179
- # @param [Hash] payload payload that contains response from Twilio
180
- # @param [String] sim_sid The sim_sid
181
- # @return [UsageRecordInstance] UsageRecordInstance
182
- def initialize(version, payload, sim_sid: nil)
183
- super(version)
184
-
185
- # Marshaled Properties
186
- @properties = {
187
- 'sim_sid' => payload['sim_sid'],
188
- 'account_sid' => payload['account_sid'],
189
- 'period' => payload['period'],
190
- 'commands' => payload['commands'],
191
- 'data' => payload['data'],
192
- }
193
- end
194
-
195
- ##
196
- # @return [String] The sim_sid
197
- def sim_sid
198
- @properties['sim_sid']
199
- end
200
-
201
- ##
202
- # @return [String] The account_sid
203
- def account_sid
204
- @properties['account_sid']
205
- end
206
-
207
- ##
208
- # @return [Hash] The period
209
- def period
210
- @properties['period']
211
- end
212
-
213
- ##
214
- # @return [Hash] The commands
215
- def commands
216
- @properties['commands']
217
- end
218
-
219
- ##
220
- # @return [Hash] The data
221
- def data
222
- @properties['data']
223
- end
224
-
225
- ##
226
- # Provide a user friendly representation
227
- def to_s
228
- "<Twilio.Wireless.V1.UsageRecordInstance>"
229
- end
230
- end
231
- end
232
- end
233
- end
234
- end
235
- end
@@ -1,141 +0,0 @@
1
- module Twilio
2
- module TwiML
3
- # Messaging TwiML Response
4
- class MessagingResponse < TwiML
5
- # Create a new <Response>
6
- def initialize
7
- super()
8
- self.name = 'Response'
9
- yield(self) if block_given?
10
- end
11
-
12
- # Create a <Message> element
13
- #
14
- # == Parameters:
15
- # body:: body of the message
16
- # to:: number to send to
17
- # from_:: number to send from
18
- # method:: action HTTP method
19
- # action:: action URL
20
- # status_callback:: callback URL
21
- # keyword_args:: additional attributes
22
- #
23
- # == Returns:
24
- # A <Response> element with a <Message> child element
25
- def message(body: nil, to: nil, from: nil, method: nil, action: nil, status_callback: nil, **keyword_args)
26
- message = Message.new(
27
- body: body,
28
- to: to,
29
- from: from,
30
- method: method,
31
- action: action,
32
- status_callback: status_callback,
33
- **keyword_args
34
- )
35
-
36
- yield(message) if block_given?
37
- append(message)
38
- end
39
-
40
- # Create an <Redirect> element
41
- #
42
- # == Parameters:
43
- # url:: URL to redirect to
44
- # method:: HTTP method
45
- # keyword_args:: attributes
46
- #
47
- # == Returns:
48
- # A <Response> element with an <Redirect> child element
49
- def redirect(url, method: nil, **keyword_args)
50
- append(Redirect.new(url, method: method, **keyword_args))
51
- end
52
- end
53
-
54
- # <Message> element
55
- class Message < TwiML
56
- # Create a <Message> element
57
- #
58
- # == Parameters:
59
- # body:: message body
60
- # keyword_args:: additional attributes
61
- #
62
- # == Returns:
63
- # A <Message> element
64
- def initialize(body: nil, **keyword_args)
65
- super(**keyword_args)
66
- @value = body unless body.nil?
67
- yield(self) if block_given?
68
- end
69
-
70
- # Create a <Body> element
71
- #
72
- # == Parameters:
73
- # body:: body of message
74
- # keyword_args:: additional attributes
75
- #
76
- # == Returns:
77
- # A <Message> element with a <Body> child element
78
- def body(body)
79
- append(Body.new(body))
80
- end
81
-
82
- # Create a <Media> element
83
- #
84
- # == Parameters:
85
- # body:: body of message
86
- # keyword_args:: additional attributes
87
- #
88
- # == Returns:
89
- # A <Message> element with a <Media> child element
90
- def media(url)
91
- append(Media.new(url))
92
- end
93
- end
94
-
95
- # <Body> element
96
- class Body < TwiML
97
- # Create a <Body> element
98
- #
99
- # == Parameters:
100
- # body:: message body
101
- #
102
- # == Returns:
103
- # A <Body> element
104
- def initialize(body)
105
- super()
106
- @value = body
107
- end
108
- end
109
-
110
- # <Media> element
111
- class Media < TwiML
112
- # Create a <Media> element
113
- #
114
- # == Parameters:
115
- # url:: media URL location
116
- #
117
- # == Returns:
118
- # A <Media> element
119
- def initialize(url)
120
- super()
121
- @value = url
122
- end
123
- end
124
-
125
- # <Redirect> element
126
- class Redirect < TwiML
127
- # Create a <Redirect> element
128
- #
129
- # == Parameters:
130
- # url:: redirect URL location
131
- # keyword_args:: additional attributes
132
- #
133
- # == Returns:
134
- # A <Redirect> element
135
- def initialize(url, **keyword_args)
136
- super(**keyword_args)
137
- @value = url
138
- end
139
- end
140
- end
141
- end
@@ -1,69 +0,0 @@
1
- require 'libxml'
2
-
3
- module Twilio
4
- module TwiML
5
- class TwiMLError < StandardError
6
- end
7
-
8
- # TwiML Base Class
9
- class TwiML
10
- # Generate getter/setter methods
11
- attr_accessor :name
12
- attr_accessor :indent
13
-
14
- alias to_xml to_s
15
-
16
- def initialize(indent: false, **keyword_args)
17
- @name = self.class.name.split('::').last
18
- @indent = indent
19
- @value = nil
20
- @verbs = []
21
- @attrs = {}
22
-
23
- keyword_args.each do |key, val|
24
- @attrs[TwiML.to_lower_camel_case(key)] = val unless val.nil?
25
- end
26
- end
27
-
28
- def self.to_lower_camel_case(symbol)
29
- # Symbols don't have the .split method, so convert to string first
30
- result = symbol.to_s.split('_').map(&:capitalize).join
31
- result[0].downcase + result[1..result.length]
32
- end
33
-
34
- def to_s(xml_declaration = true)
35
- xml = self.xml.to_s(indent: indent)
36
-
37
- return ('<?xml version="1.0" encoding="UTF-8"?>' + xml) if xml_declaration
38
- xml
39
- end
40
-
41
- def xml
42
- # create XML element
43
- elem = LibXML::XML::Node.new(@name, @value)
44
-
45
- # set element attributes
46
- keys = @attrs.keys.sort
47
- keys.each do |key|
48
- value = @attrs[key]
49
-
50
- value_is_boolean = value.is_a?(TrueClass) || value.is_a?(FalseClass)
51
- elem[key] = value_is_boolean ? value.to_s.downcase : value.to_s
52
- end
53
-
54
- @verbs.each do |verb|
55
- elem << verb.xml
56
- end
57
-
58
- elem
59
- end
60
-
61
- def append(verb)
62
- raise TwiMLError, 'Only appending of TwiML is allowed' unless verb.is_a?(TwiML)
63
-
64
- @verbs << verb
65
- self
66
- end
67
- end
68
- end
69
- end
@@ -1,916 +0,0 @@
1
- module Twilio
2
- module TwiML
3
- # Voice TwiML Response
4
- class VoiceResponse < TwiML
5
- # Create a new <Response>
6
- def initialize
7
- super()
8
- @name = 'Response'
9
- yield(self) if block_given?
10
- end
11
-
12
- # Create a <Dial> element
13
- #
14
- # == Parameters:
15
- # number:: phone number to dial
16
- # action:: action URL
17
- # method:: action HTTP method
18
- # timeout:: time to wait for answer
19
- # hangup_on_star:: hangup call on * press
20
- # time_limit:: max time length
21
- # caller_id:: caller ID to display
22
- # record:: record the call
23
- # trim:: trim the recording
24
- # recording_status_callback:: status callback URL
25
- # recording_status_callback_method:: status callback URL method
26
- # keyword_args:: additional attributes
27
- #
28
- # == Returns:
29
- # A <Response> element with a <Dial> child element
30
- def dial(
31
- number: nil,
32
- action: nil,
33
- method: nil,
34
- timeout: nil,
35
- hangup_on_star: nil,
36
- time_limit: nil,
37
- caller_id: nil,
38
- record: nil,
39
- trim: nil,
40
- recording_status_callback: nil,
41
- recording_status_callback_method: nil,
42
- **keyword_args
43
- )
44
-
45
- dial = Dial.new(
46
- number: number,
47
- action: action,
48
- method: method,
49
- timeout: timeout,
50
- hangup_on_star: hangup_on_star,
51
- time_limit: time_limit,
52
- caller_id: caller_id,
53
- record: record,
54
- trim: trim,
55
- recording_status_callback: recording_status_callback,
56
- recording_status_callback_method: recording_status_callback_method,
57
- **keyword_args
58
- )
59
-
60
- yield(dial) if block_given?
61
- append(dial)
62
- end
63
-
64
- # Create an <Echo> element
65
- #
66
- # == Parameters:
67
- # keyword_args:: attributes
68
- #
69
- # == Returns:
70
- # A <Response> element with an <Echo> child element
71
- def echo(**keyword_args)
72
- append(Echo.new(**keyword_args))
73
- end
74
-
75
- # Create an <Enqueue> element
76
- #
77
- # == Parameters:
78
- # name:: friendly name
79
- # action:: action URL
80
- # method:: action URL method
81
- # wait_url:: wait URL
82
- # wait_url_method:: wait URL method
83
- # workflow_sid:: TaskRouter workflow SID
84
- # keyword_args:: additional attributes
85
- #
86
- # == Returns:
87
- # A <Response> element with an <Enqueue> child element
88
- def enqueue(
89
- name,
90
- action: nil,
91
- method: nil,
92
- wait_url: nil,
93
- wait_url_method: nil,
94
- workflow_sid: nil,
95
- **keyword_args
96
- )
97
-
98
- enqueue = Enqueue.new(
99
- name,
100
- action: action,
101
- method: method,
102
- wait_url: wait_url,
103
- wait_url_method: wait_url_method,
104
- workflow_sid: workflow_sid,
105
- **keyword_args
106
- )
107
-
108
- yield(enqueue) if block_given?
109
- append(enqueue)
110
- end
111
-
112
- # Create a <Gather> element
113
- #
114
- # == Parameters:
115
- # action:: action URL
116
- # method:: action URL method
117
- # timeout:: time to wait while gathering input
118
- # finish_on_key:: finish on key press
119
- # num_digits:: digits to collect
120
- # partial_result_callback:: callback url
121
- # partial_result_callback_method:: callback method
122
- # language:: locale string
123
- # hints:: speech recognition hints
124
- # barge_in:: stop playing media upon speech
125
- # acknowledge_sound_url:: url to hit when sound starts
126
- # keyword_args:: additional attributes
127
- #
128
- # == Returns:
129
- # A <Response> element with a <Gather> child element
130
- def gather(
131
- action: nil,
132
- method: nil,
133
- timeout: nil,
134
- finish_on_key: nil,
135
- num_digits: nil,
136
- partial_result_callback: nil,
137
- partial_result_callback_method: nil,
138
- language: nil,
139
- hints: nil,
140
- barge_in: nil,
141
- acknowledge_sound_url: nil,
142
- **keyword_args
143
- )
144
-
145
- gather = Gather.new(
146
- action: action,
147
- method: method,
148
- timeout: timeout,
149
- finish_on_key: finish_on_key,
150
- num_digits: num_digits,
151
- partial_result_callback: partial_result_callback,
152
- partial_result_callback_method: partial_result_callback_method,
153
- language: language,
154
- hints: hints,
155
- barge_in: barge_in,
156
- acknowledge_sound_url: acknowledge_sound_url,
157
- **keyword_args
158
- )
159
-
160
- yield(gather) if block_given?
161
- append(gather)
162
- end
163
-
164
- # Create a <Hangup> element
165
- #
166
- # == Returns:
167
- # A <Response> element with a <Hangup> child element
168
- def hangup
169
- append(Hangup.new)
170
- end
171
-
172
- # Create a <Leave> element
173
- #
174
- # == Returns:
175
- # A <Response> element with a <Leave> child element
176
- def leave
177
- append(Leave.new)
178
- end
179
-
180
- # Create a <Pause> element
181
- #
182
- # == Parameters:
183
- # length:: time in seconds to pause
184
- #
185
- # == Returns:
186
- # A <Response> element with a <Pause> child element
187
- def pause(length: nil)
188
- append(Pause.new(length: length))
189
- end
190
-
191
- # Create a <Play> element
192
- #
193
- # == Parameters:
194
- # url:: url to play
195
- # loop:: times to loop
196
- # digits:: play DTMF tones during a call
197
- # keyword_args:: additional attributes
198
- #
199
- # == Returns:
200
- # A <Response> element with a <Play> child element
201
- def play(url: nil, loop: nil, digits: nil, **keyword_args)
202
- append(Play.new(
203
- url: url,
204
- loop: loop,
205
- digits: digits,
206
- **keyword_args
207
- ))
208
- end
209
-
210
- # Create a <Record> element
211
- #
212
- # == Parameters:
213
- # action:: action URL
214
- # method:: action URL method
215
- # timeout:: timeout for recording
216
- # finish_on_key:: finish recording on key
217
- # max_length:: max length to record
218
- # play_beep:: play beep
219
- # trim:: trim the recording
220
- # recording_status_callback:: status callback for the recordings
221
- # recording_status_callback_method:: status callback method
222
- # transcribe:: transcribe the recording
223
- # transcribe_callback:: transcribe callback URL
224
- # keyword_args:: additional attributes
225
- #
226
- # == Returns:
227
- # A <Response> element with a <Record> child element
228
- def record(
229
- action: nil,
230
- method: nil,
231
- timeout: nil,
232
- finish_on_key: nil,
233
- max_length: nil,
234
- play_beep: nil,
235
- trim: nil,
236
- recording_status_callback: nil,
237
- recording_status_callback_method: nil,
238
- transcribe: nil,
239
- transcribe_callback: nil,
240
- **keyword_args
241
- )
242
- append(Record.new(
243
- action: action,
244
- method: method,
245
- timeout: timeout,
246
- finish_on_key: finish_on_key,
247
- max_length: max_length,
248
- play_beep: play_beep,
249
- trim: trim,
250
- recording_status_callback: recording_status_callback,
251
- recording_status_callback_method: recording_status_callback_method,
252
- transcribe: transcribe,
253
- transcribe_callback: transcribe_callback,
254
- **keyword_args
255
- ))
256
- end
257
-
258
- # Create a <Redirect> element
259
- #
260
- # == Parameters:
261
- # url:: redirect URL
262
- # method:: redirect method
263
- # keyword_args:: additional attributes
264
- #
265
- # == Returns:
266
- # A <Response> element with a <Redirect> child element
267
- def redirect(url, method: nil, **keyword_args)
268
- append(Redirect.new(url, method: method, **keyword_args))
269
- end
270
-
271
- # Create a <Reject> element
272
- #
273
- # == Parameters:
274
- # reason:: rejection reason
275
- # keyword_args:: additional attributes
276
- #
277
- # == Returns:
278
- # A <Response> element with a <Reject> child element
279
- def reject(reason: nil, **keyword_args)
280
- append(Reject.new(reason: reason, **keyword_args))
281
- end
282
-
283
- # Create a <Say> element
284
- #
285
- # == Parameters:
286
- # body:: message body
287
- # loop:: times to loop
288
- # language:: language of message
289
- # voice:: voice to use
290
- # keyword_args:: additional attributes
291
- #
292
- # == Returns:
293
- # A <Response> element with a <Say> child element
294
- def say(body, loop: nil, language: nil, voice: nil, **keyword_args)
295
- append(Say.new(
296
- body,
297
- loop: loop,
298
- language: language,
299
- voice: voice,
300
- **keyword_args
301
- ))
302
- end
303
-
304
- # Create a <Sms> element
305
- #
306
- # == Parameters:
307
- # body:: body of message
308
- # to:: to phone number
309
- # from_:: from phone number
310
- # method:: action URL method
311
- # action:: action URL
312
- # status_callback:: status callback URL
313
- # keyword_args:: additional attributes
314
- #
315
- # == Returns:
316
- # A <Response> element with a <Sms> child element
317
- def sms(body, to: nil, from: nil, method: nil, action: nil, status_callback: nil, **keyword_args)
318
- append(Sms.new(
319
- body,
320
- to: to,
321
- from: from,
322
- method: method,
323
- action: action,
324
- status_callback: status_callback,
325
- **keyword_args
326
- ))
327
- end
328
- end
329
-
330
- # <Dial> element
331
- class Dial < TwiML
332
- # Create a <Dial> element
333
- #
334
- # == Parameters:
335
- # number:: phone number to dial
336
- # keyword_args:: additional attributes
337
- #
338
- # == Returns:
339
- # A <Dial> element
340
- def initialize(number: nil, **keyword_args)
341
- super(**keyword_args)
342
- @value = number unless number.nil?
343
- yield(self) if block_given?
344
- end
345
-
346
- # Create a <Client> element
347
- #
348
- # == Parameters:
349
- # name:: name of client
350
- # method:: action URL method
351
- # url:: action URL
352
- # status_callback_event:: events to call status callback
353
- # status_callback_method:: status callback URL method
354
- # status_callback:: status callback URL
355
- # keyword_args:: additional attributes
356
- #
357
- # == Returns:
358
- # A <Dial> element with a <Client> child element
359
- def client(
360
- name,
361
- method: nil,
362
- url: nil,
363
- status_callback_event: nil,
364
- status_callback_method: nil,
365
- status_callback: nil,
366
- **keyword_args
367
- )
368
- append(Client.new(
369
- name,
370
- method: method,
371
- url: url,
372
- status_callback_event: status_callback_event,
373
- status_callback_method: status_callback_method,
374
- status_callback: status_callback,
375
- **keyword_args
376
- ))
377
- end
378
-
379
- # Create a <Conference> element
380
- #
381
- # == Parameters:
382
- # name:: name of conference
383
- # muted:: join the conference muted
384
- # start_conference_on_enter:: start the conference on enter
385
- # end_conference_on_exit:: end the conference on exit
386
- # max_participants:: max number of people in conference
387
- # beep:: play beep when joining
388
- # record:: record the conference
389
- # trim:: trim the recording
390
- # wait_method:: wait URL method
391
- # wait_url:: wait URL to play
392
- # event_callback_url:: event callback URL
393
- # status_callback_event:: events to call status callback
394
- # status_callback:: status callback URL
395
- # status_callback_method:: status callback URL method
396
- # recording_status_callback:: recording status callback URL
397
- # recording_status_callback_method:: recording status callback URL method
398
- # keyword_args:: additional attributes
399
- #
400
- # == Returns:
401
- # A <Dial> element with a <Conference> child element
402
- def conference(
403
- name,
404
- muted: nil,
405
- start_conference_on_enter: nil,
406
- end_conference_on_exit: nil,
407
- max_participants: nil,
408
- beep: nil,
409
- record: nil,
410
- trim: nil,
411
- wait_url: nil,
412
- wait_method: nil,
413
- event_callback_url: nil,
414
- status_callback: nil,
415
- status_callback_event: nil,
416
- status_callback_method: nil,
417
- recording_status_callback: nil,
418
- recording_status_callback_method: nil,
419
- **keyword_args
420
- )
421
- append(Conference.new(
422
- name,
423
- muted: muted,
424
- start_conference_on_enter: start_conference_on_enter,
425
- end_conference_on_exit: end_conference_on_exit,
426
- max_participants: max_participants,
427
- beep: beep,
428
- record: record,
429
- trim: trim,
430
- wait_url: wait_url,
431
- wait_method: wait_method,
432
- event_callback_url: event_callback_url,
433
- status_callback: status_callback,
434
- status_callback_event: status_callback_event,
435
- status_callback_method: status_callback_method,
436
- recording_status_callback: recording_status_callback,
437
- recording_status_callback_method: recording_status_callback_method,
438
- **keyword_args
439
- ))
440
- end
441
-
442
- # Create a <Number> element
443
- #
444
- # == Parameters:
445
- # number:: phone number to dial
446
- # send_digits:: play DTMF tones when the call is answered
447
- # url:: TwiML URL
448
- # method:: TwiML URL method
449
- # status_callback_event:: events to call status callback
450
- # status_callback:: status callback URL
451
- # status_callback_method:: status callback URL method
452
- # keyword_args:: additional attributes
453
- #
454
- # == Returns:
455
- # A <Dial> element with a <Number> child element
456
- def number(
457
- number,
458
- send_digits: nil,
459
- url: nil,
460
- method: nil,
461
- status_callback: nil,
462
- status_callback_event: nil,
463
- status_callback_method: nil,
464
- **keyword_args
465
- )
466
- append(Number.new(
467
- number,
468
- send_digits: send_digits,
469
- url: url,
470
- method: method,
471
- status_callback: status_callback,
472
- status_callback_event: status_callback_event,
473
- status_callback_method: status_callback_method,
474
- **keyword_args
475
- ))
476
- end
477
-
478
- # Create a <Queue> element
479
- #
480
- # == Parameters:
481
- # queue_name:: queue name
482
- # url:: action URL
483
- # method:: action URL method
484
- # reservation_sid:: TaskRouter reservation SID
485
- # post_work_activity_sid:: TaskRouter activity SID
486
- # keyword_args:: additional attributes
487
- #
488
- # == Returns:
489
- # A <Dial> element with a <Queue> child element
490
- def queue(
491
- queue_name,
492
- url: nil,
493
- method: nil,
494
- reservation_sid: nil,
495
- post_work_activity_sid: nil,
496
- **keyword_args
497
- )
498
- append(Queue.new(
499
- queue_name,
500
- url: url,
501
- method: method,
502
- reservation_sid: reservation_sid,
503
- post_work_activity_sid: post_work_activity_sid,
504
- **keyword_args
505
- ))
506
- end
507
-
508
- # Create a <Sim> element
509
- #
510
- # == Parameters:
511
- # sid:: sim sid
512
- # keyword_args:: additional attributes
513
- #
514
- # == Returns:
515
- # A <Dial> element with a <Sim> child element
516
- def sim(sid, **keyword_args)
517
- append(Sim.new(sid, **keyword_args))
518
- end
519
-
520
- # Create a <Sip> element
521
- #
522
- # == Parameters:
523
- # uri:: sip url
524
- # username:: sip username
525
- # password:: sip password
526
- # url:: action URL
527
- # method:: action URL method
528
- # status_callback_event:: events to call status callback
529
- # status_callback:: status callback URL
530
- # status_callback_method:: status callback URL method
531
- # keyword_args:: additional attributes
532
- #
533
- # == Returns:
534
- # A <Dial> element with a <Sip> child element
535
- def sip(
536
- uri,
537
- username: nil,
538
- password: nil,
539
- url: nil,
540
- method: nil,
541
- status_callback: nil,
542
- status_callback_event: nil,
543
- status_callback_method: nil,
544
- **keyword_args
545
- )
546
- append(Sip.new(
547
- uri,
548
- username: username,
549
- password: password,
550
- url: url,
551
- method: method,
552
- status_callback: status_callback,
553
- status_callback_event: status_callback_event,
554
- status_callback_method: status_callback_method,
555
- **keyword_args
556
- ))
557
- end
558
- end
559
-
560
- # <Client> element
561
- class Client < TwiML
562
- # Create a <Client> element
563
- #
564
- # == Parameters:
565
- # name:: name of client
566
- # keyword_args:: additional attributes
567
- #
568
- # == Returns:
569
- # A <Client> element
570
- def initialize(name, **keyword_args)
571
- super(**keyword_args)
572
- @value = name
573
- end
574
- end
575
-
576
- # <Conference> element
577
- class Conference < TwiML
578
- # Create a <Conference> element
579
- #
580
- # == Parameters:
581
- # name:: name of conference
582
- # keyword_args:: additional attributes
583
- #
584
- # == Returns:
585
- # A <Conference> element
586
- def initialize(name, **keyword_args)
587
- super(**keyword_args)
588
- @value = name
589
- end
590
- end
591
-
592
- # <Number> element
593
- class Number < TwiML
594
- # Create a <Number> element
595
- #
596
- # == Parameters:
597
- # number:: phone number
598
- # keyword_args:: additional attributes
599
- #
600
- # == Returns:
601
- # A <Number> element
602
- def initialize(number, **keyword_args)
603
- super(**keyword_args)
604
- @value = number
605
- end
606
- end
607
-
608
- # <Queue> element
609
- class Queue < TwiML
610
- # Create a <Queue> element
611
- #
612
- # == Parameters:
613
- # queue_name:: name of queues
614
- # keyword_args:: additional attributes
615
- #
616
- # == Returns:
617
- # A <Queue> element
618
- def initialize(queue_name, **keyword_args)
619
- super(**keyword_args)
620
- @value = queue_name
621
- end
622
- end
623
-
624
- # <Sim> element
625
- class Sim < TwiML
626
- # Create a <Sim> element
627
- #
628
- # == Parameters:
629
- # sid:: sim sid
630
- # keyword_args:: additional attributes
631
- #
632
- # == Returns:
633
- # A <Sim> element
634
- def initialize(sid, **keyword_args)
635
- super(**keyword_args)
636
- @value = sid
637
- end
638
- end
639
-
640
- # <Sip> element
641
- class Sip < TwiML
642
- # Create a <Sip> element
643
- #
644
- # == Parameters:
645
- # uri:: sip uri
646
- # keyword_args:: additional attributes
647
- #
648
- # == Returns:
649
- # A <Sip> element
650
- def initialize(uri, **keyword_args)
651
- super(**keyword_args)
652
- @value = uri
653
- end
654
- end
655
-
656
- # <Echo> element
657
- class Echo < TwiML
658
- # Create a <Echo> element
659
- #
660
- # == Parameters:
661
- # keyword_args:: additional attributes
662
- #
663
- # == Returns:
664
- # A <Echo> element
665
- def initialize(**keyword_args)
666
- super(**keyword_args)
667
- end
668
- end
669
-
670
- # <Enqueue> element
671
- class Enqueue < TwiML
672
- # Create a <Enqueue> element
673
- #
674
- # == Parameters:
675
- # name:: queue name
676
- # keyword_args:: additional attributes
677
- #
678
- # == Returns:
679
- # A <Enqueue> element
680
- def initialize(name, **keyword_args)
681
- super(**keyword_args)
682
- @value = name
683
- yield(self) if block_given?
684
- end
685
-
686
- # Create a <Task> element
687
- #
688
- # == Parameters:
689
- # attributes:: attributes for a task
690
- # keyword_args:: additional attributes
691
- #
692
- # == Returns:
693
- # An <Enqueue> element with a <Task> child element
694
- def task(attributes, **keyword_args)
695
- append(Task.new(attributes, **keyword_args))
696
- end
697
- end
698
-
699
- # <Task> element
700
- class Task < TwiML
701
- # Create a <Task> element
702
- #
703
- # == Parameters:
704
- # attributes:: attributes for a task
705
- # keyword_args:: additional attributes
706
- #
707
- # == Returns:
708
- # A <Task> element
709
- def initialize(attributes, **keyword_args)
710
- super(**keyword_args)
711
- @value = attributes.is_a?(String) ? attributes : JSON.generate(attributes)
712
- end
713
- end
714
-
715
- # <Gather> element
716
- class Gather < TwiML
717
- # Create a <Gather> element
718
- #
719
- # == Parameters:
720
- # keyword_args:: additional attributes
721
- #
722
- # == Returns:
723
- # A <Gather> element
724
- def initialize(**keyword_args)
725
- super(**keyword_args)
726
- yield(self) if block_given?
727
- end
728
-
729
- # Create a <Say> element
730
- #
731
- # == Parameters:
732
- # name:: name of client
733
- # body:: message body
734
- # loop:: times to loop
735
- # language:: message language
736
- # voice:: voice to use
737
- # keyword_args:: additional attributes
738
- #
739
- # == Returns:
740
- # A <Gather> element with a <Say> child element
741
- def say(body, loop: nil, language: nil, voice: nil, **keyword_args)
742
- append(Say.new(
743
- body,
744
- loop: loop,
745
- language: language,
746
- voice: voice,
747
- **keyword_args
748
- ))
749
- end
750
-
751
- # Create a <Play> element
752
- #
753
- # == Parameters:
754
- # url:: media URL
755
- # loop:: times to loop
756
- # digits:: digits to simulate
757
- # keyword_args:: additional attributes
758
- #
759
- # == Returns:
760
- # A <Gather> element with a <Play> child element
761
- def play(url: nil, loop: nil, digits: nil, **keyword_args)
762
- append(Play.new(
763
- url: url,
764
- loop: loop,
765
- digits: digits,
766
- **keyword_args
767
- ))
768
- end
769
-
770
- # Create a <Pause> element
771
- #
772
- # == Parameters:
773
- # length:: time to pause
774
- #
775
- # == Returns:
776
- # A <Gather> element with a <Pause> child element
777
- def pause(length: nil)
778
- append(Pause.new(length: length))
779
- end
780
- end
781
-
782
- # <Pause> element
783
- class Pause < TwiML
784
- # Create a <Pause> element
785
- #
786
- # == Parameters:
787
- # keyword_args:: additional attributes
788
- #
789
- # == Returns:
790
- # A <Pause> element
791
- def initialize(**keyword_args)
792
- super(**keyword_args)
793
- end
794
- end
795
-
796
- # <Play> element
797
- class Play < TwiML
798
- # Create a <Play> element
799
- #
800
- # == Parameters:
801
- # url:: media URL
802
- # keyword_args:: additional attributes
803
- #
804
- # == Returns:
805
- # A <Play> element
806
- def initialize(url: nil, **keyword_args)
807
- super(**keyword_args)
808
- @value = url
809
- end
810
- end
811
-
812
- # <Say> element
813
- class Say < TwiML
814
- # Create a <Say> element
815
- #
816
- # == Parameters:
817
- # body:: message body
818
- # keyword_args:: additional attributes
819
- #
820
- # == Returns:
821
- # A <Say> element
822
- def initialize(body, **keyword_args)
823
- super(**keyword_args)
824
- @value = body
825
- end
826
- end
827
-
828
- # <Hangup> element
829
- class Hangup < TwiML
830
- # Create a <hangup_on_star> element
831
- #
832
- # == Parameters:
833
- # keyword_args:: additional attributes
834
- #
835
- # == Returns:
836
- # A <hangup_on_star> element
837
- def initialize(**keyword_args)
838
- super(**keyword_args)
839
- end
840
- end
841
-
842
- # <Leave> element
843
- class Leave < TwiML
844
- # Create a <Leave> element
845
- #
846
- # == Parameters:
847
- # keyword_args:: additional attributes
848
- #
849
- # == Returns:
850
- # A <Leave> element
851
- def initialize(**keyword_args)
852
- super(**keyword_args)
853
- end
854
- end
855
-
856
- # <Record> element
857
- class Record < TwiML
858
- # Create a <Record> element
859
- #
860
- # == Parameters:
861
- # keyword_args:: additional attributes
862
- #
863
- # == Returns:
864
- # A <Record> element
865
- def initialize(**keyword_args)
866
- super(**keyword_args)
867
- end
868
- end
869
-
870
- # <Redirect> element
871
- class Redirect < TwiML
872
- # Create a <Redirect> element
873
- #
874
- # == Parameters:
875
- # url:: TwiML URL
876
- # keyword_args:: additional attributes
877
- #
878
- # == Returns:
879
- # A <Redirect> element
880
- def initialize(url, **keyword_args)
881
- super(**keyword_args)
882
- @value = url
883
- end
884
- end
885
-
886
- # <Reject> element
887
- class Reject < TwiML
888
- # Create a <Reject> element
889
- #
890
- # == Parameters:
891
- # keyword_args:: additional attributes
892
- #
893
- # == Returns:
894
- # A <Reject> element
895
- def initialize(**keyword_args)
896
- super(**keyword_args)
897
- end
898
- end
899
-
900
- # <Sms> element
901
- class Sms < TwiML
902
- # Create a <Sms> element
903
- #
904
- # == Parameters:
905
- # body:: message body
906
- # keyword_args:: additional attributes
907
- #
908
- # == Returns:
909
- # A <Sms> element
910
- def initialize(body, **keyword_args)
911
- super(**keyword_args)
912
- @value = body
913
- end
914
- end
915
- end
916
- end