twilio-ruby 5.65.0 → 5.66.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.
- checksums.yaml +4 -4
- data/.github/workflows/pr-lint.yml +15 -0
- data/.github/workflows/test-and-deploy.yml +5 -0
- data/CHANGES.md +64 -0
- data/README.md +2 -4
- data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +2 -2
- data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +4 -4
- data/lib/twilio-ruby/rest/api/v2010/account/call.rb +0 -7
- data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +27 -7
- data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +10 -4
- data/lib/twilio-ruby/rest/chat/v3/channel.rb +275 -0
- data/lib/twilio-ruby/rest/chat/v3.rb +48 -0
- data/lib/twilio-ruby/rest/chat.rb +16 -0
- data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +7 -0
- data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +236 -0
- data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +330 -0
- data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +377 -0
- data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +233 -0
- data/lib/twilio-ruby/rest/flex_api/v1.rb +16 -0
- data/lib/twilio-ruby/rest/flex_api.rb +9 -0
- data/lib/twilio-ruby/rest/insights/v1/annotation.rb +271 -0
- data/lib/twilio-ruby/rest/insights/v1.rb +16 -0
- data/lib/twilio-ruby/rest/insights.rb +8 -0
- data/lib/twilio-ruby/rest/media/v1/media_processor.rb +1 -1
- data/lib/twilio-ruby/rest/media/v1/media_recording.rb +406 -0
- data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +14 -1
- data/lib/twilio-ruby/rest/media/v1.rb +16 -0
- data/lib/twilio-ruby/rest/media.rb +9 -0
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +7 -0
- data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +3 -55
- data/lib/twilio-ruby/rest/supersim/v1.rb +0 -16
- data/lib/twilio-ruby/rest/supersim.rb +0 -9
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +6 -2
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +4 -2
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +4 -2
- data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +18 -1
- data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +22 -4
- data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +2 -1
- data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +234 -0
- data/lib/twilio-ruby/rest/verify/v2.rb +7 -0
- data/lib/twilio-ruby/rest/verify.rb +6 -0
- data/lib/twilio-ruby/rest/video/v1/composition.rb +14 -0
- data/lib/twilio-ruby/rest/video/v1/recording.rb +14 -0
- data/lib/twilio-ruby/version.rb +1 -1
- data/lib/twilio-ruby.rb +1 -1
- metadata +12 -3
- data/lib/twilio-ruby/rest/supersim/v1/command.rb +0 -368
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 27cd5b2536a7ece409f2f6222f9743446e7ed44f
|
4
|
+
data.tar.gz: 2d2d5e161f40f11b388f9118eebd120e9c5ba765
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 32503dca86f69127f882feec36ad61d9c91f01379ae60f10bed3f9d410e30399d3436bbd097ff063a9359f100c83173b82b9203fd1871500694ef81cec6cb911
|
7
|
+
data.tar.gz: d426b5f3df1f6a991f0c829623dd5c67d17de0f7068ac79b586911e4dc8afb3052ac781fa5e152b7c5c63adf9f7696732ed072527457d523e3b13d4fc49574a0
|
@@ -0,0 +1,15 @@
|
|
1
|
+
name: Lint PR
|
2
|
+
on:
|
3
|
+
pull_request_target:
|
4
|
+
types: [ opened, edited, reopened ]
|
5
|
+
|
6
|
+
jobs:
|
7
|
+
validate:
|
8
|
+
name: Validate title
|
9
|
+
runs-on: ubuntu-latest
|
10
|
+
steps:
|
11
|
+
- uses: amannn/action-semantic-pull-request@v4
|
12
|
+
with:
|
13
|
+
types: chore docs fix feat test
|
14
|
+
env:
|
15
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
@@ -105,6 +105,11 @@ jobs:
|
|
105
105
|
gem build *.gemspec
|
106
106
|
gem push *.gem
|
107
107
|
|
108
|
+
- name: Submit metric to Datadog
|
109
|
+
uses: sendgrid/dx-automator/actions/datadog-release-metric@main
|
110
|
+
env:
|
111
|
+
DD_API_KEY: ${{ secrets.DATADOG_API_KEY }}
|
112
|
+
|
108
113
|
notify-on-failure:
|
109
114
|
name: Slack notify on failure
|
110
115
|
if: failure() && github.event_name != 'pull_request' && (github.ref == 'refs/heads/main' || github.ref_type == 'tag')
|
data/CHANGES.md
CHANGED
@@ -1,6 +1,70 @@
|
|
1
1
|
twilio-ruby changelog
|
2
2
|
=====================
|
3
3
|
|
4
|
+
[2022-04-06] Version 5.66.1
|
5
|
+
---------------------------
|
6
|
+
**Api**
|
7
|
+
- Updated `provider_sid` visibility to private
|
8
|
+
|
9
|
+
**Verify**
|
10
|
+
- Verify List Attempts API summary endpoint added.
|
11
|
+
- Update PII documentation for `AccessTokens` `factor_friendly_name` property.
|
12
|
+
|
13
|
+
**Voice**
|
14
|
+
- make annotation parameter from /Calls API private
|
15
|
+
|
16
|
+
|
17
|
+
[2022-03-23] Version 5.66.0
|
18
|
+
---------------------------
|
19
|
+
**Api**
|
20
|
+
- Change `stream` url parameter to non optional
|
21
|
+
- Add `verify-totp` and `verify-whatsapp-conversations-business-initiated` categories to `usage_record` API
|
22
|
+
|
23
|
+
**Chat**
|
24
|
+
- Added v3 Channel update endpoint to support Public to Private channel migration
|
25
|
+
|
26
|
+
**Flex**
|
27
|
+
- Private Beta release of the Interactions API to support the upcoming release of Flex Conversations at the end of Q1 2022.
|
28
|
+
- Adding `channel_configs` object to Flex Configuration
|
29
|
+
|
30
|
+
**Media**
|
31
|
+
- Add max_duration param to PlayerStreamer
|
32
|
+
|
33
|
+
**Supersim**
|
34
|
+
- Remove Commands resource, use SmsCommands resource instead **(breaking change)**
|
35
|
+
|
36
|
+
**Taskrouter**
|
37
|
+
- Add limits to `split_by_wait_time` for Cumulative Statistics Endpoint
|
38
|
+
|
39
|
+
**Video**
|
40
|
+
- Change recording `status_callback_method` type from `enum` to `http_method` **(breaking change)**
|
41
|
+
- Add `status_callback` and `status_callback_method` to composition
|
42
|
+
- Add `status_callback` and `status_callback_method` to recording
|
43
|
+
|
44
|
+
|
45
|
+
[2022-03-09] Version 5.65.1
|
46
|
+
---------------------------
|
47
|
+
**Library - Fix**
|
48
|
+
- [PR #602](https://github.com/twilio/twilio-ruby/pull/602): don't load webhook authentication if Rack not present. Thanks to [@philnash](https://github.com/philnash)!
|
49
|
+
|
50
|
+
**Library - Chore**
|
51
|
+
- [PR #599](https://github.com/twilio/twilio-ruby/pull/599): push Datadog Release Metric upon deploy success. Thanks to [@eshanholtz](https://github.com/eshanholtz)!
|
52
|
+
|
53
|
+
**Api**
|
54
|
+
- Add optional boolean include_soft_deleted parameter to retrieve soft deleted recordings
|
55
|
+
|
56
|
+
**Chat**
|
57
|
+
- Add `X-Twilio-Wehook-Enabled` header to `delete` method in UserChannel resource
|
58
|
+
|
59
|
+
**Numbers**
|
60
|
+
- Expose `failure_reason` in the Supporting Documents resources
|
61
|
+
|
62
|
+
**Verify**
|
63
|
+
- Add optional `metadata` parameter to "verify challenge" endpoint, so the SDK/App can attach relevant information from the device when responding to challenges.
|
64
|
+
- remove beta feature flag to list atempt api operations.
|
65
|
+
- Add `ttl` and `date_created` properties to `AccessTokens`.
|
66
|
+
|
67
|
+
|
4
68
|
[2022-02-23] Version 5.65.0
|
5
69
|
---------------------------
|
6
70
|
**Api**
|
data/README.md
CHANGED
@@ -4,8 +4,6 @@
|
|
4
4
|
[](https://rubygems.org/gems/twilio-ruby)
|
5
5
|
[](https://twil.io/learn-open-source)
|
6
6
|
|
7
|
-
**The default branch name for this repository has been changed to `main` as of 07/27/2020.**
|
8
|
-
|
9
7
|
## Documentation
|
10
8
|
|
11
9
|
The documentation for the Twilio API can be found [here][apidocs].
|
@@ -36,13 +34,13 @@ This library supports the following Ruby implementations:
|
|
36
34
|
To install using [Bundler][bundler] grab the latest stable version:
|
37
35
|
|
38
36
|
```ruby
|
39
|
-
gem 'twilio-ruby', '~> 5.
|
37
|
+
gem 'twilio-ruby', '~> 5.66.1'
|
40
38
|
```
|
41
39
|
|
42
40
|
To manually install `twilio-ruby` via [Rubygems][rubygems] simply gem install:
|
43
41
|
|
44
42
|
```bash
|
45
|
-
gem install twilio-ruby -v 5.
|
43
|
+
gem install twilio-ruby -v 5.66.1
|
46
44
|
```
|
47
45
|
|
48
46
|
To build and install the development branch yourself from the latest source:
|
@@ -63,8 +63,8 @@ module Twilio
|
|
63
63
|
# @param [String] min_postal_code_length A positive integer that is used to
|
64
64
|
# validate the length of the `PostalCode` inputted by the user. User must enter
|
65
65
|
# this many digits.
|
66
|
-
# @param [Hash] parameter A single
|
67
|
-
#
|
66
|
+
# @param [Hash] parameter A single-level JSON object used to pass custom
|
67
|
+
# parameters to payment processors. (Required for ACH payments). The information
|
68
68
|
# that has to be included here depends on the <Pay> Connector. {Read
|
69
69
|
# more}[https://www.twilio.com/console/voice/pay-connectors].
|
70
70
|
# @param [String] payment_connector This is the unique name corresponding to the
|
@@ -33,10 +33,10 @@ module Twilio
|
|
33
33
|
|
34
34
|
##
|
35
35
|
# Create the StreamInstance
|
36
|
-
# @param [String] name The user-specified name of this Stream, if one was given
|
37
|
-
# when the Stream was created. This may be used to stop the Stream.
|
38
36
|
# @param [String] url Relative or absolute url where WebSocket connection will be
|
39
37
|
# established.
|
38
|
+
# @param [String] name The user-specified name of this Stream, if one was given
|
39
|
+
# when the Stream was created. This may be used to stop the Stream.
|
40
40
|
# @param [stream.Track] track One of `inbound_track`, `outbound_track`,
|
41
41
|
# `both_tracks`.
|
42
42
|
# @param [String] status_callback Absolute URL of the status callback.
|
@@ -241,10 +241,10 @@ module Twilio
|
|
241
241
|
# @param [String] parameter99_name Parameter name
|
242
242
|
# @param [String] parameter99_value Parameter value
|
243
243
|
# @return [StreamInstance] Created StreamInstance
|
244
|
-
def create(
|
244
|
+
def create(url: nil, name: :unset, track: :unset, status_callback: :unset, status_callback_method: :unset, parameter1_name: :unset, parameter1_value: :unset, parameter2_name: :unset, parameter2_value: :unset, parameter3_name: :unset, parameter3_value: :unset, parameter4_name: :unset, parameter4_value: :unset, parameter5_name: :unset, parameter5_value: :unset, parameter6_name: :unset, parameter6_value: :unset, parameter7_name: :unset, parameter7_value: :unset, parameter8_name: :unset, parameter8_value: :unset, parameter9_name: :unset, parameter9_value: :unset, parameter10_name: :unset, parameter10_value: :unset, parameter11_name: :unset, parameter11_value: :unset, parameter12_name: :unset, parameter12_value: :unset, parameter13_name: :unset, parameter13_value: :unset, parameter14_name: :unset, parameter14_value: :unset, parameter15_name: :unset, parameter15_value: :unset, parameter16_name: :unset, parameter16_value: :unset, parameter17_name: :unset, parameter17_value: :unset, parameter18_name: :unset, parameter18_value: :unset, parameter19_name: :unset, parameter19_value: :unset, parameter20_name: :unset, parameter20_value: :unset, parameter21_name: :unset, parameter21_value: :unset, parameter22_name: :unset, parameter22_value: :unset, parameter23_name: :unset, parameter23_value: :unset, parameter24_name: :unset, parameter24_value: :unset, parameter25_name: :unset, parameter25_value: :unset, parameter26_name: :unset, parameter26_value: :unset, parameter27_name: :unset, parameter27_value: :unset, parameter28_name: :unset, parameter28_value: :unset, parameter29_name: :unset, parameter29_value: :unset, parameter30_name: :unset, parameter30_value: :unset, parameter31_name: :unset, parameter31_value: :unset, parameter32_name: :unset, parameter32_value: :unset, parameter33_name: :unset, parameter33_value: :unset, parameter34_name: :unset, parameter34_value: :unset, parameter35_name: :unset, parameter35_value: :unset, parameter36_name: :unset, parameter36_value: :unset, parameter37_name: :unset, parameter37_value: :unset, parameter38_name: :unset, parameter38_value: :unset, parameter39_name: :unset, parameter39_value: :unset, parameter40_name: :unset, parameter40_value: :unset, parameter41_name: :unset, parameter41_value: :unset, parameter42_name: :unset, parameter42_value: :unset, parameter43_name: :unset, parameter43_value: :unset, parameter44_name: :unset, parameter44_value: :unset, parameter45_name: :unset, parameter45_value: :unset, parameter46_name: :unset, parameter46_value: :unset, parameter47_name: :unset, parameter47_value: :unset, parameter48_name: :unset, parameter48_value: :unset, parameter49_name: :unset, parameter49_value: :unset, parameter50_name: :unset, parameter50_value: :unset, parameter51_name: :unset, parameter51_value: :unset, parameter52_name: :unset, parameter52_value: :unset, parameter53_name: :unset, parameter53_value: :unset, parameter54_name: :unset, parameter54_value: :unset, parameter55_name: :unset, parameter55_value: :unset, parameter56_name: :unset, parameter56_value: :unset, parameter57_name: :unset, parameter57_value: :unset, parameter58_name: :unset, parameter58_value: :unset, parameter59_name: :unset, parameter59_value: :unset, parameter60_name: :unset, parameter60_value: :unset, parameter61_name: :unset, parameter61_value: :unset, parameter62_name: :unset, parameter62_value: :unset, parameter63_name: :unset, parameter63_value: :unset, parameter64_name: :unset, parameter64_value: :unset, parameter65_name: :unset, parameter65_value: :unset, parameter66_name: :unset, parameter66_value: :unset, parameter67_name: :unset, parameter67_value: :unset, parameter68_name: :unset, parameter68_value: :unset, parameter69_name: :unset, parameter69_value: :unset, parameter70_name: :unset, parameter70_value: :unset, parameter71_name: :unset, parameter71_value: :unset, parameter72_name: :unset, parameter72_value: :unset, parameter73_name: :unset, parameter73_value: :unset, parameter74_name: :unset, parameter74_value: :unset, parameter75_name: :unset, parameter75_value: :unset, parameter76_name: :unset, parameter76_value: :unset, parameter77_name: :unset, parameter77_value: :unset, parameter78_name: :unset, parameter78_value: :unset, parameter79_name: :unset, parameter79_value: :unset, parameter80_name: :unset, parameter80_value: :unset, parameter81_name: :unset, parameter81_value: :unset, parameter82_name: :unset, parameter82_value: :unset, parameter83_name: :unset, parameter83_value: :unset, parameter84_name: :unset, parameter84_value: :unset, parameter85_name: :unset, parameter85_value: :unset, parameter86_name: :unset, parameter86_value: :unset, parameter87_name: :unset, parameter87_value: :unset, parameter88_name: :unset, parameter88_value: :unset, parameter89_name: :unset, parameter89_value: :unset, parameter90_name: :unset, parameter90_value: :unset, parameter91_name: :unset, parameter91_value: :unset, parameter92_name: :unset, parameter92_value: :unset, parameter93_name: :unset, parameter93_value: :unset, parameter94_name: :unset, parameter94_value: :unset, parameter95_name: :unset, parameter95_value: :unset, parameter96_name: :unset, parameter96_value: :unset, parameter97_name: :unset, parameter97_value: :unset, parameter98_name: :unset, parameter98_value: :unset, parameter99_name: :unset, parameter99_value: :unset)
|
245
245
|
data = Twilio::Values.of({
|
246
|
-
'Name' => name,
|
247
246
|
'Url' => url,
|
247
|
+
'Name' => name,
|
248
248
|
'Track' => track,
|
249
249
|
'StatusCallback' => status_callback,
|
250
250
|
'StatusCallbackMethod' => status_callback_method,
|
@@ -684,7 +684,6 @@ module Twilio
|
|
684
684
|
'price_unit' => payload['price_unit'],
|
685
685
|
'direction' => payload['direction'],
|
686
686
|
'answered_by' => payload['answered_by'],
|
687
|
-
'annotation' => payload['annotation'],
|
688
687
|
'api_version' => payload['api_version'],
|
689
688
|
'forwarded_from' => payload['forwarded_from'],
|
690
689
|
'group_sid' => payload['group_sid'],
|
@@ -819,12 +818,6 @@ module Twilio
|
|
819
818
|
@properties['answered_by']
|
820
819
|
end
|
821
820
|
|
822
|
-
##
|
823
|
-
# @return [String] The annotation provided for the call
|
824
|
-
def annotation
|
825
|
-
@properties['annotation']
|
826
|
-
end
|
827
|
-
|
828
821
|
##
|
829
822
|
# @return [String] The API Version used to create the call
|
830
823
|
def api_version
|
@@ -39,6 +39,9 @@ module Twilio
|
|
39
39
|
# to read.
|
40
40
|
# @param [String] conference_sid The Conference SID that identifies the conference
|
41
41
|
# associated with the recording to read.
|
42
|
+
# @param [Boolean] include_soft_deleted A boolean parameter indicating whether to
|
43
|
+
# retrieve soft deleted recordings or not. Recordings metadata are kept after
|
44
|
+
# deletion for a retention period of 40 days.
|
42
45
|
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
43
46
|
# guarantees to never return more than limit. Default is no limit
|
44
47
|
# @param [Integer] page_size Number of records to fetch per request, when
|
@@ -46,13 +49,14 @@ module Twilio
|
|
46
49
|
# but a limit is defined, stream() will attempt to read the limit with the most
|
47
50
|
# efficient page size, i.e. min(limit, 1000)
|
48
51
|
# @return [Array] Array of up to limit results
|
49
|
-
def list(date_created_before: :unset, date_created: :unset, date_created_after: :unset, call_sid: :unset, conference_sid: :unset, limit: nil, page_size: nil)
|
52
|
+
def list(date_created_before: :unset, date_created: :unset, date_created_after: :unset, call_sid: :unset, conference_sid: :unset, include_soft_deleted: :unset, limit: nil, page_size: nil)
|
50
53
|
self.stream(
|
51
54
|
date_created_before: date_created_before,
|
52
55
|
date_created: date_created,
|
53
56
|
date_created_after: date_created_after,
|
54
57
|
call_sid: call_sid,
|
55
58
|
conference_sid: conference_sid,
|
59
|
+
include_soft_deleted: include_soft_deleted,
|
56
60
|
limit: limit,
|
57
61
|
page_size: page_size
|
58
62
|
).entries
|
@@ -70,6 +74,9 @@ module Twilio
|
|
70
74
|
# to read.
|
71
75
|
# @param [String] conference_sid The Conference SID that identifies the conference
|
72
76
|
# associated with the recording to read.
|
77
|
+
# @param [Boolean] include_soft_deleted A boolean parameter indicating whether to
|
78
|
+
# retrieve soft deleted recordings or not. Recordings metadata are kept after
|
79
|
+
# deletion for a retention period of 40 days.
|
73
80
|
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
74
81
|
# guarantees to never return more than limit. Default is no limit.
|
75
82
|
# @param [Integer] page_size Number of records to fetch per request, when
|
@@ -77,7 +84,7 @@ module Twilio
|
|
77
84
|
# but a limit is defined, stream() will attempt to read the limit with the most
|
78
85
|
# efficient page size, i.e. min(limit, 1000)
|
79
86
|
# @return [Enumerable] Enumerable that will yield up to limit results
|
80
|
-
def stream(date_created_before: :unset, date_created: :unset, date_created_after: :unset, call_sid: :unset, conference_sid: :unset, limit: nil, page_size: nil)
|
87
|
+
def stream(date_created_before: :unset, date_created: :unset, date_created_after: :unset, call_sid: :unset, conference_sid: :unset, include_soft_deleted: :unset, limit: nil, page_size: nil)
|
81
88
|
limits = @version.read_limits(limit, page_size)
|
82
89
|
|
83
90
|
page = self.page(
|
@@ -86,6 +93,7 @@ module Twilio
|
|
86
93
|
date_created_after: date_created_after,
|
87
94
|
call_sid: call_sid,
|
88
95
|
conference_sid: conference_sid,
|
96
|
+
include_soft_deleted: include_soft_deleted,
|
89
97
|
page_size: limits[:page_size],
|
90
98
|
)
|
91
99
|
|
@@ -117,17 +125,21 @@ module Twilio
|
|
117
125
|
# to read.
|
118
126
|
# @param [String] conference_sid The Conference SID that identifies the conference
|
119
127
|
# associated with the recording to read.
|
128
|
+
# @param [Boolean] include_soft_deleted A boolean parameter indicating whether to
|
129
|
+
# retrieve soft deleted recordings or not. Recordings metadata are kept after
|
130
|
+
# deletion for a retention period of 40 days.
|
120
131
|
# @param [String] page_token PageToken provided by the API
|
121
132
|
# @param [Integer] page_number Page Number, this value is simply for client state
|
122
133
|
# @param [Integer] page_size Number of records to return, defaults to 50
|
123
134
|
# @return [Page] Page of RecordingInstance
|
124
|
-
def page(date_created_before: :unset, date_created: :unset, date_created_after: :unset, call_sid: :unset, conference_sid: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
|
135
|
+
def page(date_created_before: :unset, date_created: :unset, date_created_after: :unset, call_sid: :unset, conference_sid: :unset, include_soft_deleted: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
|
125
136
|
params = Twilio::Values.of({
|
126
137
|
'DateCreated<' => Twilio.serialize_iso8601_datetime(date_created_before),
|
127
138
|
'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
|
128
139
|
'DateCreated>' => Twilio.serialize_iso8601_datetime(date_created_after),
|
129
140
|
'CallSid' => call_sid,
|
130
141
|
'ConferenceSid' => conference_sid,
|
142
|
+
'IncludeSoftDeleted' => include_soft_deleted,
|
131
143
|
'PageToken' => page_token,
|
132
144
|
'Page' => page_number,
|
133
145
|
'PageSize' => page_size,
|
@@ -211,9 +223,14 @@ module Twilio
|
|
211
223
|
|
212
224
|
##
|
213
225
|
# Fetch the RecordingInstance
|
226
|
+
# @param [Boolean] include_soft_deleted A boolean parameter indicating whether to
|
227
|
+
# retrieve soft deleted recordings or not. Recordings metadata are kept after
|
228
|
+
# deletion for a retention period of 40 days.
|
214
229
|
# @return [RecordingInstance] Fetched RecordingInstance
|
215
|
-
def fetch
|
216
|
-
|
230
|
+
def fetch(include_soft_deleted: :unset)
|
231
|
+
params = Twilio::Values.of({'IncludeSoftDeleted' => include_soft_deleted, })
|
232
|
+
|
233
|
+
payload = @version.fetch('GET', @uri, params: params)
|
217
234
|
|
218
235
|
RecordingInstance.new(@version, payload, account_sid: @solution[:account_sid], sid: @solution[:sid], )
|
219
236
|
end
|
@@ -446,9 +463,12 @@ module Twilio
|
|
446
463
|
|
447
464
|
##
|
448
465
|
# Fetch the RecordingInstance
|
466
|
+
# @param [Boolean] include_soft_deleted A boolean parameter indicating whether to
|
467
|
+
# retrieve soft deleted recordings or not. Recordings metadata are kept after
|
468
|
+
# deletion for a retention period of 40 days.
|
449
469
|
# @return [RecordingInstance] Fetched RecordingInstance
|
450
|
-
def fetch
|
451
|
-
context.fetch
|
470
|
+
def fetch(include_soft_deleted: :unset)
|
471
|
+
context.fetch(include_soft_deleted: include_soft_deleted, )
|
452
472
|
end
|
453
473
|
|
454
474
|
##
|
@@ -193,9 +193,13 @@ module Twilio
|
|
193
193
|
|
194
194
|
##
|
195
195
|
# Delete the UserChannelInstance
|
196
|
+
# @param [user_channel.WebhookEnabledType] x_twilio_webhook_enabled The
|
197
|
+
# X-Twilio-Webhook-Enabled HTTP request header
|
196
198
|
# @return [Boolean] true if delete succeeds, false otherwise
|
197
|
-
def delete
|
198
|
-
|
199
|
+
def delete(x_twilio_webhook_enabled: :unset)
|
200
|
+
headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
|
201
|
+
|
202
|
+
@version.delete('DELETE', @uri, headers: headers)
|
199
203
|
end
|
200
204
|
|
201
205
|
##
|
@@ -377,9 +381,11 @@ module Twilio
|
|
377
381
|
|
378
382
|
##
|
379
383
|
# Delete the UserChannelInstance
|
384
|
+
# @param [user_channel.WebhookEnabledType] x_twilio_webhook_enabled The
|
385
|
+
# X-Twilio-Webhook-Enabled HTTP request header
|
380
386
|
# @return [Boolean] true if delete succeeds, false otherwise
|
381
|
-
def delete
|
382
|
-
context.delete
|
387
|
+
def delete(x_twilio_webhook_enabled: :unset)
|
388
|
+
context.delete(x_twilio_webhook_enabled: x_twilio_webhook_enabled, )
|
383
389
|
end
|
384
390
|
|
385
391
|
##
|
@@ -0,0 +1,275 @@
|
|
1
|
+
##
|
2
|
+
# This code was generated by
|
3
|
+
# \ / _ _ _| _ _
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
5
|
+
# / /
|
6
|
+
#
|
7
|
+
# frozen_string_literal: true
|
8
|
+
|
9
|
+
module Twilio
|
10
|
+
module REST
|
11
|
+
class Chat < Domain
|
12
|
+
class V3 < Version
|
13
|
+
class ChannelList < ListResource
|
14
|
+
##
|
15
|
+
# Initialize the ChannelList
|
16
|
+
# @param [Version] version Version that contains the resource
|
17
|
+
# @return [ChannelList] ChannelList
|
18
|
+
def initialize(version)
|
19
|
+
super(version)
|
20
|
+
|
21
|
+
# Path Solution
|
22
|
+
@solution = {}
|
23
|
+
end
|
24
|
+
|
25
|
+
##
|
26
|
+
# Provide a user friendly representation
|
27
|
+
def to_s
|
28
|
+
'#<Twilio.Chat.V3.ChannelList>'
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
class ChannelPage < Page
|
33
|
+
##
|
34
|
+
# Initialize the ChannelPage
|
35
|
+
# @param [Version] version Version that contains the resource
|
36
|
+
# @param [Response] response Response from the API
|
37
|
+
# @param [Hash] solution Path solution for the resource
|
38
|
+
# @return [ChannelPage] ChannelPage
|
39
|
+
def initialize(version, response, solution)
|
40
|
+
super(version, response)
|
41
|
+
|
42
|
+
# Path Solution
|
43
|
+
@solution = solution
|
44
|
+
end
|
45
|
+
|
46
|
+
##
|
47
|
+
# Build an instance of ChannelInstance
|
48
|
+
# @param [Hash] payload Payload response from the API
|
49
|
+
# @return [ChannelInstance] ChannelInstance
|
50
|
+
def get_instance(payload)
|
51
|
+
ChannelInstance.new(@version, payload, )
|
52
|
+
end
|
53
|
+
|
54
|
+
##
|
55
|
+
# Provide a user friendly representation
|
56
|
+
def to_s
|
57
|
+
'<Twilio.Chat.V3.ChannelPage>'
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
class ChannelContext < InstanceContext
|
62
|
+
##
|
63
|
+
# Initialize the ChannelContext
|
64
|
+
# @param [Version] version Version that contains the resource
|
65
|
+
# @param [String] service_sid The unique SID identifier of the Service.
|
66
|
+
# @param [String] sid A 34 character string that uniquely identifies this Channel.
|
67
|
+
# @return [ChannelContext] ChannelContext
|
68
|
+
def initialize(version, service_sid, sid)
|
69
|
+
super(version)
|
70
|
+
|
71
|
+
# Path Solution
|
72
|
+
@solution = {service_sid: service_sid, sid: sid, }
|
73
|
+
@uri = "/Services/#{@solution[:service_sid]}/Channels/#{@solution[:sid]}"
|
74
|
+
end
|
75
|
+
|
76
|
+
##
|
77
|
+
# Update the ChannelInstance
|
78
|
+
# @param [channel.ChannelType] type TThe Type for this Channel to migrate to. Can
|
79
|
+
# only be `private`. Migration to 'public' is not allowed.
|
80
|
+
# @param [String] messaging_service_sid The unique ID of the {Messaging
|
81
|
+
# Service}[https://www.twilio.com/docs/sms/services/api] this channel belongs to.
|
82
|
+
# @param [channel.WebhookEnabledType] x_twilio_webhook_enabled The
|
83
|
+
# X-Twilio-Webhook-Enabled HTTP request header
|
84
|
+
# @return [ChannelInstance] Updated ChannelInstance
|
85
|
+
def update(type: :unset, messaging_service_sid: :unset, x_twilio_webhook_enabled: :unset)
|
86
|
+
data = Twilio::Values.of({'Type' => type, 'MessagingServiceSid' => messaging_service_sid, })
|
87
|
+
headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
|
88
|
+
|
89
|
+
payload = @version.update('POST', @uri, data: data, headers: headers)
|
90
|
+
|
91
|
+
ChannelInstance.new(@version, payload, service_sid: @solution[:service_sid], sid: @solution[:sid], )
|
92
|
+
end
|
93
|
+
|
94
|
+
##
|
95
|
+
# Provide a user friendly representation
|
96
|
+
def to_s
|
97
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
98
|
+
"#<Twilio.Chat.V3.ChannelContext #{context}>"
|
99
|
+
end
|
100
|
+
|
101
|
+
##
|
102
|
+
# Provide a detailed, user friendly representation
|
103
|
+
def inspect
|
104
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
105
|
+
"#<Twilio.Chat.V3.ChannelContext #{context}>"
|
106
|
+
end
|
107
|
+
end
|
108
|
+
|
109
|
+
class ChannelInstance < InstanceResource
|
110
|
+
##
|
111
|
+
# Initialize the ChannelInstance
|
112
|
+
# @param [Version] version Version that contains the resource
|
113
|
+
# @param [Hash] payload payload that contains response from Twilio
|
114
|
+
# @param [String] service_sid The unique SID identifier of the Service.
|
115
|
+
# @param [String] sid A 34 character string that uniquely identifies this Channel.
|
116
|
+
# @return [ChannelInstance] ChannelInstance
|
117
|
+
def initialize(version, payload, service_sid: nil, sid: nil)
|
118
|
+
super(version)
|
119
|
+
|
120
|
+
# Marshaled Properties
|
121
|
+
@properties = {
|
122
|
+
'sid' => payload['sid'],
|
123
|
+
'account_sid' => payload['account_sid'],
|
124
|
+
'service_sid' => payload['service_sid'],
|
125
|
+
'friendly_name' => payload['friendly_name'],
|
126
|
+
'unique_name' => payload['unique_name'],
|
127
|
+
'attributes' => payload['attributes'],
|
128
|
+
'type' => payload['type'],
|
129
|
+
'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
|
130
|
+
'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
|
131
|
+
'created_by' => payload['created_by'],
|
132
|
+
'members_count' => payload['members_count'].to_i,
|
133
|
+
'messages_count' => payload['messages_count'].to_i,
|
134
|
+
'messaging_service_sid' => payload['messaging_service_sid'],
|
135
|
+
'url' => payload['url'],
|
136
|
+
}
|
137
|
+
|
138
|
+
# Context
|
139
|
+
@instance_context = nil
|
140
|
+
@params = {
|
141
|
+
'service_sid' => service_sid || @properties['service_sid'],
|
142
|
+
'sid' => sid || @properties['sid'],
|
143
|
+
}
|
144
|
+
end
|
145
|
+
|
146
|
+
##
|
147
|
+
# Generate an instance context for the instance, the context is capable of
|
148
|
+
# performing various actions. All instance actions are proxied to the context
|
149
|
+
# @return [ChannelContext] ChannelContext for this ChannelInstance
|
150
|
+
def context
|
151
|
+
unless @instance_context
|
152
|
+
@instance_context = ChannelContext.new(@version, @params['service_sid'], @params['sid'], )
|
153
|
+
end
|
154
|
+
@instance_context
|
155
|
+
end
|
156
|
+
|
157
|
+
##
|
158
|
+
# @return [String] The unique string that identifies the resource
|
159
|
+
def sid
|
160
|
+
@properties['sid']
|
161
|
+
end
|
162
|
+
|
163
|
+
##
|
164
|
+
# @return [String] The SID of the Account that created the resource
|
165
|
+
def account_sid
|
166
|
+
@properties['account_sid']
|
167
|
+
end
|
168
|
+
|
169
|
+
##
|
170
|
+
# @return [String] The SID of the Service that the resource is associated with
|
171
|
+
def service_sid
|
172
|
+
@properties['service_sid']
|
173
|
+
end
|
174
|
+
|
175
|
+
##
|
176
|
+
# @return [String] The string that you assigned to describe the resource
|
177
|
+
def friendly_name
|
178
|
+
@properties['friendly_name']
|
179
|
+
end
|
180
|
+
|
181
|
+
##
|
182
|
+
# @return [String] An application-defined string that uniquely identifies the resource
|
183
|
+
def unique_name
|
184
|
+
@properties['unique_name']
|
185
|
+
end
|
186
|
+
|
187
|
+
##
|
188
|
+
# @return [String] The JSON string that stores application-specific data
|
189
|
+
def attributes
|
190
|
+
@properties['attributes']
|
191
|
+
end
|
192
|
+
|
193
|
+
##
|
194
|
+
# @return [channel.ChannelType] The visibility of the channel. Can be: `public` or `private`
|
195
|
+
def type
|
196
|
+
@properties['type']
|
197
|
+
end
|
198
|
+
|
199
|
+
##
|
200
|
+
# @return [Time] The ISO 8601 date and time in GMT when the resource was created
|
201
|
+
def date_created
|
202
|
+
@properties['date_created']
|
203
|
+
end
|
204
|
+
|
205
|
+
##
|
206
|
+
# @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
|
207
|
+
def date_updated
|
208
|
+
@properties['date_updated']
|
209
|
+
end
|
210
|
+
|
211
|
+
##
|
212
|
+
# @return [String] The identity of the User that created the channel
|
213
|
+
def created_by
|
214
|
+
@properties['created_by']
|
215
|
+
end
|
216
|
+
|
217
|
+
##
|
218
|
+
# @return [String] The number of Members in the Channel
|
219
|
+
def members_count
|
220
|
+
@properties['members_count']
|
221
|
+
end
|
222
|
+
|
223
|
+
##
|
224
|
+
# @return [String] The number of Messages that have been passed in the Channel
|
225
|
+
def messages_count
|
226
|
+
@properties['messages_count']
|
227
|
+
end
|
228
|
+
|
229
|
+
##
|
230
|
+
# @return [String] The unique ID of the Messaging Service this channel belongs to.
|
231
|
+
def messaging_service_sid
|
232
|
+
@properties['messaging_service_sid']
|
233
|
+
end
|
234
|
+
|
235
|
+
##
|
236
|
+
# @return [String] The absolute URL of the Channel resource
|
237
|
+
def url
|
238
|
+
@properties['url']
|
239
|
+
end
|
240
|
+
|
241
|
+
##
|
242
|
+
# Update the ChannelInstance
|
243
|
+
# @param [channel.ChannelType] type TThe Type for this Channel to migrate to. Can
|
244
|
+
# only be `private`. Migration to 'public' is not allowed.
|
245
|
+
# @param [String] messaging_service_sid The unique ID of the {Messaging
|
246
|
+
# Service}[https://www.twilio.com/docs/sms/services/api] this channel belongs to.
|
247
|
+
# @param [channel.WebhookEnabledType] x_twilio_webhook_enabled The
|
248
|
+
# X-Twilio-Webhook-Enabled HTTP request header
|
249
|
+
# @return [ChannelInstance] Updated ChannelInstance
|
250
|
+
def update(type: :unset, messaging_service_sid: :unset, x_twilio_webhook_enabled: :unset)
|
251
|
+
context.update(
|
252
|
+
type: type,
|
253
|
+
messaging_service_sid: messaging_service_sid,
|
254
|
+
x_twilio_webhook_enabled: x_twilio_webhook_enabled,
|
255
|
+
)
|
256
|
+
end
|
257
|
+
|
258
|
+
##
|
259
|
+
# Provide a user friendly representation
|
260
|
+
def to_s
|
261
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
262
|
+
"<Twilio.Chat.V3.ChannelInstance #{values}>"
|
263
|
+
end
|
264
|
+
|
265
|
+
##
|
266
|
+
# Provide a detailed, user friendly representation
|
267
|
+
def inspect
|
268
|
+
values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
|
269
|
+
"<Twilio.Chat.V3.ChannelInstance #{values}>"
|
270
|
+
end
|
271
|
+
end
|
272
|
+
end
|
273
|
+
end
|
274
|
+
end
|
275
|
+
end
|