twilio-ruby 7.5.2 → 7.6.0
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/CHANGES.md +21 -0
- data/README.md +2 -2
- data/lib/twilio-ruby/rest/api/v2010/account/call.rb +1 -1
- data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +3 -3
- data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +50 -1
- data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +556 -0
- data/lib/twilio-ruby/rest/messaging/v2.rb +49 -0
- data/lib/twilio-ruby/rest/messaging_base.rb +6 -1
- data/lib/twilio-ruby/rest/numbers/v1/{webhook.rb → porting_webhook_configuration_fetch.rb} +20 -20
- data/lib/twilio-ruby/rest/numbers/v1.rb +6 -6
- data/lib/twilio-ruby/rest/video/v1/room.rb +6 -0
- data/lib/twilio-ruby/version.rb +1 -1
- data/twilio-ruby.gemspec +0 -2
- metadata +5 -31
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5c84f48a652b0a72ebf4e7b6654813a215f94ed7
|
4
|
+
data.tar.gz: '04808d5c430749e3a35f0b5098b250a0fab1d476'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3e9e6004baa7bb7d91fbec42f3dfbe73d1bf094d5c7452cdc64e078a4510ee2909da7778209b37061b8331455ddd058604cdefb062394256ecd8d3ebb15bfa3c
|
7
|
+
data.tar.gz: 11bb382b74ad1a2327aacfe4f1a061e8bce8056f0bb6c0b8cc425fb3d8769ec6db7c1cf258289ae8186c8113bf76a224bb4d81b95221c6bf64c3cc5d78f72bd7
|
data/CHANGES.md
CHANGED
@@ -1,6 +1,27 @@
|
|
1
1
|
twilio-ruby changelog
|
2
2
|
=====================
|
3
3
|
|
4
|
+
[2025-05-05] Version 7.6.0
|
5
|
+
--------------------------
|
6
|
+
**Library - Chore**
|
7
|
+
- [PR #742](https://github.com/twilio/twilio-ruby/pull/742): remove ostruct and benchmark from gemspec. Thanks to [@oehlschl](https://github.com/oehlschl)!
|
8
|
+
|
9
|
+
**Api**
|
10
|
+
- Add `response_key` for `Usage Triggers` fetch endpoint.
|
11
|
+
|
12
|
+
**Flex**
|
13
|
+
- Add Update Interaction API
|
14
|
+
- Adding `webhook_ttid` as optional parameter in Interactions API
|
15
|
+
|
16
|
+
**Serverless**
|
17
|
+
- Add node22 as a valid Build runtime
|
18
|
+
- Add node20 as a valid Build runtime
|
19
|
+
|
20
|
+
**Video**
|
21
|
+
- removed `transcribe_participants_on_connect` and `transcriptions_configuration` from the room resource **(breaking change)**
|
22
|
+
- Added `transcribe_participants_on_connect` and `transcriptions_configuration` to the room resource
|
23
|
+
|
24
|
+
|
4
25
|
[2025-04-07] Version 7.5.2
|
5
26
|
--------------------------
|
6
27
|
**Studio**
|
data/README.md
CHANGED
@@ -39,13 +39,13 @@ This library supports the following Ruby implementations:
|
|
39
39
|
To install using [Bundler][bundler] grab the latest stable version:
|
40
40
|
|
41
41
|
```ruby
|
42
|
-
gem 'twilio-ruby', '~> 7.
|
42
|
+
gem 'twilio-ruby', '~> 7.6.0'
|
43
43
|
```
|
44
44
|
|
45
45
|
To manually install `twilio-ruby` via [Rubygems][rubygems] simply gem install:
|
46
46
|
|
47
47
|
```bash
|
48
|
-
gem install twilio-ruby -v 7.
|
48
|
+
gem install twilio-ruby -v 7.6.0
|
49
49
|
```
|
50
50
|
|
51
51
|
To build and install the development branch yourself from the latest source:
|
@@ -42,7 +42,7 @@ module Twilio
|
|
42
42
|
# @param [String] status_callback The URL we should call using the `status_callback_method` to send status information to your application. If no `status_callback_event` is specified, we will send the `completed` status. If an `application_sid` parameter is present, this parameter is ignored. URLs must contain a valid hostname (underscores are not permitted).
|
43
43
|
# @param [Array[String]] status_callback_event The call progress events that we will send to the `status_callback` URL. Can be: `initiated`, `ringing`, `answered`, and `completed`. If no event is specified, we send the `completed` status. If you want to receive multiple events, specify each one in a separate `status_callback_event` parameter. See the code sample for [monitoring call progress](https://www.twilio.com/docs/voice/api/call-resource?code-sample=code-create-a-call-resource-and-specify-a-statuscallbackevent&code-sdk-version=json). If an `application_sid` is present, this parameter is ignored.
|
44
44
|
# @param [String] status_callback_method The HTTP method we should use when calling the `status_callback` URL. Can be: `GET` or `POST` and the default is `POST`. If an `application_sid` parameter is present, this parameter is ignored.
|
45
|
-
# @param [String] send_digits
|
45
|
+
# @param [String] send_digits The string of keys to dial after connecting to the number, with a maximum length of 32 digits. Valid digits in the string include any digit (`0`-`9`), '`A`', '`B`', '`C`', '`D`', '`#`', and '`*`'. You can also use '`w`' to insert a half-second pause and '`W`' to insert a one-second pause. For example, to pause for one second after connecting and then dial extension 1234 followed by the # key, set this parameter to `W1234#`. Be sure to URL-encode this string because the '`#`' character has special meaning in a URL. If both `SendDigits` and `MachineDetection` parameters are provided, then `MachineDetection` will be ignored.
|
46
46
|
# @param [String] timeout The integer number of seconds that we should allow the phone to ring before assuming there is no answer. The default is `60` seconds and the maximum is `600` seconds. For some call flows, we will add a 5-second buffer to the timeout value you provide. For this reason, a timeout value of 10 seconds could result in an actual timeout closer to 15 seconds. You can set this to a short time, such as `15` seconds, to hang up before reaching an answering machine or voicemail.
|
47
47
|
# @param [Boolean] record Whether to record the call. Can be `true` to record the phone call, or `false` to not. The default is `false`. The `recording_url` is sent to the `status_callback` URL.
|
48
48
|
# @param [String] recording_channels The number of channels in the final recording. Can be: `mono` or `dual`. The default is `mono`. `mono` records both legs of the call in a single channel of the recording file. `dual` records each leg to a separate channel of the recording file. The first channel of a dual-channel recording contains the parent call and the second channel contains the child call.
|
@@ -47,7 +47,7 @@ module Twilio
|
|
47
47
|
# @param [String] beep Whether to play a notification beep to the conference when the participant joins. Can be: `true`, `false`, `onEnter`, or `onExit`. The default value is `true`.
|
48
48
|
# @param [Boolean] start_conference_on_enter Whether to start the conference when the participant joins, if it has not already started. Can be: `true` or `false` and the default is `true`. If `false` and the conference has not started, the participant is muted and hears background music until another participant starts the conference.
|
49
49
|
# @param [Boolean] end_conference_on_exit Whether to end the conference when the participant leaves. Can be: `true` or `false` and defaults to `false`.
|
50
|
-
# @param [String] wait_url The URL
|
50
|
+
# @param [String] wait_url The URL that Twilio calls using the `wait_method` before the conference has started. The URL may return an MP3 file, a WAV file, or a TwiML document. The default value is the URL of our standard hold music. If you do not want anything to play while waiting for the conference to start, specify an empty string by setting `wait_url` to `''`. For more details on the allowable verbs within the `waitUrl`, see the `waitUrl` attribute in the [<Conference> TwiML instruction](https://www.twilio.com/docs/voice/twiml/conference#attributes-waiturl).
|
51
51
|
# @param [String] wait_method The HTTP method we should use to call `wait_url`. Can be `GET` or `POST` and the default is `POST`. When using a static audio file, this should be `GET` so that we can cache the file.
|
52
52
|
# @param [Boolean] early_media Whether to allow an agent to hear the state of the outbound call, including ringing or disconnect messages. Can be: `true` or `false` and defaults to `true`.
|
53
53
|
# @param [String] max_participants The maximum number of participants in the conference. Can be a positive integer from `2` to `250`. The default value is `250`.
|
@@ -374,7 +374,7 @@ module Twilio
|
|
374
374
|
# @param [String] hold_method The HTTP method we should use to call `hold_url`. Can be: `GET` or `POST` and the default is `GET`.
|
375
375
|
# @param [String] announce_url The URL we call using the `announce_method` for an announcement to the participant. The URL may return an MP3 file, a WAV file, or a TwiML document that contains `<Play>`, `<Say>`, `<Pause>`, or `<Redirect>` verbs.
|
376
376
|
# @param [String] announce_method The HTTP method we should use to call `announce_url`. Can be: `GET` or `POST` and defaults to `POST`.
|
377
|
-
# @param [String] wait_url The URL
|
377
|
+
# @param [String] wait_url The URL that Twilio calls using the `wait_method` before the conference has started. The URL may return an MP3 file, a WAV file, or a TwiML document. The default value is the URL of our standard hold music. If you do not want anything to play while waiting for the conference to start, specify an empty string by setting `wait_url` to `''`. For more details on the allowable verbs within the `waitUrl`, see the `waitUrl` attribute in the [<Conference> TwiML instruction](https://www.twilio.com/docs/voice/twiml/conference#attributes-waiturl).
|
378
378
|
# @param [String] wait_method The HTTP method we should use to call `wait_url`. Can be `GET` or `POST` and the default is `POST`. When using a static audio file, this should be `GET` so that we can cache the file.
|
379
379
|
# @param [Boolean] beep_on_exit Whether to play a notification beep to the conference when the participant exits. Can be: `true` or `false`.
|
380
380
|
# @param [Boolean] end_conference_on_exit Whether to end the conference when the participant leaves. Can be: `true` or `false` and defaults to `false`.
|
@@ -633,7 +633,7 @@ module Twilio
|
|
633
633
|
# @param [String] hold_method The HTTP method we should use to call `hold_url`. Can be: `GET` or `POST` and the default is `GET`.
|
634
634
|
# @param [String] announce_url The URL we call using the `announce_method` for an announcement to the participant. The URL may return an MP3 file, a WAV file, or a TwiML document that contains `<Play>`, `<Say>`, `<Pause>`, or `<Redirect>` verbs.
|
635
635
|
# @param [String] announce_method The HTTP method we should use to call `announce_url`. Can be: `GET` or `POST` and defaults to `POST`.
|
636
|
-
# @param [String] wait_url The URL
|
636
|
+
# @param [String] wait_url The URL that Twilio calls using the `wait_method` before the conference has started. The URL may return an MP3 file, a WAV file, or a TwiML document. The default value is the URL of our standard hold music. If you do not want anything to play while waiting for the conference to start, specify an empty string by setting `wait_url` to `''`. For more details on the allowable verbs within the `waitUrl`, see the `waitUrl` attribute in the [<Conference> TwiML instruction](https://www.twilio.com/docs/voice/twiml/conference#attributes-waiturl).
|
637
637
|
# @param [String] wait_method The HTTP method we should use to call `wait_url`. Can be `GET` or `POST` and the default is `POST`. When using a static audio file, this should be `GET` so that we can cache the file.
|
638
638
|
# @param [Boolean] beep_on_exit Whether to play a notification beep to the conference when the participant exits. Can be: `true` or `false`.
|
639
639
|
# @param [Boolean] end_conference_on_exit Whether to end the conference when the participant leaves. Can be: `true` or `false` and defaults to `false`.
|
@@ -35,17 +35,20 @@ module Twilio
|
|
35
35
|
# @param [Object] channel The Interaction's channel.
|
36
36
|
# @param [Object] routing The Interaction's routing logic.
|
37
37
|
# @param [String] interaction_context_sid The Interaction context sid is used for adding a context lookup sid
|
38
|
+
# @param [String] webhook_ttid The unique identifier for Interaction level webhook
|
38
39
|
# @return [InteractionInstance] Created InteractionInstance
|
39
40
|
def create(
|
40
41
|
channel: nil,
|
41
42
|
routing: :unset,
|
42
|
-
interaction_context_sid: :unset
|
43
|
+
interaction_context_sid: :unset,
|
44
|
+
webhook_ttid: :unset
|
43
45
|
)
|
44
46
|
|
45
47
|
data = Twilio::Values.of({
|
46
48
|
'Channel' => Twilio.serialize_object(channel),
|
47
49
|
'Routing' => Twilio.serialize_object(routing),
|
48
50
|
'InteractionContextSid' => interaction_context_sid,
|
51
|
+
'WebhookTtid' => webhook_ttid,
|
49
52
|
})
|
50
53
|
|
51
54
|
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
@@ -106,6 +109,32 @@ module Twilio
|
|
106
109
|
)
|
107
110
|
end
|
108
111
|
|
112
|
+
##
|
113
|
+
# Update the InteractionInstance
|
114
|
+
# @param [String] webhook_ttid The unique identifier for Interaction level webhook
|
115
|
+
# @return [InteractionInstance] Updated InteractionInstance
|
116
|
+
def update(
|
117
|
+
webhook_ttid: :unset
|
118
|
+
)
|
119
|
+
|
120
|
+
data = Twilio::Values.of({
|
121
|
+
'WebhookTtid' => webhook_ttid,
|
122
|
+
})
|
123
|
+
|
124
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
125
|
+
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
|
130
|
+
payload = @version.update('POST', @uri, data: data, headers: headers)
|
131
|
+
InteractionInstance.new(
|
132
|
+
@version,
|
133
|
+
payload,
|
134
|
+
sid: @solution[:sid],
|
135
|
+
)
|
136
|
+
end
|
137
|
+
|
109
138
|
##
|
110
139
|
# Access the channels
|
111
140
|
# @return [InteractionChannelList]
|
@@ -190,6 +219,7 @@ module Twilio
|
|
190
219
|
'url' => payload['url'],
|
191
220
|
'links' => payload['links'],
|
192
221
|
'interaction_context_sid' => payload['interaction_context_sid'],
|
222
|
+
'webhook_ttid' => payload['webhook_ttid'],
|
193
223
|
}
|
194
224
|
|
195
225
|
# Context
|
@@ -244,6 +274,12 @@ module Twilio
|
|
244
274
|
@properties['interaction_context_sid']
|
245
275
|
end
|
246
276
|
|
277
|
+
##
|
278
|
+
# @return [String]
|
279
|
+
def webhook_ttid
|
280
|
+
@properties['webhook_ttid']
|
281
|
+
end
|
282
|
+
|
247
283
|
##
|
248
284
|
# Fetch the InteractionInstance
|
249
285
|
# @return [InteractionInstance] Fetched InteractionInstance
|
@@ -252,6 +288,19 @@ module Twilio
|
|
252
288
|
context.fetch
|
253
289
|
end
|
254
290
|
|
291
|
+
##
|
292
|
+
# Update the InteractionInstance
|
293
|
+
# @param [String] webhook_ttid The unique identifier for Interaction level webhook
|
294
|
+
# @return [InteractionInstance] Updated InteractionInstance
|
295
|
+
def update(
|
296
|
+
webhook_ttid: :unset
|
297
|
+
)
|
298
|
+
|
299
|
+
context.update(
|
300
|
+
webhook_ttid: webhook_ttid,
|
301
|
+
)
|
302
|
+
end
|
303
|
+
|
255
304
|
##
|
256
305
|
# Access the channels
|
257
306
|
# @return [channels] channels
|
@@ -0,0 +1,556 @@
|
|
1
|
+
##
|
2
|
+
# This code was generated by
|
3
|
+
# ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
|
4
|
+
# | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
|
5
|
+
# | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
|
6
|
+
#
|
7
|
+
# Twilio - Messaging
|
8
|
+
# This is the public Twilio REST API.
|
9
|
+
#
|
10
|
+
# NOTE: This class is auto generated by OpenAPI Generator.
|
11
|
+
# https://openapi-generator.tech
|
12
|
+
# Do not edit the class manually.
|
13
|
+
#
|
14
|
+
|
15
|
+
|
16
|
+
module Twilio
|
17
|
+
module REST
|
18
|
+
class Messaging < MessagingBase
|
19
|
+
class V2 < Version
|
20
|
+
class ChannelsSenderList < ListResource
|
21
|
+
|
22
|
+
class MessagingV2ChannelsSenderProfileEmails
|
23
|
+
# @param [email]: [String] The email of the sender.
|
24
|
+
# @param [label]: [String] The label of the sender.
|
25
|
+
attr_accessor :email, :label
|
26
|
+
def initialize(payload)
|
27
|
+
@email = payload["email"]
|
28
|
+
@label = payload["label"]
|
29
|
+
end
|
30
|
+
def to_json(options = {})
|
31
|
+
{
|
32
|
+
"email": @email,
|
33
|
+
"label": @label,
|
34
|
+
}.to_json(options)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
class MessagingV2ChannelsSenderProfileWebsites
|
39
|
+
# @param [label]: [String] The label of the sender.
|
40
|
+
# @param [website]: [String] The website of the sender.
|
41
|
+
attr_accessor :label, :website
|
42
|
+
def initialize(payload)
|
43
|
+
@label = payload["label"]
|
44
|
+
@website = payload["website"]
|
45
|
+
end
|
46
|
+
def to_json(options = {})
|
47
|
+
{
|
48
|
+
"label": @label,
|
49
|
+
"website": @website,
|
50
|
+
}.to_json(options)
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
class MessagingV2ChannelsSenderRequestsCreate
|
55
|
+
# @param [sender_id]: [String] The ID of this Sender prefixed with the channel, e.g., `whatsapp:E.164`
|
56
|
+
# @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
|
57
|
+
# @param [webhook]: [ChannelsSenderList.MessagingV2ChannelsSenderWebhook]
|
58
|
+
# @param [profile]: [ChannelsSenderList.MessagingV2ChannelsSenderProfile]
|
59
|
+
attr_accessor :sender_id, :configuration, :webhook, :profile
|
60
|
+
def initialize(payload)
|
61
|
+
@sender_id = payload["sender_id"]
|
62
|
+
@configuration = payload["configuration"]
|
63
|
+
@webhook = payload["webhook"]
|
64
|
+
@profile = payload["profile"]
|
65
|
+
end
|
66
|
+
def to_json(options = {})
|
67
|
+
{
|
68
|
+
"sender_id": @sender_id,
|
69
|
+
"configuration": @configuration,
|
70
|
+
"webhook": @webhook,
|
71
|
+
"profile": @profile,
|
72
|
+
}.to_json(options)
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
class MessagingV2ChannelsSenderRequestsUpdate
|
77
|
+
# @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
|
78
|
+
# @param [webhook]: [ChannelsSenderList.MessagingV2ChannelsSenderWebhook]
|
79
|
+
# @param [profile]: [ChannelsSenderList.MessagingV2ChannelsSenderProfile]
|
80
|
+
attr_accessor :configuration, :webhook, :profile
|
81
|
+
def initialize(payload)
|
82
|
+
@configuration = payload["configuration"]
|
83
|
+
@webhook = payload["webhook"]
|
84
|
+
@profile = payload["profile"]
|
85
|
+
end
|
86
|
+
def to_json(options = {})
|
87
|
+
{
|
88
|
+
"configuration": @configuration,
|
89
|
+
"webhook": @webhook,
|
90
|
+
"profile": @profile,
|
91
|
+
}.to_json(options)
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
|
96
|
+
class MessagingV2ChannelsSenderProfileEmails
|
97
|
+
# @param [email]: [String] The email of the sender.
|
98
|
+
# @param [label]: [String] The label of the sender.
|
99
|
+
attr_accessor :email, :label
|
100
|
+
def initialize(payload)
|
101
|
+
@email = payload["email"]
|
102
|
+
@label = payload["label"]
|
103
|
+
end
|
104
|
+
def to_json(options = {})
|
105
|
+
{
|
106
|
+
"email": @email,
|
107
|
+
"label": @label,
|
108
|
+
}.to_json(options)
|
109
|
+
end
|
110
|
+
end
|
111
|
+
|
112
|
+
class MessagingV2ChannelsSenderProfileWebsites
|
113
|
+
# @param [label]: [String] The label of the sender.
|
114
|
+
# @param [website]: [String] The website of the sender.
|
115
|
+
attr_accessor :label, :website
|
116
|
+
def initialize(payload)
|
117
|
+
@label = payload["label"]
|
118
|
+
@website = payload["website"]
|
119
|
+
end
|
120
|
+
def to_json(options = {})
|
121
|
+
{
|
122
|
+
"label": @label,
|
123
|
+
"website": @website,
|
124
|
+
}.to_json(options)
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
class MessagingV2ChannelsSenderRequestsCreate
|
129
|
+
# @param [sender_id]: [String] The ID of this Sender prefixed with the channel, e.g., `whatsapp:E.164`
|
130
|
+
# @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
|
131
|
+
# @param [webhook]: [ChannelsSenderList.MessagingV2ChannelsSenderWebhook]
|
132
|
+
# @param [profile]: [ChannelsSenderList.MessagingV2ChannelsSenderProfile]
|
133
|
+
attr_accessor :sender_id, :configuration, :webhook, :profile
|
134
|
+
def initialize(payload)
|
135
|
+
@sender_id = payload["sender_id"]
|
136
|
+
@configuration = payload["configuration"]
|
137
|
+
@webhook = payload["webhook"]
|
138
|
+
@profile = payload["profile"]
|
139
|
+
end
|
140
|
+
def to_json(options = {})
|
141
|
+
{
|
142
|
+
"sender_id": @sender_id,
|
143
|
+
"configuration": @configuration,
|
144
|
+
"webhook": @webhook,
|
145
|
+
"profile": @profile,
|
146
|
+
}.to_json(options)
|
147
|
+
end
|
148
|
+
end
|
149
|
+
|
150
|
+
class MessagingV2ChannelsSenderRequestsUpdate
|
151
|
+
# @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
|
152
|
+
# @param [webhook]: [ChannelsSenderList.MessagingV2ChannelsSenderWebhook]
|
153
|
+
# @param [profile]: [ChannelsSenderList.MessagingV2ChannelsSenderProfile]
|
154
|
+
attr_accessor :configuration, :webhook, :profile
|
155
|
+
def initialize(payload)
|
156
|
+
@configuration = payload["configuration"]
|
157
|
+
@webhook = payload["webhook"]
|
158
|
+
@profile = payload["profile"]
|
159
|
+
end
|
160
|
+
def to_json(options = {})
|
161
|
+
{
|
162
|
+
"configuration": @configuration,
|
163
|
+
"webhook": @webhook,
|
164
|
+
"profile": @profile,
|
165
|
+
}.to_json(options)
|
166
|
+
end
|
167
|
+
end
|
168
|
+
|
169
|
+
|
170
|
+
##
|
171
|
+
# Initialize the ChannelsSenderList
|
172
|
+
# @param [Version] version Version that contains the resource
|
173
|
+
# @return [ChannelsSenderList] ChannelsSenderList
|
174
|
+
def initialize(version)
|
175
|
+
super(version)
|
176
|
+
# Path Solution
|
177
|
+
@solution = { }
|
178
|
+
@uri = "/Channels/Senders"
|
179
|
+
|
180
|
+
end
|
181
|
+
##
|
182
|
+
# Create the ChannelsSenderInstance
|
183
|
+
# @param [MessagingV2ChannelsSenderRequestsCreate] messaging_v2_channels_sender_requests_create
|
184
|
+
# @return [ChannelsSenderInstance] Created ChannelsSenderInstance
|
185
|
+
def create(messaging_v2_channels_sender_requests_create: nil
|
186
|
+
)
|
187
|
+
|
188
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
189
|
+
headers['Content-Type'] = 'application/json'
|
190
|
+
|
191
|
+
|
192
|
+
|
193
|
+
|
194
|
+
payload = @version.create('POST', @uri, headers: headers, data: messaging_v2_channels_sender_requests_create.to_json)
|
195
|
+
ChannelsSenderInstance.new(
|
196
|
+
@version,
|
197
|
+
payload,
|
198
|
+
)
|
199
|
+
end
|
200
|
+
|
201
|
+
|
202
|
+
##
|
203
|
+
# Lists ChannelsSenderInstance records from the API as a list.
|
204
|
+
# Unlike stream(), this operation is eager and will load `limit` records into
|
205
|
+
# memory before returning.
|
206
|
+
# @param [String] channel
|
207
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
208
|
+
# guarantees to never return more than limit. Default is no limit
|
209
|
+
# @param [Integer] page_size Number of records to fetch per request, when
|
210
|
+
# not set will use the default value of 50 records. If no page_size is defined
|
211
|
+
# but a limit is defined, stream() will attempt to read the limit with the most
|
212
|
+
# efficient page size, i.e. min(limit, 1000)
|
213
|
+
# @return [Array] Array of up to limit results
|
214
|
+
def list(channel: nil, limit: nil, page_size: nil)
|
215
|
+
self.stream(
|
216
|
+
channel: channel,
|
217
|
+
limit: limit,
|
218
|
+
page_size: page_size
|
219
|
+
).entries
|
220
|
+
end
|
221
|
+
|
222
|
+
##
|
223
|
+
# Streams Instance records from the API as an Enumerable.
|
224
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
225
|
+
# is reached.
|
226
|
+
# @param [String] channel
|
227
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
228
|
+
# guarantees to never return more than limit. Default is no limit
|
229
|
+
# @param [Integer] page_size Number of records to fetch per request, when
|
230
|
+
# not set will use the default value of 50 records. If no page_size is defined
|
231
|
+
# but a limit is defined, stream() will attempt to read the limit with the most
|
232
|
+
# efficient page size, i.e. min(limit, 1000)
|
233
|
+
# @return [Enumerable] Enumerable that will yield up to limit results
|
234
|
+
def stream(channel: nil, limit: nil, page_size: nil)
|
235
|
+
limits = @version.read_limits(limit, page_size)
|
236
|
+
|
237
|
+
page = self.page(
|
238
|
+
channel: channel,
|
239
|
+
page_size: limits[:page_size], )
|
240
|
+
|
241
|
+
@version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
|
242
|
+
end
|
243
|
+
|
244
|
+
##
|
245
|
+
# When passed a block, yields ChannelsSenderInstance records from the API.
|
246
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
247
|
+
# is reached.
|
248
|
+
def each
|
249
|
+
limits = @version.read_limits
|
250
|
+
|
251
|
+
page = self.page(page_size: limits[:page_size], )
|
252
|
+
|
253
|
+
@version.stream(page,
|
254
|
+
limit: limits[:limit],
|
255
|
+
page_limit: limits[:page_limit]).each {|x| yield x}
|
256
|
+
end
|
257
|
+
|
258
|
+
##
|
259
|
+
# Retrieve a single page of ChannelsSenderInstance records from the API.
|
260
|
+
# Request is executed immediately.
|
261
|
+
# @param [String] channel
|
262
|
+
# @param [String] page_token PageToken provided by the API
|
263
|
+
# @param [Integer] page_number Page Number, this value is simply for client state
|
264
|
+
# @param [Integer] page_size Number of records to return, defaults to 50
|
265
|
+
# @return [Page] Page of ChannelsSenderInstance
|
266
|
+
def page(channel: nil, page_token: :unset, page_number: :unset, page_size: :unset)
|
267
|
+
params = Twilio::Values.of({
|
268
|
+
'Channel' => channel,
|
269
|
+
'PageToken' => page_token,
|
270
|
+
'Page' => page_number,
|
271
|
+
'PageSize' => page_size,
|
272
|
+
})
|
273
|
+
headers = Twilio::Values.of({})
|
274
|
+
|
275
|
+
|
276
|
+
|
277
|
+
response = @version.page('GET', @uri, params: params, headers: headers)
|
278
|
+
|
279
|
+
ChannelsSenderPage.new(@version, response, @solution)
|
280
|
+
end
|
281
|
+
|
282
|
+
##
|
283
|
+
# Retrieve a single page of ChannelsSenderInstance records from the API.
|
284
|
+
# Request is executed immediately.
|
285
|
+
# @param [String] target_url API-generated URL for the requested results page
|
286
|
+
# @return [Page] Page of ChannelsSenderInstance
|
287
|
+
def get_page(target_url)
|
288
|
+
response = @version.domain.request(
|
289
|
+
'GET',
|
290
|
+
target_url
|
291
|
+
)
|
292
|
+
ChannelsSenderPage.new(@version, response, @solution)
|
293
|
+
end
|
294
|
+
|
295
|
+
|
296
|
+
|
297
|
+
# Provide a user friendly representation
|
298
|
+
def to_s
|
299
|
+
'#<Twilio.Messaging.V2.ChannelsSenderList>'
|
300
|
+
end
|
301
|
+
end
|
302
|
+
|
303
|
+
|
304
|
+
class ChannelsSenderContext < InstanceContext
|
305
|
+
##
|
306
|
+
# Initialize the ChannelsSenderContext
|
307
|
+
# @param [Version] version Version that contains the resource
|
308
|
+
# @param [String] sid A 34 character string that uniquely identifies this Sender.
|
309
|
+
# @return [ChannelsSenderContext] ChannelsSenderContext
|
310
|
+
def initialize(version, sid)
|
311
|
+
super(version)
|
312
|
+
|
313
|
+
# Path Solution
|
314
|
+
@solution = { sid: sid, }
|
315
|
+
@uri = "/Channels/Senders/#{@solution[:sid]}"
|
316
|
+
|
317
|
+
|
318
|
+
end
|
319
|
+
##
|
320
|
+
# Delete the ChannelsSenderInstance
|
321
|
+
# @return [Boolean] True if delete succeeds, false otherwise
|
322
|
+
def delete
|
323
|
+
|
324
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
325
|
+
|
326
|
+
|
327
|
+
|
328
|
+
@version.delete('DELETE', @uri, headers: headers)
|
329
|
+
end
|
330
|
+
|
331
|
+
##
|
332
|
+
# Fetch the ChannelsSenderInstance
|
333
|
+
# @return [ChannelsSenderInstance] Fetched ChannelsSenderInstance
|
334
|
+
def fetch
|
335
|
+
|
336
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
337
|
+
|
338
|
+
|
339
|
+
|
340
|
+
|
341
|
+
|
342
|
+
payload = @version.fetch('GET', @uri, headers: headers)
|
343
|
+
ChannelsSenderInstance.new(
|
344
|
+
@version,
|
345
|
+
payload,
|
346
|
+
sid: @solution[:sid],
|
347
|
+
)
|
348
|
+
end
|
349
|
+
|
350
|
+
##
|
351
|
+
# Update the ChannelsSenderInstance
|
352
|
+
# @param [MessagingV2ChannelsSenderRequestsUpdate] messaging_v2_channels_sender_requests_update
|
353
|
+
# @return [ChannelsSenderInstance] Updated ChannelsSenderInstance
|
354
|
+
def update(messaging_v2_channels_sender_requests_update: :unset
|
355
|
+
)
|
356
|
+
|
357
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
358
|
+
headers['Content-Type'] = 'application/json'
|
359
|
+
|
360
|
+
|
361
|
+
|
362
|
+
|
363
|
+
payload = @version.update('POST', @uri, headers: headers, data: messaging_v2_channels_sender_requests_update.to_json)
|
364
|
+
ChannelsSenderInstance.new(
|
365
|
+
@version,
|
366
|
+
payload,
|
367
|
+
sid: @solution[:sid],
|
368
|
+
)
|
369
|
+
end
|
370
|
+
|
371
|
+
|
372
|
+
##
|
373
|
+
# Provide a user friendly representation
|
374
|
+
def to_s
|
375
|
+
context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
|
376
|
+
"#<Twilio.Messaging.V2.ChannelsSenderContext #{context}>"
|
377
|
+
end
|
378
|
+
|
379
|
+
##
|
380
|
+
# Provide a detailed, user friendly representation
|
381
|
+
def inspect
|
382
|
+
context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
|
383
|
+
"#<Twilio.Messaging.V2.ChannelsSenderContext #{context}>"
|
384
|
+
end
|
385
|
+
end
|
386
|
+
|
387
|
+
class ChannelsSenderPage < Page
|
388
|
+
##
|
389
|
+
# Initialize the ChannelsSenderPage
|
390
|
+
# @param [Version] version Version that contains the resource
|
391
|
+
# @param [Response] response Response from the API
|
392
|
+
# @param [Hash] solution Path solution for the resource
|
393
|
+
# @return [ChannelsSenderPage] ChannelsSenderPage
|
394
|
+
def initialize(version, response, solution)
|
395
|
+
super(version, response)
|
396
|
+
|
397
|
+
# Path Solution
|
398
|
+
@solution = solution
|
399
|
+
end
|
400
|
+
|
401
|
+
##
|
402
|
+
# Build an instance of ChannelsSenderInstance
|
403
|
+
# @param [Hash] payload Payload response from the API
|
404
|
+
# @return [ChannelsSenderInstance] ChannelsSenderInstance
|
405
|
+
def get_instance(payload)
|
406
|
+
ChannelsSenderInstance.new(@version, payload)
|
407
|
+
end
|
408
|
+
|
409
|
+
##
|
410
|
+
# Provide a user friendly representation
|
411
|
+
def to_s
|
412
|
+
'<Twilio.Messaging.V2.ChannelsSenderPage>'
|
413
|
+
end
|
414
|
+
end
|
415
|
+
class ChannelsSenderInstance < InstanceResource
|
416
|
+
##
|
417
|
+
# Initialize the ChannelsSenderInstance
|
418
|
+
# @param [Version] version Version that contains the resource
|
419
|
+
# @param [Hash] payload payload that contains response from Twilio
|
420
|
+
# @param [String] account_sid The SID of the
|
421
|
+
# {Account}[https://www.twilio.com/docs/iam/api/account] that created this ChannelsSender
|
422
|
+
# resource.
|
423
|
+
# @param [String] sid The SID of the Call resource to fetch.
|
424
|
+
# @return [ChannelsSenderInstance] ChannelsSenderInstance
|
425
|
+
def initialize(version, payload , sid: nil)
|
426
|
+
super(version)
|
427
|
+
|
428
|
+
# Marshaled Properties
|
429
|
+
@properties = {
|
430
|
+
'sid' => payload['sid'],
|
431
|
+
'status' => payload['status'],
|
432
|
+
'sender_id' => payload['sender_id'],
|
433
|
+
'configuration' => payload['configuration'],
|
434
|
+
'webhook' => payload['webhook'],
|
435
|
+
'profile' => payload['profile'],
|
436
|
+
'properties' => payload['properties'],
|
437
|
+
'offline_reasons' => payload['offline_reasons'],
|
438
|
+
'url' => payload['url'],
|
439
|
+
}
|
440
|
+
|
441
|
+
# Context
|
442
|
+
@instance_context = nil
|
443
|
+
@params = { 'sid' => sid || @properties['sid'] , }
|
444
|
+
end
|
445
|
+
|
446
|
+
##
|
447
|
+
# Generate an instance context for the instance, the context is capable of
|
448
|
+
# performing various actions. All instance actions are proxied to the context
|
449
|
+
# @return [ChannelsSenderContext] CallContext for this CallInstance
|
450
|
+
def context
|
451
|
+
unless @instance_context
|
452
|
+
@instance_context = ChannelsSenderContext.new(@version , @params['sid'])
|
453
|
+
end
|
454
|
+
@instance_context
|
455
|
+
end
|
456
|
+
|
457
|
+
##
|
458
|
+
# @return [String] A 34 character string that uniquely identifies this Sender.
|
459
|
+
def sid
|
460
|
+
@properties['sid']
|
461
|
+
end
|
462
|
+
|
463
|
+
##
|
464
|
+
# @return [Status]
|
465
|
+
def status
|
466
|
+
@properties['status']
|
467
|
+
end
|
468
|
+
|
469
|
+
##
|
470
|
+
# @return [String] The ID of this Sender prefixed with the channel, e.g., `whatsapp:E.164`
|
471
|
+
def sender_id
|
472
|
+
@properties['sender_id']
|
473
|
+
end
|
474
|
+
|
475
|
+
##
|
476
|
+
# @return [MessagingV2ChannelsSenderConfiguration]
|
477
|
+
def configuration
|
478
|
+
@properties['configuration']
|
479
|
+
end
|
480
|
+
|
481
|
+
##
|
482
|
+
# @return [MessagingV2ChannelsSenderWebhook]
|
483
|
+
def webhook
|
484
|
+
@properties['webhook']
|
485
|
+
end
|
486
|
+
|
487
|
+
##
|
488
|
+
# @return [MessagingV2ChannelsSenderProfile]
|
489
|
+
def profile
|
490
|
+
@properties['profile']
|
491
|
+
end
|
492
|
+
|
493
|
+
##
|
494
|
+
# @return [MessagingV2ChannelsSenderProperties]
|
495
|
+
def properties
|
496
|
+
@properties['properties']
|
497
|
+
end
|
498
|
+
|
499
|
+
##
|
500
|
+
# @return [Array<MessagingV2ChannelsSenderOfflineReasonsItems>] Reasons why the sender is offline., e.g., [{\"code\": \"21211400\", \"message\": \"Whatsapp business account is banned by provider {provider_name} | Credit line is assigned to another BSP\", \"more_info\": \"https://www.twilio.com/docs/errors/21211400\"}]
|
501
|
+
def offline_reasons
|
502
|
+
@properties['offline_reasons']
|
503
|
+
end
|
504
|
+
|
505
|
+
##
|
506
|
+
# @return [String] The URL of this resource, relative to `https://messaging.twilio.com`.
|
507
|
+
def url
|
508
|
+
@properties['url']
|
509
|
+
end
|
510
|
+
|
511
|
+
##
|
512
|
+
# Delete the ChannelsSenderInstance
|
513
|
+
# @return [Boolean] True if delete succeeds, false otherwise
|
514
|
+
def delete
|
515
|
+
|
516
|
+
context.delete
|
517
|
+
end
|
518
|
+
|
519
|
+
##
|
520
|
+
# Fetch the ChannelsSenderInstance
|
521
|
+
# @return [ChannelsSenderInstance] Fetched ChannelsSenderInstance
|
522
|
+
def fetch
|
523
|
+
|
524
|
+
context.fetch
|
525
|
+
end
|
526
|
+
|
527
|
+
##
|
528
|
+
# Update the ChannelsSenderInstance
|
529
|
+
# @param [MessagingV2ChannelsSenderRequestsUpdate] messaging_v2_channels_sender_requests_update
|
530
|
+
# @return [ChannelsSenderInstance] Updated ChannelsSenderInstance
|
531
|
+
def update(messaging_v2_channels_sender_requests_update: :unset
|
532
|
+
)
|
533
|
+
|
534
|
+
context.update(
|
535
|
+
)
|
536
|
+
end
|
537
|
+
|
538
|
+
##
|
539
|
+
# Provide a user friendly representation
|
540
|
+
def to_s
|
541
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
542
|
+
"<Twilio.Messaging.V2.ChannelsSenderInstance #{values}>"
|
543
|
+
end
|
544
|
+
|
545
|
+
##
|
546
|
+
# Provide a detailed, user friendly representation
|
547
|
+
def inspect
|
548
|
+
values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
|
549
|
+
"<Twilio.Messaging.V2.ChannelsSenderInstance #{values}>"
|
550
|
+
end
|
551
|
+
end
|
552
|
+
|
553
|
+
end
|
554
|
+
end
|
555
|
+
end
|
556
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
##
|
2
|
+
# This code was generated by
|
3
|
+
# ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
|
4
|
+
# | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
|
5
|
+
# | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
|
6
|
+
#
|
7
|
+
# Twilio - Messaging
|
8
|
+
# This is the public Twilio REST API.
|
9
|
+
#
|
10
|
+
# NOTE: This class is auto generated by OpenAPI Generator.
|
11
|
+
# https://openapi-generator.tech
|
12
|
+
# Do not edit the class manually.
|
13
|
+
#
|
14
|
+
|
15
|
+
module Twilio
|
16
|
+
module REST
|
17
|
+
class Messaging
|
18
|
+
class V2 < Version
|
19
|
+
##
|
20
|
+
# Initialize the V2 version of Messaging
|
21
|
+
def initialize(domain)
|
22
|
+
super
|
23
|
+
@version = 'v2'
|
24
|
+
@channels_senders = nil
|
25
|
+
end
|
26
|
+
|
27
|
+
##
|
28
|
+
# @param [String] sid A 34 character string that uniquely identifies this Sender.
|
29
|
+
# @return [Twilio::REST::Messaging::V2::ChannelsSenderContext] if sid was passed.
|
30
|
+
# @return [Twilio::REST::Messaging::V2::ChannelsSenderList]
|
31
|
+
def channels_senders(sid=:unset)
|
32
|
+
if sid.nil?
|
33
|
+
raise ArgumentError, 'sid cannot be nil'
|
34
|
+
end
|
35
|
+
if sid == :unset
|
36
|
+
@channels_senders ||= ChannelsSenderList.new self
|
37
|
+
else
|
38
|
+
ChannelsSenderContext.new(self, sid)
|
39
|
+
end
|
40
|
+
end
|
41
|
+
##
|
42
|
+
# Provide a user friendly representation
|
43
|
+
def to_s
|
44
|
+
'<Twilio::REST::Messaging::V2>';
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -22,16 +22,21 @@ module Twilio
|
|
22
22
|
@host = "messaging.twilio.com"
|
23
23
|
@port = 443
|
24
24
|
@v1 = nil
|
25
|
+
@v2 = nil
|
25
26
|
end
|
26
27
|
|
27
28
|
def v1
|
28
29
|
@v1 ||= Messaging::V1.new self
|
29
30
|
end
|
30
31
|
|
32
|
+
def v2
|
33
|
+
@v2 ||= Messaging::V2.new self
|
34
|
+
end
|
35
|
+
|
31
36
|
##
|
32
37
|
# Provide a user friendly representation
|
33
38
|
def to_s
|
34
|
-
'<Twilio::REST::Messaging
|
39
|
+
'<Twilio::REST::Messaging>';
|
35
40
|
end
|
36
41
|
end
|
37
42
|
end
|
@@ -17,12 +17,12 @@ module Twilio
|
|
17
17
|
module REST
|
18
18
|
class Numbers < NumbersBase
|
19
19
|
class V1 < Version
|
20
|
-
class
|
20
|
+
class PortingWebhookConfigurationFetchList < ListResource
|
21
21
|
|
22
22
|
##
|
23
|
-
# Initialize the
|
23
|
+
# Initialize the PortingWebhookConfigurationFetchList
|
24
24
|
# @param [Version] version Version that contains the resource
|
25
|
-
# @return [
|
25
|
+
# @return [PortingWebhookConfigurationFetchList] PortingWebhookConfigurationFetchList
|
26
26
|
def initialize(version)
|
27
27
|
super(version)
|
28
28
|
# Path Solution
|
@@ -31,8 +31,8 @@ module Twilio
|
|
31
31
|
|
32
32
|
end
|
33
33
|
##
|
34
|
-
# Fetch the
|
35
|
-
# @return [
|
34
|
+
# Fetch the PortingWebhookConfigurationFetchInstance
|
35
|
+
# @return [PortingWebhookConfigurationFetchInstance] Fetched PortingWebhookConfigurationFetchInstance
|
36
36
|
def fetch
|
37
37
|
|
38
38
|
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
@@ -42,7 +42,7 @@ module Twilio
|
|
42
42
|
|
43
43
|
|
44
44
|
payload = @version.fetch('GET', @uri, headers: headers)
|
45
|
-
|
45
|
+
PortingWebhookConfigurationFetchInstance.new(
|
46
46
|
@version,
|
47
47
|
payload,
|
48
48
|
)
|
@@ -53,17 +53,17 @@ module Twilio
|
|
53
53
|
|
54
54
|
# Provide a user friendly representation
|
55
55
|
def to_s
|
56
|
-
'#<Twilio.Numbers.V1.
|
56
|
+
'#<Twilio.Numbers.V1.PortingWebhookConfigurationFetchList>'
|
57
57
|
end
|
58
58
|
end
|
59
59
|
|
60
|
-
class
|
60
|
+
class PortingWebhookConfigurationFetchPage < Page
|
61
61
|
##
|
62
|
-
# Initialize the
|
62
|
+
# Initialize the PortingWebhookConfigurationFetchPage
|
63
63
|
# @param [Version] version Version that contains the resource
|
64
64
|
# @param [Response] response Response from the API
|
65
65
|
# @param [Hash] solution Path solution for the resource
|
66
|
-
# @return [
|
66
|
+
# @return [PortingWebhookConfigurationFetchPage] PortingWebhookConfigurationFetchPage
|
67
67
|
def initialize(version, response, solution)
|
68
68
|
super(version, response)
|
69
69
|
|
@@ -72,29 +72,29 @@ module Twilio
|
|
72
72
|
end
|
73
73
|
|
74
74
|
##
|
75
|
-
# Build an instance of
|
75
|
+
# Build an instance of PortingWebhookConfigurationFetchInstance
|
76
76
|
# @param [Hash] payload Payload response from the API
|
77
|
-
# @return [
|
77
|
+
# @return [PortingWebhookConfigurationFetchInstance] PortingWebhookConfigurationFetchInstance
|
78
78
|
def get_instance(payload)
|
79
|
-
|
79
|
+
PortingWebhookConfigurationFetchInstance.new(@version, payload)
|
80
80
|
end
|
81
81
|
|
82
82
|
##
|
83
83
|
# Provide a user friendly representation
|
84
84
|
def to_s
|
85
|
-
'<Twilio.Numbers.V1.
|
85
|
+
'<Twilio.Numbers.V1.PortingWebhookConfigurationFetchPage>'
|
86
86
|
end
|
87
87
|
end
|
88
|
-
class
|
88
|
+
class PortingWebhookConfigurationFetchInstance < InstanceResource
|
89
89
|
##
|
90
|
-
# Initialize the
|
90
|
+
# Initialize the PortingWebhookConfigurationFetchInstance
|
91
91
|
# @param [Version] version Version that contains the resource
|
92
92
|
# @param [Hash] payload payload that contains response from Twilio
|
93
93
|
# @param [String] account_sid The SID of the
|
94
|
-
# {Account}[https://www.twilio.com/docs/iam/api/account] that created this
|
94
|
+
# {Account}[https://www.twilio.com/docs/iam/api/account] that created this PortingWebhookConfigurationFetch
|
95
95
|
# resource.
|
96
96
|
# @param [String] sid The SID of the Call resource to fetch.
|
97
|
-
# @return [
|
97
|
+
# @return [PortingWebhookConfigurationFetchInstance] PortingWebhookConfigurationFetchInstance
|
98
98
|
def initialize(version, payload )
|
99
99
|
super(version)
|
100
100
|
|
@@ -149,13 +149,13 @@ module Twilio
|
|
149
149
|
##
|
150
150
|
# Provide a user friendly representation
|
151
151
|
def to_s
|
152
|
-
"<Twilio.Numbers.V1.
|
152
|
+
"<Twilio.Numbers.V1.PortingWebhookConfigurationFetchInstance>"
|
153
153
|
end
|
154
154
|
|
155
155
|
##
|
156
156
|
# Provide a detailed, user friendly representation
|
157
157
|
def inspect
|
158
|
-
"<Twilio.Numbers.V1.
|
158
|
+
"<Twilio.Numbers.V1.PortingWebhookConfigurationFetchInstance>"
|
159
159
|
end
|
160
160
|
end
|
161
161
|
|
@@ -28,8 +28,8 @@ module Twilio
|
|
28
28
|
@porting_portabilities = nil
|
29
29
|
@porting_webhook_configurations = nil
|
30
30
|
@porting_webhook_configurations_delete = nil
|
31
|
+
@porting_webhook_configuration_fetch = nil
|
31
32
|
@signing_request_configurations = nil
|
32
|
-
@webhook = nil
|
33
33
|
end
|
34
34
|
|
35
35
|
##
|
@@ -135,16 +135,16 @@ module Twilio
|
|
135
135
|
end
|
136
136
|
end
|
137
137
|
##
|
138
|
+
# @return [Twilio::REST::Numbers::V1::PortingWebhookConfigurationFetchList]
|
139
|
+
def porting_webhook_configuration_fetch
|
140
|
+
@porting_webhook_configuration_fetch ||= PortingWebhookConfigurationFetchList.new self
|
141
|
+
end
|
142
|
+
##
|
138
143
|
# @return [Twilio::REST::Numbers::V1::SigningRequestConfigurationList]
|
139
144
|
def signing_request_configurations
|
140
145
|
@signing_request_configurations ||= SigningRequestConfigurationList.new self
|
141
146
|
end
|
142
147
|
##
|
143
|
-
# @return [Twilio::REST::Numbers::V1::WebhookList]
|
144
|
-
def webhook
|
145
|
-
@webhook ||= WebhookList.new self
|
146
|
-
end
|
147
|
-
##
|
148
148
|
# Provide a user friendly representation
|
149
149
|
def to_s
|
150
150
|
'<Twilio::REST::Numbers::V1>';
|
@@ -39,9 +39,11 @@ module Twilio
|
|
39
39
|
# @param [String] status_callback_method The HTTP method Twilio should use to call `status_callback`. Can be `POST` or `GET`.
|
40
40
|
# @param [String] max_participants The maximum number of concurrent Participants allowed in the room. The maximum allowed value is 50.
|
41
41
|
# @param [Boolean] record_participants_on_connect Whether to start recording when Participants connect.
|
42
|
+
# @param [Boolean] transcribe_participants_on_connect Whether to start transcriptions when Participants connect. If TranscriptionsConfiguration is not provided, default settings will be used.
|
42
43
|
# @param [Array[VideoCodec]] video_codecs An array of the video codecs that are supported when publishing a track in the room. Can be: `VP8` and `H264`.
|
43
44
|
# @param [String] media_region The region for the Room's media server. Can be one of the [available Media Regions](https://www.twilio.com/docs/video/ip-addresses#group-rooms-media-servers).
|
44
45
|
# @param [Object] recording_rules A collection of Recording Rules that describe how to include or exclude matching tracks for recording
|
46
|
+
# @param [Object] transcriptions_configuration A collection of properties that describe transcription behaviour. If TranscribeParticipantsOnConnect is set to true and TranscriptionsConfiguration is not provided, default settings will be used.
|
45
47
|
# @param [Boolean] audio_only When set to true, indicates that the participants in the room will only publish audio. No video tracks will be allowed.
|
46
48
|
# @param [String] max_participant_duration The maximum number of seconds a Participant can be connected to the room. The maximum possible value is 86400 seconds (24 hours). The default is 14400 seconds (4 hours).
|
47
49
|
# @param [String] empty_room_timeout Configures how long (in minutes) a room will remain active after last participant leaves. Valid values range from 1 to 60 minutes (no fractions).
|
@@ -56,9 +58,11 @@ module Twilio
|
|
56
58
|
status_callback_method: :unset,
|
57
59
|
max_participants: :unset,
|
58
60
|
record_participants_on_connect: :unset,
|
61
|
+
transcribe_participants_on_connect: :unset,
|
59
62
|
video_codecs: :unset,
|
60
63
|
media_region: :unset,
|
61
64
|
recording_rules: :unset,
|
65
|
+
transcriptions_configuration: :unset,
|
62
66
|
audio_only: :unset,
|
63
67
|
max_participant_duration: :unset,
|
64
68
|
empty_room_timeout: :unset,
|
@@ -74,9 +78,11 @@ module Twilio
|
|
74
78
|
'StatusCallbackMethod' => status_callback_method,
|
75
79
|
'MaxParticipants' => max_participants,
|
76
80
|
'RecordParticipantsOnConnect' => record_participants_on_connect,
|
81
|
+
'TranscribeParticipantsOnConnect' => transcribe_participants_on_connect,
|
77
82
|
'VideoCodecs' => Twilio.serialize_list(video_codecs) { |e| e },
|
78
83
|
'MediaRegion' => media_region,
|
79
84
|
'RecordingRules' => Twilio.serialize_object(recording_rules),
|
85
|
+
'TranscriptionsConfiguration' => Twilio.serialize_object(transcriptions_configuration),
|
80
86
|
'AudioOnly' => audio_only,
|
81
87
|
'MaxParticipantDuration' => max_participant_duration,
|
82
88
|
'EmptyRoomTimeout' => empty_room_timeout,
|
data/lib/twilio-ruby/version.rb
CHANGED
data/twilio-ruby.gemspec
CHANGED
@@ -28,8 +28,6 @@ Gem::Specification.new do |spec|
|
|
28
28
|
spec.add_dependency('jwt', '>= 1.5', '< 3.0')
|
29
29
|
spec.add_dependency('nokogiri', '>= 1.6', '< 2.0')
|
30
30
|
spec.add_dependency('faraday', '>= 0.9', '< 3.0')
|
31
|
-
spec.add_dependency 'ostruct'
|
32
|
-
spec.add_dependency 'benchmark'
|
33
31
|
# Workaround for RBX <= 2.2.1, should be fixed in next version
|
34
32
|
spec.add_dependency('rubysl') if defined?(RUBY_ENGINE) && RUBY_ENGINE == 'rbx'
|
35
33
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: twilio-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 7.
|
4
|
+
version: 7.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Twilio API Team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-
|
11
|
+
date: 2025-05-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jwt
|
@@ -70,34 +70,6 @@ dependencies:
|
|
70
70
|
- - "<"
|
71
71
|
- !ruby/object:Gem::Version
|
72
72
|
version: '3.0'
|
73
|
-
- !ruby/object:Gem::Dependency
|
74
|
-
name: ostruct
|
75
|
-
requirement: !ruby/object:Gem::Requirement
|
76
|
-
requirements:
|
77
|
-
- - ">="
|
78
|
-
- !ruby/object:Gem::Version
|
79
|
-
version: '0'
|
80
|
-
type: :runtime
|
81
|
-
prerelease: false
|
82
|
-
version_requirements: !ruby/object:Gem::Requirement
|
83
|
-
requirements:
|
84
|
-
- - ">="
|
85
|
-
- !ruby/object:Gem::Version
|
86
|
-
version: '0'
|
87
|
-
- !ruby/object:Gem::Dependency
|
88
|
-
name: benchmark
|
89
|
-
requirement: !ruby/object:Gem::Requirement
|
90
|
-
requirements:
|
91
|
-
- - ">="
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
version: '0'
|
94
|
-
type: :runtime
|
95
|
-
prerelease: false
|
96
|
-
version_requirements: !ruby/object:Gem::Requirement
|
97
|
-
requirements:
|
98
|
-
- - ">="
|
99
|
-
- !ruby/object:Gem::Version
|
100
|
-
version: '0'
|
101
73
|
- !ruby/object:Gem::Dependency
|
102
74
|
name: bundler
|
103
75
|
requirement: !ruby/object:Gem::Requirement
|
@@ -627,6 +599,8 @@ files:
|
|
627
599
|
- lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb
|
628
600
|
- lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb
|
629
601
|
- lib/twilio-ruby/rest/messaging/v1/usecase.rb
|
602
|
+
- lib/twilio-ruby/rest/messaging/v2.rb
|
603
|
+
- lib/twilio-ruby/rest/messaging/v2/channels_sender.rb
|
630
604
|
- lib/twilio-ruby/rest/messaging_base.rb
|
631
605
|
- lib/twilio-ruby/rest/microvisor.rb
|
632
606
|
- lib/twilio-ruby/rest/microvisor/v1.rb
|
@@ -659,8 +633,8 @@ files:
|
|
659
633
|
- lib/twilio-ruby/rest/numbers/v1/porting_portability.rb
|
660
634
|
- lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb
|
661
635
|
- lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb
|
636
|
+
- lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_fetch.rb
|
662
637
|
- lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb
|
663
|
-
- lib/twilio-ruby/rest/numbers/v1/webhook.rb
|
664
638
|
- lib/twilio-ruby/rest/numbers/v2.rb
|
665
639
|
- lib/twilio-ruby/rest/numbers/v2/authorization_document.rb
|
666
640
|
- lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb
|