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:, model:, name:, description: nil, dynamic_variables: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, llm_api_key_ref: nil, messaging_settings: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: 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, description: nil, dynamic_variables: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, llm_api_key_ref: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, promote_to_main: 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::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.
376 377 378 379 380 381 382 383 384 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 376 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).
257 258 259 260 261 262 263 264 265 266 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 257 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.
278 279 280 281 282 283 284 285 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 278 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:, model:, name:, description: nil, dynamic_variables: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, llm_api_key_ref: nil, messaging_settings: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: 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.
88 89 90 91 92 93 94 95 96 97 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 88 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`.
224 225 226 227 228 229 230 231 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 224 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`.
297 298 299 300 301 302 303 304 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 297 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.
326 327 328 329 330 331 332 333 334 335 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 326 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.
205 206 207 208 209 210 211 212 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 205 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`.
113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 113 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
362 363 364 365 366 367 368 369 370 371 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 362 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, description: nil, dynamic_variables: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, llm_api_key_ref: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, promote_to_main: 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::AssistantUpdateParams for more details.
Update an AI Assistant’s attributes.
185 186 187 188 189 190 191 192 193 194 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 185 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 |