Class: Revox::Models::CampaignUpdateResponse::Campaign::Assistant

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

Overview

See Also:

  • Revox::Models::CampaignUpdateResponse::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_update_response.rb', line 672

Instance Attribute Details

#after_call_sms_outcomesArray<Symbol, Revox::Models::CampaignUpdateResponse::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::CampaignUpdateResponse::Campaign::Assistant::after_call_sms_outcome], nil)

Returns:



178
179
180
# File 'lib/revox/models/campaign_update_response.rb', line 178

required :after_call_sms_outcomes,
-> { Revox::Internal::Type::ArrayOf[enum: Revox::Models::CampaignUpdateResponse::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)


187
# File 'lib/revox/models/campaign_update_response.rb', line 187

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::CampaignUpdateResponse::Campaign::Assistant::background_sound, nil)

Returns:



193
194
195
# File 'lib/revox/models/campaign_update_response.rb', line 193

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

#background_sound_volumeFloat

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

Parameters:

  • value (Float)

Returns:

  • (Float)


201
# File 'lib/revox/models/campaign_update_response.rb', line 201

required :background_sound_volume, Float

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



206
207
208
# File 'lib/revox/models/campaign_update_response.rb', line 206

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

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

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



215
216
217
# File 'lib/revox/models/campaign_update_response.rb', line 215

required :call_retry_config,
-> { Revox::Models::CampaignUpdateResponse::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)


223
# File 'lib/revox/models/campaign_update_response.rb', line 223

required :cartesia_dictionary_pronunciation_id, String, nil?: true

#created_atObject

Parameters:

  • value (top)

Returns:

  • (Object)


228
# File 'lib/revox/models/campaign_update_response.rb', line 228

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

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

The user who created the assistant.



497
498
499
# File 'lib/revox/models/campaign_update_response.rb', line 497

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

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



233
234
235
# File 'lib/revox/models/campaign_update_response.rb', line 233

required :custom_tools,
-> { Revox::Internal::Type::ArrayOf[Revox::Models::CampaignUpdateResponse::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)


243
# File 'lib/revox/models/campaign_update_response.rb', line 243

required :email_notification_address, String, nil?: true

#email_notification_outcomesArray<Symbol, Revox::Models::CampaignUpdateResponse::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::CampaignUpdateResponse::Campaign::Assistant::email_notification_outcome], nil)

Returns:



250
251
252
# File 'lib/revox/models/campaign_update_response.rb', line 250

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

#end_of_call_sentenceString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


257
# File 'lib/revox/models/campaign_update_response.rb', line 257

required :end_of_call_sentence, String, nil?: true

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



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

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

#first_sentenceString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


262
# File 'lib/revox/models/campaign_update_response.rb', line 262

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)


268
# File 'lib/revox/models/campaign_update_response.rb', line 268

required :first_sentence_delay_ms, Integer

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

Parameters:

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

Returns:



273
274
# File 'lib/revox/models/campaign_update_response.rb', line 273

required :first_sentence_mode,
enum: -> { Revox::Models::CampaignUpdateResponse::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)


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

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::CampaignUpdateResponse::Campaign::Assistant::human_transfer_mode, nil)

Returns:



288
289
290
# File 'lib/revox/models/campaign_update_response.rb', line 288

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

#idString

Parameters:

  • value (String)

Returns:

  • (String)


171
# File 'lib/revox/models/campaign_update_response.rb', line 171

required :id, String

#is_inbound_receptionistBoolean?

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


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

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

#is_realestate_assistantBoolean?

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


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

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)


297
# File 'lib/revox/models/campaign_update_response.rb', line 297

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

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



302
# File 'lib/revox/models/campaign_update_response.rb', line 302

required :llm_model, union: -> { Revox::Models::CampaignUpdateResponse::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)


309
# File 'lib/revox/models/campaign_update_response.rb', line 309

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)


316
# File 'lib/revox/models/campaign_update_response.rb', line 316

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)


324
# File 'lib/revox/models/campaign_update_response.rb', line 324

required :max_duration_end_message, String, nil?: true

#nameString

Parameters:

  • value (String)

Returns:

  • (String)


329
# File 'lib/revox/models/campaign_update_response.rb', line 329

required :name, String

#organization_idString

Parameters:

  • value (String)

Returns:

  • (String)


334
# File 'lib/revox/models/campaign_update_response.rb', line 334

required :organization_id, String

#pending_faq_countFloat?

Parameters:

  • (Float)

Returns:

  • (Float, nil)


520
# File 'lib/revox/models/campaign_update_response.rb', line 520

optional :pending_faq_count, Float

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



339
340
341
# File 'lib/revox/models/campaign_update_response.rb', line 339

required :position,
-> { Revox::Models::CampaignUpdateResponse::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)


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

required :precall_lookup_url, String, nil?: true

#promptString

Parameters:

  • value (String)

Returns:

  • (String)


353
# File 'lib/revox/models/campaign_update_response.rb', line 353

required :prompt, String

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



358
359
360
# File 'lib/revox/models/campaign_update_response.rb', line 358

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

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



365
# File 'lib/revox/models/campaign_update_response.rb', line 365

required :slack, -> { Revox::Models::CampaignUpdateResponse::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)


372
# File 'lib/revox/models/campaign_update_response.rb', line 372

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)


380
# File 'lib/revox/models/campaign_update_response.rb', line 380

required :sms_template, String, nil?: true

#structured_output_configArray<Revox::Models::CampaignUpdateResponse::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.).



387
388
389
# File 'lib/revox/models/campaign_update_response.rb', line 387

required :structured_output_config,
-> { Revox::Internal::Type::ArrayOf[Revox::Models::CampaignUpdateResponse::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)


397
# File 'lib/revox/models/campaign_update_response.rb', line 397

required :structured_output_prompt, String, nil?: true

#stt_contextRevox::Models::CampaignUpdateResponse::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.



405
406
407
# File 'lib/revox/models/campaign_update_response.rb', line 405

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

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

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

Parameters:

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

Returns:



413
# File 'lib/revox/models/campaign_update_response.rb', line 413

required :stt_model, enum: -> { Revox::Models::CampaignUpdateResponse::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::CampaignUpdateResponse::Campaign::Assistant::thinking_sound, nil)

Returns:



420
421
422
# File 'lib/revox/models/campaign_update_response.rb', line 420

required :thinking_sound,
enum: -> { Revox::Models::CampaignUpdateResponse::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)


429
# File 'lib/revox/models/campaign_update_response.rb', line 429

required :thinking_sound_probability, Float

#thinking_sound_volumeFloat

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

Parameters:

  • value (Float)

Returns:

  • (Float)


435
# File 'lib/revox/models/campaign_update_response.rb', line 435

required :thinking_sound_volume, Float

#transfer_destinationsArray<Revox::Models::CampaignUpdateResponse::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.



442
443
444
# File 'lib/revox/models/campaign_update_response.rb', line 442

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

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

Parameters:

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

Returns:



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

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

#updated_atObject

Parameters:

  • value (top)

Returns:

  • (Object)


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

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

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



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

required :voice, -> { Revox::Models::CampaignUpdateResponse::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)


466
# File 'lib/revox/models/campaign_update_response.rb', line 466

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)


473
# File 'lib/revox/models/campaign_update_response.rb', line 473

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)


480
# File 'lib/revox/models/campaign_update_response.rb', line 480

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)


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

required :webhook_url, String, nil?: true

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



491
# File 'lib/revox/models/campaign_update_response.rb', line 491

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

Instance Method Details

#to_hash{

Returns:

  • ({)


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

def to_hash: -> {