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/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, 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.
-
#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, greeting: nil, insight_settings: nil, llm_api_key_ref: nil, messaging_settings: nil, privacy_settings: nil, telephony_settings: 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, greeting: nil, insight_settings: nil, instructions: nil, llm_api_key_ref: nil, messaging_settings: nil, model: nil, name: nil, privacy_settings: nil, promote_to_main: nil, telephony_settings: 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.
352 353 354 355 356 357 358 359 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 352 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) 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 |
#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).
233 234 235 236 237 238 239 240 241 242 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 233 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.
254 255 256 257 258 259 260 261 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 254 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, greeting: nil, insight_settings: nil, llm_api_key_ref: nil, messaging_settings: nil, privacy_settings: nil, telephony_settings: 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.
74 75 76 77 78 79 80 81 82 83 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 74 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`.
200 201 202 203 204 205 206 207 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 200 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`.
273 274 275 276 277 278 279 280 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 273 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.
302 303 304 305 306 307 308 309 310 311 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 302 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.
181 182 183 184 185 186 187 188 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 181 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`.
99 100 101 102 103 104 105 106 107 108 109 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 99 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
338 339 340 341 342 343 344 345 346 347 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 338 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, greeting: nil, insight_settings: nil, instructions: nil, llm_api_key_ref: nil, messaging_settings: nil, model: nil, name: nil, privacy_settings: nil, promote_to_main: nil, telephony_settings: 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.
161 162 163 164 165 166 167 168 169 170 |
# File 'lib/telnyx/resources/ai/assistants.rb', line 161 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 |