Class: Telnyx::Resources::AI::Assistants
- Inherits:
-
Object
- Object
- Telnyx::Resources::AI::Assistants
- Defined in:
- lib/telnyx/resources/ai/assistants.rb,
lib/telnyx/resources/ai/assistants/tags.rb,
lib/telnyx/resources/ai/assistants/tests.rb,
lib/telnyx/resources/ai/assistants/tools.rb,
lib/telnyx/resources/ai/assistants/versions.rb,
lib/telnyx/resources/ai/assistants/tests/runs.rb,
lib/telnyx/resources/ai/assistants/instructions.rb,
lib/telnyx/resources/ai/assistants/canary_deploys.rb,
lib/telnyx/resources/ai/assistants/scheduled_events.rb,
lib/telnyx/resources/ai/assistants/tests/test_suites.rb,
lib/telnyx/resources/ai/assistants/tests/test_suites/runs.rb
Overview
Configure AI assistant specifications
Defined Under Namespace
Classes: CanaryDeploys, Instructions, ScheduledEvents, Tags, Tests, Tools, Versions
Instance Attribute Summary collapse
-
#canary_deploys ⇒ Telnyx::Resources::AI::Assistants::CanaryDeploys
readonly
Configure AI assistant specifications.
-
#instructions ⇒ Telnyx::Resources::AI::Assistants::Instructions
readonly
Configure AI assistant specifications.
-
#scheduled_events ⇒ Telnyx::Resources::AI::Assistants::ScheduledEvents
readonly
Configure AI assistant specifications.
-
#tags ⇒ Telnyx::Resources::AI::Assistants::Tags
readonly
Configure AI assistant specifications.
-
#tests ⇒ Telnyx::Resources::AI::Assistants::Tests
readonly
Configure AI assistant specifications.
-
#tools ⇒ Telnyx::Resources::AI::Assistants::Tools
readonly
Configure AI assistant specifications.
-
#versions ⇒ Telnyx::Resources::AI::Assistants::Versions
readonly
Configure AI assistant specifications.
Instance Method Summary collapse
-
#chat(assistant_id, content:, conversation_id:, name: nil, request_options: {}) ⇒ Telnyx::Models::AI::AssistantChatResponse
This endpoint allows a client to send a chat message to a specific AI Assistant.
-
#clone_(assistant_id, request_options: {}) ⇒ Telnyx::Models::AI::InferenceEmbedding
Clone an existing assistant, excluding telephony and messaging settings.
-
#create(instructions:, name:, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, voice_settings: nil, widget_settings: nil, request_options: {}) ⇒ Telnyx::Models::AI::InferenceEmbedding
Some parameter documentations has been truncated, see Models::AI::AssistantCreateParams for more details.
-
#delete(assistant_id, request_options: {}) ⇒ Telnyx::Models::AI::AssistantDeleteResponse
Delete an AI Assistant by ‘assistant_id`.
-
#get_texml(assistant_id, request_options: {}) ⇒ String
Get an assistant texml by ‘assistant_id`.
-
#imports(api_key_ref:, provider:, import_ids: nil, request_options: {}) ⇒ Telnyx::Models::AI::AssistantsList
Some parameter documentations has been truncated, see Models::AI::AssistantImportsParams for more details.
-
#initialize(client:) ⇒ Assistants
constructor
private
A new instance of Assistants.
-
#list(request_options: {}) ⇒ Telnyx::Models::AI::AssistantsList
Retrieve a list of all AI Assistants configured by the user.
-
#retrieve(assistant_id, call_control_id: nil, fetch_dynamic_variables_from_webhook: nil, from: nil, to: nil, request_options: {}) ⇒ Telnyx::Models::AI::InferenceEmbedding
Retrieve an AI Assistant configuration by ‘assistant_id`.
-
#send_sms(assistant_id, from:, to:, conversation_metadata: nil, should_create_conversation: nil, text: nil, request_options: {}) ⇒ Telnyx::Models::AI::AssistantSendSMSResponse
Send an SMS message for an assistant.
-
#update(assistant_id, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, promote_to_main: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, widget_settings: nil, request_options: {}) ⇒ Telnyx::Models::AI::InferenceEmbedding
Some parameter documentations has been truncated, see Models::AI::AssistantUpdateParams for more details.
Constructor Details
#initialize(client:) ⇒ Assistants
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of Assistants.
420 421 422 423 424 425 426 427 428 429 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 420 def initialize(client:) @client = client @tests = Telnyx::Resources::AI::Assistants::Tests.new(client: client) @canary_deploys = Telnyx::Resources::AI::Assistants::CanaryDeploys.new(client: client) @scheduled_events = Telnyx::Resources::AI::Assistants::ScheduledEvents.new(client: client) @tools = Telnyx::Resources::AI::Assistants::Tools.new(client: client) @versions = Telnyx::Resources::AI::Assistants::Versions.new(client: client) @tags = Telnyx::Resources::AI::Assistants::Tags.new(client: client) @instructions = Telnyx::Resources::AI::Assistants::Instructions.new(client: client) end |
Instance Attribute Details
#canary_deploys ⇒ Telnyx::Resources::AI::Assistants::CanaryDeploys (readonly)
Configure AI assistant specifications
14 15 16 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 14 def canary_deploys @canary_deploys end |
#instructions ⇒ Telnyx::Resources::AI::Assistants::Instructions (readonly)
Configure AI assistant specifications
34 35 36 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 34 def instructions @instructions end |
#scheduled_events ⇒ Telnyx::Resources::AI::Assistants::ScheduledEvents (readonly)
Configure AI assistant specifications
18 19 20 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 18 def scheduled_events @scheduled_events end |
#tags ⇒ Telnyx::Resources::AI::Assistants::Tags (readonly)
Configure AI assistant specifications
30 31 32 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 30 def @tags end |
#tests ⇒ Telnyx::Resources::AI::Assistants::Tests (readonly)
Configure AI assistant specifications
10 11 12 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 10 def tests @tests end |
#tools ⇒ Telnyx::Resources::AI::Assistants::Tools (readonly)
Configure AI assistant specifications
22 23 24 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 22 def tools @tools end |
#versions ⇒ Telnyx::Resources::AI::Assistants::Versions (readonly)
Configure AI assistant specifications
26 27 28 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 26 def versions @versions end |
Instance Method Details
#chat(assistant_id, content:, conversation_id:, name: nil, request_options: {}) ⇒ Telnyx::Models::AI::AssistantChatResponse
This endpoint allows a client to send a chat message to a specific AI Assistant. The assistant processes the message and returns a relevant reply based on the current conversation context. Refer to the Conversation API to [create a conversation](developers.telnyx.com/api-reference/conversations/create-a-conversation), [filter existing conversations](developers.telnyx.com/api-reference/conversations/list-conversations), [fetch messages for a conversation](developers.telnyx.com/api-reference/conversations/get-conversation-messages), and [manually add messages to a conversation](developers.telnyx.com/api-reference/conversations/create-message).
293 294 295 296 297 298 299 300 301 302 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 293 def chat(assistant_id, params) parsed, = Telnyx::AI::AssistantChatParams.dump_request(params) @client.request( method: :post, path: ["ai/assistants/%1$s/chat", assistant_id], body: parsed, model: Telnyx::Models::AI::AssistantChatResponse, options: ) end |
#clone_(assistant_id, request_options: {}) ⇒ Telnyx::Models::AI::InferenceEmbedding
Clone an existing assistant, excluding telephony and messaging settings.
315 316 317 318 319 320 321 322 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 315 def clone_(assistant_id, params = {}) @client.request( method: :post, path: ["ai/assistants/%1$s/clone", assistant_id], model: Telnyx::AI::InferenceEmbedding, options: params[:request_options] ) end |
#create(instructions:, name:, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, voice_settings: nil, widget_settings: nil, request_options: {}) ⇒ Telnyx::Models::AI::InferenceEmbedding
Some parameter documentations has been truncated, see Models::AI::AssistantCreateParams for more details.
Create a new AI Assistant.
104 105 106 107 108 109 110 111 112 113 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 104 def create(params) parsed, = Telnyx::AI::AssistantCreateParams.dump_request(params) @client.request( method: :post, path: "ai/assistants", body: parsed, model: Telnyx::AI::InferenceEmbedding, options: ) end |
#delete(assistant_id, request_options: {}) ⇒ Telnyx::Models::AI::AssistantDeleteResponse
Delete an AI Assistant by ‘assistant_id`.
260 261 262 263 264 265 266 267 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 260 def delete(assistant_id, params = {}) @client.request( method: :delete, path: ["ai/assistants/%1$s", assistant_id], model: Telnyx::Models::AI::AssistantDeleteResponse, options: params[:request_options] ) end |
#get_texml(assistant_id, request_options: {}) ⇒ String
Get an assistant texml by ‘assistant_id`.
335 336 337 338 339 340 341 342 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 335 def get_texml(assistant_id, params = {}) @client.request( method: :get, path: ["ai/assistants/%1$s/texml", assistant_id], model: String, options: params[:request_options] ) end |
#imports(api_key_ref:, provider:, import_ids: nil, request_options: {}) ⇒ Telnyx::Models::AI::AssistantsList
Some parameter documentations has been truncated, see Models::AI::AssistantImportsParams for more details.
Import assistants from external providers. Any assistant that has already been imported will be overwritten with its latest version from the importing provider.
364 365 366 367 368 369 370 371 372 373 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 364 def imports(params) parsed, = Telnyx::AI::AssistantImportsParams.dump_request(params) @client.request( method: :post, path: "ai/assistants/import", body: parsed, model: Telnyx::AI::AssistantsList, options: ) end |
#list(request_options: {}) ⇒ Telnyx::Models::AI::AssistantsList
Retrieve a list of all AI Assistants configured by the user.
240 241 242 243 244 245 246 247 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 240 def list(params = {}) @client.request( method: :get, path: "ai/assistants", model: Telnyx::AI::AssistantsList, options: params[:request_options] ) end |
#retrieve(assistant_id, call_control_id: nil, fetch_dynamic_variables_from_webhook: nil, from: nil, to: nil, request_options: {}) ⇒ Telnyx::Models::AI::InferenceEmbedding
Retrieve an AI Assistant configuration by ‘assistant_id`.
134 135 136 137 138 139 140 141 142 143 144 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 134 def retrieve(assistant_id, params = {}) parsed, = Telnyx::AI::AssistantRetrieveParams.dump_request(params) query = Telnyx::Internal::Util.encode_query_params(parsed) @client.request( method: :get, path: ["ai/assistants/%1$s", assistant_id], query: query, model: Telnyx::AI::InferenceEmbedding, options: ) end |
#send_sms(assistant_id, from:, to:, conversation_metadata: nil, should_create_conversation: nil, text: nil, request_options: {}) ⇒ Telnyx::Models::AI::AssistantSendSMSResponse
Send an SMS message for an assistant. This endpoint:
-
Validates the assistant exists and has messaging profile configured
-
If should_create_conversation is true, creates a new conversation with metadata
-
Sends the SMS message (If ‘text` is set, this will be sent. Otherwise, if this is the first message in the conversation and the assistant has a `greeting` configured, this will be sent. Otherwise the assistant will generate the text to send.)
-
Updates conversation metadata if provided
-
Returns the conversation ID
406 407 408 409 410 411 412 413 414 415 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 406 def send_sms(assistant_id, params) parsed, = Telnyx::AI::AssistantSendSMSParams.dump_request(params) @client.request( method: :post, path: ["ai/assistants/%1$s/chat/sms", assistant_id], body: parsed, model: Telnyx::Models::AI::AssistantSendSMSResponse, options: ) end |
#update(assistant_id, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, promote_to_main: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, widget_settings: nil, request_options: {}) ⇒ Telnyx::Models::AI::InferenceEmbedding
Some parameter documentations has been truncated, see Models::AI::AssistantUpdateParams for more details.
Update an AI Assistant’s attributes.
220 221 222 223 224 225 226 227 228 229 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 220 def update(assistant_id, params = {}) parsed, = Telnyx::AI::AssistantUpdateParams.dump_request(params) @client.request( method: :post, path: ["ai/assistants/%1$s", assistant_id], body: parsed, model: Telnyx::AI::InferenceEmbedding, options: ) end |