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
@@ -0,0 +1,103 @@
1
+ require 'spec_helper'
2
+
3
+ describe Twilio::Util::AccessToken do
4
+
5
+ it 'should generate a token for no grants' do
6
+ scat = Twilio::Util::AccessToken.new 'SK123', 'AC123', 'secret'
7
+ token = scat.to_s
8
+ expect(token).not_to be_nil
9
+ payload, header = JWT.decode token, 'secret'
10
+
11
+ expect(payload['iss']).to eq('SK123')
12
+ expect(payload['sub']).to eq('AC123')
13
+ expect(payload['nbf']).not_to be_nil
14
+ expect(payload['exp']).not_to be_nil
15
+ expect(payload['nbf'] + 3600).to eq(payload['exp'])
16
+ expect(payload['jti']).not_to be_nil
17
+ expect("#{payload['iss']}-#{payload['nbf']}").to eq(payload['jti'])
18
+ expect(payload['grants']).not_to be_nil
19
+ expect(payload['grants'].count).to eq(0)
20
+ end
21
+
22
+ it 'should be able to add standard grants' do
23
+ scat = Twilio::Util::AccessToken.new 'SK123', 'AC123', 'secret'
24
+ scat.add_grant 'https://api.twilio.com/**'
25
+ token = scat.to_s
26
+ expect(token).not_to be_nil
27
+ payload, header = JWT.decode token, 'secret'
28
+
29
+ expect(payload['iss']).to eq('SK123')
30
+ expect(payload['sub']).to eq('AC123')
31
+ expect(payload['nbf']).not_to be_nil
32
+ expect(payload['exp']).not_to be_nil
33
+ expect(payload['nbf'] + 3600).to eq(payload['exp'])
34
+ expect(payload['jti']).not_to be_nil
35
+ expect("#{payload['iss']}-#{payload['nbf']}").to eq(payload['jti'])
36
+ expect(payload['grants']).not_to be_nil
37
+ expect(payload['grants'].count).to eq(1)
38
+ expect(payload['grants'][0]['res']).to eq('https://api.twilio.com/**')
39
+ expect(payload['grants'][0]['act']).to eq(['*'])
40
+ end
41
+
42
+ it 'should be able to add endpoint grants' do
43
+ scat = Twilio::Util::AccessToken.new 'SK123', 'AC123', 'secret'
44
+ scat.add_endpoint_grant 'bob'
45
+ token = scat.to_s
46
+ expect(token).not_to be_nil
47
+ payload, header = JWT.decode token, 'secret'
48
+
49
+ expect(payload['iss']).to eq('SK123')
50
+ expect(payload['sub']).to eq('AC123')
51
+ expect(payload['nbf']).not_to be_nil
52
+ expect(payload['exp']).not_to be_nil
53
+ expect(payload['nbf'] + 3600).to eq(payload['exp'])
54
+ expect(payload['jti']).not_to be_nil
55
+ expect("#{payload['iss']}-#{payload['nbf']}").to eq(payload['jti'])
56
+ expect(payload['grants']).not_to be_nil
57
+ expect(payload['grants'].count).to eq(1)
58
+ expect(payload['grants'][0]['res']).to eq('sip:bob@AC123.endpoint.twilio.com')
59
+ expect(payload['grants'][0]['act']).to eq([Twilio::Util::Action::Client::LISTEN, Twilio::Util::Action::Client::INVITE])
60
+ end
61
+
62
+ it 'should be able to add rest grants' do
63
+ scat = Twilio::Util::AccessToken.new 'SK123', 'AC123', 'secret'
64
+ scat.add_rest_grant 'Apps'
65
+ token = scat.to_s
66
+ expect(token).not_to be_nil
67
+ payload, header = JWT.decode token, 'secret'
68
+
69
+ expect(payload['iss']).to eq('SK123')
70
+ expect(payload['sub']).to eq('AC123')
71
+ expect(payload['nbf']).not_to be_nil
72
+ expect(payload['exp']).not_to be_nil
73
+ expect(payload['nbf'] + 3600).to eq(payload['exp'])
74
+ expect(payload['jti']).not_to be_nil
75
+ expect("#{payload['iss']}-#{payload['nbf']}").to eq(payload['jti'])
76
+ expect(payload['grants']).not_to be_nil
77
+ expect(payload['grants'].count).to eq(1)
78
+ expect(payload['grants'][0]['res']).to eq('https://api.twilio.com/2010-04-01/Accounts/AC123/Apps')
79
+ expect(payload['grants'][0]['act']).to eq([Twilio::Util::Action::ALL])
80
+ end
81
+
82
+ it 'should be able to enable NTS' do
83
+ scat = Twilio::Util::AccessToken.new 'SK123', 'AC123', 'secret'
84
+ scat.enable_nts
85
+ token = scat.to_s
86
+ expect(token).not_to be_nil
87
+ payload, header = JWT.decode token, 'secret'
88
+
89
+ expect(payload['iss']).to eq('SK123')
90
+ expect(payload['sub']).to eq('AC123')
91
+ expect(payload['nbf']).not_to be_nil
92
+ expect(payload['exp']).not_to be_nil
93
+ expect(payload['nbf'] + 3600).to eq(payload['exp'])
94
+ expect(payload['jti']).not_to be_nil
95
+ expect("#{payload['iss']}-#{payload['nbf']}").to eq(payload['jti'])
96
+ expect(payload['grants']).not_to be_nil
97
+ expect(payload['grants'].count).to eq(1)
98
+ expect(payload['grants'][0]['res']).to eq('https://api.twilio.com/2010-04-01/Accounts/AC123/Tokens')
99
+ expect(payload['grants'][0]['act']).to eq([Twilio::Util::Action::HTTP::POST])
100
+ end
101
+
102
+
103
+ end
@@ -0,0 +1,186 @@
1
+ require 'spec_helper'
2
+
3
+ describe Twilio::Util::Capability do
4
+ describe 'config' do
5
+ after(:each) do
6
+ Twilio.instance_variable_set('@configuration', nil)
7
+ end
8
+
9
+ it 'should set the account sid and auth token from a configuration block' do
10
+ Twilio.configure do |config|
11
+ config.account_sid = 'someSid'
12
+ config.auth_token = 'someToken'
13
+ end
14
+
15
+ capability = Twilio::Util::Capability.new
16
+ expect(capability.instance_variable_get('@account_sid')).to eq('someSid')
17
+ expect(capability.instance_variable_get('@auth_token')).to eq('someToken')
18
+ end
19
+
20
+ it 'should overwrite account sid and auth token if passed to initializer' do
21
+ Twilio.configure do |config|
22
+ config.account_sid = 'someSid'
23
+ config.auth_token = 'someToken'
24
+ end
25
+
26
+ capability = Twilio::Util::Capability.new'otherSid', 'otherToken'
27
+ expect(capability.instance_variable_get('@account_sid')).to eq('otherSid')
28
+ expect(capability.instance_variable_get('@auth_token')).to eq('otherToken')
29
+ end
30
+
31
+ it 'should overwrite the account sid if only the sid is given' do
32
+ Twilio.configure do |config|
33
+ config.account_sid = 'someSid'
34
+ config.auth_token = 'someToken'
35
+ end
36
+
37
+ capability = Twilio::Util::Capability.new 'otherSid'
38
+ expect(capability.instance_variable_get('@account_sid')).to eq('otherSid')
39
+ expect(capability.instance_variable_get('@auth_token')).to eq('someToken')
40
+ end
41
+
42
+ it 'should throw an argument error if the sid and token isn\'t set' do
43
+ expect { Twilio::Util::Capability.new }.to raise_error(ArgumentError)
44
+ end
45
+
46
+ it 'should throw an argument error if only the account_sid is set' do
47
+ expect { Twilio::Util::Capability.new 'someSid' }.to raise_error(ArgumentError)
48
+ end
49
+ end
50
+
51
+ describe 'with a capability' do
52
+ before :each do
53
+ @capability = Twilio::Util::Capability.new 'myAccountSid', 'myAuthToken'
54
+ end
55
+
56
+ def queries(q)
57
+ q.scan(/scope:client:(incoming|outgoing)\?(\S+)/).map{|(type, query)| [type, Rack::Utils.parse_query(query)]}
58
+ end
59
+
60
+ it 'should return a valid jwt when #generate is called' do
61
+ token = @capability.generate
62
+ decoded, header = JWT.decode token, 'myAuthToken'
63
+ expect(decoded['scope']).not_to be_nil
64
+ expect(decoded['iss']).not_to be_nil
65
+ expect(decoded['exp']).not_to be_nil
66
+ end
67
+
68
+ it 'should properly set the iss key in the payload' do
69
+ token = @capability.generate
70
+ decoded, header = JWT.decode token, 'myAuthToken'
71
+ expect(decoded['iss']).to eq('myAccountSid')
72
+ end
73
+
74
+ it 'should properly set the exp key based on the default hour ttl' do
75
+ seconds = Time.now.to_i
76
+ token = @capability.generate
77
+ decoded, header = JWT.decode token, 'myAuthToken'
78
+ expect(decoded['exp']).to eq(seconds + 3600)
79
+ end
80
+
81
+ it 'should properly set the exp key based on the ttl passed to #generate' do
82
+ ttl = rand 10000
83
+ seconds = Time.now.to_i
84
+ token = @capability.generate ttl
85
+ decoded, header = JWT.decode token, 'myAuthToken'
86
+ expect(decoded['exp']).to eq(seconds + ttl)
87
+ end
88
+
89
+ it 'should generate a proper incoming client scope string' do
90
+ @capability.allow_client_incoming 'andrew'
91
+ token = @capability.generate
92
+ decoded, header = JWT.decode token, 'myAuthToken'
93
+ expect(queries(decoded['scope'])).to eq([['incoming', {'clientName' => 'andrew'}]])
94
+ end
95
+
96
+ it 'should generate multiple proper incoming client scope strings' do
97
+ @capability.allow_client_incoming 'andrew'
98
+ @capability.allow_client_incoming 'bridget'
99
+ token = @capability.generate
100
+ decoded, header = JWT.decode token, 'myAuthToken'
101
+ expect(queries(decoded['scope'])).to eq([
102
+ ['incoming', {'clientName' => 'andrew'}],
103
+ ['incoming', {'clientName' => 'bridget'}]
104
+ ])
105
+ end
106
+
107
+ it 'should generate a proper outgoing client scope string' do
108
+ @capability.allow_client_outgoing 'myAppSid'
109
+ token = @capability.generate
110
+ decoded, header = JWT.decode token, 'myAuthToken'
111
+ expect(queries(decoded['scope'])).to eq([['outgoing', {'appSid' => 'myAppSid'}]])
112
+ end
113
+
114
+ it 'should generate a proper outgoing client scope string with parameters' do
115
+ app_params_hash = {'key' => 'a value', :foo => 'bar/baz'}
116
+ @capability.allow_client_outgoing 'myAppSid', app_params_hash
117
+ app_params = @capability.instance_eval {url_encode(app_params_hash)}
118
+ params_hash = {'appSid' => 'myAppSid', 'appParams' => app_params}
119
+ @capability.instance_eval {url_encode(params_hash)}
120
+ token = @capability.generate
121
+ decoded, header= JWT.decode token, 'myAuthToken'
122
+ expect(queries(decoded['scope'])).to eq([['outgoing', params_hash]])
123
+ end
124
+
125
+ it 'should generate a proper outgoing client scope string based on the ' +
126
+ 'client name when calling #allow_client_incoming first' do
127
+ @capability.allow_client_incoming 'andrew'
128
+ @capability.allow_client_outgoing 'myAppSid'
129
+ token = @capability.generate
130
+ decoded, header = JWT.decode token, 'myAuthToken'
131
+ expect(queries(decoded['scope'])).to eq([
132
+ ['incoming', {'clientName' => 'andrew'}],
133
+ ['outgoing', {'clientName' => 'andrew', 'appSid' => 'myAppSid'}]
134
+ ])
135
+ end
136
+
137
+ it 'should generate a proper outgoing client scope string based on the ' +
138
+ 'client name when calling #allow_client_incoming second' do
139
+ @capability.allow_client_outgoing 'myAppSid'
140
+ @capability.allow_client_incoming 'andrew'
141
+ token = @capability.generate
142
+ decoded, header = JWT.decode token, 'myAuthToken'
143
+ expect(queries(decoded['scope'])).to eq([["incoming", {"clientName"=>"andrew"}], ["outgoing", {"clientName"=>"andrew", "appSid"=>"myAppSid"}]])
144
+ end
145
+
146
+ it 'should generate a proper outgoing client scope string with parameters ' +
147
+ 'and a client name when calling #allow_client_incoming first' do
148
+ @capability.allow_client_incoming 'andrew'
149
+ app_params_hash = {'key' => 'a value', :foo => 'bar/baz'}
150
+ @capability.allow_client_outgoing 'myAppSid', app_params_hash
151
+ app_params = @capability.instance_eval {url_encode(app_params_hash)}
152
+ params_hash = {'appSid' => 'myAppSid', 'appParams' => app_params, 'clientName' => 'andrew'}
153
+ @capability.instance_eval {url_encode(params_hash)}
154
+ token = @capability.generate
155
+ decoded, header = JWT.decode token, 'myAuthToken'
156
+ scopes = queries(decoded['scope'])
157
+ expect(scopes.shift).to eq(["incoming", {"clientName"=>"andrew"}])
158
+ scope = scopes.shift
159
+ expect(scope.first).to eq('outgoing')
160
+ expect(Rack::Utils.parse_query(scope.last['appParams'])).to eq({'key' => 'a value', 'foo' => 'bar/baz'})
161
+ expect(scope.last["clientName"]).to eq("andrew")
162
+ expect(scope.last["appSid"]).to eq("myAppSid")
163
+ expect(scopes).to be_empty
164
+ end
165
+
166
+ it 'should generate a proper outgoing client scope string with parameters ' +
167
+ 'and a client name when calling #allow_client_incoming second' do
168
+ app_params_hash = {'key' => 'a value', :foo => 'bar/baz'}
169
+ @capability.allow_client_outgoing 'myAppSid', app_params_hash
170
+ @capability.allow_client_incoming 'andrew'
171
+ app_params = @capability.instance_eval {url_encode(app_params_hash)}
172
+ params_hash = {'appSid' => 'myAppSid', 'appParams' => app_params, 'clientName' => 'andrew'}
173
+ @capability.instance_eval {url_encode(params_hash)}
174
+ token = @capability.generate
175
+ decoded, header = JWT.decode token, 'myAuthToken'
176
+ scopes = queries(decoded['scope'])
177
+ expect(scopes.shift).to eq(["incoming", {"clientName"=>"andrew"}])
178
+ scope = scopes.shift
179
+ expect(scope.first).to eq('outgoing')
180
+ expect(Rack::Utils.parse_query(scope.last['appParams'])).to eq({'key' => 'a value', 'foo' => 'bar/baz'})
181
+ expect(scope.last["clientName"]).to eq("andrew")
182
+ expect(scope.last["appSid"]).to eq("myAppSid")
183
+ expect(scopes).to be_empty
184
+ end
185
+ end
186
+ end
@@ -0,0 +1,21 @@
1
+ require 'spec_helper'
2
+
3
+ describe Twilio::Util::ClientConfig do
4
+ Twilio::Util::ClientConfig::DEFAULTS.each do |attribute, value|
5
+ it "sets an attribute with a default value" do
6
+ config = Twilio::Util::ClientConfig.new
7
+ expect(config.send(attribute)).to eq(value)
8
+ end
9
+
10
+ it "can update the value for the attribute" do
11
+ config = Twilio::Util::ClientConfig.new
12
+ config.send("#{attribute}=", "blah")
13
+ expect(config.send(attribute)).to eq("blah")
14
+ end
15
+
16
+ it "can set the value from a hash in the initializer" do
17
+ config = Twilio::Util::ClientConfig.new(attribute => 'blah')
18
+ expect(config.send(attribute)).to eq("blah")
19
+ end
20
+ end
21
+ end
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Twilio::Security::RequestValidator do
3
+ describe Twilio::Util::RequestValidator do
4
4
  describe 'configuration' do
