twilio-ruby 7.6.0 → 7.6.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5c84f48a652b0a72ebf4e7b6654813a215f94ed7
4
- data.tar.gz: '04808d5c430749e3a35f0b5098b250a0fab1d476'
3
+ metadata.gz: 1f321f5183bb9ab541e4744c4a2a213cc0946181
4
+ data.tar.gz: e7985074741cbbf76e57097bad449f6414438285
5
5
  SHA512:
6
- metadata.gz: 3e9e6004baa7bb7d91fbec42f3dfbe73d1bf094d5c7452cdc64e078a4510ee2909da7778209b37061b8331455ddd058604cdefb062394256ecd8d3ebb15bfa3c
7
- data.tar.gz: 11bb382b74ad1a2327aacfe4f1a061e8bce8056f0bb6c0b8cc425fb3d8769ec6db7c1cf258289ae8186c8113bf76a224bb4d81b95221c6bf64c3cc5d78f72bd7
6
+ metadata.gz: e1d83e1a70972240293d5515935f372a84a7bdf226da8f5529707f331abd74024039105156a3288f17d78ed2bb2862fb0e06aa1dde66d283b86dd7e8e6c88997
7
+ data.tar.gz: 6bd6e7ca9ea2d99e9863f3859aaea80ea3e015988be4f39d4951a06233fc52665715ca8e54b01899a8f22f47dc156ed00435de5f5942a0e52499f5f996359746
@@ -17,7 +17,7 @@ jobs:
17
17
  timeout-minutes: 20
18
18
  strategy:
19
19
  matrix:
20
- ruby: [ '2.4', '2.5', '2.6', '2.7', '3.0', '3.1', '3.2', 'ruby-head', 'jruby-9.3', 'jruby-9.4' ]
20
+ ruby: [ '2.4', '2.5', '2.6', '2.7', '3.0', '3.1', '3.2', 'jruby-9.3', 'jruby-9.4' ]
21
21
  steps:
22
22
  - name: Checkout twilio-ruby
23
23
  uses: actions/checkout@v3
@@ -40,7 +40,7 @@ jobs:
40
40
 
41
41
  - name: Run linter
42
42
  run: bundle exec rubocop -d --cache true --parallel
43
- if: ${{ matrix.ruby != '2.4' }}
43
+ if: ${{ matrix.ruby != '2.4'}}
44
44
 
45
45
  - name: Run Unit Tests
46
46
  run: make test
data/CHANGES.md CHANGED
@@ -1,6 +1,34 @@
1
1
  twilio-ruby changelog
2
2
  =====================
3
3
 
