Class: Twilio::REST::Insights::V2::OutboundInstance

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

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, report_id: nil) ⇒ OutboundInstance

Initialize the OutboundInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • account_sid (String)

    The SID of the Account that created this Outbound resource.

  • sid (String)

    The SID of the Call resource to fetch.



469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 469

def initialize(version, payload , report_id: nil)
    super(version)
    
    
    # Marshaled Properties
    @properties = { 
        'account_sid' => payload['account_sid'],
        'report_id' => payload['report_id'],
        'status' => payload['status'],
        'request_meta' => payload['request_meta'],
        'url' => payload['url'],
        'handle' => payload['handle'],
        'total_calls' => payload['total_calls'] == nil ? payload['total_calls'] : payload['total_calls'].to_i,
        'call_answer_score' => payload['call_answer_score'],
        'call_state_percentage' => payload['call_state_percentage'],
        'silent_calls_percentage' => payload['silent_calls_percentage'],
        'calls_by_device_type' => payload['calls_by_device_type'],
        'answer_rate_device_type' => payload['answer_rate_device_type'],
        'blocked_calls_by_carrier' => payload['blocked_calls_by_carrier'],
        'short_duration_calls_percentage' => payload['short_duration_calls_percentage'],
        'long_duration_calls_percentage' => payload['long_duration_calls_percentage'],
        'potential_robocalls_percentage' => payload['potential_robocalls_percentage'],
        'answering_machine_detection' => payload['answering_machine_detection'],
    }

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

Instance Method Details

#account_sidString

Returns The unique SID identifier of the Account.

Returns:

  • (String)

    The unique SID identifier of the Account.



512
513
514
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 512

def 
    @properties['account_sid']
end

#answer_rate_device_typeHash<String, Float>

Returns Answer rate for each device type. voip, mobile, landline, unknown.

Returns:

  • (Hash<String, Float>)

    Answer rate for each device type. voip, mobile, landline, unknown



578
579
580
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 578

def answer_rate_device_type
    @properties['answer_rate_device_type']
end

#answering_machine_detectionInsightsV2OutboundPhoneNumberReportAnsweringMachineDetection

Returns:

  • (InsightsV2OutboundPhoneNumberReportAnsweringMachineDetection)


608
609
610
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 608

def answering_machine_detection
    @properties['answering_machine_detection']
end

#blocked_calls_by_carrierArray<CountyCarrierValue>

Returns Percentage of blocked calls by carrier per country.

Returns:

  • (Array<CountyCarrierValue>)

    Percentage of blocked calls by carrier per country.



584
585
586
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 584

def blocked_calls_by_carrier
    @properties['blocked_calls_by_carrier']
end

#call_answer_scoreFloat

Returns The call answer score measures customers behavior to the delivered calls. The score is a value between 0 and 100, where 100 indicates that all calls were successfully answered.

Returns:

  • (Float)

    The call answer score measures customers behavior to the delivered calls. The score is a value between 0 and 100, where 100 indicates that all calls were successfully answered.



554
555
556
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 554

def call_answer_score
    @properties['call_answer_score']
end

#call_state_percentageInsightsV2InboundPhoneNumberReportCallStatePercentage

Returns:

  • (InsightsV2InboundPhoneNumberReportCallStatePercentage)


560
561
562
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 560

def call_state_percentage
    @properties['call_state_percentage']
end

#calls_by_device_typeHash<String, Integer>

Returns Number of calls made with each device type. voip, mobile, landline, unknown.

Returns:

  • (Hash<String, Integer>)

    Number of calls made with each device type. voip, mobile, landline, unknown



572
573
574
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 572

def calls_by_device_type
    @properties['calls_by_device_type']
end

#contextOutboundContext

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

Returns:



503
504
505
506
507
508
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 503

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

#create(insights_v2_create_phone_numbers_report_request: :unset) ⇒ OutboundInstance

Create the OutboundInstance

Parameters:

  • insights_v2_create_phone_numbers_report_request (InsightsV2CreatePhoneNumbersReportRequest) (defaults to: :unset)

Returns:



616
617
618
619
620
621
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 616

def create(insights_v2_create_phone_numbers_report_request: :unset
)

    context.create(
    )
end

#handleString

Returns Inbound phone number handle represented in the report.

Returns:

  • (String)

    Inbound phone number handle represented in the report.



542
543
544
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 542

def handle
    @properties['handle']
end

#inspectObject

Provide a detailed, user friendly representation



632
633
634
635
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 632

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

#long_duration_calls_percentageFloat

Returns Percentage of long duration calls ( >= 60 seconds).

Returns:

  • (Float)

    Percentage of long duration calls ( >= 60 seconds)



596
597
598
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 596

def long_duration_calls_percentage
    @properties['long_duration_calls_percentage']
end

#potential_robocalls_percentageFloat

Returns Percentage of completed outbound calls to unassigned or unallocated phone numbers.

Returns:

  • (Float)

    Percentage of completed outbound calls to unassigned or unallocated phone numbers.



602
603
604
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 602

def potential_robocalls_percentage
    @properties['potential_robocalls_percentage']
end

#report_idString

Returns The report identifier as Voice Insights Report TTID.

Returns:

  • (String)

    The report identifier as Voice Insights Report TTID.



518
519
520
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 518

def report_id
    @properties['report_id']
end

#request_metaReportMetadata

Returns:

  • (ReportMetadata)


530
531
532
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 530

def request_meta
    @properties['request_meta']
end

#short_duration_calls_percentageFloat

Returns Percentage of completed outbound calls under 10 seconds (PSTN Short call tags); More than 15% is typically low trust measured.

Returns:

  • (Float)

    Percentage of completed outbound calls under 10 seconds (PSTN Short call tags); More than 15% is typically low trust measured.



590
591
592
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 590

def short_duration_calls_percentage
    @properties['short_duration_calls_percentage']
end

#silent_calls_percentageFloat

Returns Percentage of inbound calls with silence tags over total outbound calls. A silent tag is indicative of a connectivity issue or muted audio.

Returns:

  • (Float)

    Percentage of inbound calls with silence tags over total outbound calls. A silent tag is indicative of a connectivity issue or muted audio.



566
567
568
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 566

def silent_calls_percentage
    @properties['silent_calls_percentage']
end

#statusReportStatus

Returns:

  • (ReportStatus)


524
525
526
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 524

def status
    @properties['status']
end

#to_sObject

Provide a user friendly representation



625
626
627
628
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 625

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

#total_callsString

Returns Total number of calls made with the given handle during the report period.

Returns:

  • (String)

    Total number of calls made with the given handle during the report period.



548
549
550
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 548

def total_calls
    @properties['total_calls']
end

#urlString

Returns The URL of this resource.

Returns:

  • (String)

    The URL of this resource.



536
537
538
# File 'lib/twilio-ruby/rest/insights/v2/outbound.rb', line 536

def url
    @properties['url']
end