5
5
  after(:each) do
6
6
  Twilio.instance_variable_set('@configuration', nil)
@@ -11,7 +11,7 @@ describe Twilio::Security::RequestValidator do
11
11
  config.auth_token = 'someToken'
12
12
  end
13
13
 
14
- validator = Twilio::Security::RequestValidator.new
14
+ validator = Twilio::Util::RequestValidator.new
15
15
  expect(validator.instance_variable_get('@auth_token')).to eq('someToken')
16
16
  end
17
17
 
@@ -20,19 +20,19 @@ describe Twilio::Security::RequestValidator do
20
20
  config.auth_token = 'someToken'
21
21
  end
22
22
 
23
- validator = Twilio::Security::RequestValidator.new 'otherToken'
23
+ validator = Twilio::Util::RequestValidator.new 'otherToken'
24
24
  expect(validator.instance_variable_get('@auth_token')).to eq('otherToken')
25
25
  end
26
26
 
27
27
  it 'should throw an argument error if the auth token isn\'t set' do
28
- expect { Twilio::Security::RequestValidator.new }.to raise_error(ArgumentError)
28
+ expect { Twilio::Util::RequestValidator.new }.to raise_error(ArgumentError)
29
29
  end
30
30
  end
31
31
 
32
32
  describe 'validations' do