4
+ [2025-05-29] Version 7.6.2
5
+ --------------------------
6
+ **Library - Chore**
7
+ - [PR #749](https://github.com/twilio/twilio-ruby/pull/749): move from preview_iam to iam token endpoint. Thanks to [@manisha1997](https://github.com/manisha1997)!
8
+ - [PR #748](https://github.com/twilio/twilio-ruby/pull/748): removing ruby-head from CI. Thanks to [@tiwarishubham635](https://github.com/tiwarishubham635)!
9
+
10
+ **Api**
11
+ - Added several usage category enums to `usage_record` API
12
+
13
+ **Numbers**
14
+ - Update the porting documentation
15
+
16
+ **Verify**
17
+ - Update `ienum` type for Channels in Verify Attempts API
18
+
19
+
20
+ [2025-05-13] Version 7.6.1
21
+ --------------------------
22
+ **Accounts**
23
+ - Changes to add date_of_consent param in Bulk Consent API
24
+
25
+ **Api**
26
+ - Change `friendly_name`, `date_created` and `date_updated` properties to type `string`.
27
+
28
+ **Twiml**
29
+ - Update twiml definition for `<ConversationRelay>` and `<Assistant>`
30
+
31
+
4
32
  [2025-05-05] Version 7.6.0
5
33
  --------------------------
6
34
  **Library - Chore**
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.6.0'
42
+ gem 'twilio-ruby', '~> 7.6.2'
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.6.0
48
+ gem install twilio-ruby -v 7.6.2
49
49
  ```
50
50
 
51
51
  To build and install the development branch yourself from the latest source:
@@ -19,8 +19,8 @@ module Twilio
19
19
 
20
20
  def fetch_access_token
21
21
  client = Twilio::REST::Client.new
22
- token_instance = client.preview_iam.v1.token.create(grant_type: @grant_type,
23
- client_id: @client_id, client_secret: @client_secret)
22
+ token_instance = client.iam.v1.token.create(grant_type: @grant_type,
23
+ client_id: @client_id, client_secret: @client_secret)
24
24
  token_instance.access_token
25
25
  end
26
26
  end
@@ -19,8 +19,8 @@ module Twilio
19
19
 
20
20
  def fetch_access_token
21
21
  client = Twilio::REST::Client.new
22
- token_instance = client.preview_iam.v1.token.create(grant_type: @grant_type,
23
- client_id: @client_id, client_secret: @client_secret)
22
+ token_instance = client.iam.v1.token.create(grant_type: @grant_type,
23
+ client_id: @client_id, client_secret: @client_secret)
24
24
  token_instance.access_token
25
25
  end
26
26
  end
@@ -32,7 +32,7 @@ module Twilio
32
32
  end
33
33
  ##
34
34
  # Create the BulkConsentsInstance
35
- # @param [Array[Hash]] items This is a list of objects that describes a contact's opt-in status. Each object contains the following fields: `contact_id`, which must be a string representing phone number in [E.164 format](https://www.twilio.com/docs/glossary/what-e164); `correlation_id`, a unique 32-character UUID used to uniquely map the request item with the response item; `sender_id`, which can be either a valid messaging service SID or a from phone number; `status`, a string representing the consent status. Can be one of [`opt-in`, `opt-out`]; and `source`, a string indicating the medium through which the consent was collected. Can be one of [`website`, `offline`, `opt-in-message`, `opt-out-message`, `others`].
35
+ # @param [Array[Hash]] items This is a list of objects that describes a contact's opt-in status. Each object contains the following fields: `contact_id`, which must be a string representing phone number in [E.164 format](https://www.twilio.com/docs/glossary/what-e164); `correlation_id`, a unique 32-character UUID used to uniquely map the request item with the response item; `sender_id`, which can be either a valid messaging service SID or a from phone number; `status`, a string representing the consent status. Can be one of [`opt-in`, `opt-out`]; `source`, a string indicating the medium through which the consent was collected. Can be one of [`website`, `offline`, `opt-in-message`, `opt-out-message`, `others`]; `date_of_consent`, an optional datetime string field in ISO-8601 format that captures the exact date and time when the user gave or revoked consent. If not provided, it will be empty.
36
36
  # @return [BulkConsentsInstance] Created BulkConsentsInstance
37
37
  def create(
38
38
  items: nil
@@ -181,8 +181,8 @@ module Twilio
181
181
  'voice_fallback_method' => payload['voice_fallback_method'],
182
182
  'voice_fallback_url' => payload['voice_fallback_url'],
183
183
  'voice_caller_id_lookup' => payload['voice_caller_id_lookup'],
184
- 'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
185
- 'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
184
+ 'date_created' => payload['date_created'],
185
+ 'date_updated' => payload['date_updated'],
186
186
  'sms_fallback_method' => payload['sms_fallback_method'],
187
187
  'sms_fallback_url' => payload['sms_fallback_url'],
188
188
  'sms_method' => payload['sms_method'],
@@ -257,13 +257,13 @@ module Twilio
257
257
  end
258
258
 
259
259
  ##
260
- # @return [Time] The date and time in GMT that the resource was created specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
260
+ # @return [String] The date and time in GMT that the resource was created specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
261
261
  def date_created
262
262
  @properties['date_created']
263
263
  end
264
264
 
265
265
  ##
266
- # @return [Time] The date and time in GMT that the resource was last updated specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
266
+ # @return [String] The date and time in GMT that the resource was last updated specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
267
267
  def date_updated
268
268
  @properties['date_updated']
269
269
  end
@@ -299,7 +299,7 @@ module Twilio
299
299
  end
300
300
 
301
301
  ##
302
- # @return [Hash] The set of Boolean properties that indicates whether a phone number can receive calls or messages. Capabilities are `Voice`, `SMS`, and `MMS` and each capability can be: `true` or `false`.
302
+ # @return [ApiV2010AccountAddressDependentPhoneNumberCapabilities]
303
303
  def capabilities
304
304
  @properties['capabilities']
305
305
  end
@@ -48,7 +48,7 @@ module Twilio
48
48
  # @param [String] speech_model Recognition model used by the transcription engine, among those supported by the provider
49
49
  # @param [String] hints A Phrase contains words and phrase \\\"hints\\\" so that the speech recognition engine is more likely to recognize them.
50
50
  # @param [Boolean] enable_automatic_punctuation The provider will add punctuation to recognition result
51
- # @param [String] intelligence_service The SID or unique name of the [Voice Intelligence Service](https://www.twilio.com/docs/voice/intelligence/api/service-resource) for persisting transcripts and running post-call Language Operators .
51
+ # @param [String] intelligence_service The SID or unique name of the [Intelligence Service](https://www.twilio.com/docs/conversational-intelligence/api/service-resource) for persisting transcripts and running post-call Language Operators .
52
52
  # @return [TranscriptionInstance] Created TranscriptionInstance
53
53
  def create(
54
54
  name: :unset,
@@ -41,13 +41,15 @@ module Twilio
41
41
  # @param [url]: [String]
42
42
  # @param [phone]: [String]
43
43
  # @param [code]: [String]
44
- attr_accessor :type, :title, :url, :phone, :code
44
+ # @param [id]: [String]
45
+ attr_accessor :type, :title, :url, :phone, :code, :id
45
46
  def initialize(payload)
46
47
  @type = payload["type"]
47
48
  @title = payload["title"]
48
49
  @url = payload["url"]
49
50
  @phone = payload["phone"]
50
51
  @code = payload["code"]
52
+ @id = payload["id"]
51
53
  end
52
54
  def to_json(options = {})
53
55
  {
@@ -56,6 +58,7 @@ module Twilio
56
58
  "url": @url,
57
59
  "phone": @phone,
58
60
  "code": @code,
61
+ "id": @id,
59
62
  }.to_json(options)
60
63
  end
61
64
  end
@@ -397,17 +400,23 @@ module Twilio
397
400
  # @param [latitude]: [Float]
398
401
  # @param [longitude]: [Float]
399
402
  # @param [label]: [String]
400
- attr_accessor :latitude, :longitude, :label
403
+ # @param [id]: [String]
404
+ # @param [address]: [String]
405
+ attr_accessor :latitude, :longitude, :label, :id, :address
401
406
  def initialize(payload)
402
407
  @latitude = payload["latitude"]
403
408
  @longitude = payload["longitude"]
404
409
  @label = payload["label"]
410
+ @id = payload["id"]
411
+ @address = payload["address"]
405
412
  end
406
413
  def to_json(options = {})
407
414
  {
408
415
  "latitude": @latitude,
409
416
  "longitude": @longitude,
410
417
  "label": @label,
418
+ "id": @id,
419
+ "address": @address,
411
420
  }.to_json(options)
412
421
  end
413
422
  end
@@ -35,20 +35,17 @@ module Twilio
35
35
  # @param [String] description A human readable description for the Subscription **This value should not contain PII.**
36
36
  # @param [String] sink_sid The SID of the sink that events selected by this subscription should be sent to. Sink must be active for the subscription to be created.
37
37
  # @param [Array[Hash]] types An array of objects containing the subscribed Event Types
38
- # @param [Boolean] receive_events_from_subaccounts Receive events from all children accounts in the parent account subscription.
39
38
  # @return [SubscriptionInstance] Created SubscriptionInstance
40
39
  def create(
41
40
  description: nil,
42
41
  sink_sid: nil,
43
- types: nil,
44
- receive_events_from_subaccounts: :unset
42
+ types: nil
45
43
  )
46
44
 
47
45
  data = Twilio::Values.of({
48
46
  'Description' => description,
49
47
  'SinkSid' => sink_sid,
50
48
  'Types' => Twilio.serialize_list(types) { |e| Twilio.serialize_object(e) },
51
- 'ReceiveEventsFromSubaccounts' => receive_events_from_subaccounts,
52
49
  })
53
50
 
54
51
  headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
@@ -218,18 +215,15 @@ module Twilio
218
215
  # Update the SubscriptionInstance
219
216
  # @param [String] description A human readable description for the Subscription.
220
217
  # @param [String] sink_sid The SID of the sink that events selected by this subscription should be sent to. Sink must be active for the subscription to be created.
221
- # @param [Boolean] receive_events_from_subaccounts Receive events from all children accounts in the parent account subscription.
222
218
  # @return [SubscriptionInstance] Updated SubscriptionInstance
223
219
  def update(
224
220
  description: :unset,
225
- sink_sid: :unset,
226
- receive_events_from_subaccounts: :unset
221
+ sink_sid: :unset
227
222
  )
228
223
 
229
224
  data = Twilio::Values.of({
230
225
  'Description' => description,
231
226
  'SinkSid' => sink_sid,
232
- 'ReceiveEventsFromSubaccounts' => receive_events_from_subaccounts,
233
227
  })
234
228
 
235
229
  headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
@@ -332,7 +326,6 @@ module Twilio
332
326
  'sink_sid' => payload['sink_sid'],
333
327
  'url' => payload['url'],
334
328
  'links' => payload['links'],
335
- 'receive_events_from_subaccounts' => payload['receive_events_from_subaccounts'],
336
329
  }
337
330
 
338
331
  # Context
@@ -399,12 +392,6 @@ module Twilio
399
392
  @properties['links']
400
393
  end
401
394
 
402
- ##
403
- # @return [Boolean] Receive events from all children accounts in the parent account subscription.
404
- def receive_events_from_subaccounts
405
- @properties['receive_events_from_subaccounts']
406
- end
407
-
408
395
  ##
409
396
  # Delete the SubscriptionInstance
410
397
  # @return [Boolean] True if delete succeeds, false otherwise
@@ -425,18 +412,15 @@ module Twilio
425
412
  # Update the SubscriptionInstance
426
413
  # @param [String] description A human readable description for the Subscription.
427
414
  # @param [String] sink_sid The SID of the sink that events selected by this subscription should be sent to. Sink must be active for the subscription to be created.
428
- # @param [Boolean] receive_events_from_subaccounts Receive events from all children accounts in the parent account subscription.
429
415
  # @return [SubscriptionInstance] Updated SubscriptionInstance
430
416
  def update(
431
417
  description: :unset,
432
- sink_sid: :unset,
433
- receive_events_from_subaccounts: :unset
418
+ sink_sid: :unset
434
419
  )
435
420
 
436
421
  context.update(
437
422
  description: description,
438
423
  sink_sid: sink_sid,
439
- receive_events_from_subaccounts: receive_events_from_subaccounts,
440
424
  )
441
425
  end
442
426
 
@@ -19,38 +19,6 @@ module Twilio
19
19
  class V2 < Version
20
20
  class ChannelsSenderList < ListResource
21
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
22
  class MessagingV2ChannelsSenderRequestsCreate
55
23
  # @param [sender_id]: [String] The ID of this Sender prefixed with the channel, e.g., `whatsapp:E.164`
56
24
  # @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
@@ -93,38 +61,6 @@ module Twilio
93
61
  end
94
62
 
95
63
 
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
64
  class MessagingV2ChannelsSenderRequestsCreate
129
65
  # @param [sender_id]: [String] The ID of this Sender prefixed with the channel, e.g., `whatsapp:E.164`
130
66
  # @param [configuration]: [ChannelsSenderList.MessagingV2ChannelsSenderConfiguration]
@@ -220,19 +220,19 @@ module Twilio
220
220
  end
221
221
 
222
222
  ##
223
- # @return [Date] Target date to port the number. We cannot guarantee that this date will be honored by the other carriers, please work with Ops to get a confirmation of the firm order commitment (FOC) date. Expected format is ISO Local Date, example: ‘2011-12-03`. This date must be at least 7 days in the future for US ports and 10 days in the future for Japanese ports. (This value is only available for custom porting customers.)
223
+ # @return [Date] Target date to port the number. We cannot guarantee that this date will be honored by the other carriers, please work with Ops to get a confirmation of the firm order commitment (FOC) date. Expected format is ISO Local Date, example: ‘2011-12-03`. This date must be at least 7 days in the future for US ports and 10 days in the future for Japanese ports. We can't guarantee the exact date and time, as this depends on the losing carrier
224
224
  def target_port_in_date
225
225
  @properties['target_port_in_date']
226
226
  end
227
227
 
228
228
  ##
229
- # @return [String] The earliest time that the port should occur on the target port in date. Expected format is ISO Offset Time, example: ‘10:15:00-08:00'. (This value is only available for custom porting customers.)
229
+ # @return [String] The earliest time that the port should occur on the target port in date. Expected format is ISO Offset Time, example: ‘10:15:00-08:00'. We can't guarantee the exact date and time, as this depends on the losing carrier
230
230
  def target_port_in_time_range_start
231
231
  @properties['target_port_in_time_range_start']
232
232
  end
233
233
 
234
234
  ##
235
- # @return [String] The latest time that the port should occur on the target port in date. Expected format is ISO Offset Time, example: ‘10:15:00-08:00'. (This value is only available for custom porting customers.)
235
+ # @return [String] The latest time that the port should occur on the target port in date. Expected format is ISO Offset Time, example: ‘10:15:00-08:00'. We can't guarantee the exact date and time, as this depends on the losing carrier
236
236
  def target_port_in_time_range_end
237
237
  @properties['target_port_in_time_range_end']
238
238
  end
@@ -17,12 +17,12 @@ module Twilio
17
17
  module REST
18
18
  class Numbers < NumbersBase
19
19
  class V1 < Version
20
- class PortingWebhookConfigurationFetchList < ListResource
20
+ class WebhookList < ListResource
21
21
 
22
22
  ##
23
- # Initialize the PortingWebhookConfigurationFetchList
23
+ # Initialize the WebhookList
24
24
  # @param [Version] version Version that contains the resource
25
- # @return [PortingWebhookConfigurationFetchList] PortingWebhookConfigurationFetchList
25
+ # @return [WebhookList] WebhookList
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 PortingWebhookConfigurationFetchInstance
35
- # @return [PortingWebhookConfigurationFetchInstance] Fetched PortingWebhookConfigurationFetchInstance
34
+ # Fetch the WebhookInstance
35
+ # @return [WebhookInstance] Fetched WebhookInstance
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
- PortingWebhookConfigurationFetchInstance.new(
45
+ WebhookInstance.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.PortingWebhookConfigurationFetchList>'
56
+ '#<Twilio.Numbers.V1.WebhookList>'
57
57
  end
58
58
  end
59
59
 
60
- class PortingWebhookConfigurationFetchPage < Page
60
+ class WebhookPage < Page
61
61
  ##
62
- # Initialize the PortingWebhookConfigurationFetchPage
62
+ # Initialize the WebhookPage
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 [PortingWebhookConfigurationFetchPage] PortingWebhookConfigurationFetchPage
66
+ # @return [WebhookPage] WebhookPage
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 PortingWebhookConfigurationFetchInstance
75
+ # Build an instance of WebhookInstance
76
76
  # @param [Hash] payload Payload response from the API
77
- # @return [PortingWebhookConfigurationFetchInstance] PortingWebhookConfigurationFetchInstance
77
+ # @return [WebhookInstance] WebhookInstance
78
78
  def get_instance(payload)
79
- PortingWebhookConfigurationFetchInstance.new(@version, payload)
79
+ WebhookInstance.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.PortingWebhookConfigurationFetchPage>'
85
+ '<Twilio.Numbers.V1.WebhookPage>'
86
86
  end
87
87
  end
88
- class PortingWebhookConfigurationFetchInstance < InstanceResource
88
+ class WebhookInstance < InstanceResource
89
89
  ##
90
- # Initialize the PortingWebhookConfigurationFetchInstance
90
+ # Initialize the WebhookInstance
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 PortingWebhookConfigurationFetch
94
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Webhook
95
95
  # resource.
96
96
  # @param [String] sid The SID of the Call resource to fetch.
97
- # @return [PortingWebhookConfigurationFetchInstance] PortingWebhookConfigurationFetchInstance
97
+ # @return [WebhookInstance] WebhookInstance
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.PortingWebhookConfigurationFetchInstance>"
152
+ "<Twilio.Numbers.V1.WebhookInstance>"
153
153
  end
154
154
 
155
155
  ##
156
156
  # Provide a detailed, user friendly representation
157
157
  def inspect
158
- "<Twilio.Numbers.V1.PortingWebhookConfigurationFetchInstance>"
158
+ "<Twilio.Numbers.V1.WebhookInstance>"
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
32
31
  @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
- ##
143
138
  # @return [Twilio::REST::Numbers::V1::SigningRequestConfigurationList]
144
139
  def signing_request_configurations
145
140
  @signing_request_configurations ||= SigningRequestConfigurationList.new self
146
141
  end
147
142
  ##
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>';
@@ -580,7 +580,7 @@ module Twilio
580
580
  end
581
581
 
582
582
  ##
583
- # @return [String] The name that appears in the body of your verification messages. It can be up to 30 characters long and can include letters, numbers, spaces, dashes, underscores. Phone numbers, special characters or links are NOT allowed. **This value should not contain PII.**
583
+ # @return [String] The name that appears in the body of your verification messages. It can be up to 30 characters long and can include letters, numbers, spaces, dashes, underscores. Phone numbers, special characters or links are NOT allowed. It cannot contain more than 4 (consecutive or non-consecutive) digits. **This value should not contain PII.**
584
584
  def friendly_name
585
585
  @properties['friendly_name']
586
586
  end
@@ -194,7 +194,7 @@ module Twilio
194
194
  end
195
195
 
196
196
  ##
197
- # @return [Float] Percentage of the confirmed messages over the total, defined by (total_converted/total_attempts)*100.
197
+ # @return [String] Percentage of the confirmed messages over the total, defined by (total_converted/total_attempts)*100.
198
198
  def conversion_rate_percentage
199
199
  @properties['conversion_rate_percentage']
200
200
  end
@@ -1978,13 +1978,18 @@ module Twilio
1978
1978
  # dtmf_detection:: Whether DTMF tones should be detected and reported in speech transcription
1979
1979
  # welcome_greeting:: The sentence to be played automatically when the session is connected
1980
1980
  # partial_prompts:: Whether partial prompts should be reported to WebSocket server before the caller finishes speaking
1981
- # interruptible:: Whether caller's speaking can interrupt the play of text-to-speech
1982
- # interrupt_by_dtmf:: Whether DTMF tone can interrupt the play of text-to-speech
1983
- # welcome_greeting_interruptible:: Whether caller's speaking can interrupt the welcome greeting
1984
- # debug:: Whether debugging on the session is enabled
1985
- # keyword_args:: additional attributes
1986
- def conversation_relay(url: nil, language: nil, tts_language: nil, transcription_language: nil, tts_provider: nil, voice: nil, transcription_provider: nil, speech_model: nil, profanity_filter: nil, dtmf_detection: nil, welcome_greeting: nil, partial_prompts: nil, interruptible: nil, interrupt_by_dtmf: nil, welcome_greeting_interruptible: nil, debug: nil, **keyword_args)
1987
- conversation_relay = ConversationRelay.new(url: url, language: language, tts_language: tts_language, transcription_language: transcription_language, tts_provider: tts_provider, voice: voice, transcription_provider: transcription_provider, speech_model: speech_model, profanity_filter: profanity_filter, dtmf_detection: dtmf_detection, welcome_greeting: welcome_greeting, partial_prompts: partial_prompts, interruptible: interruptible, interrupt_by_dtmf: interrupt_by_dtmf, welcome_greeting_interruptible: welcome_greeting_interruptible, debug: debug, **keyword_args)
1981
+ # welcome_greeting_interruptible:: "Whether and how the input from a caller, such as speaking or DTMF can interrupt the welcome greeting
1982
+ # interruptible:: Whether and how the input from a caller, such as speaking or DTMF can interrupt the play of text-to-speech
1983
+ # preemptible:: Whether subsequent text-to-speech or play media can interrupt the on-going play of text-to-speech or media
1984
+ # hints:: Phrases to help better accuracy in speech recognition of these pharases
1985
+ # intelligence_service:: The Conversational Intelligence Service id or unique name to be used for the session
1986
+ # report_input_during_agent_speech:: Whether prompts should be reported to WebSocket server when text-to-speech playing and interrupt is disabled
1987
+ # elevenlabs_text_normalization:: When using ElevenLabs as TTS provider, this parameter allows you to enable or disable its text normalization feature
1988
+ # interrupt_sensitivity:: Set the sensitivity of the interrupt feature for speech. The value can be low, medium, or high
1989
+ # debug:: Multiple debug options to be used for troubleshooting
1990
+ # keyword_args:: additional attributes
1991
+ def conversation_relay(url: nil, language: nil, tts_language: nil, transcription_language: nil, tts_provider: nil, voice: nil, transcription_provider: nil, speech_model: nil, profanity_filter: nil, dtmf_detection: nil, welcome_greeting: nil, partial_prompts: nil, welcome_greeting_interruptible: nil, interruptible: nil, preemptible: nil, hints: nil, intelligence_service: nil, report_input_during_agent_speech: nil, elevenlabs_text_normalization: nil, interrupt_sensitivity: nil, debug: nil, **keyword_args)
1992
+ conversation_relay = ConversationRelay.new(url: url, language: language, tts_language: tts_language, transcription_language: transcription_language, tts_provider: tts_provider, voice: voice, transcription_provider: transcription_provider, speech_model: speech_model, profanity_filter: profanity_filter, dtmf_detection: dtmf_detection, welcome_greeting: welcome_greeting, partial_prompts: partial_prompts, welcome_greeting_interruptible: welcome_greeting_interruptible, interruptible: interruptible, preemptible: preemptible, hints: hints, intelligence_service: intelligence_service, report_input_during_agent_speech: report_input_during_agent_speech, elevenlabs_text_normalization: elevenlabs_text_normalization, interrupt_sensitivity: interrupt_sensitivity, debug: debug, **keyword_args)
1988
1993
 
1989
1994
  yield(conversation_relay) if block_given?
1990
1995
  append(conversation_relay)
@@ -2004,13 +2009,18 @@ module Twilio
2004
2009
  # dtmf_detection:: Whether DTMF tones should be detected and reported in speech transcription
2005
2010
  # welcome_greeting:: The sentence to be played automatically when the session is connected
2006
2011
  # partial_prompts:: Whether partial prompts should be reported to WebSocket server before the caller finishes speaking
2007
- # interruptible:: Whether caller's speaking can interrupt the play of text-to-speech
2008
- # interrupt_by_dtmf:: Whether DTMF tone can interrupt the play of text-to-speech
2009
- # welcome_greeting_interruptible:: Whether caller's speaking can interrupt the welcome greeting
2010
- # debug:: Whether debugging on the session is enabled
2011
- # keyword_args:: additional attributes
2012
- def assistant(id: nil, language: nil, tts_language: nil, transcription_language: nil, tts_provider: nil, voice: nil, transcription_provider: nil, speech_model: nil, profanity_filter: nil, dtmf_detection: nil, welcome_greeting: nil, partial_prompts: nil, interruptible: nil, interrupt_by_dtmf: nil, welcome_greeting_interruptible: nil, debug: nil, **keyword_args)
2013
- assistant = Assistant.new(id: id, language: language, tts_language: tts_language, transcription_language: transcription_language, tts_provider: tts_provider, voice: voice, transcription_provider: transcription_provider, speech_model: speech_model, profanity_filter: profanity_filter, dtmf_detection: dtmf_detection, welcome_greeting: welcome_greeting, partial_prompts: partial_prompts, interruptible: interruptible, interrupt_by_dtmf: interrupt_by_dtmf, welcome_greeting_interruptible: welcome_greeting_interruptible, debug: debug, **keyword_args)
2012
+ # welcome_greeting_interruptible:: "Whether and how the input from a caller, such as speaking or DTMF can interrupt the welcome greeting
2013
+ # interruptible:: Whether and how the input from a caller, such as speaking or DTMF can interrupt the play of text-to-speech
2014
+ # preemptible:: Whether subsequent text-to-speech or play media can interrupt the on-going play of text-to-speech or media
2015
+ # hints:: Phrases to help better accuracy in speech recognition of these pharases
2016
+ # intelligence_service:: The Conversational Intelligence Service id or unique name to be used for the session
2017
+ # report_input_during_agent_speech:: Whether prompts should be reported to WebSocket server when text-to-speech playing and interrupt is disabled
2018
+ # elevenlabs_text_normalization:: When using ElevenLabs as TTS provider, this parameter allows you to enable or disable its text normalization feature
2019
+ # interrupt_sensitivity:: Set the sensitivity of the interrupt feature for speech. The value can be low, medium, or high
2020
+ # debug:: Multiple debug options to be used for troubleshooting
2021
+ # keyword_args:: additional attributes
2022
+ def assistant(id: nil, language: nil, tts_language: nil, transcription_language: nil, tts_provider: nil, voice: nil, transcription_provider: nil, speech_model: nil, profanity_filter: nil, dtmf_detection: nil, welcome_greeting: nil, partial_prompts: nil, welcome_greeting_interruptible: nil, interruptible: nil, preemptible: nil, hints: nil, intelligence_service: nil, report_input_during_agent_speech: nil, elevenlabs_text_normalization: nil, interrupt_sensitivity: nil, debug: nil, **keyword_args)
2023
+ assistant = Assistant.new(id: id, language: language, tts_language: tts_language, transcription_language: transcription_language, tts_provider: tts_provider, voice: voice, transcription_provider: transcription_provider, speech_model: speech_model, profanity_filter: profanity_filter, dtmf_detection: dtmf_detection, welcome_greeting: welcome_greeting, partial_prompts: partial_prompts, welcome_greeting_interruptible: welcome_greeting_interruptible, interruptible: interruptible, preemptible: preemptible, hints: hints, intelligence_service: intelligence_service, report_input_during_agent_speech: report_input_during_agent_speech, elevenlabs_text_normalization: elevenlabs_text_normalization, interrupt_sensitivity: interrupt_sensitivity, debug: debug, **keyword_args)
2014
2024
 
2015
2025
  yield(assistant) if block_given?
2016
2026
  append(assistant)
@@ -1,3 +1,3 @@
1
1
  module Twilio
2
- VERSION = '7.6.0'
2
+ VERSION = '7.6.2'
3
3
  end
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.6.0
4
+ version: 7.6.2
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-05-05 00:00:00.000000000 Z
11
+ date: 2025-05-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jwt
@@ -633,8 +633,8 @@ files:
633
633
  - lib/twilio-ruby/rest/numbers/v1/porting_portability.rb
634
634
  - lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb
635
635
  - lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb
636
- - lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_fetch.rb
637
636
  - lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb
637
+ - lib/twilio-ruby/rest/numbers/v1/webhook.rb
638
638
  - lib/twilio-ruby/rest/numbers/v2.rb
639
639
  - lib/twilio-ruby/rest/numbers/v2/authorization_document.rb
640
640
  - lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb