twilio-ruby 5.29.0 → 5.29.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +2 -0
  3. data/CHANGES.md +31 -0
  4. data/README.md +2 -2
  5. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +6 -2
  6. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +2 -1
  7. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +9 -7
  8. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +16 -0
  9. data/lib/twilio-ruby/rest/autopilot/v1/assistant/export_assistant.rb +222 -0
  10. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +18 -6
  11. data/lib/twilio-ruby/rest/insights.rb +5 -5
  12. data/lib/twilio-ruby/rest/insights/v1.rb +10 -10
  13. data/lib/twilio-ruby/rest/insights/v1/call.rb +242 -0
  14. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +278 -0
  15. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +268 -0
  16. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +305 -0
  17. data/lib/twilio-ruby/rest/preview.rb +5 -4
  18. data/lib/twilio-ruby/rest/preview/marketplace.rb +2 -4
  19. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +9 -11
  20. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +14 -11
  21. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +27 -30
  22. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +17 -14
  23. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +9 -5
  24. data/lib/twilio-ruby/twiml/voice_response.rb +42 -0
  25. data/lib/twilio-ruby/version.rb +1 -1
  26. data/spec/integration/api/v2010/account/call_spec.rb +263 -45
  27. data/spec/integration/autopilot/v1/assistant/export_assistant_spec.rb +49 -0
  28. data/spec/integration/autopilot/v1/assistant_spec.rb +8 -4
  29. data/spec/integration/flex_api/v1/flex_flow_spec.rb +8 -4
  30. data/spec/integration/insights/v1/call/event_spec.rb +171 -0
  31. data/spec/integration/insights/v1/call/metric_spec.rb +159 -0
  32. data/spec/integration/insights/v1/{summary_spec.rb → call/summary_spec.rb} +4 -2
  33. data/spec/integration/insights/v1/call_spec.rb +47 -0
  34. data/spec/integration/verify/v2/service/verification_spec.rb +36 -0
  35. metadata +17 -5
  36. data/lib/twilio-ruby/rest/insights/v1/summary.rb +0 -302
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 823cf1fc9cb2772927f2b02b9e2772a2a554743038cc3e64ebe61b7887edaec0
4
- data.tar.gz: c5e0d12701240a1327d0ab16f843fa4daa060c6254d1bb0f707f04f1a39568bd
3
+ metadata.gz: 4ec8654fb02b245c684ef8a655d33073b3e68d0ed6ca6ae480f37c7d45e24bb0
4
+ data.tar.gz: '09d78250aafbab55b56c9021c7a64543da01e79f0310fe166b53aa2a23605004'
5
5
  SHA512:
6
- metadata.gz: 9ba643864523acc543eff047c6254a83354f883466c052cf95193c4d83f552e0a4a50393e559e488cf56e8c69b6eb9d7b6ea9180ff8f50064b66b405f6086d44
7
- data.tar.gz: 2fd427e2e0b2a3237322a3c366dad641790bad79e44d4e36892cdd11f16d4c495720a7ba93e212ec6c9c207fdedf428f2aedf89c57847355d8f174b78d7d4d5e
6
+ metadata.gz: 93d6216dc5efe1f3aff1f56d1f48a76de195190a1206bdbdcedacff17049b5eb17359bd36575a0daf7d3a53af5b157856c3dad9a870c96e8cf599b0133e2e89b
7
+ data.tar.gz: 6bd94d4c90099bdfa8317ddf7194ad81ef61e59a1876a510b07f45459d55c9296175ee290b7b99b2908dde597038ff7b2f1c60fe7f16bf3d95f72b9e06d2277f
@@ -17,6 +17,8 @@ install: make install
17
17
  script: make test
18
18
 
19
19
  matrix:
20
+ allow_failures:
21
+ - rvm: ruby-head
20
22
  fast_finish: true
21
23
 
22
24
  deploy:
data/CHANGES.md CHANGED
@@ -1,6 +1,37 @@
1
1
  twilio-ruby changelog
2
2
  =====================
3
3
 