33
33
  let(:token) { '2bd9e9638872de601313dc77410d3b23' }
34
34
 
35
- let(:validator) { Twilio::Security::RequestValidator.new token }
35
+ let(:validator) { Twilio::Util::RequestValidator.new token }
36
36
 
37
37
  let(:voice_url) { 'http://twiliotests.heroku.com/validate/voice' }
38
38
 
data/twilio-ruby.gemspec CHANGED
@@ -1,5 +1,4 @@
1
1
  # coding: utf-8
2
-
3
2
  lib = File.expand_path('../lib', __FILE__)
4
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
4
  require 'twilio-ruby/version'
@@ -7,33 +6,30 @@ require 'twilio-ruby/version'
7
6
  Gem::Specification.new do |spec|
8
7
  spec.name = 'twilio-ruby'
9
8
  spec.version = Twilio::VERSION
10
- spec.authors = ['Twilio API Team']
11
- spec.summary = 'A simple library for communicating with the Twilio REST API, '\
12
- 'building TwiML, and generating Twilio JWT Capability Tokens'
13
- spec.description = 'A simple library for communicating with the Twilio REST API, '\
14
- 'building TwiML, and generating Twilio JWT Capability Tokens'
9
+ spec.authors = ['Andrew Benton']
10
+ spec.email = ['andrew@twilio.com']
11
+ spec.summary = 'A simple library for communicating with the Twilio REST API, building TwiML, and generating Twilio Client Capability Tokens'
12
+ spec.description = 'A simple library for communicating with the Twilio REST API, building TwiML, and generating Twilio Client Capability Tokens'
15
13
  spec.homepage = 'http://github.com/twilio/twilio-ruby'
16
14
  spec.license = 'MIT'
17
- spec.metadata['yard.run'] = 'yri' # use "yard" to build full HTML docs.
18
15
 
19
16
  spec.files = `git ls-files -z`.split("\x0")
20
17
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
21
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
22
19
  spec.require_paths = ['lib']
23
- spec.required_ruby_version = '>= 2.0.0'
20
+ spec.required_ruby_version = '>= 1.9.3'
24
21
  spec.extra_rdoc_files = ['README.md', 'LICENSE.md']
25
22
  spec.rdoc_options = ['--line-numbers', '--inline-source', '--title', 'twilio-ruby', '--main', 'README.md']
26
23
 
27
- spec.add_dependency('libxml-ruby', '3.0.0')
28
- spec.add_dependency('jwt', '~> 1.5')
24
+ spec.add_dependency('builder', '>= 2.1.2')
25
+ spec.add_dependency('jwt', '~> 1.0')
26
+ spec.add_dependency('activesupport', '~> 4.2')
29
27
  spec.add_dependency('faraday', '~>0.9')
30
28
  spec.add_dependency('jruby-openssl') if RUBY_PLATFORM == 'java'
31
29
  # Workaround for RBX <= 2.2.1, should be fixed in next version
32
30
  spec.add_dependency('rubysl') if defined?(RUBY_ENGINE) && RUBY_ENGINE == 'rbx'
33
31
 
34
32
  spec.add_development_dependency 'bundler', '~> 1.5'
35
- spec.add_development_dependency 'rubocop', '~> 0.49.1'
36
- spec.add_development_dependency 'yard', '~> 0.9.9'
37
33
  spec.extra_rdoc_files = ['README.md', 'LICENSE.md']
38
34
  spec.rdoc_options = ['--line-numbers', '--inline-source', '--title', 'twilio-ruby', '--main', 'README.md']
39
35
  end
metadata CHANGED
@@ -1,112 +1,97 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twilio-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.0.alpha1
4
+ version: 5.0.0.rc2
5
5
  platform: ruby
6
6
  authors:
7
- - Twilio API Team
7
+ - Andrew Benton
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-07-13 00:00:00.000000000 Z
11
+ date: 2016-01-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: libxml-ruby
14
+ name: builder
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '='
17
+ - - '>='
18
18
  - !ruby/object:Gem::Version
19
- version: 3.0.0
19
+ version: 2.1.2
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '='
24
+ - - '>='
25
25
  - !ruby/object:Gem::Version
26
- version: 3.0.0
26
+ version: 2.1.2
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: jwt
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ~>
32
32
  - !ruby/object:Gem::Version
33
- version: '1.5'
33
+ version: '1.0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ~>
39
39
  - !ruby/object:Gem::Version
40
- version: '1.5'
40
+ version: '1.0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: faraday
42
+ name: activesupport
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ~>
46
46
  - !ruby/object:Gem::Version
47
- version: '0.9'
47
+ version: '4.2'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ~>
53
53
  - !ruby/object:Gem::Version
54
- version: '0.9'
54
+ version: '4.2'
55
55
  - !ruby/object:Gem::Dependency
56
- name: bundler
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '1.5'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '1.5'
69
- - !ruby/object:Gem::Dependency
70
- name: rubocop
56
+ name: faraday
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
- - - "~>"
59
+ - - ~>
74
60
  - !ruby/object:Gem::Version
75
- version: 0.49.1
76
- type: :development
61
+ version: '0.9'
62
+ type: :runtime
77
63
  prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
- - - "~>"
66
+ - - ~>
81
67
  - !ruby/object:Gem::Version
82
- version: 0.49.1
68
+ version: '0.9'
83
69
  - !ruby/object:Gem::Dependency
84
- name: yard
70
+ name: bundler
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
- - - "~>"
73
+ - - ~>
88
74
  - !ruby/object:Gem::Version
89
- version: 0.9.9
75
+ version: '1.5'
90
76
  type: :development
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
- - - "~>"
80
+ - - ~>
95
81
  - !ruby/object:Gem::Version
96
- version: 0.9.9
82
+ version: '1.5'
97
83
  description: A simple library for communicating with the Twilio REST API, building
98
- TwiML, and generating Twilio JWT Capability Tokens
99
- email:
84
+ TwiML, and generating Twilio Client Capability Tokens
85
+ email:
86
+ - andrew@twilio.com
100
87
  executables: []
101
88
  extensions: []
102
89
  extra_rdoc_files:
103
90
  - README.md
104
91
  - LICENSE.md
105
92
  files:
106
- - ".gitignore"
107
- - ".rubocop.yml"
108
- - ".rubocop_todo.yml"
109
- - ".travis.yml"
93
+ - .gitignore
94
+ - .travis.yml
110
95
  - AUTHORS.md
111
96
  - CHANGES.md
112
97
  - Gemfile
