twilio-ruby 5.58.3 → 5.61.1

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 (51) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/deploy.yml +65 -0
  3. data/.github/workflows/test.yml +51 -0
  4. data/.gitignore +3 -1
  5. data/CHANGES.md +99 -0
  6. data/Makefile +3 -4
  7. data/README.md +4 -4
  8. data/lib/twilio-ruby/jwt/access_token.rb +13 -0
  9. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +667 -0
  10. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +30 -4
  11. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +11 -4
  12. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +11 -4
  13. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +11 -4
  14. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +17 -10
  15. data/lib/twilio-ruby/rest/client.rb +7 -0
  16. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +18 -2
  17. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +7 -0
  18. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +31 -6
  19. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +36 -36
  20. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +384 -0
  21. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +221 -0
  22. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +390 -0
  23. data/lib/twilio-ruby/rest/media/v1.rb +60 -0
  24. data/lib/twilio-ruby/rest/media.rb +56 -0
  25. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +353 -0
  26. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +43 -1
  27. data/lib/twilio-ruby/rest/messaging/v1/service.rb +29 -3
  28. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +188 -0
  29. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +188 -0
  30. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +40 -0
  31. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +1 -1
  32. data/lib/twilio-ruby/rest/serverless/v1/service.rb +7 -0
  33. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +7 -3
  34. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +7 -3
  35. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +23 -11
  36. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +8 -2
  37. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +19 -3
  38. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +16 -6
  39. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +5 -5
  40. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +16 -6
  41. data/lib/twilio-ruby/rest/verify/v2/service.rb +22 -3
  42. data/lib/twilio-ruby/rest/verify/v2/{verification_template.rb → template.rb} +25 -25
  43. data/lib/twilio-ruby/rest/verify/v2.rb +4 -4
  44. data/lib/twilio-ruby/rest/verify.rb +3 -3
  45. data/lib/twilio-ruby/rest/video/v1/room.rb +12 -1
  46. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +3 -3
  47. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +16 -26
  48. data/lib/twilio-ruby/twiml/voice_response.rb +613 -36
  49. data/lib/twilio-ruby/version.rb +1 -1
  50. metadata +16 -5
  51. data/.travis.yml +0 -56
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: e167e2f47babb9e5652b385ede76e80463adea6014e4f9792128e33404760e5c
4
- data.tar.gz: 957a9a74c168c72927875320f8217d7c596b0d90a65dab5ed5ce5c2dd65862b9
2
+ SHA1:
3
+ metadata.gz: f2583fb03b7f76ca77faa5e168a640ee6666859f
4
+ data.tar.gz: 861886a68fcff99ea6447453fe9293d078d2b0ee
5
5
  SHA512:
