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.
- checksums.yaml +4 -4
- data/.travis.yml +2 -0
- data/CHANGES.md +31 -0
- data/README.md +2 -2
- data/lib/twilio-ruby/rest/api/v2010/account/call.rb +6 -2
- data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +2 -1
- data/lib/twilio-ruby/rest/api/v2010/account/message.rb +9 -7
- data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +16 -0
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/export_assistant.rb +222 -0
- data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +18 -6
- data/lib/twilio-ruby/rest/insights.rb +5 -5
- data/lib/twilio-ruby/rest/insights/v1.rb +10 -10
- data/lib/twilio-ruby/rest/insights/v1/call.rb +242 -0
- data/lib/twilio-ruby/rest/insights/v1/call/event.rb +278 -0
- data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +268 -0
- data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +305 -0
- data/lib/twilio-ruby/rest/preview.rb +5 -4
- data/lib/twilio-ruby/rest/preview/marketplace.rb +2 -4
- data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +9 -11
- data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +14 -11
- data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +27 -30
- data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +17 -14
- data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +9 -5
- data/lib/twilio-ruby/twiml/voice_response.rb +42 -0
- data/lib/twilio-ruby/version.rb +1 -1
- data/spec/integration/api/v2010/account/call_spec.rb +263 -45
- data/spec/integration/autopilot/v1/assistant/export_assistant_spec.rb +49 -0
- data/spec/integration/autopilot/v1/assistant_spec.rb +8 -4
- data/spec/integration/flex_api/v1/flex_flow_spec.rb +8 -4
- data/spec/integration/insights/v1/call/event_spec.rb +171 -0
- data/spec/integration/insights/v1/call/metric_spec.rb +159 -0
- data/spec/integration/insights/v1/{summary_spec.rb → call/summary_spec.rb} +4 -2
- data/spec/integration/insights/v1/call_spec.rb +47 -0
- data/spec/integration/verify/v2/service/verification_spec.rb +36 -0
- metadata +17 -5
- data/lib/twilio-ruby/rest/insights/v1/summary.rb +0 -302
@@ -0,0 +1,268 @@
|
|
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 Insights < Domain
|
12
|
+
class V1 < Version
|
13
|
+
class CallContext < 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 MetricList < ListResource
|
17
|
+
##
|
18
|
+
# Initialize the MetricList
|
19
|
+
# @param [Version] version Version that contains the resource
|
20
|
+
# @param [String] call_sid The call_sid
|
21
|
+
# @return [MetricList] MetricList
|
22
|
+
def initialize(version, call_sid: nil)
|
23
|
+
super(version)
|
24
|
+
|
25
|
+
# Path Solution
|
26
|
+
@solution = {call_sid: call_sid}
|
27
|
+
@uri = "/Voice/#{@solution[:call_sid]}/Metrics"
|
28
|
+
end
|
29
|
+
|
30
|
+
##
|
31
|
+
# Lists MetricInstance records from the API as a list.
|
32
|
+
# Unlike stream(), this operation is eager and will load `limit` records into
|
33
|
+
# memory before returning.
|
34
|
+
# @param [metric.TwilioEdge] edge The edge
|
35
|
+
# @param [metric.StreamDirection] direction The direction
|
36
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
37
|
+
# guarantees to never return more than limit. Default is no limit
|
38
|
+
# @param [Integer] page_size Number of records to fetch per request, when
|
39
|
+
# not set will use the default value of 50 records. If no page_size is defined
|
40
|
+
# but a limit is defined, stream() will attempt to read the limit with the most
|
41
|
+
# efficient page size, i.e. min(limit, 1000)
|
42
|
+
# @return [Array] Array of up to limit results
|
43
|
+
def list(edge: :unset, direction: :unset, limit: nil, page_size: nil)
|
44
|
+
self.stream(edge: edge, direction: direction, limit: limit, page_size: page_size).entries
|
45
|
+
end
|
46
|
+
|
47
|
+
##
|
48
|
+
# Streams MetricInstance records from the API as an Enumerable.
|
49
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
50
|
+
# is reached.
|
51
|
+
# @param [metric.TwilioEdge] edge The edge
|
52
|
+
# @param [metric.StreamDirection] direction The direction
|
53
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
54
|
+
# guarantees to never return more than limit. Default is no limit.
|
55
|
+
# @param [Integer] page_size Number of records to fetch per request, when
|
56
|
+
# not set will use the default value of 50 records. If no page_size is defined
|
57
|
+
# but a limit is defined, stream() will attempt to read the limit with the most
|
58
|
+
# efficient page size, i.e. min(limit, 1000)
|
59
|
+
# @return [Enumerable] Enumerable that will yield up to limit results
|
60
|
+
def stream(edge: :unset, direction: :unset, limit: nil, page_size: nil)
|
61
|
+
limits = @version.read_limits(limit, page_size)
|
62
|
+
|
63
|
+
page = self.page(edge: edge, direction: direction, page_size: limits[:page_size], )
|
64
|
+
|
65
|
+
@version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
|
66
|
+
end
|
67
|
+
|
68
|
+
##
|
69
|
+
# When passed a block, yields MetricInstance records from the API.
|
70
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
71
|
+
# is reached.
|
72
|
+
def each
|
73
|
+
limits = @version.read_limits
|
74
|
+
|
75
|
+
page = self.page(page_size: limits[:page_size], )
|
76
|
+
|
77
|
+
@version.stream(page,
|
78
|
+
limit: limits[:limit],
|
79
|
+
page_limit: limits[:page_limit]).each {|x| yield x}
|
80
|
+
end
|
81
|
+
|
82
|
+
##
|
83
|
+
# Retrieve a single page of MetricInstance records from the API.
|
84
|
+
# Request is executed immediately.
|
85
|
+
# @param [metric.TwilioEdge] edge The edge
|
86
|
+
# @param [metric.StreamDirection] direction The direction
|
87
|
+
# @param [String] page_token PageToken provided by the API
|
88
|
+
# @param [Integer] page_number Page Number, this value is simply for client state
|
89
|
+
# @param [Integer] page_size Number of records to return, defaults to 50
|
90
|
+
# @return [Page] Page of MetricInstance
|
91
|
+
def page(edge: :unset, direction: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
|
92
|
+
params = Twilio::Values.of({
|
93
|
+
'Edge' => edge,
|
94
|
+
'Direction' => direction,
|
95
|
+
'PageToken' => page_token,
|
96
|
+
'Page' => page_number,
|
97
|
+
'PageSize' => page_size,
|
98
|
+
})
|
99
|
+
response = @version.page(
|
100
|
+
'GET',
|
101
|
+
@uri,
|
102
|
+
params
|
103
|
+
)
|
104
|
+
MetricPage.new(@version, response, @solution)
|
105
|
+
end
|
106
|
+
|
107
|
+
##
|
108
|
+
# Retrieve a single page of MetricInstance records from the API.
|
109
|
+
# Request is executed immediately.
|
110
|
+
# @param [String] target_url API-generated URL for the requested results page
|
111
|
+
# @return [Page] Page of MetricInstance
|
112
|
+
def get_page(target_url)
|
113
|
+
response = @version.domain.request(
|
114
|
+
'GET',
|
115
|
+
target_url
|
116
|
+
)
|
117
|
+
MetricPage.new(@version, response, @solution)
|
118
|
+
end
|
119
|
+
|
120
|
+
##
|
121
|
+
# Provide a user friendly representation
|
122
|
+
def to_s
|
123
|
+
'#<Twilio.Insights.V1.MetricList>'
|
124
|
+
end
|
125
|
+
end
|
126
|
+
|
127
|
+
##
|
128
|
+
# 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.
|
129
|
+
class MetricPage < Page
|
130
|
+
##
|
131
|
+
# Initialize the MetricPage
|
132
|
+
# @param [Version] version Version that contains the resource
|
133
|
+
# @param [Response] response Response from the API
|
134
|
+
# @param [Hash] solution Path solution for the resource
|
135
|
+
# @return [MetricPage] MetricPage
|
136
|
+
def initialize(version, response, solution)
|
137
|
+
super(version, response)
|
138
|
+
|
139
|
+
# Path Solution
|
140
|
+
@solution = solution
|
141
|
+
end
|
142
|
+
|
143
|
+
##
|
144
|
+
# Build an instance of MetricInstance
|
145
|
+
# @param [Hash] payload Payload response from the API
|
146
|
+
# @return [MetricInstance] MetricInstance
|
147
|
+
def get_instance(payload)
|
148
|
+
MetricInstance.new(@version, payload, call_sid: @solution[:call_sid], )
|
149
|
+
end
|
150
|
+
|
151
|
+
##
|
152
|
+
# Provide a user friendly representation
|
153
|
+
def to_s
|
154
|
+
'<Twilio.Insights.V1.MetricPage>'
|
155
|
+
end
|
156
|
+
end
|
157
|
+
|
158
|
+
##
|
159
|
+
# 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.
|
160
|
+
class MetricInstance < InstanceResource
|
161
|
+
##
|
162
|
+
# Initialize the MetricInstance
|
163
|
+
# @param [Version] version Version that contains the resource
|
164
|
+
# @param [Hash] payload payload that contains response from Twilio
|
165
|
+
# @param [String] call_sid The call_sid
|
166
|
+
# @return [MetricInstance] MetricInstance
|
167
|
+
def initialize(version, payload, call_sid: nil)
|
168
|
+
super(version)
|
169
|
+
|
170
|
+
# Marshaled Properties
|
171
|
+
@properties = {
|
172
|
+
'timestamp' => payload['timestamp'],
|
173
|
+
'call_sid' => payload['call_sid'],
|
174
|
+
'account_sid' => payload['account_sid'],
|
175
|
+
'edge' => payload['edge'],
|
176
|
+
'direction' => payload['direction'],
|
177
|
+
'gateway' => payload['gateway'],
|
178
|
+
'client' => payload['client'],
|
179
|
+
'carrier_edge' => payload['carrier_edge'],
|
180
|
+
'sip_edge' => payload['sip_edge'],
|
181
|
+
'sdk_edge' => payload['sdk_edge'],
|
182
|
+
'client_edge' => payload['client_edge'],
|
183
|
+
}
|
184
|
+
end
|
185
|
+
|
186
|
+
##
|
187
|
+
# @return [String] The timestamp
|
188
|
+
def timestamp
|
189
|
+
@properties['timestamp']
|
190
|
+
end
|
191
|
+
|
192
|
+
##
|
193
|
+
# @return [String] The call_sid
|
194
|
+
def call_sid
|
195
|
+
@properties['call_sid']
|
196
|
+
end
|
197
|
+
|
198
|
+
##
|
199
|
+
# @return [String] The account_sid
|
200
|
+
def account_sid
|
201
|
+
@properties['account_sid']
|
202
|
+
end
|
203
|
+
|
204
|
+
##
|
205
|
+
# @return [metric.TwilioEdge] The edge
|
206
|
+
def edge
|
207
|
+
@properties['edge']
|
208
|
+
end
|
209
|
+
|
210
|
+
##
|
211
|
+
# @return [metric.StreamDirection] The direction
|
212
|
+
def direction
|
213
|
+
@properties['direction']
|
214
|
+
end
|
215
|
+
|
216
|
+
##
|
217
|
+
# @return [Hash] The gateway
|
218
|
+
def gateway
|
219
|
+
@properties['gateway']
|
220
|
+
end
|
221
|
+
|
222
|
+
##
|
223
|
+
# @return [Hash] The client
|
224
|
+
def client
|
225
|
+
@properties['client']
|
226
|
+
end
|
227
|
+
|
228
|
+
##
|
229
|
+
# @return [Hash] The carrier_edge
|
230
|
+
def carrier_edge
|
231
|
+
@properties['carrier_edge']
|
232
|
+
end
|
233
|
+
|
234
|
+
##
|
235
|
+
# @return [Hash] The sip_edge
|
236
|
+
def sip_edge
|
237
|
+
@properties['sip_edge']
|
238
|
+
end
|
239
|
+
|
240
|
+
##
|
241
|
+
# @return [Hash] The sdk_edge
|
242
|
+
def sdk_edge
|
243
|
+
@properties['sdk_edge']
|
244
|
+
end
|
245
|
+
|
246
|
+
##
|
247
|
+
# @return [Hash] The client_edge
|
248
|
+
def client_edge
|
249
|
+
@properties['client_edge']
|
250
|
+
end
|
251
|
+
|
252
|
+
##
|
253
|
+
# Provide a user friendly representation
|
254
|
+
def to_s
|
255
|
+
"<Twilio.Insights.V1.MetricInstance>"
|
256
|
+
end
|
257
|
+
|
258
|
+
##
|
259
|
+
# Provide a detailed, user friendly representation
|
260
|
+
def inspect
|
261
|
+
"<Twilio.Insights.V1.MetricInstance>"
|
262
|
+
end
|
263
|
+
end
|
264
|
+
end
|
265
|
+
end
|
266
|
+
end
|
267
|
+
end
|
268
|
+
end
|
@@ -0,0 +1,305 @@
|
|
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 Insights < Domain
|
12
|
+
class V1 < Version
|
13
|
+
class CallContext < 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 CallSummaryList < ListResource
|
17
|
+
##
|
18
|
+
# Initialize the CallSummaryList
|
19
|
+
# @param [Version] version Version that contains the resource
|
20
|
+
# @param [String] call_sid The call_sid
|
21
|
+
# @return [CallSummaryList] CallSummaryList
|
22
|
+
def initialize(version, call_sid: nil)
|
23
|
+
super(version)
|
24
|
+
|
25
|
+
# Path Solution
|
26
|
+
@solution = {call_sid: call_sid}
|
27
|
+
end
|
28
|
+
|
29
|
+
##
|
30
|
+
# Provide a user friendly representation
|
31
|
+
def to_s
|
32
|
+
'#<Twilio.Insights.V1.CallSummaryList>'
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
##
|
37
|
+
# 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.
|
38
|
+
class CallSummaryPage < Page
|
39
|
+
##
|
40
|
+
# Initialize the CallSummaryPage
|
41
|
+
# @param [Version] version Version that contains the resource
|
42
|
+
# @param [Response] response Response from the API
|
43
|
+
# @param [Hash] solution Path solution for the resource
|
44
|
+
# @return [CallSummaryPage] CallSummaryPage
|
45
|
+
def initialize(version, response, solution)
|
46
|
+
super(version, response)
|
47
|
+
|
48
|
+
# Path Solution
|
49
|
+
@solution = solution
|
50
|
+
end
|
51
|
+
|
52
|
+
##
|
53
|
+
# Build an instance of CallSummaryInstance
|
54
|
+
# @param [Hash] payload Payload response from the API
|
55
|
+
# @return [CallSummaryInstance] CallSummaryInstance
|
56
|
+
def get_instance(payload)
|
57
|
+
CallSummaryInstance.new(@version, payload, call_sid: @solution[:call_sid], )
|
58
|
+
end
|
59
|
+
|
60
|
+
##
|
61
|
+
# Provide a user friendly representation
|
62
|
+
def to_s
|
63
|
+
'<Twilio.Insights.V1.CallSummaryPage>'
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
##
|
68
|
+
# 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.
|
69
|
+
class CallSummaryContext < InstanceContext
|
70
|
+
##
|
71
|
+
# Initialize the CallSummaryContext
|
72
|
+
# @param [Version] version Version that contains the resource
|
73
|
+
# @param [String] call_sid The call_sid
|
74
|
+
# @return [CallSummaryContext] CallSummaryContext
|
75
|
+
def initialize(version, call_sid)
|
76
|
+
super(version)
|
77
|
+
|
78
|
+
# Path Solution
|
79
|
+
@solution = {call_sid: call_sid, }
|
80
|
+
@uri = "/Voice/#{@solution[:call_sid]}/Summary"
|
81
|
+
end
|
82
|
+
|
83
|
+
##
|
84
|
+
# Fetch a CallSummaryInstance
|
85
|
+
# @param [call_summary.ProcessingState] processing_state The processing_state
|
86
|
+
# @return [CallSummaryInstance] Fetched CallSummaryInstance
|
87
|
+
def fetch(processing_state: :unset)
|
88
|
+
params = Twilio::Values.of({'ProcessingState' => processing_state, })
|
89
|
+
|
90
|
+
payload = @version.fetch(
|
91
|
+
'GET',
|
92
|
+
@uri,
|
93
|
+
params,
|
94
|
+
)
|
95
|
+
|
96
|
+
CallSummaryInstance.new(@version, payload, call_sid: @solution[:call_sid], )
|
97
|
+
end
|
98
|
+
|
99
|
+
##
|
100
|
+
# Provide a user friendly representation
|
101
|
+
def to_s
|
102
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
103
|
+
"#<Twilio.Insights.V1.CallSummaryContext #{context}>"
|
104
|
+
end
|
105
|
+
|
106
|
+
##
|
107
|
+
# Provide a detailed, user friendly representation
|
108
|
+
def inspect
|
109
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
110
|
+
"#<Twilio.Insights.V1.CallSummaryContext #{context}>"
|
111
|
+
end
|
112
|
+
end
|
113
|
+
|
114
|
+
##
|
115
|
+
# 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.
|
116
|
+
class CallSummaryInstance < InstanceResource
|
117
|
+
##
|
118
|
+
# Initialize the CallSummaryInstance
|
119
|
+
# @param [Version] version Version that contains the resource
|
120
|
+
# @param [Hash] payload payload that contains response from Twilio
|
121
|
+
# @param [String] call_sid The call_sid
|
122
|
+
# @return [CallSummaryInstance] CallSummaryInstance
|
123
|
+
def initialize(version, payload, call_sid: nil)
|
124
|
+
super(version)
|
125
|
+
|
126
|
+
# Marshaled Properties
|
127
|
+
@properties = {
|
128
|
+
'account_sid' => payload['account_sid'],
|
129
|
+
'call_sid' => payload['call_sid'],
|
130
|
+
'call_type' => payload['call_type'],
|
131
|
+
'call_state' => payload['call_state'],
|
132
|
+
'processing_state' => payload['processing_state'],
|
133
|
+
'start_time' => Twilio.deserialize_iso8601_datetime(payload['start_time']),
|
134
|
+
'end_time' => Twilio.deserialize_iso8601_datetime(payload['end_time']),
|
135
|
+
'duration' => payload['duration'] == nil ? payload['duration'] : payload['duration'].to_i,
|
136
|
+
'connect_duration' => payload['connect_duration'] == nil ? payload['connect_duration'] : payload['connect_duration'].to_i,
|
137
|
+
'from' => payload['from'],
|
138
|
+
'to' => payload['to'],
|
139
|
+
'carrier_edge' => payload['carrier_edge'],
|
140
|
+
'client_edge' => payload['client_edge'],
|
141
|
+
'sdk_edge' => payload['sdk_edge'],
|
142
|
+
'sip_edge' => payload['sip_edge'],
|
143
|
+
'tags' => payload['tags'],
|
144
|
+
'url' => payload['url'],
|
145
|
+
'attributes' => payload['attributes'],
|
146
|
+
'properties' => payload['properties'],
|
147
|
+
}
|
148
|
+
|
149
|
+
# Context
|
150
|
+
@instance_context = nil
|
151
|
+
@params = {'call_sid' => call_sid, }
|
152
|
+
end
|
153
|
+
|
154
|
+
##
|
155
|
+
# Generate an instance context for the instance, the context is capable of
|
156
|
+
# performing various actions. All instance actions are proxied to the context
|
157
|
+
# @return [CallSummaryContext] CallSummaryContext for this CallSummaryInstance
|
158
|
+
def context
|
159
|
+
unless @instance_context
|
160
|
+
@instance_context = CallSummaryContext.new(@version, @params['call_sid'], )
|
161
|
+
end
|
162
|
+
@instance_context
|
163
|
+
end
|
164
|
+
|
165
|
+
##
|
166
|
+
# @return [String] The account_sid
|
167
|
+
def account_sid
|
168
|
+
@properties['account_sid']
|
169
|
+
end
|
170
|
+
|
171
|
+
##
|
172
|
+
# @return [String] The call_sid
|
173
|
+
def call_sid
|
174
|
+
@properties['call_sid']
|
175
|
+
end
|
176
|
+
|
177
|
+
##
|
178
|
+
# @return [call_summary.CallType] The call_type
|
179
|
+
def call_type
|
180
|
+
@properties['call_type']
|
181
|
+
end
|
182
|
+
|
183
|
+
##
|
184
|
+
# @return [call_summary.CallState] The call_state
|
185
|
+
def call_state
|
186
|
+
@properties['call_state']
|
187
|
+
end
|
188
|
+
|
189
|
+
##
|
190
|
+
# @return [call_summary.ProcessingState] The processing_state
|
191
|
+
def processing_state
|
192
|
+
@properties['processing_state']
|
193
|
+
end
|
194
|
+
|
195
|
+
##
|
196
|
+
# @return [Time] The start_time
|
197
|
+
def start_time
|
198
|
+
@properties['start_time']
|
199
|
+
end
|
200
|
+
|
201
|
+
##
|
202
|
+
# @return [Time] The end_time
|
203
|
+
def end_time
|
204
|
+
@properties['end_time']
|
205
|
+
end
|
206
|
+
|
207
|
+
##
|
208
|
+
# @return [String] The duration
|
209
|
+
def duration
|
210
|
+
@properties['duration']
|
211
|
+
end
|
212
|
+
|
213
|
+
##
|
214
|
+
# @return [String] The connect_duration
|
215
|
+
def connect_duration
|
216
|
+
@properties['connect_duration']
|
217
|
+
end
|
218
|
+
|
219
|
+
##
|
220
|
+
# @return [Hash] The from
|
221
|
+
def from
|
222
|
+
@properties['from']
|
223
|
+
end
|
224
|
+
|
225
|
+
##
|
226
|
+
# @return [Hash] The to
|
227
|
+
def to
|
228
|
+
@properties['to']
|
229
|
+
end
|
230
|
+
|
231
|
+
##
|
232
|
+
# @return [Hash] The carrier_edge
|
233
|
+
def carrier_edge
|
234
|
+
@properties['carrier_edge']
|
235
|
+
end
|
236
|
+
|
237
|
+
##
|
238
|
+
# @return [Hash] The client_edge
|
239
|
+
def client_edge
|
240
|
+
@properties['client_edge']
|
241
|
+
end
|
242
|
+
|
243
|
+
##
|
244
|
+
# @return [Hash] The sdk_edge
|
245
|
+
def sdk_edge
|
246
|
+
@properties['sdk_edge']
|
247
|
+
end
|
248
|
+
|
249
|
+
##
|
250
|
+
# @return [Hash] The sip_edge
|
251
|
+
def sip_edge
|
252
|
+
@properties['sip_edge']
|
253
|
+
end
|
254
|
+
|
255
|
+
##
|
256
|
+
# @return [String] The tags
|
257
|
+
def tags
|
258
|
+
@properties['tags']
|
259
|
+
end
|
260
|
+
|
261
|
+
##
|
262
|
+
# @return [String] The url
|
263
|
+
def url
|
264
|
+
@properties['url']
|
265
|
+
end
|
266
|
+
|
267
|
+
##
|
268
|
+
# @return [Hash] The attributes
|
269
|
+
def attributes
|
270
|
+
@properties['attributes']
|
271
|
+
end
|
272
|
+
|
273
|
+
##
|
274
|
+
# @return [Hash] The properties
|
275
|
+
def properties
|
276
|
+
@properties['properties']
|
277
|
+
end
|
278
|
+
|
279
|
+
##
|
280
|
+
# Fetch a CallSummaryInstance
|
281
|
+
# @param [call_summary.ProcessingState] processing_state The processing_state
|
282
|
+
# @return [CallSummaryInstance] Fetched CallSummaryInstance
|
283
|
+
def fetch(processing_state: :unset)
|
284
|
+
context.fetch(processing_state: processing_state, )
|
285
|
+
end
|
286
|
+
|
287
|
+
##
|
288
|
+
# Provide a user friendly representation
|
289
|
+
def to_s
|
290
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
291
|
+
"<Twilio.Insights.V1.CallSummaryInstance #{values}>"
|
292
|
+
end
|
293
|
+
|
294
|
+
##
|
295
|
+
# Provide a detailed, user friendly representation
|
296
|
+
def inspect
|
297
|
+
values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
|
298
|
+
"<Twilio.Insights.V1.CallSummaryInstance #{values}>"
|
299
|
+
end
|
300
|
+
end
|
301
|
+
end
|
302
|
+
end
|
303
|
+
end
|
304
|
+
end
|
305
|
+
end
|