4
+ [2019-11-13] Version 5.29.1
5
+ ---------------------------
6
+ **Api**
7
+ - Make `persistent_action` parameter public
8
+ - Add `twiml` optional private parameter for call create
9
+
10
+ **Autopilot**
11
+ - Add Export resource to Autopilot Assistant.
12
+
13
+ **Flex**
14
+ - Added Integration.RetryCount attribute to Flex Flow
15
+ - Updating a Flex Flow `channel_type` options documentation
16
+
17
+ **Insights**
18
+ - Added edges to events and metrics
19
+ - Added new endpoint definitions for Events and Metrics
20
+
21
+ **Messaging**
22
+ - **create** support for sender registration
23
+ - **fetch** support for fetching a sender
24
+ - **update** support for sender verification
25
+
26
+ **Supersim**
27
+ - Add `Direction` filter parameter to list commands endpoint
28
+ - Allow filtering commands list by Sim Unique Name
29
+ - Add `Iccid` filter parameter to list sims endpoint
30
+
31
+ **Twiml**
32
+ - Add support for `<Refer>` verb
33
+
34
+
4
35
  [2019-10-30] Version 5.29.0
5
36
  ---------------------------
6
37
  **Library**
data/README.md CHANGED
@@ -30,13 +30,13 @@ in-line code documentation here in the library.
30
30
  To install using [Bundler][bundler] grab the latest stable version:
31
31
 
32
32
  ```ruby
33
- gem 'twilio-ruby', '~> 5.29.0'
33
+ gem 'twilio-ruby', '~> 5.29.1'
34
34
  ```
35
35
 
36
36
  To manually install `twilio-ruby` via [Rubygems][rubygems] simply gem install:
37
37
 
38
38
  ```bash
39
- gem install twilio-ruby -v 5.29.0
39
+ gem install twilio-ruby -v 5.29.1
40
40
  ```
41
41
 
42
42
  To build and install the development branch yourself from the latest source:
@@ -127,6 +127,9 @@ module Twilio
127
127
  # @param [String] machine_detection_silence_timeout The number of milliseconds of
128
128
  # initial silence after which an `unknown` AnsweredBy result will be returned.
129
129
  # Possible Values: 2000-10000. Default: 5000.
130
+ # @param [String] twiml TwiML instructions for the call Twilio will use without
131
+ # fetching Twiml from url parameter. If both `twiml` and `url` are provided then
132
+ # `twiml` parameter will be ignored.
130
133
  # @param [String] url The absolute URL that returns the TwiML instructions for the
131
134
  # call. We will call this URL using the `method` when the call connects. For more
132
135
  # information, see the [Url
@@ -135,7 +138,7 @@ module Twilio
135
138
  # @param [String] application_sid The SID of the Application resource that will
136
139
  # handle the call, if the call will be handled by an application.
137
140
  # @return [CallInstance] Newly created CallInstance
138
- def create(to: nil, from: nil, method: :unset, fallback_url: :unset, fallback_method: :unset, status_callback: :unset, status_callback_event: :unset, status_callback_method: :unset, send_digits: :unset, timeout: :unset, record: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, sip_auth_username: :unset, sip_auth_password: :unset, machine_detection: :unset, machine_detection_timeout: :unset, recording_status_callback_event: :unset, trim: :unset, caller_id: :unset, machine_detection_speech_threshold: :unset, machine_detection_speech_end_threshold: :unset, machine_detection_silence_timeout: :unset, url: :unset, application_sid: :unset)
141
+ def create(to: nil, from: nil, method: :unset, fallback_url: :unset, fallback_method: :unset, status_callback: :unset, status_callback_event: :unset, status_callback_method: :unset, send_digits: :unset, timeout: :unset, record: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, sip_auth_username: :unset, sip_auth_password: :unset, machine_detection: :unset, machine_detection_timeout: :unset, recording_status_callback_event: :unset, trim: :unset, caller_id: :unset, machine_detection_speech_threshold: :unset, machine_detection_speech_end_threshold: :unset, machine_detection_silence_timeout: :unset, twiml: :unset, url: :unset, application_sid: :unset)
139
142
  data = Twilio::Values.of({
140
143
  'To' => to,
141
144
  'From' => from,
@@ -163,6 +166,7 @@ module Twilio
163
166
  'MachineDetectionSpeechThreshold' => machine_detection_speech_threshold,
164
167
  'MachineDetectionSpeechEndThreshold' => machine_detection_speech_end_threshold,
165
168
  'MachineDetectionSilenceTimeout' => machine_detection_silence_timeout,
169
+ 'Twiml' => twiml,
166
170
  })
