Class: Revox::Models::CampaignListResponse::Campaign::Assistant

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

Overview

See Also:

  • Revox::Models::CampaignListResponse::Campaign#assistant

Defined Under Namespace

Modules: AfterCallSMSOutcome, BackgroundSound, EmailNotificationOutcome, FirstSentenceMode, HumanTransferMode, LlmModel, SttModel, ThinkingSound, Type Classes: Calendly, CallRetryConfig, CreatedBy, CustomTool, FaqItem, Position, PromptFlow, Slack, StructuredOutputConfig, SttContext, TransferDestination, Voice, Zoho

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:, email:, first_name:, last_name:) ⇒ Object

The user who created the assistant.

Parameters:

  • id (String)

    The database user id of the creator.

  • email (String)
  • first_name (String, nil)
  • last_name (String, nil)


# File 'lib/revox/models/campaign_list_response.rb', line 667

Instance Attribute Details

#after_call_sms_outcomesArray<Symbol, Revox::Models::CampaignListResponse::Campaign::Assistant::AfterCallSMSOutcome>?

Which call outcomes trigger the after-call SMS. When empty or null, no after-call SMS is sent. Use "none" when outcome is null.

Parameters:

  • value (::Array[Revox::Models::CampaignListResponse::Campaign::Assistant::after_call_sms_outcome], nil)

Returns:



177
178
179
# File 'lib/revox/models/campaign_list_response.rb', line 177

required :after_call_sms_outcomes,
-> { Revox::Internal::Type::ArrayOf[enum: Revox::Models::CampaignListResponse::Campaign::Assistant::AfterCallSMSOutcome] },
nil?: true

#after_call_sms_promptString?

Prompt / instructions for the after-call SMS. Supports {variable} placeholders. When null, no after-call SMS is sent.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


186
# File 'lib/revox/models/campaign_list_response.rb', line 186

required :after_call_sms_prompt, String, nil?: true

#background_soundSymbol, ...

Ambient background sound to play during the call. null disables it.

Parameters:

  • value (Revox::Models::CampaignListResponse::Campaign::Assistant::background_sound, nil)

Returns:



192
193
194
# File 'lib/revox/models/campaign_list_response.rb', line 192

required :background_sound,
enum: -> { Revox::Models::CampaignListResponse::Campaign::Assistant::BackgroundSound },
nil?: true

#background_sound_volumeFloat

Volume of the ambient background sound (0 = silent, 1 = max).

Parameters:

  • value (Float)

Returns:

  • (Float)


200
# File 'lib/revox/models/campaign_list_response.rb', line 200

required :background_sound_volume, Float

#calendlyRevox::Models::CampaignListResponse::Campaign::Assistant::Calendly?



205
# File 'lib/revox/models/campaign_list_response.rb', line 205

required :calendly, -> { Revox::Models::CampaignListResponse::Campaign::Assistant::Calendly }, nil?: true

#call_retry_configRevox::Models::CampaignListResponse::Campaign::Assistant::CallRetryConfig?

Configuration for call retry behavior including time windows, delays, and max iterations. If not provided, defaults will be used.



212
213
214
# File 'lib/revox/models/campaign_list_response.rb', line 212

required :call_retry_config,
-> { Revox::Models::CampaignListResponse::Campaign::Assistant::CallRetryConfig },
nil?: true

#cartesia_dictionary_pronunciation_idString?

Optional Cartesia pronunciation dictionary ID linked to this assistant.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


220
# File 'lib/revox/models/campaign_list_response.rb', line 220

required :cartesia_dictionary_pronunciation_id, String, nil?: true

#created_atObject

Parameters:

  • value (top)

Returns:

  • (Object)


225
# File 'lib/revox/models/campaign_list_response.rb', line 225

required :created_at, Revox::Internal::Type::Unknown

#created_byRevox::Models::CampaignListResponse::Campaign::Assistant::CreatedBy?

The user who created the assistant.



492
493
494
# File 'lib/revox/models/campaign_list_response.rb', line 492

optional :created_by,
-> { Revox::Models::CampaignListResponse::Campaign::Assistant::CreatedBy },
nil?: true

#custom_toolsArray<Revox::Models::CampaignListResponse::Campaign::Assistant::CustomTool>?



230
231
232
# File 'lib/revox/models/campaign_list_response.rb', line 230

required :custom_tools,
-> { Revox::Internal::Type::ArrayOf[Revox::Models::CampaignListResponse::Campaign::Assistant::CustomTool] },
nil?: true

