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, EmailNotificationLanguage, EmailNotificationOutcome, FirstSentenceMode, HumanTransferMode, LlmModel, SttModel, ThinkingSound, Type Classes: Calendly, CallRetryConfig, CreatedBy, CustomTool, FaqItem, Position, PromptFlow, Slack, StructuredOutputConfig, SttContext, 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 695

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:



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

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)


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

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:



227
228
229
# File 'lib/revox/models/campaign_list_response.rb', line 227

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)


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

required :background_sound_volume, Float

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



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

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.



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

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)


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

required :cartesia_dictionary_pronunciation_id, String, nil?: true

#created_atObject

Parameters:

  • value (top)

Returns:

  • (Object)


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

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

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

The user who created the assistant.



524
525
526
# File 'lib/revox/models/campaign_list_response.rb', line 524

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

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



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

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)


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

required :email_notification_address, String, nil?: true

#email_notification_languageSymbol, Revox::Models::CampaignListResponse::Campaign::Assistant::EmailNotificationLanguage

The language used for the notification email content. One of "en" or "fr".

Parameters:

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

Returns:



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

required :email_notification_language,
enum: -> { Revox::Models::CampaignListResponse::Campaign::Assistant::EmailNotificationLanguage }

#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:



289
290
291
# File 'lib/revox/models/campaign_list_response.rb', line 289

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)


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

required :end_of_call_sentence, String, nil?: true

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



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

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

#first_sentenceString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

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)


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

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:



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

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)


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

required :from_phone_number, String, nil?: true

#human_transfer_modeSymbol, ...

Warm or cold transfer when transfer_phone_number is set; null when transfer is not configured.

Parameters:

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

Returns:



327
328
329
# File 'lib/revox/models/campaign_list_response.rb', line 327

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

#idString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#is_realestate_assistantBoolean?

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


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

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)


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

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

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



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

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)


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

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)


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

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)


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

required :max_duration_end_message, String, nil?: true

#nameString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#organization_idString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :organization_id, String

#pending_faq_countFloat?

Parameters:

  • (Float)

Returns:

  • (Float, nil)


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

optional :pending_faq_count, Float

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



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

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

#promptString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :prompt, String

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



388
389
390
# File 'lib/revox/models/campaign_list_response.rb', line 388

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

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



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

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)


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

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)


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

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.).



417
418
419
# File 'lib/revox/models/campaign_list_response.rb', line 417

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)


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

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.



435
436
437
# File 'lib/revox/models/campaign_list_response.rb', line 435

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:



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

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:



450
451
452
# File 'lib/revox/models/campaign_list_response.rb', line 450

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)


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

required :thinking_sound_probability, Float

#thinking_sound_volumeFloat

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

Parameters:

  • value (Float)

Returns:

  • (Float)


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

required :thinking_sound_volume, Float

#transfer_phone_numberString?

Phone number to transfer calls to when users request to speak to a human agent.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :transfer_phone_number, String, nil?: true

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

Parameters:

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

Returns:



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

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

#updated_atObject

Parameters:

  • value (top)

Returns:

  • (Object)


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

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

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



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

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)


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

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)


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

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)


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

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)


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

required :webhook_url, String, nil?: true

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



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

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

Instance Method Details

#to_hash{

Returns:

  • ({)


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

def to_hash: -> {