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/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, ScheduledEvents, Tags, Tests, Tools, Versions
Instance Attribute Summary collapse
-
#canary_deploys ⇒ Telnyx::Resources::AI::Assistants::CanaryDeploys
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.
402 403 404 405 406 407 408 409 410 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 402 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) 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 |
#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).
283 284 285 286 287 288 289 290 291 292 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 283 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.
304 305 306 307 308 309 310 311 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 304 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.
100 101 102 103 104 105 106 107 108 109 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 100 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`.
250 251 252 253 254 255 256 257 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 250 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`.
323 324 325 326 327 328 329 330 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 323 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.
352 353 354 355 356 357 358 359 360 361 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 352 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.
231 232 233 234 235 236 237 238 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 231 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`.
125 126 127 128 129 130 131 132 133 134 135 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 125 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
388 389 390 391 392 393 394 395 396 397 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 388 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.
211 212 213 214 215 216 217 218 219 220 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 211 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 |