#email_notification_addressString?

Email address(es) to receive notifications when a call ends with a matching outcome. Accepts a single email or a comma-separated list (e.g. "alice@x.com, bob@y.com").

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


240
# File 'lib/revox/models/campaign_list_response.rb', line 240

required :email_notification_address, String, nil?: true

#email_notification_outcomesArray<Symbol, Revox::Models::CampaignListResponse::Campaign::Assistant::EmailNotificationOutcome>?

Which call outcomes trigger an email notification. E.g. ["interested", "completed", "none"]. Use "none" when outcome is null.

Parameters:

  • value (::Array[Revox::Models::CampaignListResponse::Campaign::Assistant::email_notification_outcome], nil)

Returns:



247
248
249
# File 'lib/revox/models/campaign_list_response.rb', line 247

required :email_notification_outcomes,
-> { Revox::Internal::Type::ArrayOf[enum: Revox::Models::CampaignListResponse::Campaign::Assistant::EmailNotificationOutcome] },
nil?: true

#end_of_call_sentenceString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


254
# File 'lib/revox/models/campaign_list_response.rb', line 254

required :end_of_call_sentence, String, nil?: true

#faq_itemsArray<Revox::Models::CampaignListResponse::Campaign::Assistant::FaqItem>?



499
500
# File 'lib/revox/models/campaign_list_response.rb', line 499

optional :faq_items,
-> { Revox::Internal::Type::ArrayOf[Revox::Models::CampaignListResponse::Campaign::Assistant::FaqItem] }

#first_sentenceString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


259
# File 'lib/revox/models/campaign_list_response.rb', line 259

required :first_sentence, String, nil?: true

#first_sentence_delay_msInteger

Delay in milliseconds before speaking the first sentence. Default: 400.

Parameters:

  • value (Integer)

Returns:

  • (Integer)


265
# File 'lib/revox/models/campaign_list_response.rb', line 265

required :first_sentence_delay_ms, Integer

#first_sentence_modeSymbol, Revox::Models::CampaignListResponse::Campaign::Assistant::FirstSentenceMode

Parameters:

  • value (Revox::Models::CampaignListResponse::Campaign::Assistant::first_sentence_mode)

Returns:



270
271
# File 'lib/revox/models/campaign_list_response.rb', line 270

required :first_sentence_mode,
enum: -> { Revox::Models::CampaignListResponse::Campaign::Assistant::FirstSentenceMode }

#from_phone_numberString?

Override the default outbound phone number for calls placed with this assistant. When null, the organization's default phone number is used.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


278
# File 'lib/revox/models/campaign_list_response.rb', line 278

required :from_phone_number, String, nil?: true

#human_transfer_modeSymbol, ...

Warm or cold transfer when transfer_destinations is non-empty; null when transfer is not configured.

Parameters:

  • value (Revox::Models::CampaignListResponse::Campaign::Assistant::human_transfer_mode, nil)

Returns:



285
286
287
# File 'lib/revox/models/campaign_list_response.rb', line 285

required :human_transfer_mode,
enum: -> { Revox::Models::CampaignListResponse::Campaign::Assistant::HumanTransferMode },
nil?: true

#idString

Parameters:

  • value (String)

Returns:

  • (String)


170
# File 'lib/revox/models/campaign_list_response.rb', line 170

required :id, String

#is_inbound_receptionistBoolean?

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


505
# File 'lib/revox/models/campaign_list_response.rb', line 505

optional :is_inbound_receptionist, Revox::Internal::Type::Boolean

#is_realestate_assistantBoolean?

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


510
# File 'lib/revox/models/campaign_list_response.rb', line 510

optional :is_realestate_assistant, Revox::Internal::Type::Boolean

#ivr_navigation_enabledBoolean

Enable IVR navigation tools. When enabled, the assistant can send DTMF tones and skip turns to navigate phone menus.

Parameters:

  • value (Boolean)

Returns:

  • (Boolean)


294
# File 'lib/revox/models/campaign_list_response.rb', line 294

required :ivr_navigation_enabled, Revox::Internal::Type::Boolean

#llm_modelRevox::Models::CampaignListResponse::Campaign::Assistant::LlmModel::UnionMember0, ...



299
# File 'lib/revox/models/campaign_list_response.rb', line 299

required :llm_model, union: -> { Revox::Models::CampaignListResponse::Campaign::Assistant::LlmModel }