@@ -114,30 +99,22 @@ files:
114
99
  - Makefile
115
100
  - README.md
116
101
  - Rakefile
117
- - VERSIONS.md
118
102
  - conf/cacert.pem
119
103
  - examples/examples.rb
120
- - examples/print_call_log.rb
104
+ - examples/print-call-log.rb
121
105
  - lib/rack/twilio_webhook_authentication.rb
122
106
  - lib/twilio-ruby.rb
107
+ - lib/twilio-ruby/compatibility/v2010/account/call/feedback.rb
108
+ - lib/twilio-ruby/compatibility/v2010/account/queue/member.rb
123
109
  - lib/twilio-ruby/framework/domain.rb
124
- - lib/twilio-ruby/framework/error.rb
110
+ - lib/twilio-ruby/framework/exception.rb
125
111
  - lib/twilio-ruby/framework/helper.rb
126
112
  - lib/twilio-ruby/framework/page.rb
127
113
  - lib/twilio-ruby/framework/resource.rb
128
114
  - lib/twilio-ruby/framework/serialize.rb
129
115
  - lib/twilio-ruby/framework/twilio_response.rb
130
- - lib/twilio-ruby/framework/values.rb
131
116
  - lib/twilio-ruby/framework/version.rb
132
117
  - lib/twilio-ruby/http/http_client.rb
133
- - lib/twilio-ruby/jwt/access_token.rb
134
- - lib/twilio-ruby/jwt/client_capability.rb
135
- - lib/twilio-ruby/jwt/jwt.rb
136
- - lib/twilio-ruby/jwt/task_router.rb
137
- - lib/twilio-ruby/rest/accounts.rb
138
- - lib/twilio-ruby/rest/accounts/v1.rb
139
- - lib/twilio-ruby/rest/accounts/v1/credential.rb
140
- - lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb
141
118
  - lib/twilio-ruby/rest/api.rb
142
119
  - lib/twilio-ruby/rest/api/v2010.rb
143
120
  - lib/twilio-ruby/rest/api/v2010/account.rb
@@ -158,27 +135,18 @@ files:
158
135
  - lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb
159
136
  - lib/twilio-ruby/rest/api/v2010/account/connect_app.rb
160
137
  - lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb
161
- - lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb
162
- - lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb
163
138
  - lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb
164
139
  - lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb
165
140
  - lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb
166
- - lib/twilio-ruby/rest/api/v2010/account/key.rb
167
141
  - lib/twilio-ruby/rest/api/v2010/account/message.rb
168
- - lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb
169
142
  - lib/twilio-ruby/rest/api/v2010/account/message/media.rb
170
- - lib/twilio-ruby/rest/api/v2010/account/new_key.rb
171
- - lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb
172
143
  - lib/twilio-ruby/rest/api/v2010/account/notification.rb
173
144
  - lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb
174
145
  - lib/twilio-ruby/rest/api/v2010/account/queue.rb
175
146
  - lib/twilio-ruby/rest/api/v2010/account/queue/member.rb
176
147
  - lib/twilio-ruby/rest/api/v2010/account/recording.rb
177
- - lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb
178
- - lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb
179
148
  - lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb
180
- - lib/twilio-ruby/rest/api/v2010/account/short_code.rb
181
- - lib/twilio-ruby/rest/api/v2010/account/signing_key.rb
149
+ - lib/twilio-ruby/rest/api/v2010/account/sandbox.rb
182
150
  - lib/twilio-ruby/rest/api/v2010/account/sip.rb
183
151
  - lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb
184
152
  - lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb
@@ -187,6 +155,9 @@ files:
187
155
  - lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb
188
156
  - lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb
189
157
  - lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb
158
+ - lib/twilio-ruby/rest/api/v2010/account/sms.rb
159
+ - lib/twilio-ruby/rest/api/v2010/account/sms/short_code.rb
160
+ - lib/twilio-ruby/rest/api/v2010/account/sms/sms_message.rb
190
161
  - lib/twilio-ruby/rest/api/v2010/account/token.rb
191
162
  - lib/twilio-ruby/rest/api/v2010/account/transcription.rb
192
163
  - lib/twilio-ruby/rest/api/v2010/account/usage.rb
@@ -201,111 +172,29 @@ files:
201
172
  - lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb
202
173
  - lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb
203
174
  - lib/twilio-ruby/rest/api/v2010/account/validation_request.rb
204
- - lib/twilio-ruby/rest/chat.rb
205
- - lib/twilio-ruby/rest/chat/v1.rb
206
- - lib/twilio-ruby/rest/chat/v1/credential.rb
207
- - lib/twilio-ruby/rest/chat/v1/service.rb
208
- - lib/twilio-ruby/rest/chat/v1/service/channel.rb
209
- - lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb
210
- - lib/twilio-ruby/rest/chat/v1/service/channel/member.rb
211
- - lib/twilio-ruby/rest/chat/v1/service/channel/message.rb
212
- - lib/twilio-ruby/rest/chat/v1/service/role.rb
213
- - lib/twilio-ruby/rest/chat/v1/service/user.rb
214
- - lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb
215
- - lib/twilio-ruby/rest/chat/v2.rb
216
- - lib/twilio-ruby/rest/chat/v2/credential.rb
217
- - lib/twilio-ruby/rest/chat/v2/service.rb
218
- - lib/twilio-ruby/rest/chat/v2/service/channel.rb
219
- - lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb
220
- - lib/twilio-ruby/rest/chat/v2/service/channel/member.rb
221
- - lib/twilio-ruby/rest/chat/v2/service/channel/message.rb
222
- - lib/twilio-ruby/rest/chat/v2/service/role.rb
223
- - lib/twilio-ruby/rest/chat/v2/service/user.rb
224
- - lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb
225
175
  - lib/twilio-ruby/rest/client.rb
226
- - lib/twilio-ruby/rest/fax.rb
227
- - lib/twilio-ruby/rest/fax/v1.rb
228
- - lib/twilio-ruby/rest/fax/v1/fax.rb
229
- - lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb
176
+ - lib/twilio-ruby/rest/conversations.rb
177
+ - lib/twilio-ruby/rest/conversations/v1.rb
178
+ - lib/twilio-ruby/rest/conversations/v1/conversation.rb
179
+ - lib/twilio-ruby/rest/conversations/v1/conversation/completed.rb
180
+ - lib/twilio-ruby/rest/conversations/v1/conversation/in_progress.rb
181
+ - lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb
230
182
  - lib/twilio-ruby/rest/ip_messaging.rb
231
183
  - lib/twilio-ruby/rest/ip_messaging/v1.rb
232
184
  - lib/twilio-ruby/rest/ip_messaging/v1/credential.rb
233
185
  - lib/twilio-ruby/rest/ip_messaging/v1/service.rb
234
186
  - lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb
235
- - lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb
236
187
  - lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb
237
188
  - lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb
238
189
  - lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb
239
190
  - lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb
240
- - lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb
241
- - lib/twilio-ruby/rest/ip_messaging/v2.rb
242
- - lib/twilio-ruby/rest/ip_messaging/v2/credential.rb
243
- - lib/twilio-ruby/rest/ip_messaging/v2/service.rb
244
- - lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb
245
- - lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb
246
- - lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb
247
- - lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb
248
- - lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb
249
- - lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb
250
- - lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb
251
191
  - lib/twilio-ruby/rest/lookups.rb
252
192
  - lib/twilio-ruby/rest/lookups/v1.rb
253
193
  - lib/twilio-ruby/rest/lookups/v1/phone_number.rb
254
- - lib/twilio-ruby/rest/messaging.rb
255
- - lib/twilio-ruby/rest/messaging/v1.rb
256
- - lib/twilio-ruby/rest/messaging/v1/service.rb
257
- - lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb
258
- - lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb
259
- - lib/twilio-ruby/rest/messaging/v1/service/short_code.rb
260
194
  - lib/twilio-ruby/rest/monitor.rb
261
195
  - lib/twilio-ruby/rest/monitor/v1.rb