6
- metadata.gz: 43aef4541bc88db9f74877d012a55fc052891051ccbdc9360357af66c876cd11d2e48398fbf6ea617513a40f6f2f9bc721da6345c01971007b6484a06346046c
7
- data.tar.gz: a099337f9ae57f2954bab11add9d43a29773ac77f3429f693a6f7845fdf5099147f1d2c1423dccc7d01e302f66e7ea2c86bb2f17c0fd35400fdb70533da1f66d
6
+ metadata.gz: 86c26374082ab77796489dbc76fb3d4098dfec72c9ab0f8ea5c69896ffca74edd38baf6b128489f61f9b14189c93dab29850ac70aa9cae784f1f1e87baff6731
7
+ data.tar.gz: 390ba0f3829c07b954a5097995a61dec268c05736cf21b1a971527a36436980ca6ecf17abd5371079cb05fac72f23bbb8426560a1dd7ec82ed92287fcc854cb5
@@ -0,0 +1,65 @@
1
+ name: Deploy
2
+ on:
3
+ push:
4
+ tags:
5
+ - '*'
6
+ workflow_dispatch:
7
+
8
+ jobs:
9
+ deploy:
10
+ name: Deploy to Rubygems
11
+ runs-on: ubuntu-latest
12
+ steps:
13
+ - name: Checkout twilio-ruby
14
+ uses: actions/checkout@v2
15
+ with:
16
+ fetch-depth: 0
17
+
18
+ - name: Login to Docker Hub
19
+ uses: docker/login-action@v1
20
+ with:
21
+ username: ${{ secrets.DOCKER_USERNAME }}
22
+ password: ${{ secrets.DOCKER_AUTH_TOKEN }}
23
+
24
+ # The expression strips off the shortest match from the front of the string to yield just the tag name as the output
25
+ - name: Get tagged version
26
+ run: echo "GITHUB_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
27
+
28
+ - name: Build and Push image
29
+ run: make docker-build && make docker-push
30
+
31
+ - name: Set up Ruby
32
+ uses: ruby/setup-ruby@v1
33
+ with:
34
+ ruby-version: 2.4
35
+ bundler-cache: true
36
+
37
+ - run: bundle install
38
+ - name: Publish to Rubygems
39
+ env:
40
+ GEM_HOST_API_KEY: ${{ secrets.RUBYGEMS_AUTH_TOKEN }}
41
+ run: |
42
+ mkdir -p $HOME/.gem
43
+ touch $HOME/.gem/credentials
44
+ chmod 0600 $HOME/.gem/credentials
45
+ printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
46
+ gem build *.gemspec
47
+ gem push *.gem
48
+
49
+ notify-on-failure:
50
+ name: Slack notify on failure
51
+ if: ${{ failure() }}
52
+ needs: [deploy]
53
+ runs-on: ubuntu-latest
54
+ steps:
55
+ - uses: rtCamp/action-slack-notify@v2
56
+ env:
57
+ SLACK_COLOR: ${{ needs.deploy.status }}
58
+ SLACK_ICON_EMOJI: ':github:'
59
+ SLACK_MESSAGE: ${{ format('Failed to publish {1} to RubyGems{3} {0}/{1}/actions/runs/{2}', github.server_url, github.repository, github.run_id, ':') }}
60
+ SLACK_TITLE: Deployment Failure
61
+ SLACK_USERNAME: GitHub Actions
62
+ SLACK_MSG_AUTHOR: twilio-dx
63
+ SLACK_FOOTER: Posted automatically using GitHub Actions
64
+ SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
65
+ MSG_MINIMAL: true
@@ -0,0 +1,51 @@
1
+ name: Tests
2
+ on:
3
+ push:
4
+ branches: [ '*' ]
5
+ pull_request:
6
+ branches: [ main ]
7
+ schedule:
8
+ # Run automatically at 8AM PST Monday-Friday
9
+ - cron: '0 15 * * 1-5'
10
+ workflow_dispatch:
11
+
12
+ jobs:
13
+ test:
14
+ name: Test
15
+ runs-on: ubuntu-latest
16
+ timeout-minutes: 20
17
+ strategy:
18
+ matrix:
19
+ ruby: [2.4, 2.5, 2.6, 2.7, '3.0', ruby-head, jruby-9.2]
20
+ steps:
21
+ - name: Checkout twilio-ruby
22
+ uses: actions/checkout@v2
23
+
24
+ - name: Set up Ruby
25
+ uses: ruby/setup-ruby@v1
26
+ with:
27
+ ruby-version: ${{ matrix.ruby }}
28
+ bundler-cache: true
29
+
30
+ - run: bundle install --with development
31
+ - run: bundle exec rake install
32
+ - name: Run Unit Tests
33
+ run: make test
34
+
35
+ notify-on-failure:
36
+ name: Slack notify on failure
37
+ if: ${{ failure() && github.ref == 'refs/heads/main' && github.event_name != 'pull_request' }}
38
+ needs: [test]
39
+ runs-on: ubuntu-latest
40
+ steps:
41
+ - uses: rtCamp/action-slack-notify@v2
42
+ env:
43
+ SLACK_COLOR: ${{ needs.test.status }}
44
+ SLACK_ICON_EMOJI: ':github:'
45
+ SLACK_MESSAGE: ${{ format('Build {2} in {1} failed{3} {0}/{1}/actions/runs/{2}', github.server_url, github.repository, github.run_id, ':') }}
46
+ SLACK_TITLE: Build Failure
47
+ SLACK_USERNAME: GitHub Actions
48
+ SLACK_MSG_AUTHOR: twilio-dx
49
+ SLACK_FOOTER: Posted automatically using GitHub Actions
50
+ SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
51
+ MSG_MINIMAL: true
data/.gitignore CHANGED
@@ -1,5 +1,4 @@
1
1
  *~
