Class: Revox::Models::CallSearchResponse::Call::LastCallAttempt

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/revox/models/call_search_response.rb,
sig/revox/models/call_search_response.rbs

Overview

See Also:

  • Revox::Models::CallSearchResponse::Call#last_call_attempt

Defined Under Namespace

Modules: DialError, EndReason, EndedBy, Result, Status Classes: EmailLog, HandledByUser, PostCallTranscript, SMSLog, SpeechEvent, Transcript

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, #inspect, inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(id:, created_at:, from_address:, resend_message_id:, subject:, to_emails:) ⇒ Object

Parameters:

  • id (String)
  • created_at (Object)

    When the email was sent.

  • from_address (String)
  • resend_message_id (String, nil)
  • subject (String)
  • to_emails (Array<String>)


# File 'lib/revox/models/call_search_response.rb', line 2944

Instance Attribute Details

#answered_atObject

The time the call was answered.

Parameters:

  • value (top)

Returns:

  • (Object)


2794
# File 'lib/revox/models/call_search_response.rb', line 2794

required :answered_at, Revox::Internal::Type::Unknown

#assistants_usedArray<String>?

Assistant node ids entered during this attempt, in traversal order.

Parameters:

  • value (::Array[String], nil)

Returns:

  • (Array<String>, nil)


2869
# File 'lib/revox/models/call_search_response.rb', line 2869

optional :assistants_used, Revox::Internal::Type::ArrayOf[String], nil?: true

#dial_errorSymbol, ...

The SIP error that occurred.

Parameters:

  • value (Revox::Models::CallSearchResponse::Call::LastCallAttempt::dial_error, nil)

Returns:



2800
2801
2802
# File 'lib/revox/models/call_search_response.rb', line 2800

required :dial_error,
enum: -> { Revox::Models::CallSearchResponse::Call::LastCallAttempt::DialError },
nil?: true

#email_logArray<Revox::Models::CallSearchResponse::Call::LastCallAttempt::EmailLog>?

Notification emails sent in connection with the call, ordered oldest first (from/to addresses, subject, sent time).



2876
2877
2878
# File 'lib/revox/models/call_search_response.rb', line 2876

optional :email_log,
-> { Revox::Internal::Type::ArrayOf[Revox::Models::CallSearchResponse::Call::LastCallAttempt::EmailLog] },
nil?: true

#end_reasonSymbol, ...

Reason for ending the call when ended_by is 'agent'. E.g. 'tool_end_call', 'voicemail', 'transfer', 'ivr_no_navigate'.

Parameters:

  • value (Revox::Models::CallSearchResponse::Call::LastCallAttempt::end_reason, nil)

Returns:



2885
2886
2887
# File 'lib/revox/models/call_search_response.rb', line 2885

optional :end_reason,
enum: -> { Revox::Models::CallSearchResponse::Call::LastCallAttempt::EndReason },
nil?: true

#ended_atObject

The time the call ended.

Parameters:

  • value (top)

Returns:

  • (Object)


2808
# File 'lib/revox/models/call_search_response.rb', line 2808

required :ended_at, Revox::Internal::Type::Unknown

#ended_bySymbol, ...

Who ended the call: 'agent' (AI agent), 'user' (caller/callee hung up), or 'system' (e.g. max duration limit).

Parameters:

  • value (Revox::Models::CallSearchResponse::Call::LastCallAttempt::ended_by, nil)

Returns:



2894
2895
2896
# File 'lib/revox/models/call_search_response.rb', line 2894

optional :ended_by,
enum: -> { Revox::Models::CallSearchResponse::Call::LastCallAttempt::EndedBy },
nil?: true

#handled_by_aiBoolean

Whether the AI agent conducted the conversation on this attempt. False for a silent speed-dial probe (whose agent only detects a human) and for attempts that were never answered.

Parameters:

  • value (Boolean)

Returns:

  • (Boolean)


2816
# File 'lib/revox/models/call_search_response.rb', line 2816

required :handled_by_ai, Revox::Internal::Type::Boolean

#handled_by_humanBoolean

Whether a human operator conducted (part of) this attempt — a jump-in takeover or a speed-dial operator connection (both stamp human_takeover_at).

Parameters:

  • value (Boolean)

Returns:

  • (Boolean)


2823
# File 'lib/revox/models/call_search_response.rb', line 2823

required :handled_by_human, Revox::Internal::Type::Boolean

#handled_by_userRevox::Models::CallSearchResponse::Call::LastCallAttempt::HandledByUser?

The team member responsible for following up on this call.