262
196
  - lib/twilio-ruby/rest/monitor/v1/alert.rb
263
197
  - lib/twilio-ruby/rest/monitor/v1/event.rb
264
- - lib/twilio-ruby/rest/notify.rb
265
- - lib/twilio-ruby/rest/notify/v1.rb
266
- - lib/twilio-ruby/rest/notify/v1/credential.rb
267
- - lib/twilio-ruby/rest/notify/v1/service.rb
268
- - lib/twilio-ruby/rest/notify/v1/service/binding.rb
269
- - lib/twilio-ruby/rest/notify/v1/service/notification.rb
270
- - lib/twilio-ruby/rest/notify/v1/service/segment.rb
271
- - lib/twilio-ruby/rest/notify/v1/service/user.rb
272
- - lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb
273
- - lib/twilio-ruby/rest/notify/v1/service/user/user_binding.rb
274
- - lib/twilio-ruby/rest/preview.rb
275
- - lib/twilio-ruby/rest/preview/bulk_exports.rb
276
- - lib/twilio-ruby/rest/preview/bulk_exports/export.rb
277
- - lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb
278
- - lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb
279
- - lib/twilio-ruby/rest/preview/hosted_numbers.rb
280
- - lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb
281
- - lib/twilio-ruby/rest/preview/marketplace.rb
282
- - lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb
283
- - lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb
284
- - lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb
285
- - lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb
286
- - lib/twilio-ruby/rest/preview/proxy.rb
287
- - lib/twilio-ruby/rest/preview/proxy/service.rb
288
- - lib/twilio-ruby/rest/preview/proxy/service/phone_number.rb
289
- - lib/twilio-ruby/rest/preview/proxy/service/session.rb
290
- - lib/twilio-ruby/rest/preview/proxy/service/session/interaction.rb
291
- - lib/twilio-ruby/rest/preview/proxy/service/session/participant.rb
292
- - lib/twilio-ruby/rest/preview/proxy/service/session/participant/message_interaction.rb
293
- - lib/twilio-ruby/rest/preview/proxy/service/short_code.rb
294
- - lib/twilio-ruby/rest/preview/sync.rb
295
- - lib/twilio-ruby/rest/preview/sync/service.rb
296
- - lib/twilio-ruby/rest/preview/sync/service/document.rb
297
- - lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb
298
- - lib/twilio-ruby/rest/preview/sync/service/sync_list.rb
299
- - lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb
300
- - lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb
301
- - lib/twilio-ruby/rest/preview/sync/service/sync_map.rb
302
- - lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb
303
- - lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb
304
- - lib/twilio-ruby/rest/preview/wireless.rb
305
- - lib/twilio-ruby/rest/preview/wireless/command.rb
306
- - lib/twilio-ruby/rest/preview/wireless/rate_plan.rb
307
- - lib/twilio-ruby/rest/preview/wireless/sim.rb
308
- - lib/twilio-ruby/rest/preview/wireless/sim/usage.rb
309
198
  - lib/twilio-ruby/rest/pricing.rb
310
199
  - lib/twilio-ruby/rest/pricing/v1.rb
311
200
  - lib/twilio-ruby/rest/pricing/v1/messaging.rb
@@ -315,17 +204,6 @@ files:
315
204
  - lib/twilio-ruby/rest/pricing/v1/voice.rb
316
205
  - lib/twilio-ruby/rest/pricing/v1/voice/country.rb
317
206
  - lib/twilio-ruby/rest/pricing/v1/voice/number.rb
318
- - lib/twilio-ruby/rest/sync.rb
319
- - lib/twilio-ruby/rest/sync/v1.rb
320
- - lib/twilio-ruby/rest/sync/v1/service.rb
321
- - lib/twilio-ruby/rest/sync/v1/service/document.rb
322
- - lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb
323
- - lib/twilio-ruby/rest/sync/v1/service/sync_list.rb
324
- - lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb
325
- - lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb
326
- - lib/twilio-ruby/rest/sync/v1/service/sync_map.rb
327
- - lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb
328
- - lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb
329
207
  - lib/twilio-ruby/rest/taskrouter.rb
330
208
  - lib/twilio-ruby/rest/taskrouter/v1.rb
331
209
  - lib/twilio-ruby/rest/taskrouter/v1/workspace.rb
@@ -333,13 +211,10 @@ files:
333
211
  - lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb
334
212
  - lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb
335
213
  - lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb
336
- - lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb
337
214
  - lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb
338
215
  - lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb
339
216
  - lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb
340
217
  - lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb
341
- - lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb
342
- - lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb
343
218
  - lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb
344
219
  - lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb
345
220
  - lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb
@@ -352,29 +227,18 @@ files:
352
227
  - lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb
353
228
  - lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb
354
229
  - lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb
355
- - lib/twilio-ruby/rest/video.rb
356
- - lib/twilio-ruby/rest/video/v1.rb
357
- - lib/twilio-ruby/rest/video/v1/recording.rb
358
- - lib/twilio-ruby/rest/video/v1/room.rb
359
- - lib/twilio-ruby/rest/video/v1/room/recording.rb
360
- - lib/twilio-ruby/rest/wireless.rb
361
- - lib/twilio-ruby/rest/wireless/v1.rb
362
- - lib/twilio-ruby/rest/wireless/v1/command.rb
363
- - lib/twilio-ruby/rest/wireless/v1/rate_plan.rb
364
- - lib/twilio-ruby/rest/wireless/v1/sim.rb
365
- - lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb
366
- - lib/twilio-ruby/security/request_validator.rb
367
- - lib/twilio-ruby/twiml/messaging_response.rb
368
- - lib/twilio-ruby/twiml/twiml.rb
369
- - lib/twilio-ruby/twiml/voice_response.rb
230
+ - lib/twilio-ruby/task_router.rb
231
+ - lib/twilio-ruby/task_router/capability.rb
232
+ - lib/twilio-ruby/twiml/response.rb
370
233
  - lib/twilio-ruby/util.rb
234
+ - lib/twilio-ruby/util/access_token.rb
235
+ - lib/twilio-ruby/util/capability.rb
236
+ - lib/twilio-ruby/util/client_config.rb
371
237
  - lib/twilio-ruby/util/configuration.rb
238
+ - lib/twilio-ruby/util/request_validator.rb
372
239
  - lib/twilio-ruby/version.rb
373
- - spec/framework/serialize_spec.rb
374
240
  - spec/holodeck/holodeck.rb
375
241
  - spec/holodeck/hologram.rb
376
- - spec/integration/accounts/v1/credential/public_key_spec.rb
377
- - spec/integration/accounts/v1/credential_spec.rb
378
242
  - spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb
379
243
  - spec/integration/api/v2010/account/address_spec.rb
380
244
  - spec/integration/api/v2010/account/application_spec.rb
@@ -391,28 +255,19 @@ files:
391
255
  - spec/integration/api/v2010/account/conference/participant_spec.rb
392
256
  - spec/integration/api/v2010/account/conference_spec.rb
393
257
  - spec/integration/api/v2010/account/connect_app_spec.rb
394
- - spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb
395
- - spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb
396
258
  - spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb
397
259
  - spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb
398
260
  - spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb
399
261
  - spec/integration/api/v2010/account/incoming_phone_number_spec.rb
400
- - spec/integration/api/v2010/account/key_spec.rb
401
- - spec/integration/api/v2010/account/message/feedback_spec.rb
402
262
  - spec/integration/api/v2010/account/message/media_spec.rb
403
263
  - spec/integration/api/v2010/account/message_spec.rb
404
- - spec/integration/api/v2010/account/new_key_spec.rb
405
- - spec/integration/api/v2010/account/new_signing_key_spec.rb
406
264
  - spec/integration/api/v2010/account/notification_spec.rb
407
265
  - spec/integration/api/v2010/account/outgoing_caller_id_spec.rb
408
266
  - spec/integration/api/v2010/account/queue/member_spec.rb
409
267
  - spec/integration/api/v2010/account/queue_spec.rb
