Class: Twilio::REST::Insights::V1::CallSummaryInstance

Inherits:
Twilio::REST::InstanceResource show all
Defined in:
lib/twilio-ruby/rest/insights/v1/summary.rb

Overview

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 [email protected].

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, call_sid: nil) ⇒ CallSummaryInstance

Initialize the CallSummaryInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • call_sid (String) (defaults to: nil)

    The call_sid



121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 121

def initialize(version, payload, call_sid: nil)
  super(version)

  # Marshaled Properties
  @properties = {
      'account_sid' => payload['account_sid'],
      'call_sid' => payload['call_sid'],
      'call_type' => payload['call_type'],
      'call_state' => payload['call_state'],
      'processing_state' => payload['processing_state'],
      'direction' => payload['direction'],
      'disconnected_by' => payload['disconnected_by'],
      'start_time' => Twilio.deserialize_iso8601_datetime(payload['start_time']),
      'end_time' => Twilio.deserialize_iso8601_datetime(payload['end_time']),
      'duration' => payload['duration'] == nil ? payload['duration'] : payload['duration'].to_i,
      'connect_duration' => payload['connect_duration'] == nil ? payload['connect_duration'] : payload['connect_duration'].to_i,
      'from' => payload['from'],
      'to' => payload['to'],
      'carrier_edge' => payload['carrier_edge'],
      'client_edge' => payload['client_edge'],
      'sdk_edge' => payload['sdk_edge'],
      'sip_edge' => payload['sip_edge'],
      'tags' => payload['tags'],
      'url' => payload['url'],
      'attributes' => payload['attributes'],
  }

  # Context
  @instance_context = nil
  @params = {'call_sid' => call_sid || @properties['call_sid'], }
end

Instance Method Details

#account_sidString

Returns The account_sid.

Returns:

  • (String)

    The account_sid



166
167
168
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 166

def 
  @properties['account_sid']
end

#attributesHash

Returns The attributes.

Returns:

  • (Hash)

    The attributes



280
281
282
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 280

def attributes
  @properties['attributes']
end

#call_sidString

Returns The call_sid.

Returns:

  • (String)

    The call_sid



172
173
174
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 172

def call_sid
  @properties['call_sid']
end

#call_statecall_summary.CallState

Returns The call_state.

Returns:

  • (call_summary.CallState)

    The call_state



184
185
186
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 184

def call_state
  @properties['call_state']
end

#call_typecall_summary.CallType

Returns The call_type.

Returns:

  • (call_summary.CallType)

    The call_type



178
179
180
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 178

def call_type
  @properties['call_type']
end

#carrier_edgeHash

Returns The carrier_edge.

Returns:

  • (Hash)

    The carrier_edge



244
245
246
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 244

def carrier_edge
  @properties['carrier_edge']
end

#client_edgeHash

Returns The client_edge.

Returns:

  • (Hash)

    The client_edge



250
251
252
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 250

def client_edge
  @properties['client_edge']
end

#connect_durationString

Returns The connect_duration.

Returns:

  • (String)

    The connect_duration



226
227
228
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 226

def connect_duration
  @properties['connect_duration']
end

#contextCallSummaryContext

Generate an instance context for the instance, the context is capable of performing various actions. All instance actions are proxied to the context

Returns:



157
158
159
160
161
162
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 157

def context
  unless @instance_context
    @instance_context = CallSummaryContext.new(@version, @params['call_sid'], )
  end
  @instance_context
end

#directioncall_summary.Direction

Returns The direction.

Returns:

  • (call_summary.Direction)

    The direction



196
197
198
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 196

def direction
  @properties['direction']
end

#disconnected_bycall_summary.DisconnectedBy

Returns The disconnected_by.

Returns:

  • (call_summary.DisconnectedBy)

    The disconnected_by



202
203
204
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 202

def disconnected_by
  @properties['disconnected_by']
end

#durationString

Returns The duration.

Returns:

  • (String)

    The duration



220
221
222
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 220

def duration
  @properties['duration']
end

#end_timeTime

Returns The end_time.

Returns:

  • (Time)

    The end_time



214
215
216
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 214

def end_time
  @properties['end_time']
end

#fetch(processing_state: :unset) ⇒ CallSummaryInstance

Fetch a CallSummaryInstance

Parameters:

  • processing_state (call_summary.ProcessingState) (defaults to: :unset)

    The processing_state

Returns:



288
289
290
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 288

def fetch(processing_state: :unset)
  context.fetch(processing_state: processing_state, )
end

#fromHash

Returns The from.

Returns:

  • (Hash)

    The from



232
233
234
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 232

def from
  @properties['from']
end

#inspectObject

Provide a detailed, user friendly representation



301
302
303
304
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 301

def inspect
  values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.Insights.V1.CallSummaryInstance #{values}>"
end

#processing_statecall_summary.ProcessingState

Returns The processing_state.

Returns:

  • (call_summary.ProcessingState)

    The processing_state



190
191
192
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 190

def processing_state
  @properties['processing_state']
end

#sdk_edgeHash

Returns The sdk_edge.

Returns:

  • (Hash)

    The sdk_edge



256
257
258
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 256

def sdk_edge
  @properties['sdk_edge']
end

#sip_edgeHash

Returns The sip_edge.

Returns:

  • (Hash)

    The sip_edge



262
263
264
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 262

def sip_edge
  @properties['sip_edge']
end

#start_timeTime

Returns The start_time.

Returns:

  • (Time)

    The start_time



208
209
210
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 208

def start_time
  @properties['start_time']
end

#tagsString

Returns The tags.

Returns:

  • (String)

    The tags



268
269
270
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 268

def tags
  @properties['tags']
end

#toHash

Returns The to.

Returns:

  • (Hash)

    The to



238
239
240
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 238

def to
  @properties['to']
end

#to_sObject

Provide a user friendly representation



294
295
296
297
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 294

def to_s
  values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.Insights.V1.CallSummaryInstance #{values}>"
end

#urlString

Returns The url.

Returns:

  • (String)

    The url



274
275
276
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 274

def url
  @properties['url']
end