telnyx 5.92.0 → 5.94.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +16 -0
- data/README.md +1 -1
- data/lib/telnyx/models/ai/assistant_create_params.rb +265 -37
- data/lib/telnyx/models/ai/assistant_tool.rb +108 -21
- data/lib/telnyx/models/ai/assistant_update_params.rb +266 -30
- data/lib/telnyx/models/ai/assistants/update_assistant.rb +267 -30
- data/lib/telnyx/models/ai/inference_embedding.rb +287 -29
- data/lib/telnyx/models/ai/transfer_tool.rb +48 -22
- data/lib/telnyx/resources/ai/assistants/versions.rb +18 -6
- data/lib/telnyx/resources/ai/assistants.rb +35 -13
- data/lib/telnyx/version.rb +1 -1
- data/rbi/telnyx/models/ai/assistant_create_params.rbi +510 -52
- data/rbi/telnyx/models/ai/assistant_tool.rbi +171 -32
- data/rbi/telnyx/models/ai/assistant_update_params.rbi +510 -44
- data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +526 -44
- data/rbi/telnyx/models/ai/inference_embedding.rbi +540 -44
- data/rbi/telnyx/models/ai/transfer_tool.rbi +64 -30
- data/rbi/telnyx/resources/ai/assistants/versions.rbi +61 -13
- data/rbi/telnyx/resources/ai/assistants.rbi +112 -27
- data/sig/telnyx/models/ai/assistant_create_params.rbs +172 -5
- data/sig/telnyx/models/ai/assistant_tool.rbs +53 -12
- data/sig/telnyx/models/ai/assistant_update_params.rbs +172 -0
- data/sig/telnyx/models/ai/assistants/update_assistant.rbs +175 -0
- data/sig/telnyx/models/ai/inference_embedding.rbs +193 -0
- data/sig/telnyx/models/ai/transfer_tool.rbs +22 -12
- data/sig/telnyx/resources/ai/assistants/versions.rbs +6 -0
- data/sig/telnyx/resources/ai/assistants.rbs +12 -1
- metadata +2 -2
|
@@ -54,22 +54,25 @@ module Telnyx
|
|
|
54
54
|
attr_accessor :from
|
|
55
55
|
|
|
56
56
|
# The different possible targets of the transfer. The assistant will be able to
|
|
57
|
-
# choose one of the targets to transfer the call to.
|
|
58
|
-
|
|
57
|
+
# choose one of the targets to transfer the call to. This can also be a dynamic
|
|
58
|
+
# variable string like `{{ targets }}` where `targets` is returned by the dynamic
|
|
59
|
+
# variables webhook and resolves to an array of target objects at runtime.
|
|
60
|
+
sig { returns(Telnyx::AI::TransferTool::Transfer::Targets::Variants) }
|
|
59
61
|
attr_accessor :targets
|
|
60
62
|
|
|
61
63
|
sig do
|
|
62
64
|
params(
|
|
63
65
|
from: String,
|
|
64
|
-
targets:
|
|
65
|
-
T::Array[Telnyx::AI::TransferTool::Transfer::Target::OrHash]
|
|
66
|
+
targets: Telnyx::AI::TransferTool::Transfer::Targets::Variants
|
|
66
67
|
).returns(T.attached_class)
|
|
67
68
|
end
|
|
68
69
|
def self.new(
|
|
69
70
|
# Number or SIP URI placing the call.
|
|
70
71
|
from:,
|
|
71
72
|
# The different possible targets of the transfer. The assistant will be able to
|
|
72
|
-
# choose one of the targets to transfer the call to.
|
|
73
|
+
# choose one of the targets to transfer the call to. This can also be a dynamic
|
|
74
|
+
# variable string like `{{ targets }}` where `targets` is returned by the dynamic
|
|
75
|
+
# variables webhook and resolves to an array of target objects at runtime.
|
|
73
76
|
targets:
|
|
74
77
|
)
|
|
75
78
|
end
|
|
@@ -78,48 +81,79 @@ module Telnyx
|
|
|
78
81
|
override.returns(
|
|
79
82
|
{
|
|
80
83
|
from: String,
|
|
81
|
-
targets:
|
|
84
|
+
targets: Telnyx::AI::TransferTool::Transfer::Targets::Variants
|
|
82
85
|
}
|
|
83
86
|
)
|
|
84
87
|
end
|
|
85
88
|
def to_hash
|
|
86
89
|
end
|
|
87
90
|
|
|
88
|
-
|
|
89
|
-
|
|
91
|
+
# The different possible targets of the transfer. The assistant will be able to
|
|
92
|
+
# choose one of the targets to transfer the call to. This can also be a dynamic
|
|
93
|
+
# variable string like `{{ targets }}` where `targets` is returned by the dynamic
|
|
94
|
+
# variables webhook and resolves to an array of target objects at runtime.
|
|
95
|
+
module Targets
|
|
96
|
+
extend Telnyx::Internal::Type::Union
|
|
97
|
+
|
|
98
|
+
Variants =
|
|
90
99
|
T.type_alias do
|
|
91
100
|
T.any(
|
|
92
|
-
|
|
93
|
-
|
|
101
|
+
T::Array[
|
|
102
|
+
Telnyx::AI::TransferTool::Transfer::Targets::UnionMember0
|
|
103
|
+
],
|
|
104
|
+
String
|
|
94
105
|
)
|
|
95
106
|
end
|
|
96
107
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
sig { returns(T.nilable(String)) }
|
|
106
|
-
attr_reader :to
|
|
108
|
+
class UnionMember0 < Telnyx::Internal::Type::BaseModel
|
|
109
|
+
OrHash =
|
|
110
|
+
T.type_alias do
|
|
111
|
+
T.any(
|
|
112
|
+
Telnyx::AI::TransferTool::Transfer::Targets::UnionMember0,
|
|
113
|
+
Telnyx::Internal::AnyHash
|
|
114
|
+
)
|
|
115
|
+
end
|
|
107
116
|
|
|
108
|
-
|
|
109
|
-
|
|
117
|
+
# The destination number or SIP URI of the call.
|
|
118
|
+
sig { returns(String) }
|
|
119
|
+
attr_accessor :to
|
|
110
120
|
|
|
111
|
-
sig { params(name: String, to: String).returns(T.attached_class) }
|
|
112
|
-
def self.new(
|
|
113
121
|
# The name of the target.
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
122
|
+
sig { returns(T.nilable(String)) }
|
|
123
|
+
attr_reader :name
|
|
124
|
+
|
|
125
|
+
sig { params(name: String).void }
|
|
126
|
+
attr_writer :name
|
|
127
|
+
|
|
128
|
+
sig { params(to: String, name: String).returns(T.attached_class) }
|
|
129
|
+
def self.new(
|
|
130
|
+
# The destination number or SIP URI of the call.
|
|
131
|
+
to:,
|
|
132
|
+
# The name of the target.
|
|
133
|
+
name: nil
|
|
134
|
+
)
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
sig { override.returns({ to: String, name: String }) }
|
|
138
|
+
def to_hash
|
|
139
|
+
end
|
|
118
140
|
end
|
|
119
141
|
|
|
120
|
-
sig
|
|
121
|
-
|
|
142
|
+
sig do
|
|
143
|
+
override.returns(
|
|
144
|
+
T::Array[Telnyx::AI::TransferTool::Transfer::Targets::Variants]
|
|
145
|
+
)
|
|
122
146
|
end
|
|
147
|
+
def self.variants
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
UnionMember0Array =
|
|
151
|
+
T.let(
|
|
152
|
+
Telnyx::Internal::Type::ArrayOf[
|
|
153
|
+
Telnyx::AI::TransferTool::Transfer::Targets::UnionMember0
|
|
154
|
+
],
|
|
155
|
+
Telnyx::Internal::Type::Converter
|
|
156
|
+
)
|
|
123
157
|
end
|
|
124
158
|
end
|
|
125
159
|
|
|
@@ -34,6 +34,7 @@ module Telnyx
|
|
|
34
34
|
assistant_id: String,
|
|
35
35
|
description: String,
|
|
36
36
|
dynamic_variables: T::Hash[Symbol, T.anything],
|
|
37
|
+
dynamic_variables_webhook_timeout_ms: Integer,
|
|
37
38
|
dynamic_variables_webhook_url: String,
|
|
38
39
|
enabled_features: T::Array[Telnyx::AI::EnabledFeatures::OrSymbol],
|
|
39
40
|
external_llm:
|
|
@@ -43,7 +44,17 @@ module Telnyx
|
|
|
43
44
|
greeting: String,
|
|
44
45
|
insight_settings: Telnyx::AI::InsightSettings::OrHash,
|
|
45
46
|
instructions: String,
|
|
47
|
+
integrations:
|
|
48
|
+
T::Array[
|
|
49
|
+
Telnyx::AI::Assistants::UpdateAssistant::Integration::OrHash
|
|
50
|
+
],
|
|
51
|
+
interruption_settings:
|
|
52
|
+
Telnyx::AI::Assistants::UpdateAssistant::InterruptionSettings::OrHash,
|
|
46
53
|
llm_api_key_ref: String,
|
|
54
|
+
mcp_servers:
|
|
55
|
+
T::Array[
|
|
56
|
+
Telnyx::AI::Assistants::UpdateAssistant::McpServer::OrHash
|
|
57
|
+
],
|
|
47
58
|
messaging_settings: Telnyx::AI::MessagingSettings::OrHash,
|
|
48
59
|
model: String,
|
|
49
60
|
name: String,
|
|
@@ -51,6 +62,7 @@ module Telnyx
|
|
|
51
62
|
post_conversation_settings:
|
|
52
63
|
Telnyx::AI::Assistants::UpdateAssistant::PostConversationSettings::OrHash,
|
|
53
64
|
privacy_settings: Telnyx::AI::PrivacySettings::OrHash,
|
|
65
|
+
tags: T::Array[String],
|
|
54
66
|
telephony_settings: Telnyx::AI::TelephonySettings::OrHash,
|
|
55
67
|
tool_ids: T::Array[String],
|
|
56
68
|
tools:
|
|
@@ -69,6 +81,7 @@ module Telnyx
|
|
|
69
81
|
)
|
|
70
82
|
],
|
|
71
83
|
transcription: Telnyx::AI::TranscriptionSettings::OrHash,
|
|
84
|
+
version_name: String,
|
|
72
85
|
voice_settings: Telnyx::AI::VoiceSettings::OrHash,
|
|
73
86
|
widget_settings: Telnyx::AI::WidgetSettings::OrHash,
|
|
74
87
|
request_options: Telnyx::RequestOptions::OrHash
|
|
@@ -83,10 +96,19 @@ module Telnyx
|
|
|
83
96
|
description: nil,
|
|
84
97
|
# Body param: Map of dynamic variables and their default values
|
|
85
98
|
dynamic_variables: nil,
|
|
86
|
-
# Body param:
|
|
87
|
-
#
|
|
88
|
-
#
|
|
89
|
-
#
|
|
99
|
+
# Body param: Timeout in milliseconds for the dynamic variables webhook. Must be
|
|
100
|
+
# between 1 and 10000 ms. If the webhook does not respond within this timeout, the
|
|
101
|
+
# call proceeds with default values. See the
|
|
102
|
+
# [dynamic variables guide](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables).
|
|
103
|
+
dynamic_variables_webhook_timeout_ms: nil,
|
|
104
|
+
# Body param: If `dynamic_variables_webhook_url` is set, Telnyx sends a POST
|
|
105
|
+
# request to this URL at the start of the conversation to resolve dynamic
|
|
106
|
+
# variables. **Gotcha:** the webhook response must wrap variables under a
|
|
107
|
+
# top-level `dynamic_variables` object, e.g.
|
|
108
|
+
# `{"dynamic_variables": {"customer_name": "Jane"}}`. Returning a flat object will
|
|
109
|
+
# be ignored and variables will fall back to their defaults. See the
|
|
110
|
+
# [dynamic variables guide](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables)
|
|
111
|
+
# for the full request/response format and timeout behavior.
|
|
90
112
|
dynamic_variables_webhook_url: nil,
|
|
91
113
|
# Body param
|
|
92
114
|
enabled_features: nil,
|
|
@@ -106,17 +128,36 @@ module Telnyx
|
|
|
106
128
|
# Body param: System instructions for the assistant. These may be templated with
|
|
107
129
|
# [dynamic variables](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables)
|
|
108
130
|
instructions: nil,
|
|
109
|
-
# Body param:
|
|
110
|
-
#
|
|
131
|
+
# Body param: Connected integrations attached to the assistant. The catalog of
|
|
132
|
+
# available integrations is at `/ai/integrations`; the user's connected
|
|
133
|
+
# integrations are at `/ai/integrations/connections`. Each item references a
|
|
134
|
+
# catalog integration by `integration_id`.
|
|
135
|
+
integrations: nil,
|
|
136
|
+
# Body param: Settings for interruptions and how the assistant decides the user
|
|
137
|
+
# has finished speaking. These timings are most relevant when using non
|
|
138
|
+
# turn-taking transcription models. For turn-taking models like `deepgram/flux`,
|
|
139
|
+
# end-of-turn behavior is controlled by the transcription end-of-turn settings
|
|
140
|
+
# under `transcription.settings` (`eot_threshold`, `eot_timeout_ms`,
|
|
141
|
+
# `eager_eot_threshold`).
|
|
142
|
+
interruption_settings: nil,
|
|
143
|
+
# Body param: This is only needed when using third-party inference providers
|
|
144
|
+
# selected by `model`. The `identifier` for an integration secret
|
|
111
145
|
# [/v2/integration_secrets](https://developers.telnyx.com/api-reference/integration-secrets/create-a-secret)
|
|
112
|
-
# that refers to your LLM provider's API key.
|
|
113
|
-
#
|
|
146
|
+
# that refers to your LLM provider's API key. For bring-your-own endpoint
|
|
147
|
+
# authentication, use `external_llm.llm_api_key_ref` instead. Warning: Free plans
|
|
148
|
+
# are unlikely to work with this integration.
|
|
114
149
|
llm_api_key_ref: nil,
|
|
150
|
+
# Body param: MCP servers attached to the assistant. Create MCP servers with
|
|
151
|
+
# `/ai/mcp_servers`, then reference them by `id` here.
|
|
152
|
+
mcp_servers: nil,
|
|
115
153
|
# Body param
|
|
116
154
|
messaging_settings: nil,
|
|
117
|
-
# Body param: ID of the model to use. You can use
|
|
155
|
+
# Body param: ID of the model to use when `external_llm` is not set. You can use
|
|
156
|
+
# the
|
|
118
157
|
# [Get models API](https://developers.telnyx.com/api-reference/chat/get-available-models)
|
|
119
|
-
# to see
|
|
158
|
+
# to see available models. If `external_llm` is provided, the assistant uses
|
|
159
|
+
# `external_llm` instead of this field. If neither `model` nor `external_llm` is
|
|
160
|
+
# provided, Telnyx applies the default model.
|
|
120
161
|
model: nil,
|
|
121
162
|
# Body param
|
|
122
163
|
name: nil,
|
|
@@ -131,15 +172,22 @@ module Telnyx
|
|
|
131
172
|
post_conversation_settings: nil,
|
|
132
173
|
# Body param
|
|
133
174
|
privacy_settings: nil,
|
|
175
|
+
# Body param: Tags associated with the assistant. Tags can also be managed with
|
|
176
|
+
# the assistant tag endpoints.
|
|
177
|
+
tags: nil,
|
|
134
178
|
# Body param
|
|
135
179
|
telephony_settings: nil,
|
|
136
|
-
# Body param
|
|
180
|
+
# Body param: IDs of shared tools to attach to the assistant. New integrations
|
|
181
|
+
# should prefer `tool_ids` over inline `tools`.
|
|
137
182
|
tool_ids: nil,
|
|
138
|
-
# Body param:
|
|
139
|
-
#
|
|
183
|
+
# Body param: Deprecated for new integrations. Inline tool definitions available
|
|
184
|
+
# to the assistant. Prefer `tool_ids` to attach shared tools created with the AI
|
|
185
|
+
# Tools endpoints.
|
|
140
186
|
tools: nil,
|
|
141
187
|
# Body param
|
|
142
188
|
transcription: nil,
|
|
189
|
+
# Body param: Human-readable name for the assistant version.
|
|
190
|
+
version_name: nil,
|
|
143
191
|
# Body param
|
|
144
192
|
voice_settings: nil,
|
|
145
193
|
# Body param: Configuration settings for the assistant's web widget.
|
|
@@ -33,10 +33,10 @@ module Telnyx
|
|
|
33
33
|
sig do
|
|
34
34
|
params(
|
|
35
35
|
instructions: String,
|
|
36
|
-
model: String,
|
|
37
36
|
name: String,
|
|
38
37
|
description: String,
|
|
39
38
|
dynamic_variables: T::Hash[Symbol, T.anything],
|
|
39
|
+
dynamic_variables_webhook_timeout_ms: Integer,
|
|
40
40
|
dynamic_variables_webhook_url: String,
|
|
41
41
|
enabled_features: T::Array[Telnyx::AI::EnabledFeatures::OrSymbol],
|
|
42
42
|
external_llm:
|
|
@@ -45,12 +45,20 @@ module Telnyx
|
|
|
45
45
|
Telnyx::AI::AssistantCreateParams::FallbackConfig::OrHash,
|
|
46
46
|
greeting: String,
|
|
47
47
|
insight_settings: Telnyx::AI::InsightSettings::OrHash,
|
|
48
|
+
integrations:
|
|
49
|
+
T::Array[Telnyx::AI::AssistantCreateParams::Integration::OrHash],
|
|
50
|
+
interruption_settings:
|
|
51
|
+
Telnyx::AI::AssistantCreateParams::InterruptionSettings::OrHash,
|
|
48
52
|
llm_api_key_ref: String,
|
|
53
|
+
mcp_servers:
|
|
54
|
+
T::Array[Telnyx::AI::AssistantCreateParams::McpServer::OrHash],
|
|
49
55
|
messaging_settings: Telnyx::AI::MessagingSettings::OrHash,
|
|
56
|
+
model: String,
|
|
50
57
|
observability_settings: Telnyx::AI::ObservabilityReq::OrHash,
|
|
51
58
|
post_conversation_settings:
|
|
52
59
|
Telnyx::AI::AssistantCreateParams::PostConversationSettings::OrHash,
|
|
53
60
|
privacy_settings: Telnyx::AI::PrivacySettings::OrHash,
|
|
61
|
+
tags: T::Array[String],
|
|
54
62
|
telephony_settings: Telnyx::AI::TelephonySettings::OrHash,
|
|
55
63
|
tool_ids: T::Array[String],
|
|
56
64
|
tools:
|
|
@@ -78,18 +86,23 @@ module Telnyx
|
|
|
78
86
|
# System instructions for the assistant. These may be templated with
|
|
79
87
|
# [dynamic variables](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables)
|
|
80
88
|
instructions:,
|
|
81
|
-
# ID of the model to use. You can use the
|
|
82
|
-
# [Get models API](https://developers.telnyx.com/api-reference/chat/get-available-models)
|
|
83
|
-
# to see all of your available models,
|
|
84
|
-
model:,
|
|
85
89
|
name:,
|
|
86
90
|
description: nil,
|
|
87
91
|
# Map of dynamic variables and their default values
|
|
88
92
|
dynamic_variables: nil,
|
|
89
|
-
#
|
|
90
|
-
#
|
|
91
|
-
#
|
|
92
|
-
#
|
|
93
|
+
# Timeout in milliseconds for the dynamic variables webhook. Must be between 1 and
|
|
94
|
+
# 10000 ms. If the webhook does not respond within this timeout, the call proceeds
|
|
95
|
+
# with default values. See the
|
|
96
|
+
# [dynamic variables guide](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables).
|
|
97
|
+
dynamic_variables_webhook_timeout_ms: nil,
|
|
98
|
+
# If `dynamic_variables_webhook_url` is set, Telnyx sends a POST request to this
|
|
99
|
+
# URL at the start of the conversation to resolve dynamic variables. **Gotcha:**
|
|
100
|
+
# the webhook response must wrap variables under a top-level `dynamic_variables`
|
|
101
|
+
# object, e.g. `{"dynamic_variables": {"customer_name": "Jane"}}`. Returning a
|
|
102
|
+
# flat object will be ignored and variables will fall back to their defaults. See
|
|
103
|
+
# the
|
|
104
|
+
# [dynamic variables guide](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables)
|
|
105
|
+
# for the full request/response format and timeout behavior.
|
|
93
106
|
dynamic_variables_webhook_url: nil,
|
|
94
107
|
enabled_features: nil,
|
|
95
108
|
external_llm: nil,
|
|
@@ -102,13 +115,35 @@ module Telnyx
|
|
|
102
115
|
# have the assistant generate the greeting based on the system instructions.
|
|
103
116
|
greeting: nil,
|
|
104
117
|
insight_settings: nil,
|
|
105
|
-
#
|
|
106
|
-
#
|
|
118
|
+
# Connected integrations attached to the assistant. The catalog of available
|
|
119
|
+
# integrations is at `/ai/integrations`; the user's connected integrations are at
|
|
120
|
+
# `/ai/integrations/connections`. Each item references a catalog integration by
|
|
121
|
+
# `integration_id`.
|
|
122
|
+
integrations: nil,
|
|
123
|
+
# Settings for interruptions and how the assistant decides the user has finished
|
|
124
|
+
# speaking. These timings are most relevant when using non turn-taking
|
|
125
|
+
# transcription models. For turn-taking models like `deepgram/flux`, end-of-turn
|
|
126
|
+
# behavior is controlled by the transcription end-of-turn settings under
|
|
127
|
+
# `transcription.settings` (`eot_threshold`, `eot_timeout_ms`,
|
|
128
|
+
# `eager_eot_threshold`).
|
|
129
|
+
interruption_settings: nil,
|
|
130
|
+
# This is only needed when using third-party inference providers selected by
|
|
131
|
+
# `model`. The `identifier` for an integration secret
|
|
107
132
|
# [/v2/integration_secrets](https://developers.telnyx.com/api-reference/integration-secrets/create-a-secret)
|
|
108
|
-
# that refers to your LLM provider's API key.
|
|
109
|
-
#
|
|
133
|
+
# that refers to your LLM provider's API key. For bring-your-own endpoint
|
|
134
|
+
# authentication, use `external_llm.llm_api_key_ref` instead. Warning: Free plans
|
|
135
|
+
# are unlikely to work with this integration.
|
|
110
136
|
llm_api_key_ref: nil,
|
|
137
|
+
# MCP servers attached to the assistant. Create MCP servers with
|
|
138
|
+
# `/ai/mcp_servers`, then reference them by `id` here.
|
|
139
|
+
mcp_servers: nil,
|
|
111
140
|
messaging_settings: nil,
|
|
141
|
+
# ID of the model to use when `external_llm` is not set. You can use the
|
|
142
|
+
# [Get models API](https://developers.telnyx.com/api-reference/chat/get-available-models)
|
|
143
|
+
# to see available models. If `external_llm` is provided, the assistant uses
|
|
144
|
+
# `external_llm` instead of this field. If neither `model` nor `external_llm` is
|
|
145
|
+
# provided, Telnyx applies the default model.
|
|
146
|
+
model: nil,
|
|
112
147
|
observability_settings: nil,
|
|
113
148
|
# Configuration for post-conversation processing. When enabled, the assistant
|
|
114
149
|
# receives one additional LLM turn after the conversation ends, allowing it to
|
|
@@ -118,10 +153,16 @@ module Telnyx
|
|
|
118
153
|
# post-conversation. Beta feature.
|
|
119
154
|
post_conversation_settings: nil,
|
|
120
155
|
privacy_settings: nil,
|
|
156
|
+
# Tags associated with the assistant. Tags can also be managed with the assistant
|
|
157
|
+
# tag endpoints.
|
|
158
|
+
tags: nil,
|
|
121
159
|
telephony_settings: nil,
|
|
160
|
+
# IDs of shared tools to attach to the assistant. New integrations should prefer
|
|
161
|
+
# `tool_ids` over inline `tools`.
|
|
122
162
|
tool_ids: nil,
|
|
123
|
-
#
|
|
124
|
-
#
|
|
163
|
+
# Deprecated for new integrations. Inline tool definitions available to the
|
|
164
|
+
# assistant. Prefer `tool_ids` to attach shared tools created with the AI Tools
|
|
165
|
+
# endpoints.
|
|
125
166
|
tools: nil,
|
|
126
167
|
transcription: nil,
|
|
127
168
|
voice_settings: nil,
|
|
@@ -158,6 +199,7 @@ module Telnyx
|
|
|
158
199
|
assistant_id: String,
|
|
159
200
|
description: String,
|
|
160
201
|
dynamic_variables: T::Hash[Symbol, T.anything],
|
|
202
|
+
dynamic_variables_webhook_timeout_ms: Integer,
|
|
161
203
|
dynamic_variables_webhook_url: String,
|
|
162
204
|
enabled_features: T::Array[Telnyx::AI::EnabledFeatures::OrSymbol],
|
|
163
205
|
external_llm:
|
|
@@ -167,7 +209,13 @@ module Telnyx
|
|
|
167
209
|
greeting: String,
|
|
168
210
|
insight_settings: Telnyx::AI::InsightSettings::OrHash,
|
|
169
211
|
instructions: String,
|
|
212
|
+
integrations:
|
|
213
|
+
T::Array[Telnyx::AI::AssistantUpdateParams::Integration::OrHash],
|
|
214
|
+
interruption_settings:
|
|
215
|
+
Telnyx::AI::AssistantUpdateParams::InterruptionSettings::OrHash,
|
|
170
216
|
llm_api_key_ref: String,
|
|
217
|
+
mcp_servers:
|
|
218
|
+
T::Array[Telnyx::AI::AssistantUpdateParams::McpServer::OrHash],
|
|
171
219
|
messaging_settings: Telnyx::AI::MessagingSettings::OrHash,
|
|
172
220
|
model: String,
|
|
173
221
|
name: String,
|
|
@@ -176,6 +224,7 @@ module Telnyx
|
|
|
176
224
|
Telnyx::AI::AssistantUpdateParams::PostConversationSettings::OrHash,
|
|
177
225
|
privacy_settings: Telnyx::AI::PrivacySettings::OrHash,
|
|
178
226
|
promote_to_main: T::Boolean,
|
|
227
|
+
tags: T::Array[String],
|
|
179
228
|
telephony_settings: Telnyx::AI::TelephonySettings::OrHash,
|
|
180
229
|
tool_ids: T::Array[String],
|
|
181
230
|
tools:
|
|
@@ -194,6 +243,7 @@ module Telnyx
|
|
|
194
243
|
)
|
|
195
244
|
],
|
|
196
245
|
transcription: Telnyx::AI::TranscriptionSettings::OrHash,
|
|
246
|
+
version_name: String,
|
|
197
247
|
voice_settings: Telnyx::AI::VoiceSettings::OrHash,
|
|
198
248
|
widget_settings: Telnyx::AI::WidgetSettings::OrHash,
|
|
199
249
|
request_options: Telnyx::RequestOptions::OrHash
|
|
@@ -204,10 +254,19 @@ module Telnyx
|
|
|
204
254
|
description: nil,
|
|
205
255
|
# Map of dynamic variables and their default values
|
|
206
256
|
dynamic_variables: nil,
|
|
207
|
-
#
|
|
208
|
-
#
|
|
209
|
-
#
|
|
210
|
-
#
|
|
257
|
+
# Timeout in milliseconds for the dynamic variables webhook. Must be between 1 and
|
|
258
|
+
# 10000 ms. If the webhook does not respond within this timeout, the call proceeds
|
|
259
|
+
# with default values. See the
|
|
260
|
+
# [dynamic variables guide](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables).
|
|
261
|
+
dynamic_variables_webhook_timeout_ms: nil,
|
|
262
|
+
# If `dynamic_variables_webhook_url` is set, Telnyx sends a POST request to this
|
|
263
|
+
# URL at the start of the conversation to resolve dynamic variables. **Gotcha:**
|
|
264
|
+
# the webhook response must wrap variables under a top-level `dynamic_variables`
|
|
265
|
+
# object, e.g. `{"dynamic_variables": {"customer_name": "Jane"}}`. Returning a
|
|
266
|
+
# flat object will be ignored and variables will fall back to their defaults. See
|
|
267
|
+
# the
|
|
268
|
+
# [dynamic variables guide](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables)
|
|
269
|
+
# for the full request/response format and timeout behavior.
|
|
211
270
|
dynamic_variables_webhook_url: nil,
|
|
212
271
|
enabled_features: nil,
|
|
213
272
|
external_llm: nil,
|
|
@@ -223,16 +282,34 @@ module Telnyx
|
|
|
223
282
|
# System instructions for the assistant. These may be templated with
|
|
224
283
|
# [dynamic variables](https://developers.telnyx.com/docs/inference/ai-assistants/dynamic-variables)
|
|
225
284
|
instructions: nil,
|
|
226
|
-
#
|
|
227
|
-
#
|
|
285
|
+
# Connected integrations attached to the assistant. The catalog of available
|
|
286
|
+
# integrations is at `/ai/integrations`; the user's connected integrations are at
|
|
287
|
+
# `/ai/integrations/connections`. Each item references a catalog integration by
|
|
288
|
+
# `integration_id`.
|
|
289
|
+
integrations: nil,
|
|
290
|
+
# Settings for interruptions and how the assistant decides the user has finished
|
|
291
|
+
# speaking. These timings are most relevant when using non turn-taking
|
|
292
|
+
# transcription models. For turn-taking models like `deepgram/flux`, end-of-turn
|
|
293
|
+
# behavior is controlled by the transcription end-of-turn settings under
|
|
294
|
+
# `transcription.settings` (`eot_threshold`, `eot_timeout_ms`,
|
|
295
|
+
# `eager_eot_threshold`).
|
|
296
|
+
interruption_settings: nil,
|
|
297
|
+
# This is only needed when using third-party inference providers selected by
|
|
298
|
+
# `model`. The `identifier` for an integration secret
|
|
228
299
|
# [/v2/integration_secrets](https://developers.telnyx.com/api-reference/integration-secrets/create-a-secret)
|
|
229
|
-
# that refers to your LLM provider's API key.
|
|
230
|
-
#
|
|
300
|
+
# that refers to your LLM provider's API key. For bring-your-own endpoint
|
|
301
|
+
# authentication, use `external_llm.llm_api_key_ref` instead. Warning: Free plans
|
|
302
|
+
# are unlikely to work with this integration.
|
|
231
303
|
llm_api_key_ref: nil,
|
|
304
|
+
# MCP servers attached to the assistant. Create MCP servers with
|
|
305
|
+
# `/ai/mcp_servers`, then reference them by `id` here.
|
|
306
|
+
mcp_servers: nil,
|
|
232
307
|
messaging_settings: nil,
|
|
233
|
-
# ID of the model to use. You can use the
|
|
308
|
+
# ID of the model to use when `external_llm` is not set. You can use the
|
|
234
309
|
# [Get models API](https://developers.telnyx.com/api-reference/chat/get-available-models)
|
|
235
|
-
# to see
|
|
310
|
+
# to see available models. If `external_llm` is provided, the assistant uses
|
|
311
|
+
# `external_llm` instead of this field. If neither `model` nor `external_llm` is
|
|
312
|
+
# provided, Telnyx applies the default model.
|
|
236
313
|
model: nil,
|
|
237
314
|
name: nil,
|
|
238
315
|
observability_settings: nil,
|
|
@@ -247,12 +324,20 @@ module Telnyx
|
|
|
247
324
|
# Indicates whether the assistant should be promoted to the main version. Defaults
|
|
248
325
|
# to true.
|
|
249
326
|
promote_to_main: nil,
|
|
327
|
+
# Tags associated with the assistant. Tags can also be managed with the assistant
|
|
328
|
+
# tag endpoints.
|
|
329
|
+
tags: nil,
|
|
250
330
|
telephony_settings: nil,
|
|
331
|
+
# IDs of shared tools to attach to the assistant. New integrations should prefer
|
|
332
|
+
# `tool_ids` over inline `tools`.
|
|
251
333
|
tool_ids: nil,
|
|
252
|
-
#
|
|
253
|
-
#
|
|
334
|
+
# Deprecated for new integrations. Inline tool definitions available to the
|
|
335
|
+
# assistant. Prefer `tool_ids` to attach shared tools created with the AI Tools
|
|
336
|
+
# endpoints.
|
|
254
337
|
tools: nil,
|
|
255
338
|
transcription: nil,
|
|
339
|
+
# Human-readable name for the assistant version.
|
|
340
|
+
version_name: nil,
|
|
256
341
|
voice_settings: nil,
|
|
257
342
|
# Configuration settings for the assistant's web widget.
|
|
258
343
|
widget_settings: nil,
|