#logo_urlString?

Public URL of the brand logo shown on the assistant's demo page. Null when unset.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


306
# File 'lib/revox/models/campaign_list_response.rb', line 306

required :logo_url, String, nil?: true

#max_call_duration_secsFloat

The maximum duration of the call in seconds. This is the maximum time the call will be allowed to run.

Parameters:

  • value (Float)

Returns:

  • (Float)


313
# File 'lib/revox/models/campaign_list_response.rb', line 313

required :max_call_duration_secs, Float

#max_duration_end_messageString?

Optional message the agent will say, without being interruptible, when the call reaches its max duration. Kept short so it fits inside the farewell buffer. If null, the call ends silently.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


321
# File 'lib/revox/models/campaign_list_response.rb', line 321

required :max_duration_end_message, String, nil?: true

#nameString

Parameters:

  • value (String)

Returns:

  • (String)


326
# File 'lib/revox/models/campaign_list_response.rb', line 326

required :name, String

#organization_idString

Parameters:

  • value (String)

Returns:

  • (String)


331
# File 'lib/revox/models/campaign_list_response.rb', line 331

required :organization_id, String

#pending_faq_countFloat?

Parameters:

  • (Float)

Returns:

  • (Float, nil)


515
# File 'lib/revox/models/campaign_list_response.rb', line 515

optional :pending_faq_count, Float

#positionRevox::Models::CampaignListResponse::Campaign::Assistant::Position?



336
# File 'lib/revox/models/campaign_list_response.rb', line 336

required :position, -> { Revox::Models::CampaignListResponse::Campaign::Assistant::Position }, nil?: true

#precall_lookup_urlString?

URL fetched before an inbound call is answered to resolve the assistant's prompt variables. Null when no lookup is configured.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


343
# File 'lib/revox/models/campaign_list_response.rb', line 343

required :precall_lookup_url, String, nil?: true

#promptString

Parameters:

  • value (String)

Returns:

  • (String)


348
# File 'lib/revox/models/campaign_list_response.rb', line 348

required :prompt, String

#prompt_flowRevox::Models::CampaignListResponse::Campaign::Assistant::PromptFlow?



353
354
355
# File 'lib/revox/models/campaign_list_response.rb', line 353

required :prompt_flow,
-> { Revox::Models::CampaignListResponse::Campaign::Assistant::PromptFlow },
nil?: true

#slackRevox::Models::CampaignListResponse::Campaign::Assistant::Slack?



360
# File 'lib/revox/models/campaign_list_response.rb', line 360

required :slack, -> { Revox::Models::CampaignListResponse::Campaign::Assistant::Slack }, nil?: true

#sms_enabledBoolean

Enable SMS tool during calls. When enabled, the agent can send SMS messages to the user on the call.

Parameters:

  • value (Boolean)

Returns:

  • (Boolean)


367
# File 'lib/revox/models/campaign_list_response.rb', line 367

required :sms_enabled, Revox::Internal::Type::Boolean

#sms_templateString?

Hardcoded SMS template to send during calls. When set, this exact text is sent instead of letting the agent generate the message. Supports {variable} placeholders.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


375
# File 'lib/revox/models/campaign_list_response.rb', line 375

required :sms_template, String, nil?: true

#structured_output_configArray<Revox::Models::CampaignListResponse::Campaign::Assistant::StructuredOutputConfig>?

The structured output config to use for the call. This is used to extract the data from the call (like email, name, company name, etc.).



382
383
384
# File 'lib/revox/models/campaign_list_response.rb', line 382

required :structured_output_config,
-> { Revox::Internal::Type::ArrayOf[Revox::Models::CampaignListResponse::Campaign::Assistant::StructuredOutputConfig] },
nil?: true

#structured_output_promptString?

Custom prompt for structured data extraction. If not provided, a default prompt is used. Available variables: {transcript}, {call_direction}, {user_phone_number}, {agent_phone_number}.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


392
# File 'lib/revox/models/campaign_list_response.rb', line 392

required :structured_output_prompt, String, nil?: true

#stt_contextRevox::Models::CampaignListResponse::Campaign::Assistant::SttContext?

Assistant-level speech-to-text context: structured general key/value pairs plus a list of domain terms. Prompt-derived context is merged in without replacing existing entries.



400
401
402
# File 'lib/revox/models/campaign_list_response.rb', line 400

