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



120
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
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 120

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'],
      'sip_edge' => payload['sip_edge'],
      'tags' => payload['tags'],
      'url' => payload['url'],
  }

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

Instance Method Details

#account_sid ⇒ String

Returns The account_sid.

Returns:

  • (String) —

    The account_sid



163
164
165
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 163

def 
  @properties['account_sid']
end

#call_sid ⇒ String

Returns The call_sid.

Returns:

  • (String) —

    The call_sid



169
170
171
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 169

def call_sid
  @properties['call_sid']
end

#call_state ⇒ call_summary.CallState

Returns The call_state.

Returns:

  • (call_summary.CallState) —

    The call_state



181
182
183
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 181

def call_state
  @properties['call_state']
end

#call_type ⇒ call_summary.CallType

Returns The call_type.

Returns:

  • (call_summary.CallType) —

    The call_type



175
176
177
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 175

def call_type
  @properties['call_type']
end

#carrier_edge ⇒ Hash

Returns The carrier_edge.

Returns:

  • (Hash) —

    The carrier_edge



241
242
243
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 241

def carrier_edge
  @properties['carrier_edge']
end

#client_edge ⇒ Hash

Returns The client_edge.

Returns:

  • (Hash) —

    The client_edge



247
248
249
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 247

def client_edge
  @properties['client_edge']
end

#connect_duration ⇒ String

Returns The connect_duration.

Returns:

  • (String) —

    The connect_duration



223
224
225
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 223

def connect_duration
  @properties['connect_duration']
end

#context ⇒ CallSummaryContext

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

Returns:



154
155
156
157
158
159
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 154

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

#direction ⇒ call_summary.Direction

Returns The direction.

Returns:

  • (call_summary.Direction) —

    The direction



193
194
195
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 193

def direction
  @properties['direction']
end

#disconnected_by ⇒ call_summary.DisconnectedBy

Returns The disconnected_by.

Returns:

  • (call_summary.DisconnectedBy) —

    The disconnected_by



199
200
201
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 199

def disconnected_by
  @properties['disconnected_by']
end

#duration ⇒ String

Returns The duration.

Returns:

  • (String) —

    The duration



217
218
219
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 217

def duration
  @properties['duration']
end

#end_time ⇒ Time

Returns The end_time.

Returns:

  • (Time) —

    The end_time



211
212
213
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 211

def end_time
  @properties['end_time']
end

#fetch ⇒ CallSummaryInstance

Fetch a CallSummaryInstance

Returns:



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

def fetch
  context.fetch
end

#from ⇒ Hash

Returns The from.

Returns:

  • (Hash) —

    The from



229
230
231
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 229

def from
  @properties['from']
end

#inspect ⇒ Object

Provide a detailed, user friendly representation



285
286
287
288
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 285

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

#processing_state ⇒ call_summary.ProcessingState

Returns The processing_state.

Returns:

  • (call_summary.ProcessingState) —

    The processing_state



187
188
189
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 187

def processing_state
  @properties['processing_state']
end

#sip_edge ⇒ Hash

Returns The sip_edge.

Returns:

  • (Hash) —

    The sip_edge



253
254
255
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 253

def sip_edge
  @properties['sip_edge']
end

#start_time ⇒ Time

Returns The start_time.

Returns:

  • (Time) —

    The start_time



205
206
207
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 205

def start_time
  @properties['start_time']
end

#tags ⇒ String

Returns The tags.

Returns:

  • (String) —

    The tags



259
260
261
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 259

def tags
  @properties['tags']
end

#to ⇒ Hash

Returns The to.

Returns:

  • (Hash) —

    The to



235
236
237
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 235

def to
  @properties['to']
end

#to_s ⇒ Object

Provide a user friendly representation



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

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

#url ⇒ String

Returns The url.

Returns:

  • (String) —

    The url



265
266
267
# File 'lib/twilio-ruby/rest/insights/v1/summary.rb', line 265

def url
  @properties['url']
end