2829
2830
2831
# File 'lib/revox/models/call_search_response.rb', line 2829

required :handled_by_user,
-> { Revox::Models::CallSearchResponse::Call::LastCallAttempt::HandledByUser },
nil?: true

#idString

The ID of the call attempt.

Parameters:

  • value (String)

Returns:

  • (String)


2788
# File 'lib/revox/models/call_search_response.rb', line 2788

required :id, String

#phone_numberString

The phone number that was called. Formatted in E.164 format. Example: +1234567890

Parameters:

  • value (String)

Returns:

  • (String)


2838
# File 'lib/revox/models/call_search_response.rb', line 2838

required :phone_number, String

#post_call_transcriptArray<Revox::Models::CallSearchResponse::Call::LastCallAttempt::PostCallTranscript>?

Higher-quality transcript generated after the call via Soniox async STT. Null until generated or when no recording is available.



2903
2904
2905
# File 'lib/revox/models/call_search_response.rb', line 2903

optional :post_call_transcript,
-> { Revox::Internal::Type::ArrayOf[Revox::Models::CallSearchResponse::Call::LastCallAttempt::PostCallTranscript] },
nil?: true

#recording_urlString?

The URL of the audio recording of the call.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


2844
# File 'lib/revox/models/call_search_response.rb', line 2844

required :recording_url, String, nil?: true

#resultSymbol, ...

Parameters:

  • value (Revox::Models::CallSearchResponse::Call::LastCallAttempt::result, nil)

Returns:



2849
2850
2851
# File 'lib/revox/models/call_search_response.rb', line 2849

required :result,
enum: -> { Revox::Models::CallSearchResponse::Call::LastCallAttempt::Result },
nil?: true

#sms_logArray<Revox::Models::CallSearchResponse::Call::LastCallAttempt::SMSLog>?

Automatic SMS sent after the call (voicemail and after-call), ordered oldest first. The in-call send_sms is excluded — it already appears in the transcript as a tool call.



2913
2914
2915
# File 'lib/revox/models/call_search_response.rb', line 2913

optional :sms_log,
-> { Revox::Internal::Type::ArrayOf[Revox::Models::CallSearchResponse::Call::LastCallAttempt::SMSLog] },
nil?: true

#speech_eventsArray<Revox::Models::CallSearchResponse::Call::LastCallAttempt::SpeechEvent>?

Per-turn speech segments (VAD-derived) with timing and pipeline latencies, ordered by started_speaking_at_ms. Empty for calls recorded before this was tracked or for realtime sessions that don't emit them.



2923
2924
2925
# File 'lib/revox/models/call_search_response.rb', line 2923

optional :speech_events,
-> { Revox::Internal::Type::ArrayOf[Revox::Models::CallSearchResponse::Call::LastCallAttempt::SpeechEvent] },
nil?: true

#started_atObject

The time the call started.

Parameters:

  • value (top)

Returns:

  • (Object)


2857
# File 'lib/revox/models/call_search_response.rb', line 2857

required :started_at, Revox::Internal::Type::Unknown

#statusSymbol, Revox::Models::CallSearchResponse::Call::LastCallAttempt::Status

The status of the call attempt.

Parameters:

  • value (Revox::Models::CallSearchResponse::Call::LastCallAttempt::status)

Returns:



2863
# File 'lib/revox/models/call_search_response.rb', line 2863

required :status, enum: -> { Revox::Models::CallSearchResponse::Call::LastCallAttempt::Status }

#structured_outputHash{Symbol=>Object}?

The data extracted from the call, using the structured output config from the parent call object.

Parameters:

  • value (::Hash[Symbol, top], nil)

Returns:

  • (Hash{Symbol=>Object}, nil)


2932
2933
2934
# File 'lib/revox/models/call_search_response.rb', line 2932

optional :structured_output,
Revox::Internal::Type::HashOf[Revox::Internal::Type::Unknown],
nil?: true

#transcriptArray<Revox::Models::CallSearchResponse::Call::LastCallAttempt::Transcript>?

The live transcript of the call, built in real time.



2940
2941
2942
# File 'lib/revox/models/call_search_response.rb', line 2940

optional :transcript,
-> { Revox::Internal::Type::ArrayOf[Revox::Models::CallSearchResponse::Call::LastCallAttempt::Transcript] },
nil?: true

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/revox/models/call_search_response.rb', line 3008

Instance Method Details

#to_hash{

Returns:

  • ({)


2342
# File 'sig/revox/models/call_search_response.rbs', line 2342

def to_hash: -> {