required :stt_context,
-> { Revox::Models::CampaignListResponse::Campaign::Assistant::SttContext },
nil?: true

#stt_modelSymbol, Revox::Models::CampaignListResponse::Campaign::Assistant::SttModel

Transcriber (speech-to-text) model used for the assistant.

Parameters:

  • value (Revox::Models::CampaignListResponse::Campaign::Assistant::stt_model)

Returns:



408
# File 'lib/revox/models/campaign_list_response.rb', line 408

required :stt_model, enum: -> { Revox::Models::CampaignListResponse::Campaign::Assistant::SttModel }

#thinking_soundSymbol, ...

Audio clip to play while the agent is processing a response. One of the built-in LiveKit audio clips; null disables it.

Parameters:

  • value (Revox::Models::CampaignListResponse::Campaign::Assistant::thinking_sound, nil)

Returns:



415
416
417
# File 'lib/revox/models/campaign_list_response.rb', line 415

required :thinking_sound,
enum: -> { Revox::Models::CampaignListResponse::Campaign::Assistant::ThinkingSound },
nil?: true

#thinking_sound_probabilityFloat

Probability [0..1] that the thinking sound plays on any given turn; otherwise the agent is silent while thinking.

Parameters:

  • value (Float)

Returns:

  • (Float)


424
# File 'lib/revox/models/campaign_list_response.rb', line 424

required :thinking_sound_probability, Float

#thinking_sound_volumeFloat

Volume of the thinking sound (0 = silent, 1 = max).

Parameters:

  • value (Float)

Returns:

  • (Float)


430
# File 'lib/revox/models/campaign_list_response.rb', line 430

required :thinking_sound_volume, Float

#transfer_destinationsArray<Revox::Models::CampaignListResponse::Campaign::Assistant::TransferDestination>?

Where calls can be transferred to when users ask to speak to a human. Null or empty when transfer is not configured.



437
438
439
# File 'lib/revox/models/campaign_list_response.rb', line 437

required :transfer_destinations,
-> { Revox::Internal::Type::ArrayOf[Revox::Models::CampaignListResponse::Campaign::Assistant::TransferDestination] },
nil?: true

#typeSymbol, Revox::Models::CampaignListResponse::Campaign::Assistant::Type

Parameters:

  • value (Revox::Models::CampaignListResponse::Campaign::Assistant::type_)

Returns:



444
# File 'lib/revox/models/campaign_list_response.rb', line 444

required :type, enum: -> { Revox::Models::CampaignListResponse::Campaign::Assistant::Type }

#updated_atObject

Parameters:

  • value (top)

Returns:

  • (Object)


449
# File 'lib/revox/models/campaign_list_response.rb', line 449

required :updated_at, Revox::Internal::Type::Unknown

#voiceRevox::Models::CampaignListResponse::Campaign::Assistant::Voice?



454
# File 'lib/revox/models/campaign_list_response.rb', line 454

required :voice, -> { Revox::Models::CampaignListResponse::Campaign::Assistant::Voice }, nil?: true

#voicemail_messageString?

If set, when voicemail is detected the agent will speak this message then hang up; if null, hang up immediately.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


461
# File 'lib/revox/models/campaign_list_response.rb', line 461

required :voicemail_message, String, nil?: true

#voicemail_sms_promptString?

Prompt / instructions for the voicemail SMS. Supports {variable} placeholders. When null, no SMS is sent on voicemail.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


468
# File 'lib/revox/models/campaign_list_response.rb', line 468

required :voicemail_sms_prompt, String, nil?: true

#warm_transfer_summary_instructionsString?

Warm transfer only: instructions for the supervisor handoff summary; null when not configured or cold transfer.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


475
# File 'lib/revox/models/campaign_list_response.rb', line 475

required :warm_transfer_summary_instructions, String, nil?: true

#webhook_urlString?

The webhook URL to call when the call is completed.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


481
# File 'lib/revox/models/campaign_list_response.rb', line 481

required :webhook_url, String, nil?: true

#zohoRevox::Models::CampaignListResponse::Campaign::Assistant::Zoho?



486
# File 'lib/revox/models/campaign_list_response.rb', line 486

required :zoho, -> { Revox::Models::CampaignListResponse::Campaign::Assistant::Zoho }, nil?: true

Instance Method Details

#to_hash{

Returns:

  • ({)


380
# File 'sig/revox/models/campaign_list_response.rbs', line 380

def to_hash: -> {