Class: Telnyx::Models::AI::Assistants::UpdateAssistant
- Inherits:
-
Internal::Type::BaseModel
- Object
- Internal::Type::BaseModel
- Telnyx::Models::AI::Assistants::UpdateAssistant
- Defined in:
- lib/telnyx/models/ai/assistants/update_assistant.rb,
sig/telnyx/models/ai/assistants/update_assistant.rbs
Direct Known Subclasses
Instance Attribute Summary collapse
-
#conversation_flow ⇒ Telnyx::Models::AI::ConversationFlowReq?
Conversation flow as supplied by API clients (create / update).
- #description ⇒ String?
-
#dynamic_variables ⇒ Hash{Symbol=>Object}?
Map of dynamic variables and their default values.
-
#dynamic_variables_webhook_timeout_ms ⇒ Integer?
Timeout in milliseconds for the dynamic variables webhook.
-
#dynamic_variables_webhook_url ⇒ String?
If
dynamic_variables_webhook_urlis set, Telnyx sends a POST request to this URL at the start of the conversation to resolve dynamic variables. - #enabled_features ⇒ Array<Symbol, Telnyx::Models::AI::EnabledFeatures>?
- #external_llm ⇒ Telnyx::Models::AI::ExternalLlmReq?
- #fallback_config ⇒ Telnyx::Models::AI::FallbackConfigReq?
-
#greeting ⇒ String?
Text that the assistant will use to start the conversation.
- #insight_settings ⇒ Telnyx::Models::AI::InsightSettings?
-
#instructions ⇒ String?
System instructions for the assistant.
-
#integrations ⇒ Array<Telnyx::Models::AI::AssistantIntegration>?
Connected integrations attached to the assistant.
-
#interruption_settings ⇒ Telnyx::Models::AI::InferenceEmbeddingInterruptionSettings?
Settings for interruptions and how the assistant decides the user has finished speaking.
-
#llm_api_key_ref ⇒ String?
This is only needed when using third-party inference providers selected by
model. -
#mcp_servers ⇒ Array<Telnyx::Models::AI::AssistantMcpServer>?
MCP servers attached to the assistant.
- #messaging_settings ⇒ Telnyx::Models::AI::MessagingSettings?
-
#model ⇒ String?
ID of the model to use when
external_llmis not set. - #name ⇒ String?
- #observability_settings ⇒ Telnyx::Models::AI::ObservabilityReq?
-
#post_conversation_settings ⇒ Telnyx::Models::AI::PostConversationSettingsReq?
Configuration for post-conversation processing.
- #privacy_settings ⇒ Telnyx::Models::AI::PrivacySettings?
-
#tags ⇒ Array<String>?
Tags associated with the assistant.
- #telephony_settings ⇒ Telnyx::Models::AI::TelephonySettings?
-
#tool_ids ⇒ Array<String>?
IDs of shared tools to attach to the assistant.
-
#tools ⇒ Array<Telnyx::Models::AI::InferenceEmbeddingWebhookToolParams, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::AssistantTool::Transfer, Telnyx::Models::AI::AssistantTool::Invite, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage, Telnyx::Models::AI::AssistantTool::SkipTurn>?
Deprecated for new integrations.
- #transcription ⇒ Telnyx::Models::AI::TranscriptionSettings?
-
#version_name ⇒ String?
Human-readable name for the assistant version.
- #voice_settings ⇒ Telnyx::Models::AI::VoiceSettings?
-
#widget_settings ⇒ Telnyx::Models::AI::WidgetSettings?
Configuration settings for the assistant's web widget.
Instance Method Summary collapse
- #initialize ⇒ Object constructor
- #to_hash ⇒ {
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 ⇒ Object
191 |
# File 'sig/telnyx/models/ai/assistants/update_assistant.rbs', line 191
def initialize: (
|
Instance Attribute Details
#conversation_flow ⇒ Telnyx::Models::AI::ConversationFlowReq?
Conversation flow as supplied by API clients (create / update).
A directed graph of FlowNodeReq connected by FlowEdges. Validation enforces
unique node/edge IDs, that start_node_id references a real node, and that
every edge's endpoints reference real nodes.
16 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 16 optional :conversation_flow, -> { Telnyx::AI::ConversationFlowReq } |
#description ⇒ String?
21 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 21 optional :description, String |
#dynamic_variables ⇒ Hash{Symbol=>Object}?
Map of dynamic variables and their default values
27 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 27 optional :dynamic_variables, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown] |
#dynamic_variables_webhook_timeout_ms ⇒ Integer?
Timeout in milliseconds for the dynamic variables webhook. Must be between 1 and 10000 ms. If the webhook does not respond within this timeout, the call proceeds with default values. See the dynamic variables guide.
36 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 36 optional :dynamic_variables_webhook_timeout_ms, Integer |
#dynamic_variables_webhook_url ⇒ String?
If dynamic_variables_webhook_url is set, Telnyx sends a POST request to this
URL at the start of the conversation to resolve dynamic variables. Gotcha:
the webhook response must wrap variables under a top-level dynamic_variables
object, e.g. {"dynamic_variables": {"customer_name": "Jane"}}. Returning a
flat object will be ignored and variables will fall back to their defaults. See
the
dynamic variables guide
for the full request/response format and timeout behavior.
49 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 49 optional :dynamic_variables_webhook_url, String |
#enabled_features ⇒ Array<Symbol, Telnyx::Models::AI::EnabledFeatures>?
54 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 54 optional :enabled_features, -> { Telnyx::Internal::Type::ArrayOf[enum: Telnyx::AI::EnabledFeatures] } |
#external_llm ⇒ Telnyx::Models::AI::ExternalLlmReq?
59 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 59 optional :external_llm, -> { Telnyx::AI::ExternalLlmReq } |
#fallback_config ⇒ Telnyx::Models::AI::FallbackConfigReq?
64 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 64 optional :fallback_config, -> { Telnyx::AI::FallbackConfigReq } |
#greeting ⇒ String?
Text that the assistant will use to start the conversation. This may be
templated with
dynamic variables.
Use an empty string to have the assistant wait for the user to speak first. Use
the special value <assistant-speaks-first-with-model-generated-message> to
have the assistant generate the greeting based on the system instructions.
75 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 75 optional :greeting, String |
#insight_settings ⇒ Telnyx::Models::AI::InsightSettings?
80 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 80 optional :insight_settings, -> { Telnyx::AI::InsightSettings } |
#instructions ⇒ String?
System instructions for the assistant. These may be templated with dynamic variables
87 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 87 optional :instructions, String |
#integrations ⇒ Array<Telnyx::Models::AI::AssistantIntegration>?
Connected integrations attached to the assistant. The catalog of available
integrations is at /ai/integrations; the user's connected integrations are at
/ai/integrations/connections. Each item references a catalog integration by
integration_id.
96 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 96 optional :integrations, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::AI::AssistantIntegration] } |
#interruption_settings ⇒ Telnyx::Models::AI::InferenceEmbeddingInterruptionSettings?
Settings for interruptions and how the assistant decides the user has finished
speaking. These timings are most relevant when using non turn-taking
transcription models. For turn-taking models like deepgram/flux, end-of-turn
behavior is controlled by the transcription end-of-turn settings under
transcription.settings (eot_threshold, eot_timeout_ms,
eager_eot_threshold).
107 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 107 optional :interruption_settings, -> { Telnyx::AI::InferenceEmbeddingInterruptionSettings } |
#llm_api_key_ref ⇒ String?
This is only needed when using third-party inference providers selected by
model. The identifier for an integration secret
/v2/integration_secrets
that refers to your LLM provider's API key. For bring-your-own endpoint
authentication, use external_llm.llm_api_key_ref instead. Warning: Free plans
are unlikely to work with this integration.
118 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 118 optional :llm_api_key_ref, String |
#mcp_servers ⇒ Array<Telnyx::Models::AI::AssistantMcpServer>?
MCP servers attached to the assistant. Create MCP servers with
/ai/mcp_servers, then reference them by id here.
125 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 125 optional :mcp_servers, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::AI::AssistantMcpServer] } |
#messaging_settings ⇒ Telnyx::Models::AI::MessagingSettings?
130 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 130 optional :messaging_settings, -> { Telnyx::AI::MessagingSettings } |
#model ⇒ String?
ID of the model to use when external_llm is not set. You can use the
Get models API
to see available models. If external_llm is provided, the assistant uses
external_llm instead of this field. If neither model nor external_llm is
provided, Telnyx applies the default model.
140 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 140 optional :model, String |
#name ⇒ String?
145 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 145 optional :name, String |
#observability_settings ⇒ Telnyx::Models::AI::ObservabilityReq?
150 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 150 optional :observability_settings, -> { Telnyx::AI::ObservabilityReq } |
#post_conversation_settings ⇒ Telnyx::Models::AI::PostConversationSettingsReq?
Configuration for post-conversation processing. When enabled, the assistant receives one additional LLM turn after the conversation ends, allowing it to execute tool calls such as logging to a CRM or sending a summary. The assistant can execute multiple parallel or sequential tools during this phase. Telephony-control tools (e.g. hangup, transfer) are unavailable post-conversation. Beta feature.
161 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 161 optional :post_conversation_settings, -> { Telnyx::AI::PostConversationSettingsReq } |
#privacy_settings ⇒ Telnyx::Models::AI::PrivacySettings?
166 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 166 optional :privacy_settings, -> { Telnyx::AI::PrivacySettings } |
#tags ⇒ Array<String>?
Tags associated with the assistant. Tags can also be managed with the assistant tag endpoints.
173 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 173 optional :tags, Telnyx::Internal::Type::ArrayOf[String] |
#telephony_settings ⇒ Telnyx::Models::AI::TelephonySettings?
178 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 178 optional :telephony_settings, -> { Telnyx::AI::TelephonySettings } |
#tool_ids ⇒ Array<String>?
IDs of shared tools to attach to the assistant. New integrations should prefer
tool_ids over inline tools.
185 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 185 optional :tool_ids, Telnyx::Internal::Type::ArrayOf[String] |
#tools ⇒ Array<Telnyx::Models::AI::InferenceEmbeddingWebhookToolParams, Telnyx::Models::AI::RetrievalTool, Telnyx::Models::AI::AssistantTool::Handoff, Telnyx::Models::AI::HangupTool, Telnyx::Models::AI::AssistantTool::Transfer, Telnyx::Models::AI::AssistantTool::Invite, Telnyx::Models::AI::AssistantTool::Refer, Telnyx::Models::AI::AssistantTool::SendDtmf, Telnyx::Models::AI::AssistantTool::SendMessage, Telnyx::Models::AI::AssistantTool::SkipTurn>?
Deprecated for new integrations. Inline tool definitions available to the
assistant. Prefer tool_ids to attach shared tools created with the AI Tools
endpoints.
193 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 193 optional :tools, -> { Telnyx::Internal::Type::ArrayOf[union: Telnyx::AI::AssistantTool] } |
#transcription ⇒ Telnyx::Models::AI::TranscriptionSettings?
198 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 198 optional :transcription, -> { Telnyx::AI::TranscriptionSettings } |
#version_name ⇒ String?
Human-readable name for the assistant version.
204 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 204 optional :version_name, String |
#voice_settings ⇒ Telnyx::Models::AI::VoiceSettings?
209 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 209 optional :voice_settings, -> { Telnyx::AI::VoiceSettings } |
#widget_settings ⇒ Telnyx::Models::AI::WidgetSettings?
Configuration settings for the assistant's web widget.
215 |
# File 'lib/telnyx/models/ai/assistants/update_assistant.rb', line 215 optional :widget_settings, -> { Telnyx::AI::WidgetSettings } |
Instance Method Details
#to_hash ⇒ {
223 |
# File 'sig/telnyx/models/ai/assistants/update_assistant.rbs', line 223
def to_hash: -> {
|