410
- - spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb
411
- - spec/integration/api/v2010/account/recording/add_on_result_spec.rb
412
268
  - spec/integration/api/v2010/account/recording/transcription_spec.rb
413
269
  - spec/integration/api/v2010/account/recording_spec.rb
414
- - spec/integration/api/v2010/account/short_code_spec.rb
415
- - spec/integration/api/v2010/account/signing_key_spec.rb
270
+ - spec/integration/api/v2010/account/sandbox_spec.rb
416
271
  - spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb
417
272
  - spec/integration/api/v2010/account/sip/credential_list_spec.rb
418
273
  - spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb
@@ -421,6 +276,9 @@ files:
421
276
  - spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb
422
277
  - spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb
423
278
  - spec/integration/api/v2010/account/sip_spec.rb
279
+ - spec/integration/api/v2010/account/sms/short_code_spec.rb
280
+ - spec/integration/api/v2010/account/sms/sms_message_spec.rb
281
+ - spec/integration/api/v2010/account/sms_spec.rb
424
282
  - spec/integration/api/v2010/account/token_spec.rb
425
283
  - spec/integration/api/v2010/account/transcription_spec.rb
426
284
  - spec/integration/api/v2010/account/usage/record/all_time_spec.rb
@@ -436,87 +294,20 @@ files:
436
294
  - spec/integration/api/v2010/account/usage_spec.rb
437
295
  - spec/integration/api/v2010/account/validation_request_spec.rb
438
296
  - spec/integration/api/v2010/account_spec.rb
439
- - spec/integration/chat/v1/credential_spec.rb
440
- - spec/integration/chat/v1/service/channel/invite_spec.rb
441
- - spec/integration/chat/v1/service/channel/member_spec.rb
442
- - spec/integration/chat/v1/service/channel/message_spec.rb
443
- - spec/integration/chat/v1/service/channel_spec.rb
444
- - spec/integration/chat/v1/service/role_spec.rb
445
- - spec/integration/chat/v1/service/user/user_channel_spec.rb
446
- - spec/integration/chat/v1/service/user_spec.rb
447
- - spec/integration/chat/v1/service_spec.rb
448
- - spec/integration/chat/v2/credential_spec.rb
449
- - spec/integration/chat/v2/service/channel/invite_spec.rb
450
- - spec/integration/chat/v2/service/channel/member_spec.rb
451
- - spec/integration/chat/v2/service/channel/message_spec.rb
452
- - spec/integration/chat/v2/service/channel_spec.rb
453
- - spec/integration/chat/v2/service/role_spec.rb
454
- - spec/integration/chat/v2/service/user/user_channel_spec.rb
455
- - spec/integration/chat/v2/service/user_spec.rb
456
- - spec/integration/chat/v2/service_spec.rb
457
- - spec/integration/fax/v1/fax/fax_media_spec.rb
458
- - spec/integration/fax/v1/fax_spec.rb
297
+ - spec/integration/conversations/v1/conversation/completed_spec.rb
298
+ - spec/integration/conversations/v1/conversation/in_progress_spec.rb
299
+ - spec/integration/conversations/v1/conversation/participant_spec.rb
300
+ - spec/integration/conversations/v1/conversation_spec.rb
459
301
  - spec/integration/ip_messaging/v1/credential_spec.rb
460
- - spec/integration/ip_messaging/v1/service/channel/invite_spec.rb
461
302
  - spec/integration/ip_messaging/v1/service/channel/member_spec.rb
462
303
  - spec/integration/ip_messaging/v1/service/channel/message_spec.rb
463
304
  - spec/integration/ip_messaging/v1/service/channel_spec.rb
464
305
  - spec/integration/ip_messaging/v1/service/role_spec.rb
465
- - spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb
466
306
  - spec/integration/ip_messaging/v1/service/user_spec.rb
467
307
  - spec/integration/ip_messaging/v1/service_spec.rb
468
- - spec/integration/ip_messaging/v2/credential_spec.rb
469
- - spec/integration/ip_messaging/v2/service/channel/invite_spec.rb
470
- - spec/integration/ip_messaging/v2/service/channel/member_spec.rb
471
- - spec/integration/ip_messaging/v2/service/channel/message_spec.rb
472
- - spec/integration/ip_messaging/v2/service/channel_spec.rb
473
- - spec/integration/ip_messaging/v2/service/role_spec.rb
474
- - spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb
475
- - spec/integration/ip_messaging/v2/service/user_spec.rb
476
- - spec/integration/ip_messaging/v2/service_spec.rb
477
308
  - spec/integration/lookups/v1/phone_number_spec.rb
478
- - spec/integration/messaging/v1/service/alpha_sender_spec.rb
479
- - spec/integration/messaging/v1/service/phone_number_spec.rb
480
- - spec/integration/messaging/v1/service/short_code_spec.rb
481
- - spec/integration/messaging/v1/service_spec.rb
482
309
  - spec/integration/monitor/v1/alert_spec.rb
483
310
  - spec/integration/monitor/v1/event_spec.rb
484
- - spec/integration/notify/v1/credential_spec.rb
485
- - spec/integration/notify/v1/service/binding_spec.rb
486
- - spec/integration/notify/v1/service/notification_spec.rb
487
- - spec/integration/notify/v1/service/segment_spec.rb
488
- - spec/integration/notify/v1/service/user/segment_memberships_spec.rb
489
- - spec/integration/notify/v1/service/user/user_binding_spec.rb
490
- - spec/integration/notify/v1/service/user_spec.rb
491
- - spec/integration/notify/v1/service_spec.rb
492
- - spec/integration/preview/bulk_exports/export/day_spec.rb
493
- - spec/integration/preview/bulk_exports/export_configuration_spec.rb
494
- - spec/integration/preview/bulk_exports/export_spec.rb
495
- - spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb
496
- - spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb
497
- - spec/integration/preview/marketplace/available_add_on_spec.rb
498
- - spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb
499
- - spec/integration/preview/marketplace/installed_add_on_spec.rb
500
- - spec/integration/preview/proxy/service/phone_number_spec.rb
501
- - spec/integration/preview/proxy/service/session/interaction_spec.rb
502
- - spec/integration/preview/proxy/service/session/participant/message_interaction_spec.rb
503
- - spec/integration/preview/proxy/service/session/participant_spec.rb
504
- - spec/integration/preview/proxy/service/session_spec.rb
505
- - spec/integration/preview/proxy/service/short_code_spec.rb
506
- - spec/integration/preview/proxy/service_spec.rb
507
- - spec/integration/preview/sync/service/document/document_permission_spec.rb
508
- - spec/integration/preview/sync/service/document_spec.rb
509
- - spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb
510
- - spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb
511
- - spec/integration/preview/sync/service/sync_list_spec.rb
512
- - spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb
513
- - spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb
514
- - spec/integration/preview/sync/service/sync_map_spec.rb
515
- - spec/integration/preview/sync/service_spec.rb
516
- - spec/integration/preview/wireless/command_spec.rb
517
- - spec/integration/preview/wireless/rate_plan_spec.rb
518
- - spec/integration/preview/wireless/sim/usage_spec.rb
519
- - spec/integration/preview/wireless/sim_spec.rb
520
311
  - spec/integration/pricing/v1/messaging/country_spec.rb
521
312
  - spec/integration/pricing/v1/messaging_spec.rb
522
313
  - spec/integration/pricing/v1/phone_number/country_spec.rb
@@ -524,25 +315,13 @@ files:
524
315
  - spec/integration/pricing/v1/voice/country_spec.rb
525
316
  - spec/integration/pricing/v1/voice/number_spec.rb
526
317
  - spec/integration/pricing/v1/voice_spec.rb
527
- - spec/integration/sync/v1/service/document/document_permission_spec.rb
528
- - spec/integration/sync/v1/service/document_spec.rb
529
- - spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb
530
- - spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb
531
- - spec/integration/sync/v1/service/sync_list_spec.rb
532
- - spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb
533
- - spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb
534
- - spec/integration/sync/v1/service/sync_map_spec.rb
535
- - spec/integration/sync/v1/service_spec.rb
536
318
  - spec/integration/taskrouter/v1/workspace/activity_spec.rb
537
319
  - spec/integration/taskrouter/v1/workspace/event_spec.rb
538
320
  - spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb
539
- - spec/integration/taskrouter/v1/workspace/task_channel_spec.rb
540
321
  - spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb
541
322
  - spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb
542
323
  - spec/integration/taskrouter/v1/workspace/task_queue_spec.rb
543
324
  - spec/integration/taskrouter/v1/workspace/task_spec.rb
544
- - spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb
545
- - spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb
546
325
  - spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb
547
326
  - spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb
548
327
  - spec/integration/taskrouter/v1/workspace/worker_spec.rb
@@ -555,64 +334,52 @@ files:
555
334
  - spec/integration/trunking/v1/trunk/origination_url_spec.rb
556
335
  - spec/integration/trunking/v1/trunk/phone_number_spec.rb
557
336
  - spec/integration/trunking/v1/trunk_spec.rb
558
- - spec/integration/video/v1/recording_spec.rb
559
- - spec/integration/video/v1/room/recording_spec.rb
560
- - spec/integration/video/v1/room_spec.rb
561
- - spec/integration/wireless/v1/command_spec.rb
562
- - spec/integration/wireless/v1/rate_plan_spec.rb
563
- - spec/integration/wireless/v1/sim/usage_record_spec.rb
564
- - spec/integration/wireless/v1/sim_spec.rb
565
- - spec/jwt/access_token_spec.rb
566
- - spec/jwt/client_capability_spec.rb
567
- - spec/jwt/task_router_spec.rb
568
337
  - spec/rack/twilio_webhook_authentication_spec.rb
569
- - spec/security/request_validator_spec.rb
570
338
  - spec/spec_helper.rb
571
339
  - spec/support/fakeweb.rb
340
+ - spec/task_router_spec.rb
572
341
  - spec/twilio_spec.rb
573
- - spec/twiml/messaging_response_spec.rb
574
- - spec/twiml/voice_response_spec.rb
342
+ - spec/util/access_token_spec.rb
343
+ - spec/util/capability_spec.rb
344
+ - spec/util/client_config_spec.rb
575
345
  - spec/util/configuration_spec.rb
346
+ - spec/util/request_validator_spec.rb
576
347
  - spec/util/url_encode_spec.rb
577
348
  - twilio-ruby.gemspec
578
349
  homepage: http://github.com/twilio/twilio-ruby
579
350
  licenses:
580
351
  - MIT
581
- metadata:
582
- yard.run: yri
352
+ metadata: {}
583
353
  post_install_message:
584
354
  rdoc_options:
585
- - "--line-numbers"
586
- - "--inline-source"
587
- - "--title"
355
+ - --line-numbers
356
+ - --inline-source
357
+ - --title
588
358
  - twilio-ruby
589
- - "--main"
359
+ - --main
590
360
  - README.md
591
361
  require_paths:
592
362
  - lib
593
363
  required_ruby_version: !ruby/object:Gem::Requirement
594
364
  requirements:
595
- - - ">="
365
+ - - '>='
596
366
  - !ruby/object:Gem::Version
597
- version: 2.0.0
367
+ version: 1.9.3
598
368
  required_rubygems_version: !ruby/object:Gem::Requirement
599
369
  requirements:
600
- - - ">"
370
+ - - '>'
601
371
  - !ruby/object:Gem::Version
602
372
  version: 1.3.1
603
373
  requirements: []
604
374
  rubyforge_project:
605
- rubygems_version: 2.6.11
375
+ rubygems_version: 2.0.14
606
376
  signing_key:
607
377
  specification_version: 4
608
378
  summary: A simple library for communicating with the Twilio REST API, building TwiML,
609
- and generating Twilio JWT Capability Tokens
379
+ and generating Twilio Client Capability Tokens
610
380
  test_files:
611
- - spec/framework/serialize_spec.rb
612
381
  - spec/holodeck/holodeck.rb
613
382
  - spec/holodeck/hologram.rb
614
- - spec/integration/accounts/v1/credential/public_key_spec.rb
615
- - spec/integration/accounts/v1/credential_spec.rb
616
383
  - spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb
617
384
  - spec/integration/api/v2010/account/address_spec.rb
618
385
  - spec/integration/api/v2010/account/application_spec.rb
@@ -629,28 +396,19 @@ test_files:
629
396
  - spec/integration/api/v2010/account/conference/participant_spec.rb
630
397
  - spec/integration/api/v2010/account/conference_spec.rb
631
398
  - spec/integration/api/v2010/account/connect_app_spec.rb
632
- - spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb
633
- - spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb
634
399
  - spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb
635
400
  - spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb
636
401
  - spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb
637
402
  - spec/integration/api/v2010/account/incoming_phone_number_spec.rb
638
- - spec/integration/api/v2010/account/key_spec.rb
639
- - spec/integration/api/v2010/account/message/feedback_spec.rb
640
403
  - spec/integration/api/v2010/account/message/media_spec.rb
641
404
  - spec/integration/api/v2010/account/message_spec.rb
642
- - spec/integration/api/v2010/account/new_key_spec.rb
643
- - spec/integration/api/v2010/account/new_signing_key_spec.rb
644
405
  - spec/integration/api/v2010/account/notification_spec.rb
645
406
  - spec/integration/api/v2010/account/outgoing_caller_id_spec.rb
646
407
  - spec/integration/api/v2010/account/queue/member_spec.rb
647
408
  - spec/integration/api/v2010/account/queue_spec.rb
648
- - spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb
649
- - spec/integration/api/v2010/account/recording/add_on_result_spec.rb
650
409
  - spec/integration/api/v2010/account/recording/transcription_spec.rb
651
410
  - spec/integration/api/v2010/account/recording_spec.rb
652
- - spec/integration/api/v2010/account/short_code_spec.rb
653
- - spec/integration/api/v2010/account/signing_key_spec.rb
411
+ - spec/integration/api/v2010/account/sandbox_spec.rb
654
412
  - spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb
655
413
  - spec/integration/api/v2010/account/sip/credential_list_spec.rb
656
414
  - spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb
@@ -659,6 +417,9 @@ test_files:
659
417
  - spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb
660
418
  - spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb
661
419
  - spec/integration/api/v2010/account/sip_spec.rb
420
+ - spec/integration/api/v2010/account/sms/short_code_spec.rb
421
+ - spec/integration/api/v2010/account/sms/sms_message_spec.rb
422
+ - spec/integration/api/v2010/account/sms_spec.rb
662
423
  - spec/integration/api/v2010/account/token_spec.rb
663
424
  - spec/integration/api/v2010/account/transcription_spec.rb
664
425
  - spec/integration/api/v2010/account/usage/record/all_time_spec.rb
@@ -674,87 +435,20 @@ test_files:
674
435
  - spec/integration/api/v2010/account/usage_spec.rb
675
436
  - spec/integration/api/v2010/account/validation_request_spec.rb
676
437
  - spec/integration/api/v2010/account_spec.rb
677
- - spec/integration/chat/v1/credential_spec.rb
678
- - spec/integration/chat/v1/service/channel/invite_spec.rb
679
- - spec/integration/chat/v1/service/channel/member_spec.rb
680
- - spec/integration/chat/v1/service/channel/message_spec.rb
681
- - spec/integration/chat/v1/service/channel_spec.rb
682
- - spec/integration/chat/v1/service/role_spec.rb
683
- - spec/integration/chat/v1/service/user/user_channel_spec.rb
684
- - spec/integration/chat/v1/service/user_spec.rb
685
- - spec/integration/chat/v1/service_spec.rb
686
- - spec/integration/chat/v2/credential_spec.rb
687
- - spec/integration/chat/v2/service/channel/invite_spec.rb
688
- - spec/integration/chat/v2/service/channel/member_spec.rb
689
- - spec/integration/chat/v2/service/channel/message_spec.rb
690
- - spec/integration/chat/v2/service/channel_spec.rb
691
- - spec/integration/chat/v2/service/role_spec.rb
692
- - spec/integration/chat/v2/service/user/user_channel_spec.rb
693
- - spec/integration/chat/v2/service/user_spec.rb
694
- - spec/integration/chat/v2/service_spec.rb
695
- - spec/integration/fax/v1/fax/fax_media_spec.rb
696
- - spec/integration/fax/v1/fax_spec.rb
438
+ - spec/integration/conversations/v1/conversation/completed_spec.rb
439
+ - spec/integration/conversations/v1/conversation/in_progress_spec.rb
440
+ - spec/integration/conversations/v1/conversation/participant_spec.rb
441
+ - spec/integration/conversations/v1/conversation_spec.rb
697
442
  - spec/integration/ip_messaging/v1/credential_spec.rb