2
- .*
3
2
  !.rubocop_todo.yml
4
3
  !.rubocop.yml
5
4
  !.travis.yml
@@ -12,5 +11,8 @@ bin
12
11
  docs/_build
13
12
  *.bak
14
13
  *.iml
14
+ .bundle
15
+ .rakeTasks
16
+ .yardoc
15
17
 
16
18
  coverage
data/CHANGES.md CHANGED
@@ -1,6 +1,105 @@
1
1
  twilio-ruby changelog
2
2
  =====================
3
3
 
4
+ [2021-11-17] Version 5.61.1
5
+ ---------------------------
6
+ **Library - Chore**
7
+ - [PR #578](https://github.com/twilio/twilio-ruby/pull/578): remove yardoc files. Thanks to [@eshanholtz](https://github.com/eshanholtz)!
8
+
9
+ **Library - Fix**
10
+ - [PR #576](https://github.com/twilio/twilio-ruby/pull/576): git log retrieval issues. Thanks to [@shwetha-manvinkurke](https://github.com/shwetha-manvinkurke)!
11
+
12
+ **Frontline**
13
+ - Added `is_available` to User's resource
14
+
15
+ **Messaging**
16
+ - Added GET vetting API
17
+
18
+ **Verify**
19
+ - Add `WHATSAPP` to the attempts API.
20
+ - Allow to update `config.notification_platform` from `none` to `apn` or `fcm` and viceversa for Verify Push
21
+ - Add `none` as a valid `config.notification_platform` value for Verify Push
22
+
23
+ **Twiml**
24
+ - Add supported SSML children to `<emphasis>`, `<lang>`, `<p>`, `<prosody>`, `<s>`, and `<w>`.
25
+
26
+
27
+ [2021-11-03] Version 5.61.0
28
+ ---------------------------
29
+ **Library - Chore**
30
+ - [PR #575](https://github.com/twilio/twilio-ruby/pull/575): migrate from TravisCI to GitHub Actions. Thanks to [@eshanholtz](https://github.com/eshanholtz)!
31
+
32
+ **Api**
33
+ - Updated `media_url` property to be treated as PII
34
+
35
+ **Messaging**
36
+ - Added a new enum for brand registration status named DELETED **(breaking change)**
37
+ - Add a new K12_EDUCATION use case in us_app_to_person_usecase api transaction
38
+ - Added a new enum for brand registration status named IN_REVIEW
39
+
40
+ **Serverless**
41
+ - Add node14 as a valid Build runtime
42
+
43
+ **Verify**
44
+ - Fix typos in Verify Push Factor documentation for the `config.notification_token` parameter.
45
+ - Added `TemplateCustomSubstitutions` on verification creation
46
+ - Make `TemplateSid` parameter public for Verification resource and `DefaultTemplateSid` parameter public for Service resource. **(breaking change)**
47
+
48
+
49
+ [2021-10-18] Version 5.60.0
50
+ ---------------------------
51
+ **Library - Feature**
52
+ - [PR #574](https://github.com/twilio/twilio-ruby/pull/574): Add PlaybackGrant. Thanks to [@sarahcstringer](https://github.com/sarahcstringer)!
53
+
54
+ **Api**
55
+ - Corrected enum values for `emergency_address_status` values in `/IncomingPhoneNumbers` response. **(breaking change)**
56
+ - Clarify `emergency_address_status` values in `/IncomingPhoneNumbers` response.
57
+
58
+ **Messaging**
59
+ - Add PUT and List brand vettings api
60
+ - Removes beta feature flag based visibility for us_app_to_person_registered and usecase field.Updates test cases to add POLITICAL usecase. **(breaking change)**
61
+ - Add brand_feedback as optional field to BrandRegistrations
62
+
63
+ **Video**
64
+ - Add `AudioOnly` to create room
65
+
66
+
67
+ [2021-10-06] Version 5.59.0
68
+ ---------------------------
69
+ **Library - Fix**
70
+ - [PR #571](https://github.com/twilio/twilio-ruby/pull/571): fix travis build for ruby 3.0. Thanks to [@JenniferMah](https://github.com/JenniferMah)!
71
+
72
+ **Api**
73
+ - Add `emergency_address_status` attribute to `/IncomingPhoneNumbers` response.
74
+ - Add `siprec` resource
75
+
76
+ **Conversations**
77
+ - Added attachment parameters in configuration for `NewMessage` type of push notifications
78
+
79
+ **Flex**
80
+ - Adding `flex_insights_hr` object to Flex Configuration
81
+
82
+ **Numbers**
83
+ - Add API endpoint for Bundle ReplaceItems resource
84
+ - Add API endpoint for Bundle Copies resource
85
+
86
+ **Serverless**
87
+ - Add domain_base field to Service response
88
+
89
+ **Taskrouter**
90
+ - Add `If-Match` Header based on ETag for Worker Delete **(breaking change)**
91
+ - Add `If-Match` Header based on Etag for Reservation Update
92
+ - Add `If-Match` Header based on ETag for Worker Update
93
+ - Add `If-Match` Header based on ETag for Worker Delete
94
+ - Add `ETag` as Response Header to Worker
95
+
96
+ **Trunking**
97
+ - Added `transfer_caller_id` property on Trunks.
98
+
99
+ **Verify**
100
+ - Document new pilot `whatsapp` channel.
101
+
102
+
4
103
  [2021-09-22] Version 5.58.3
5
104
  ---------------------------
6
105
  **Events**
data/Makefile CHANGED
@@ -10,7 +10,7 @@ test: lint
10
10
  bundle exec rake spec
11
11
 
12
12
  lint:
13
- rubocop --cache true --parallel
13
+ bundle exec rubocop --cache true --parallel
14
14
 
15
15
  docs:
16
16
  yard doc --output-dir ./doc
@@ -22,12 +22,11 @@ authors:
22
22
  API_DEFINITIONS_SHA=$(shell git log --oneline | grep Regenerated | head -n1 | cut -d ' ' -f 5)
23
23
  docker-build:
24
24
  docker build -t twilio/twilio-ruby .
25
- docker tag twilio/twilio-ruby twilio/twilio-ruby:${TRAVIS_TAG}
25
+ docker tag twilio/twilio-ruby twilio/twilio-ruby:${GITHUB_TAG}
26
26
  docker tag twilio/twilio-ruby twilio/twilio-ruby:apidefs-${API_DEFINITIONS_SHA}
27
27
  docker tag twilio/twilio-ruby twilio/twilio-ruby:latest
28
28
 
29
29
  docker-push:
30
- echo "${DOCKER_PASSWORD}" | docker login -u "${DOCKER_USERNAME}" --password-stdin
31
- docker push twilio/twilio-ruby:${TRAVIS_TAG}
30
+ docker push twilio/twilio-ruby:${GITHUB_TAG}
32
31
  docker push twilio/twilio-ruby:apidefs-${API_DEFINITIONS_SHA}
33
32
  docker push twilio/twilio-ruby:latest
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # twilio-ruby
2
2
 
3
- [![Build Status](https://img.shields.io/travis/com/twilio/twilio-ruby.svg)][travis]
3
+ [![Tests](https://github.com/twilio/twilio-ruby/actions/workflows/test.yml/badge.svg)][github-actions]
4
4
  [![Gem Version](https://img.shields.io/gem/v/twilio-ruby.svg)](https://rubygems.org/gems/twilio-ruby)
5
5
  [![Learn with TwilioQuest](https://img.shields.io/static/v1?label=TwilioQuest&message=Learn%20to%20contribute%21&color=F22F46&labelColor=1f243c&style=flat-square&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAASFBMVEUAAAAZGRkcHBwjIyMoKCgAAABgYGBoaGiAgICMjIyzs7PJycnMzMzNzc3UoBfd3d3m5ubqrhfrMEDu7u739/f4vSb/3AD///9tbdyEAAAABXRSTlMAAAAAAMJrBrEAAAKoSURBVHgB7ZrRcuI6EESdyxXGYoNFvMD//+l2bSszRgyUYpFAsXOeiJGmj4NkuWx1Qeh+Ekl9DgEXOBwOx+Px5xyQhDykfgq4wG63MxxaR4ddIkg6Ul3g84vCIcjPBA5gmUMeXESrlukuoK33+33uID8TWeLAdOWsKpJYzwVMB7bOzYSGOciyUlXSn0/ABXTosJ1M1SbypZ4O4MbZuIDMU02PMbauhhHMHXbmebmALIiEbbbbbUrpF1gwE9kFfRNAJaP+FQEXCCTGyJ4ngDrjOFo3jEL5JdqjF/pueR4cCeCGgAtwmuRS6gDwaRiGvu+DMFwSBLTE3+jF8JyuV1okPZ+AC4hDFhCHyHQjdjPHUKFDlHSJkHQXMB3KpSwXNGJPcwwTdZiXlRN0gSp0zpWxNtM0beYE0nRH6QIbO7rawwXaBYz0j78gxjokDuv12gVeUuBD0MDi0OQCLvDaAho4juP1Q/jkAncXqIcCfd+7gAu4QLMACCLxpRsSuQh0igu0C9Svhi7weAGZg50L3IE3cai4IfkNZAC8dfdhsUD3CgKBVC9JE5ABAFzg4QL/taYPAAWrHdYcgfLaIgAXWJ7OV38n1LEF8tt2TH29E+QAoDoO5Ve/LtCQDmKM9kPbvCEBApK+IXzbcSJ0cIGF6e8gpcRhUDogWZ8JnaWjPXc/fNnBBUKRngiHgTUSivSzDRDgHZQOLvBQgf8rRt+VdBUUhwkU6VpJ+xcOwQUqZr+mR0kvBUgv6cB4+37hQAkXqE8PwGisGhJtN4xAHMzrsgvI7rccXqSvKh6jltGlrOHA3Xk1At3LC4QiPdX9/0ndHpGVvTjR4bZA1ypAKgVcwE5vx74ulwIugDt8e/X7JgfkucBMIAr26ndnB4UCLnDOqvteQsHlgX9N4A+c4cW3DXSPbwAAAABJRU5ErkJggg==)](https://twil.io/learn-open-source)
6
6
 
@@ -35,13 +35,13 @@ This library supports the following Ruby implementations:
35
35
  To install using [Bundler][bundler] grab the latest stable version:
36
36
 
37
37
  ```ruby
38
- gem 'twilio-ruby', '~> 5.58.3'
38
+ gem 'twilio-ruby', '~> 5.61.1'
39
39
  ```
40
40
 
41
41
  To manually install `twilio-ruby` via [Rubygems][rubygems] simply gem install:
42
42
 
43
43
  ```bash
44
- gem install twilio-ruby -v 5.58.3
44
+ gem install twilio-ruby -v 5.61.1
45
45
  ```
46
46
 
47
47
  To build and install the development branch yourself from the latest source:
@@ -257,7 +257,7 @@ If you've instead found a bug in the library or would like new features added, g
257
257
  [bundler]: https://bundler.io
258
258
  [rubygems]: https://rubygems.org
259
259
  [gem]: https://rubygems.org/gems/twilio
260
- [travis]: https://travis-ci.com/twilio/twilio-ruby
260
+ [github-actions]: https://github.com/twilio/twilio-ruby/actions/workflows/test.yml
261
261
  [upgrade]: https://github.com/twilio/twilio-ruby/wiki/Ruby-Version-5.x-Upgrade-Guide
262
262
  [issues]: https://github.com/twilio/twilio-ruby/issues
263
263
  [faraday]: https://github.com/lostisland/faraday
@@ -267,6 +267,19 @@ module Twilio
267
267
  payload
268
268
  end
269
269
  end
270
+
271
+ class PlaybackGrant
272
+ include AccessTokenGrant
273
+ attr_accessor :grant
274
+
275
+ def _key
276
+ 'player'
277
+ end
278
+
279
+ def _generate_payload
280
+ grant
281
+ end
282
+ end
270
283
  end
271
284
  end
272
285
  end