167
171
 
168
172
  payload = @version.create(
@@ -583,7 +587,7 @@ module Twilio
583
587
  'group_sid' => payload['group_sid'],
584
588
  'parent_call_sid' => payload['parent_call_sid'],
585
589
  'phone_number_sid' => payload['phone_number_sid'],
586
- 'price' => payload['price'] == nil ? payload['price'] : payload['price'].to_f,
590
+ 'price' => payload['price'],
587
591
  'price_unit' => payload['price_unit'],
588
592
  'sid' => payload['sid'],
589
593
  'start_time' => Twilio.deserialize_rfc2822(payload['start_time']),
@@ -35,7 +35,8 @@ module Twilio
35
35
  # @param [String] from The `from` phone number that will dial the new conference
36
36
  # participant. Can be a phone number or a client id.
37
37
  # @param [String] to The phone number, client id, or sip address to invite to the
38
- # conference.
38
+ # conference. [Custom
39
+ # parameters](https://www.twilio.com/docs/voice/api/conference-participant-resource#custom-parameters) may also be specified.
39
40
  # @param [String] status_callback The URL we should call using the
40
41
  # `status_callback_method` to send status information to your application.
41
42
  # @param [String] status_callback_method The HTTP method we should use to call
@@ -72,6 +72,7 @@ module Twilio
72
72
  # @param [Boolean] force_delivery Reserved
73
73
  # @param [Boolean] smart_encoded Whether to detect Unicode characters that have a
74
74
  # similar GSM-7 character and replace them. Can be: `true` or `false`.
75
+ # @param [String] persistent_action Rich actions for Channels Messages.
75
76
  # @param [String] from A Twilio phone number in
76
77
  # [E.164](https://www.twilio.com/docs/glossary/what-e164) format, an [alphanumeric
77
78
  # sender
@@ -88,14 +89,14 @@ module Twilio
88
89
  # 1,600 characters in length.
89
90
  # @param [String] media_url The URL of the media to send with the message. The
90
91
  # media can be of type `gif`, `png`, and `jpeg` and will be formatted correctly on
91
- # the recipient's device. [Other
92
- # types](https://www.twilio.com/docs/sms/accepted-mime-types) of media are also
93
- # accepted. The media size limit is 5MB. To send more than one image in the
94
- # message body, provide multiple `media_url` parameters in the POST request. You
95
- # can include up to 10 `media_url` parameters per message. You can send images in
96
- # an SMS message in only the US and Canada.
92
+ # the recipient's device. The media size limit is 5MB for supported file types
93
+ # (JPEG, PNG, GIF) and 500KB for [other
94
+ # types](https://www.twilio.com/docs/sms/accepted-mime-types) of accepted media.
95
+ # To send more than one image in the message body, provide multiple `media_url`
96
+ # parameters in the POST request. You can include up to 10 `media_url` parameters
97
+ # per message. You can send images in an SMS message in only the US and Canada.
97
98
  # @return [MessageInstance] Newly created MessageInstance
98
- def create(to: nil, status_callback: :unset, application_sid: :unset, max_price: :unset, provide_feedback: :unset, validity_period: :unset, force_delivery: :unset, smart_encoded: :unset, from: :unset, messaging_service_sid: :unset, body: :unset, media_url: :unset)
99
+ def create(to: nil, status_callback: :unset, application_sid: :unset, max_price: :unset, provide_feedback: :unset, validity_period: :unset, force_delivery: :unset, smart_encoded: :unset, persistent_action: :unset, from: :unset, messaging_service_sid: :unset, body: :unset, media_url: :unset)
99
100
  data = Twilio::Values.of({
100
101
  'To' => to,
101
102
  'From' => from,
@@ -109,6 +110,7 @@ module Twilio
109
110
  'ValidityPeriod' => validity_period,
110
111
  'ForceDelivery' => force_delivery,
111
112
  'SmartEncoded' => smart_encoded,
113
+ 'PersistentAction' => Twilio.serialize_list(persistent_action) { |e| e },
112
114
  })
113
115
 
114
116
  payload = @version.create(
@@ -209,6 +209,7 @@ module Twilio
209
209
  @defaults = nil
210
210
  @dialogues = nil
211
211
  @webhooks = nil
212
+ @export_assistant = nil
212
213
  end
213
214
 
214
215
  ##
@@ -398,6 +399,14 @@ module Twilio
398
399
  @webhooks
399
400
  end
400
401
 
402
+ ##
403
+ # Access the export_assistant
404
+ # @return [ExportAssistantList]
405
+ # @return [ExportAssistantContext]
406
+ def export_assistant
407
+ ExportAssistantContext.new(@version, @solution[:sid], )
408
+ end
409
+
401
410
  ##
402
411
  # Provide a user friendly representation
403
412
  def to_s
@@ -647,6 +656,13 @@ module Twilio
647
656
  context.webhooks
648
657
  end
649
658
 
659
+ ##
660
+ # Access the export_assistant
661
+ # @return [export_assistant] export_assistant
662
+ def export_assistant
663
+ context.export_assistant
664
+ end
665
+
650
666
  ##
651
667
  # Provide a user friendly representation
652
668
  def to_s
@@ -0,0 +1,222 @@
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 Autopilot < Domain
12
+ class V1 < Version
13
+ class AssistantContext < InstanceContext
14
+ ##
15
+ # PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact help@twilio.com.
16
+ class ExportAssistantList < ListResource
17
+ ##
18
+ # Initialize the ExportAssistantList
19
+ # @param [Version] version Version that contains the resource
20
+ # @param [String] assistant_sid The SID of the
21
+ # [Assistant](https://www.twilio.com/docs/autopilot/api/assistant) to export.
22
+ # @return [ExportAssistantList] ExportAssistantList
23
+ def initialize(version, assistant_sid: nil)
24
+ super(version)
25
+
26
+ # Path Solution
27
+ @solution = {assistant_sid: assistant_sid}
28
+ end
29
+
30
+ ##
31
+ # Provide a user friendly representation
32
+ def to_s
33
+ '#<Twilio.Autopilot.V1.ExportAssistantList>'
34
+ end
35
+ end
36
+
37
+ ##
38
+ # PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact help@twilio.com.
39
+ class ExportAssistantPage < Page
40
+ ##
41
+ # Initialize the ExportAssistantPage
42
+ # @param [Version] version Version that contains the resource
43
+ # @param [Response] response Response from the API
44
+ # @param [Hash] solution Path solution for the resource
45
+ # @return [ExportAssistantPage] ExportAssistantPage
46
+ def initialize(version, response, solution)
47
+ super(version, response)
48
+
49
+ # Path Solution
50
+ @solution = solution
51
+ end
52
+
53
+ ##
54
+ # Build an instance of ExportAssistantInstance
55
+ # @param [Hash] payload Payload response from the API
56
+ # @return [ExportAssistantInstance] ExportAssistantInstance
57
+ def get_instance(payload)
58
+ ExportAssistantInstance.new(@version, payload, assistant_sid: @solution[:assistant_sid], )
59
+ end
60
+
61
+ ##
62
+ # Provide a user friendly representation
63
+ def to_s
64
+ '<Twilio.Autopilot.V1.ExportAssistantPage>'
65
+ end
66
+ end
67
+
68
+ ##
69
+ # PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact help@twilio.com.
70
+ class ExportAssistantContext < InstanceContext
71
+ ##
72
+ # Initialize the ExportAssistantContext
73
+ # @param [Version] version Version that contains the resource
74
+ # @param [String] assistant_sid The SID of the
75
+ # [Assistant](https://www.twilio.com/docs/autopilot/api/assistant) to export.
76
+ # @return [ExportAssistantContext] ExportAssistantContext
77
+ def initialize(version, assistant_sid)
78
+ super(version)
79
+
80
+ # Path Solution
81
+ @solution = {assistant_sid: assistant_sid, }
82
+ @uri = "/Assistants/#{@solution[:assistant_sid]}/Export"
83
+ end
84
+
85
+ ##
86
+ # Fetch a ExportAssistantInstance
87
+ # @return [ExportAssistantInstance] Fetched ExportAssistantInstance
88
+ def fetch
89
+ params = Twilio::Values.of({})
90
+
91
+ payload = @version.fetch(
92
+ 'GET',
93
+ @uri,
94
+ params,
95
+ )
96
+
97
+ ExportAssistantInstance.new(@version, payload, assistant_sid: @solution[:assistant_sid], )
98
+ end
99
+
100
+ ##
101
+ # Provide a user friendly representation
102
+ def to_s
103
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
104
+ "#<Twilio.Autopilot.V1.ExportAssistantContext #{context}>"
105
+ end
106
+
107
+ ##
108
+ # Provide a detailed, user friendly representation
109
+ def inspect
110
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
111
+ "#<Twilio.Autopilot.V1.ExportAssistantContext #{context}>"
112
+ end
113
+ end
114
+
115
+ ##
116
+ # PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact help@twilio.com.
117
+ class ExportAssistantInstance < InstanceResource
118
+ ##
119
+ # Initialize the ExportAssistantInstance
120
+ # @param [Version] version Version that contains the resource
121
+ # @param [Hash] payload payload that contains response from Twilio
122
+ # @param [String] assistant_sid The SID of the
123
+ # [Assistant](https://www.twilio.com/docs/autopilot/api/assistant) to export.
124
+ # @return [ExportAssistantInstance] ExportAssistantInstance
125
+ def initialize(version, payload, assistant_sid: nil)
126
+ super(version)
127
+
128
+ # Marshaled Properties
129
+ @properties = {
130
+ 'account_sid' => payload['account_sid'],
131
+ 'assistant_sid' => payload['assistant_sid'],
132
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
133
+ 'status' => payload['status'],
134
+ 'error_code' => payload['error_code'] == nil ? payload['error_code'] : payload['error_code'].to_i,
135
+ 'url' => payload['url'],
136
+ 'schema' => payload['schema'],
137
+ }
138
+
139
+ # Context
140
+ @instance_context = nil
141
+ @params = {'assistant_sid' => assistant_sid, }
142
+ end
143
+
144
+ ##
145
+ # Generate an instance context for the instance, the context is capable of
146
+ # performing various actions. All instance actions are proxied to the context
147
+ # @return [ExportAssistantContext] ExportAssistantContext for this ExportAssistantInstance
148
+ def context
149
+ unless @instance_context
150
+ @instance_context = ExportAssistantContext.new(@version, @params['assistant_sid'], )
151
+ end
152
+ @instance_context
153
+ end
154
+
155
+ ##
156
+ # @return [String] The SID of the Account that created the resource
157
+ def account_sid
158
+ @properties['account_sid']
159
+ end
160
+
161
+ ##
162
+ # @return [String] The SID of the Assistant to export.
163
+ def assistant_sid
164
+ @properties['assistant_sid']
165
+ end
166
+
167
+ ##
168
+ # @return [Time] The RFC 2822 date and time in GMT when the resource was created
169
+ def date_created
170
+ @properties['date_created']
171
+ end
172
+
173
+ ##
174
+ # @return [export_assistant.Status] The status of the export
175
+ def status
176
+ @properties['status']
177
+ end
178
+
179
+ ##
180
+ # @return [String] More information about why the export failed, if `status` is `failed`
181
+ def error_code
182
+ @properties['error_code']
183
+ end
184
+
185
+ ##
186
+ # @return [String] The absolute URL of the Export resource.
187
+ def url
188
+ @properties['url']
189
+ end
190
+
191
+ ##
192
+ # @return [Hash] The JSON string that describes the requested Assistant.
193
+ def schema
194
+ @properties['schema']
195
+ end
196
+
197
+ ##
198
+ # Fetch a ExportAssistantInstance
199
+ # @return [ExportAssistantInstance] Fetched ExportAssistantInstance
200
+ def fetch
201
+ context.fetch
202
+ end
203
+
204
+ ##
205
+ # Provide a user friendly representation
206
+ def to_s
207
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
208
+ "<Twilio.Autopilot.V1.ExportAssistantInstance #{values}>"
209
+ end
210
+
211
+ ##
212
+ # Provide a detailed, user friendly representation
213
+ def inspect
214
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
215
+ "<Twilio.Autopilot.V1.ExportAssistantInstance #{values}>"
216
+ end
217
+ end
218
+ end
219
+ end
220
+ end
221
+ end
222
+ end
@@ -119,7 +119,7 @@ module Twilio
119
119
  # the FlexFlow resource.
120
120
  # @param [String] chat_service_sid The SID of the chat service.
121
121
  # @param [flex_flow.ChannelType] channel_type The channel type. Can be: `web`,
122
- # `facebook`, or `sms`.
122
+ # `facebook`, `sms`, `whatsapp`, `line` or `custom`.
123
123
  # @param [String] contact_identity The channel contact's Identity.
124
124
  # @param [Boolean] enabled Whether the new FlexFlow is enabled.
125
125
  # @param [flex_flow.IntegrationType] integration_type The integration type. Can
@@ -144,8 +144,11 @@ module Twilio
144
144
  # @param [Boolean] long_lived Whether new channels are long-lived.
145
145
  # @param [Boolean] janitor_enabled Boolean flag for enabling or disabling the
146
146
  # Janitor
147
+ # @param [String] integration_retry_count The number of times to retry the webhook
148
+ # if the first attempt fails. Can be an integer between 0 and 3, inclusive, and
149
+ # the default is 0.
147
150
  # @return [FlexFlowInstance] Newly created FlexFlowInstance
148
- def create(friendly_name: nil, chat_service_sid: nil, channel_type: nil, contact_identity: :unset, enabled: :unset, integration_type: :unset, integration_flow_sid: :unset, integration_url: :unset, integration_workspace_sid: :unset, integration_workflow_sid: :unset, integration_channel: :unset, integration_timeout: :unset, integration_priority: :unset, integration_creation_on_message: :unset, long_lived: :unset, janitor_enabled: :unset)
151
+ def create(friendly_name: nil, chat_service_sid: nil, channel_type: nil, contact_identity: :unset, enabled: :unset, integration_type: :unset, integration_flow_sid: :unset, integration_url: :unset, integration_workspace_sid: :unset, integration_workflow_sid: :unset, integration_channel: :unset, integration_timeout: :unset, integration_priority: :unset, integration_creation_on_message: :unset, long_lived: :unset, janitor_enabled: :unset, integration_retry_count: :unset)
149
152
  data = Twilio::Values.of({
150
153
  'FriendlyName' => friendly_name,
151
154
  'ChatServiceSid' => chat_service_sid,
@@ -163,6 +166,7 @@ module Twilio
163
166
  'Integration.CreationOnMessage' => integration_creation_on_message,
164
167
  'LongLived' => long_lived,
165
168
  'JanitorEnabled' => janitor_enabled,
169
+ 'Integration.RetryCount' => integration_retry_count,
166
170
  })
167
171
 
168
172
  payload = @version.create(
@@ -245,7 +249,7 @@ module Twilio
245
249
  # the FlexFlow resource.
246
250
  # @param [String] chat_service_sid The SID of the chat service.
247
251
  # @param [flex_flow.ChannelType] channel_type The channel type. Can be: `web`,
248
- # `facebook`, or `sms`.
252
+ # `facebook`, `sms`, `whatsapp`, `line` or `custom`.
249
253
  # @param [String] contact_identity The channel contact's Identity.
250
254
  # @param [Boolean] enabled Whether the FlexFlow is enabled.
251
255
  # @param [flex_flow.IntegrationType] integration_type The integration type. Can
@@ -270,8 +274,11 @@ module Twilio
270
274
  # @param [Boolean] long_lived Whether new channels created are long-lived.
271
275
  # @param [Boolean] janitor_enabled Boolean flag for enabling or disabling the
272
276
  # Janitor
277
+ # @param [String] integration_retry_count The number of times to retry the webhook
278
+ # if the first attempt fails. Can be an integer between 0 and 3, inclusive, and
279
+ # the default is 0.
273
280
  # @return [FlexFlowInstance] Updated FlexFlowInstance
274
- def update(friendly_name: :unset, chat_service_sid: :unset, channel_type: :unset, contact_identity: :unset, enabled: :unset, integration_type: :unset, integration_flow_sid: :unset, integration_url: :unset, integration_workspace_sid: :unset, integration_workflow_sid: :unset, integration_channel: :unset, integration_timeout: :unset, integration_priority: :unset, integration_creation_on_message: :unset, long_lived: :unset, janitor_enabled: :unset)
281
+ def update(friendly_name: :unset, chat_service_sid: :unset, channel_type: :unset, contact_identity: :unset, enabled: :unset, integration_type: :unset, integration_flow_sid: :unset, integration_url: :unset, integration_workspace_sid: :unset, integration_workflow_sid: :unset, integration_channel: :unset, integration_timeout: :unset, integration_priority: :unset, integration_creation_on_message: :unset, long_lived: :unset, janitor_enabled: :unset, integration_retry_count: :unset)
275
282
  data = Twilio::Values.of({
276
283
  'FriendlyName' => friendly_name,
277
284
  'ChatServiceSid' => chat_service_sid,
@@ -289,6 +296,7 @@ module Twilio
289
296
  'Integration.CreationOnMessage' => integration_creation_on_message,
290
297
  'LongLived' => long_lived,
291
298
  'JanitorEnabled' => janitor_enabled,
299
+ 'Integration.RetryCount' => integration_retry_count,
292
300
  })
293
301
 
294
302
  payload = @version.update(
@@ -463,7 +471,7 @@ module Twilio
463
471
  # the FlexFlow resource.
464
472
  # @param [String] chat_service_sid The SID of the chat service.
465
473
  # @param [flex_flow.ChannelType] channel_type The channel type. Can be: `web`,
466
- # `facebook`, or `sms`.
474
+ # `facebook`, `sms`, `whatsapp`, `line` or `custom`.
467
475
  # @param [String] contact_identity The channel contact's Identity.
468
476
  # @param [Boolean] enabled Whether the FlexFlow is enabled.
469
477
  # @param [flex_flow.IntegrationType] integration_type The integration type. Can
@@ -488,8 +496,11 @@ module Twilio
488
496
  # @param [Boolean] long_lived Whether new channels created are long-lived.
489
497
  # @param [Boolean] janitor_enabled Boolean flag for enabling or disabling the
490
498
  # Janitor
499
+ # @param [String] integration_retry_count The number of times to retry the webhook
500
+ # if the first attempt fails. Can be an integer between 0 and 3, inclusive, and
501
+ # the default is 0.
491
502
  # @return [FlexFlowInstance] Updated FlexFlowInstance
492
- def update(friendly_name: :unset, chat_service_sid: :unset, channel_type: :unset, contact_identity: :unset, enabled: :unset, integration_type: :unset, integration_flow_sid: :unset, integration_url: :unset, integration_workspace_sid: :unset, integration_workflow_sid: :unset, integration_channel: :unset, integration_timeout: :unset, integration_priority: :unset, integration_creation_on_message: :unset, long_lived: :unset, janitor_enabled: :unset)
503
+ def update(friendly_name: :unset, chat_service_sid: :unset, channel_type: :unset, contact_identity: :unset, enabled: :unset, integration_type: :unset, integration_flow_sid: :unset, integration_url: :unset, integration_workspace_sid: :unset, integration_workflow_sid: :unset, integration_channel: :unset, integration_timeout: :unset, integration_priority: :unset, integration_creation_on_message: :unset, long_lived: :unset, janitor_enabled: :unset, integration_retry_count: :unset)
493
504
  context.update(
494
505
  friendly_name: friendly_name,
495
506
  chat_service_sid: chat_service_sid,
@@ -507,6 +518,7 @@ module Twilio
507
518
  integration_creation_on_message: integration_creation_on_message,
508
519
  long_lived: long_lived,
509
520
  janitor_enabled: janitor_enabled,
521
+ integration_retry_count: integration_retry_count,
510
522
  )
511
523
  end
512
524