698
- - spec/integration/ip_messaging/v1/service/channel/invite_spec.rb
699
443
  - spec/integration/ip_messaging/v1/service/channel/member_spec.rb
700
444
  - spec/integration/ip_messaging/v1/service/channel/message_spec.rb
701
445
  - spec/integration/ip_messaging/v1/service/channel_spec.rb
702
446
  - spec/integration/ip_messaging/v1/service/role_spec.rb
703
- - spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb
704
447
  - spec/integration/ip_messaging/v1/service/user_spec.rb
705
448
  - spec/integration/ip_messaging/v1/service_spec.rb
706
- - spec/integration/ip_messaging/v2/credential_spec.rb
707
- - spec/integration/ip_messaging/v2/service/channel/invite_spec.rb
708
- - spec/integration/ip_messaging/v2/service/channel/member_spec.rb
709
- - spec/integration/ip_messaging/v2/service/channel/message_spec.rb
710
- - spec/integration/ip_messaging/v2/service/channel_spec.rb
711
- - spec/integration/ip_messaging/v2/service/role_spec.rb
712
- - spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb
713
- - spec/integration/ip_messaging/v2/service/user_spec.rb
714
- - spec/integration/ip_messaging/v2/service_spec.rb
715
449
  - spec/integration/lookups/v1/phone_number_spec.rb
716
- - spec/integration/messaging/v1/service/alpha_sender_spec.rb
717
- - spec/integration/messaging/v1/service/phone_number_spec.rb
718
- - spec/integration/messaging/v1/service/short_code_spec.rb
719
- - spec/integration/messaging/v1/service_spec.rb
720
450
  - spec/integration/monitor/v1/alert_spec.rb
721
451
  - spec/integration/monitor/v1/event_spec.rb
722
- - spec/integration/notify/v1/credential_spec.rb
723
- - spec/integration/notify/v1/service/binding_spec.rb
724
- - spec/integration/notify/v1/service/notification_spec.rb
725
- - spec/integration/notify/v1/service/segment_spec.rb
726
- - spec/integration/notify/v1/service/user/segment_memberships_spec.rb
727
- - spec/integration/notify/v1/service/user/user_binding_spec.rb
728
- - spec/integration/notify/v1/service/user_spec.rb
729
- - spec/integration/notify/v1/service_spec.rb
730
- - spec/integration/preview/bulk_exports/export/day_spec.rb
731
- - spec/integration/preview/bulk_exports/export_configuration_spec.rb
732
- - spec/integration/preview/bulk_exports/export_spec.rb
733
- - spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb
734
- - spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb
735
- - spec/integration/preview/marketplace/available_add_on_spec.rb
736
- - spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb
737
- - spec/integration/preview/marketplace/installed_add_on_spec.rb
738
- - spec/integration/preview/proxy/service/phone_number_spec.rb
739
- - spec/integration/preview/proxy/service/session/interaction_spec.rb
740
- - spec/integration/preview/proxy/service/session/participant/message_interaction_spec.rb
741
- - spec/integration/preview/proxy/service/session/participant_spec.rb
742
- - spec/integration/preview/proxy/service/session_spec.rb
743
- - spec/integration/preview/proxy/service/short_code_spec.rb
744
- - spec/integration/preview/proxy/service_spec.rb
745
- - spec/integration/preview/sync/service/document/document_permission_spec.rb
746
- - spec/integration/preview/sync/service/document_spec.rb
747
- - spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb
748
- - spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb
749
- - spec/integration/preview/sync/service/sync_list_spec.rb
750
- - spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb
751
- - spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb
752
- - spec/integration/preview/sync/service/sync_map_spec.rb
753
- - spec/integration/preview/sync/service_spec.rb
754
- - spec/integration/preview/wireless/command_spec.rb
755
- - spec/integration/preview/wireless/rate_plan_spec.rb
756
- - spec/integration/preview/wireless/sim/usage_spec.rb
757
- - spec/integration/preview/wireless/sim_spec.rb
758
452
  - spec/integration/pricing/v1/messaging/country_spec.rb
759
453
  - spec/integration/pricing/v1/messaging_spec.rb
760
454
  - spec/integration/pricing/v1/phone_number/country_spec.rb
@@ -762,25 +456,13 @@ test_files:
762
456
  - spec/integration/pricing/v1/voice/country_spec.rb
763
457
  - spec/integration/pricing/v1/voice/number_spec.rb
764
458
  - spec/integration/pricing/v1/voice_spec.rb
765
- - spec/integration/sync/v1/service/document/document_permission_spec.rb
766
- - spec/integration/sync/v1/service/document_spec.rb
767
- - spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb
768
- - spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb
769
- - spec/integration/sync/v1/service/sync_list_spec.rb
770
- - spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb
771
- - spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb
772
- - spec/integration/sync/v1/service/sync_map_spec.rb
773
- - spec/integration/sync/v1/service_spec.rb
774
459
  - spec/integration/taskrouter/v1/workspace/activity_spec.rb
775
460
  - spec/integration/taskrouter/v1/workspace/event_spec.rb
776
461
  - spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb
777
- - spec/integration/taskrouter/v1/workspace/task_channel_spec.rb
778
462
  - spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb
779
463
  - spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb
780
464
  - spec/integration/taskrouter/v1/workspace/task_queue_spec.rb
781
465
  - spec/integration/taskrouter/v1/workspace/task_spec.rb
782
- - spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb
783
- - spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb
784
466
  - spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb
785
467
  - spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb
786
468
  - spec/integration/taskrouter/v1/workspace/worker_spec.rb
@@ -793,22 +475,14 @@ test_files:
793
475
  - spec/integration/trunking/v1/trunk/origination_url_spec.rb
794
476
  - spec/integration/trunking/v1/trunk/phone_number_spec.rb
795
477
  - spec/integration/trunking/v1/trunk_spec.rb
796
- - spec/integration/video/v1/recording_spec.rb
797
- - spec/integration/video/v1/room/recording_spec.rb
798
- - spec/integration/video/v1/room_spec.rb
799
- - spec/integration/wireless/v1/command_spec.rb
800
- - spec/integration/wireless/v1/rate_plan_spec.rb
801
- - spec/integration/wireless/v1/sim/usage_record_spec.rb
802
- - spec/integration/wireless/v1/sim_spec.rb
803
- - spec/jwt/access_token_spec.rb
804
- - spec/jwt/client_capability_spec.rb
805
- - spec/jwt/task_router_spec.rb
806
478
  - spec/rack/twilio_webhook_authentication_spec.rb
807
- - spec/security/request_validator_spec.rb
808
479
  - spec/spec_helper.rb
809
480
  - spec/support/fakeweb.rb
481
+ - spec/task_router_spec.rb
810
482
  - spec/twilio_spec.rb
811
- - spec/twiml/messaging_response_spec.rb
812
- - spec/twiml/voice_response_spec.rb
483
+ - spec/util/access_token_spec.rb
484
+ - spec/util/capability_spec.rb
485
+ - spec/util/client_config_spec.rb
813
486
  - spec/util/configuration_spec.rb
487
+ - spec/util/request_validator_spec.rb
814
488
  - spec/util/url_encode_spec.rb