telnyx 5.91.0 → 5.92.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 +8 -0
- data/README.md +1 -1
- data/lib/telnyx/models/ai/assistant_create_params.rb +227 -9
- data/lib/telnyx/models/ai/assistant_update_params.rb +227 -9
- data/lib/telnyx/models/ai/assistants/update_assistant.rb +232 -9
- data/lib/telnyx/models/ai/inference_embedding.rb +230 -9
- data/lib/telnyx/models/calls/transcription_start_request.rb +171 -3
- data/lib/telnyx/resources/ai/assistants/versions.rb +3 -3
- data/lib/telnyx/resources/ai/assistants.rb +6 -6
- data/lib/telnyx/resources/calls/actions.rb +1 -1
- data/lib/telnyx/version.rb +1 -1
- data/lib/telnyx.rb +0 -6
- data/rbi/telnyx/models/ai/assistant_create_params.rbi +455 -12
- data/rbi/telnyx/models/ai/assistant_update_params.rbi +455 -12
- data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +461 -12
- data/rbi/telnyx/models/ai/inference_embedding.rbi +452 -12
- data/rbi/telnyx/models/calls/transcription_start_request.rbi +490 -0
- data/rbi/telnyx/resources/ai/assistants/versions.rbi +5 -3
- data/rbi/telnyx/resources/ai/assistants.rbi +10 -6
- data/rbi/telnyx/resources/calls/actions.rbi +2 -0
- data/sig/telnyx/models/ai/assistant_create_params.rbs +205 -18
- data/sig/telnyx/models/ai/assistant_update_params.rbs +205 -18
- data/sig/telnyx/models/ai/assistants/update_assistant.rbs +205 -18
- data/sig/telnyx/models/ai/inference_embedding.rbs +206 -17
- data/sig/telnyx/models/calls/transcription_start_request.rbs +187 -1
- data/sig/telnyx/resources/ai/assistants/versions.rbs +3 -3
- data/sig/telnyx/resources/ai/assistants.rbs +6 -6
- metadata +1 -19
- data/lib/telnyx/models/ai/external_llm.rb +0 -87
- data/lib/telnyx/models/ai/external_llm_req.rb +0 -87
- data/lib/telnyx/models/ai/fallback_config.rb +0 -37
- data/lib/telnyx/models/ai/fallback_config_req.rb +0 -37
- data/lib/telnyx/models/ai/post_conversation_settings.rb +0 -30
- data/lib/telnyx/models/ai/post_conversation_settings_req.rb +0 -30
- data/rbi/telnyx/models/ai/external_llm.rbi +0 -157
- data/rbi/telnyx/models/ai/external_llm_req.rbi +0 -157
- data/rbi/telnyx/models/ai/fallback_config.rbi +0 -64
- data/rbi/telnyx/models/ai/fallback_config_req.rbi +0 -64
- data/rbi/telnyx/models/ai/post_conversation_settings.rbi +0 -45
- data/rbi/telnyx/models/ai/post_conversation_settings_req.rbi +0 -45
- data/sig/telnyx/models/ai/external_llm.rbs +0 -75
- data/sig/telnyx/models/ai/external_llm_req.rbs +0 -75
- data/sig/telnyx/models/ai/fallback_config.rbs +0 -38
- data/sig/telnyx/models/ai/fallback_config_req.rbs +0 -40
- data/sig/telnyx/models/ai/post_conversation_settings.rbs +0 -17
- data/sig/telnyx/models/ai/post_conversation_settings_req.rbs +0 -17
|
@@ -66,16 +66,27 @@ module Telnyx
|
|
|
66
66
|
end
|
|
67
67
|
attr_writer :enabled_features
|
|
68
68
|
|
|
69
|
-
sig { returns(T.nilable(Telnyx::AI::ExternalLlm)) }
|
|
69
|
+
sig { returns(T.nilable(Telnyx::AI::InferenceEmbedding::ExternalLlm)) }
|
|
70
70
|
attr_reader :external_llm
|
|
71
71
|
|
|
72
|
-
sig
|
|
72
|
+
sig do
|
|
73
|
+
params(
|
|
74
|
+
external_llm: Telnyx::AI::InferenceEmbedding::ExternalLlm::OrHash
|
|
75
|
+
).void
|
|
76
|
+
end
|
|
73
77
|
attr_writer :external_llm
|
|
74
78
|
|
|
75
|
-
sig
|
|
79
|
+
sig do
|
|
80
|
+
returns(T.nilable(Telnyx::AI::InferenceEmbedding::FallbackConfig))
|
|
81
|
+
end
|
|
76
82
|
attr_reader :fallback_config
|
|
77
83
|
|
|
78
|
-
sig
|
|
84
|
+
sig do
|
|
85
|
+
params(
|
|
86
|
+
fallback_config:
|
|
87
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::OrHash
|
|
88
|
+
).void
|
|
89
|
+
end
|
|
79
90
|
attr_writer :fallback_config
|
|
80
91
|
|
|
81
92
|
# Text that the assistant will use to start the conversation. This may be
|
|
@@ -137,13 +148,17 @@ module Telnyx
|
|
|
137
148
|
# can execute multiple parallel or sequential tools during this phase.
|
|
138
149
|
# Telephony-control tools (e.g. hangup, transfer) are unavailable
|
|
139
150
|
# post-conversation. Beta feature.
|
|
140
|
-
sig
|
|
151
|
+
sig do
|
|
152
|
+
returns(
|
|
153
|
+
T.nilable(Telnyx::AI::InferenceEmbedding::PostConversationSettings)
|
|
154
|
+
)
|
|
155
|
+
end
|
|
141
156
|
attr_reader :post_conversation_settings
|
|
142
157
|
|
|
143
158
|
sig do
|
|
144
159
|
params(
|
|
145
160
|
post_conversation_settings:
|
|
146
|
-
Telnyx::AI::PostConversationSettings::OrHash
|
|
161
|
+
Telnyx::AI::InferenceEmbedding::PostConversationSettings::OrHash
|
|
147
162
|
).void
|
|
148
163
|
end
|
|
149
164
|
attr_writer :post_conversation_settings
|
|
@@ -224,8 +239,9 @@ module Telnyx
|
|
|
224
239
|
dynamic_variables: T::Hash[Symbol, T.anything],
|
|
225
240
|
dynamic_variables_webhook_url: String,
|
|
226
241
|
enabled_features: T::Array[Telnyx::AI::EnabledFeatures::OrSymbol],
|
|
227
|
-
external_llm: Telnyx::AI::ExternalLlm::OrHash,
|
|
228
|
-
fallback_config:
|
|
242
|
+
external_llm: Telnyx::AI::InferenceEmbedding::ExternalLlm::OrHash,
|
|
243
|
+
fallback_config:
|
|
244
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::OrHash,
|
|
229
245
|
greeting: String,
|
|
230
246
|
import_metadata: Telnyx::AI::ImportMetadata::OrHash,
|
|
231
247
|
insight_settings: Telnyx::AI::InsightSettings::OrHash,
|
|
@@ -233,7 +249,7 @@ module Telnyx
|
|
|
233
249
|
messaging_settings: Telnyx::AI::MessagingSettings::OrHash,
|
|
234
250
|
observability_settings: Telnyx::AI::Observability::OrHash,
|
|
235
251
|
post_conversation_settings:
|
|
236
|
-
Telnyx::AI::PostConversationSettings::OrHash,
|
|
252
|
+
Telnyx::AI::InferenceEmbedding::PostConversationSettings::OrHash,
|
|
237
253
|
privacy_settings: Telnyx::AI::PrivacySettings::OrHash,
|
|
238
254
|
telephony_settings: Telnyx::AI::TelephonySettings::OrHash,
|
|
239
255
|
tools:
|
|
@@ -327,15 +343,16 @@ module Telnyx
|
|
|
327
343
|
dynamic_variables_webhook_url: String,
|
|
328
344
|
enabled_features:
|
|
329
345
|
T::Array[Telnyx::AI::EnabledFeatures::TaggedSymbol],
|
|
330
|
-
external_llm: Telnyx::AI::ExternalLlm,
|
|
331
|
-
fallback_config: Telnyx::AI::FallbackConfig,
|
|
346
|
+
external_llm: Telnyx::AI::InferenceEmbedding::ExternalLlm,
|
|
347
|
+
fallback_config: Telnyx::AI::InferenceEmbedding::FallbackConfig,
|
|
332
348
|
greeting: String,
|
|
333
349
|
import_metadata: Telnyx::AI::ImportMetadata,
|
|
334
350
|
insight_settings: Telnyx::AI::InsightSettings,
|
|
335
351
|
llm_api_key_ref: String,
|
|
336
352
|
messaging_settings: Telnyx::AI::MessagingSettings,
|
|
337
353
|
observability_settings: Telnyx::AI::Observability,
|
|
338
|
-
post_conversation_settings:
|
|
354
|
+
post_conversation_settings:
|
|
355
|
+
Telnyx::AI::InferenceEmbedding::PostConversationSettings,
|
|
339
356
|
privacy_settings: Telnyx::AI::PrivacySettings,
|
|
340
357
|
telephony_settings: Telnyx::AI::TelephonySettings,
|
|
341
358
|
tools: T::Array[Telnyx::AI::AssistantTool::Variants],
|
|
@@ -347,6 +364,429 @@ module Telnyx
|
|
|
347
364
|
end
|
|
348
365
|
def to_hash
|
|
349
366
|
end
|
|
367
|
+
|
|
368
|
+
class ExternalLlm < Telnyx::Internal::Type::BaseModel
|
|
369
|
+
OrHash =
|
|
370
|
+
T.type_alias do
|
|
371
|
+
T.any(
|
|
372
|
+
Telnyx::AI::InferenceEmbedding::ExternalLlm,
|
|
373
|
+
Telnyx::Internal::AnyHash
|
|
374
|
+
)
|
|
375
|
+
end
|
|
376
|
+
|
|
377
|
+
# Base URL for the external LLM endpoint.
|
|
378
|
+
sig { returns(String) }
|
|
379
|
+
attr_accessor :base_url
|
|
380
|
+
|
|
381
|
+
# Model identifier to use with the external LLM endpoint.
|
|
382
|
+
sig { returns(String) }
|
|
383
|
+
attr_accessor :model
|
|
384
|
+
|
|
385
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
386
|
+
sig do
|
|
387
|
+
returns(
|
|
388
|
+
T.nilable(
|
|
389
|
+
Telnyx::AI::InferenceEmbedding::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
390
|
+
)
|
|
391
|
+
)
|
|
392
|
+
end
|
|
393
|
+
attr_reader :authentication_method
|
|
394
|
+
|
|
395
|
+
sig do
|
|
396
|
+
params(
|
|
397
|
+
authentication_method:
|
|
398
|
+
Telnyx::AI::InferenceEmbedding::ExternalLlm::AuthenticationMethod::OrSymbol
|
|
399
|
+
).void
|
|
400
|
+
end
|
|
401
|
+
attr_writer :authentication_method
|
|
402
|
+
|
|
403
|
+
# Integration secret identifier for the client certificate used with certificate
|
|
404
|
+
# authentication.
|
|
405
|
+
sig { returns(T.nilable(String)) }
|
|
406
|
+
attr_reader :certificate_ref
|
|
407
|
+
|
|
408
|
+
sig { params(certificate_ref: String).void }
|
|
409
|
+
attr_writer :certificate_ref
|
|
410
|
+
|
|
411
|
+
# When enabled, Telnyx forwards the assistant's dynamic variables to the external
|
|
412
|
+
# LLM endpoint. Defaults to false. The chat completion request includes a
|
|
413
|
+
# top-level `extra_metadata` object when dynamic variables are available. For
|
|
414
|
+
# example:
|
|
415
|
+
# `{"extra_metadata":{"customer_name":"Jane","account_id":"acct_789","telnyx_agent_target":"+13125550100","telnyx_end_user_target":"+13125550123"}}`.
|
|
416
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
417
|
+
attr_reader :forward_metadata
|
|
418
|
+
|
|
419
|
+
sig { params(forward_metadata: T::Boolean).void }
|
|
420
|
+
attr_writer :forward_metadata
|
|
421
|
+
|
|
422
|
+
# Integration secret identifier for the external LLM API key.
|
|
423
|
+
sig { returns(T.nilable(String)) }
|
|
424
|
+
attr_reader :llm_api_key_ref
|
|
425
|
+
|
|
426
|
+
sig { params(llm_api_key_ref: String).void }
|
|
427
|
+
attr_writer :llm_api_key_ref
|
|
428
|
+
|
|
429
|
+
# URL used to retrieve an access token when certificate authentication is enabled.
|
|
430
|
+
sig { returns(T.nilable(String)) }
|
|
431
|
+
attr_reader :token_retrieval_url
|
|
432
|
+
|
|
433
|
+
sig { params(token_retrieval_url: String).void }
|
|
434
|
+
attr_writer :token_retrieval_url
|
|
435
|
+
|
|
436
|
+
sig do
|
|
437
|
+
params(
|
|
438
|
+
base_url: String,
|
|
439
|
+
model: String,
|
|
440
|
+
authentication_method:
|
|
441
|
+
Telnyx::AI::InferenceEmbedding::ExternalLlm::AuthenticationMethod::OrSymbol,
|
|
442
|
+
certificate_ref: String,
|
|
443
|
+
forward_metadata: T::Boolean,
|
|
444
|
+
llm_api_key_ref: String,
|
|
445
|
+
token_retrieval_url: String
|
|
446
|
+
).returns(T.attached_class)
|
|
447
|
+
end
|
|
448
|
+
def self.new(
|
|
449
|
+
# Base URL for the external LLM endpoint.
|
|
450
|
+
base_url:,
|
|
451
|
+
# Model identifier to use with the external LLM endpoint.
|
|
452
|
+
model:,
|
|
453
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
454
|
+
authentication_method: nil,
|
|
455
|
+
# Integration secret identifier for the client certificate used with certificate
|
|
456
|
+
# authentication.
|
|
457
|
+
certificate_ref: nil,
|
|
458
|
+
# When enabled, Telnyx forwards the assistant's dynamic variables to the external
|
|
459
|
+
# LLM endpoint. Defaults to false. The chat completion request includes a
|
|
460
|
+
# top-level `extra_metadata` object when dynamic variables are available. For
|
|
461
|
+
# example:
|
|
462
|
+
# `{"extra_metadata":{"customer_name":"Jane","account_id":"acct_789","telnyx_agent_target":"+13125550100","telnyx_end_user_target":"+13125550123"}}`.
|
|
463
|
+
forward_metadata: nil,
|
|
464
|
+
# Integration secret identifier for the external LLM API key.
|
|
465
|
+
llm_api_key_ref: nil,
|
|
466
|
+
# URL used to retrieve an access token when certificate authentication is enabled.
|
|
467
|
+
token_retrieval_url: nil
|
|
468
|
+
)
|
|
469
|
+
end
|
|
470
|
+
|
|
471
|
+
sig do
|
|
472
|
+
override.returns(
|
|
473
|
+
{
|
|
474
|
+
base_url: String,
|
|
475
|
+
model: String,
|
|
476
|
+
authentication_method:
|
|
477
|
+
Telnyx::AI::InferenceEmbedding::ExternalLlm::AuthenticationMethod::TaggedSymbol,
|
|
478
|
+
certificate_ref: String,
|
|
479
|
+
forward_metadata: T::Boolean,
|
|
480
|
+
llm_api_key_ref: String,
|
|
481
|
+
token_retrieval_url: String
|
|
482
|
+
}
|
|
483
|
+
)
|
|
484
|
+
end
|
|
485
|
+
def to_hash
|
|
486
|
+
end
|
|
487
|
+
|
|
488
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
489
|
+
module AuthenticationMethod
|
|
490
|
+
extend Telnyx::Internal::Type::Enum
|
|
491
|
+
|
|
492
|
+
TaggedSymbol =
|
|
493
|
+
T.type_alias do
|
|
494
|
+
T.all(
|
|
495
|
+
Symbol,
|
|
496
|
+
Telnyx::AI::InferenceEmbedding::ExternalLlm::AuthenticationMethod
|
|
497
|
+
)
|
|
498
|
+
end
|
|
499
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
500
|
+
|
|
501
|
+
TOKEN =
|
|
502
|
+
T.let(
|
|
503
|
+
:token,
|
|
504
|
+
Telnyx::AI::InferenceEmbedding::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
505
|
+
)
|
|
506
|
+
CERTIFICATE =
|
|
507
|
+
T.let(
|
|
508
|
+
:certificate,
|
|
509
|
+
Telnyx::AI::InferenceEmbedding::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
510
|
+
)
|
|
511
|
+
|
|
512
|
+
sig do
|
|
513
|
+
override.returns(
|
|
514
|
+
T::Array[
|
|
515
|
+
Telnyx::AI::InferenceEmbedding::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
516
|
+
]
|
|
517
|
+
)
|
|
518
|
+
end
|
|
519
|
+
def self.values
|
|
520
|
+
end
|
|
521
|
+
end
|
|
522
|
+
end
|
|
523
|
+
|
|
524
|
+
class FallbackConfig < Telnyx::Internal::Type::BaseModel
|
|
525
|
+
OrHash =
|
|
526
|
+
T.type_alias do
|
|
527
|
+
T.any(
|
|
528
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig,
|
|
529
|
+
Telnyx::Internal::AnyHash
|
|
530
|
+
)
|
|
531
|
+
end
|
|
532
|
+
|
|
533
|
+
sig do
|
|
534
|
+
returns(
|
|
535
|
+
T.nilable(
|
|
536
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm
|
|
537
|
+
)
|
|
538
|
+
)
|
|
539
|
+
end
|
|
540
|
+
attr_reader :external_llm
|
|
541
|
+
|
|
542
|
+
sig do
|
|
543
|
+
params(
|
|
544
|
+
external_llm:
|
|
545
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm::OrHash
|
|
546
|
+
).void
|
|
547
|
+
end
|
|
548
|
+
attr_writer :external_llm
|
|
549
|
+
|
|
550
|
+
# Integration secret identifier for the fallback model API key.
|
|
551
|
+
sig { returns(T.nilable(String)) }
|
|
552
|
+
attr_reader :llm_api_key_ref
|
|
553
|
+
|
|
554
|
+
sig { params(llm_api_key_ref: String).void }
|
|
555
|
+
attr_writer :llm_api_key_ref
|
|
556
|
+
|
|
557
|
+
# Fallback Telnyx-hosted model to use when the primary LLM provider is
|
|
558
|
+
# unavailable.
|
|
559
|
+
sig { returns(T.nilable(String)) }
|
|
560
|
+
attr_reader :model
|
|
561
|
+
|
|
562
|
+
sig { params(model: String).void }
|
|
563
|
+
attr_writer :model
|
|
564
|
+
|
|
565
|
+
sig do
|
|
566
|
+
params(
|
|
567
|
+
external_llm:
|
|
568
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm::OrHash,
|
|
569
|
+
llm_api_key_ref: String,
|
|
570
|
+
model: String
|
|
571
|
+
).returns(T.attached_class)
|
|
572
|
+
end
|
|
573
|
+
def self.new(
|
|
574
|
+
external_llm: nil,
|
|
575
|
+
# Integration secret identifier for the fallback model API key.
|
|
576
|
+
llm_api_key_ref: nil,
|
|
577
|
+
# Fallback Telnyx-hosted model to use when the primary LLM provider is
|
|
578
|
+
# unavailable.
|
|
579
|
+
model: nil
|
|
580
|
+
)
|
|
581
|
+
end
|
|
582
|
+
|
|
583
|
+
sig do
|
|
584
|
+
override.returns(
|
|
585
|
+
{
|
|
586
|
+
external_llm:
|
|
587
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm,
|
|
588
|
+
llm_api_key_ref: String,
|
|
589
|
+
model: String
|
|
590
|
+
}
|
|
591
|
+
)
|
|
592
|
+
end
|
|
593
|
+
def to_hash
|
|
594
|
+
end
|
|
595
|
+
|
|
596
|
+
class ExternalLlm < Telnyx::Internal::Type::BaseModel
|
|
597
|
+
OrHash =
|
|
598
|
+
T.type_alias do
|
|
599
|
+
T.any(
|
|
600
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm,
|
|
601
|
+
Telnyx::Internal::AnyHash
|
|
602
|
+
)
|
|
603
|
+
end
|
|
604
|
+
|
|
605
|
+
# Base URL for the external LLM endpoint.
|
|
606
|
+
sig { returns(String) }
|
|
607
|
+
attr_accessor :base_url
|
|
608
|
+
|
|
609
|
+
# Model identifier to use with the external LLM endpoint.
|
|
610
|
+
sig { returns(String) }
|
|
611
|
+
attr_accessor :model
|
|
612
|
+
|
|
613
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
614
|
+
sig do
|
|
615
|
+
returns(
|
|
616
|
+
T.nilable(
|
|
617
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
618
|
+
)
|
|
619
|
+
)
|
|
620
|
+
end
|
|
621
|
+
attr_reader :authentication_method
|
|
622
|
+
|
|
623
|
+
sig do
|
|
624
|
+
params(
|
|
625
|
+
authentication_method:
|
|
626
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm::AuthenticationMethod::OrSymbol
|
|
627
|
+
).void
|
|
628
|
+
end
|
|
629
|
+
attr_writer :authentication_method
|
|
630
|
+
|
|
631
|
+
# Integration secret identifier for the client certificate used with certificate
|
|
632
|
+
# authentication.
|
|
633
|
+
sig { returns(T.nilable(String)) }
|
|
634
|
+
attr_reader :certificate_ref
|
|
635
|
+
|
|
636
|
+
sig { params(certificate_ref: String).void }
|
|
637
|
+
attr_writer :certificate_ref
|
|
638
|
+
|
|
639
|
+
# When enabled, Telnyx forwards the assistant's dynamic variables to the external
|
|
640
|
+
# LLM endpoint. Defaults to false. The chat completion request includes a
|
|
641
|
+
# top-level `extra_metadata` object when dynamic variables are available. For
|
|
642
|
+
# example:
|
|
643
|
+
# `{"extra_metadata":{"customer_name":"Jane","account_id":"acct_789","telnyx_agent_target":"+13125550100","telnyx_end_user_target":"+13125550123"}}`.
|
|
644
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
645
|
+
attr_reader :forward_metadata
|
|
646
|
+
|
|
647
|
+
sig { params(forward_metadata: T::Boolean).void }
|
|
648
|
+
attr_writer :forward_metadata
|
|
649
|
+
|
|
650
|
+
# Integration secret identifier for the external LLM API key.
|
|
651
|
+
sig { returns(T.nilable(String)) }
|
|
652
|
+
attr_reader :llm_api_key_ref
|
|
653
|
+
|
|
654
|
+
sig { params(llm_api_key_ref: String).void }
|
|
655
|
+
attr_writer :llm_api_key_ref
|
|
656
|
+
|
|
657
|
+
# URL used to retrieve an access token when certificate authentication is enabled.
|
|
658
|
+
sig { returns(T.nilable(String)) }
|
|
659
|
+
attr_reader :token_retrieval_url
|
|
660
|
+
|
|
661
|
+
sig { params(token_retrieval_url: String).void }
|
|
662
|
+
attr_writer :token_retrieval_url
|
|
663
|
+
|
|
664
|
+
sig do
|
|
665
|
+
params(
|
|
666
|
+
base_url: String,
|
|
667
|
+
model: String,
|
|
668
|
+
authentication_method:
|
|
669
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm::AuthenticationMethod::OrSymbol,
|
|
670
|
+
certificate_ref: String,
|
|
671
|
+
forward_metadata: T::Boolean,
|
|
672
|
+
llm_api_key_ref: String,
|
|
673
|
+
token_retrieval_url: String
|
|
674
|
+
).returns(T.attached_class)
|
|
675
|
+
end
|
|
676
|
+
def self.new(
|
|
677
|
+
# Base URL for the external LLM endpoint.
|
|
678
|
+
base_url:,
|
|
679
|
+
# Model identifier to use with the external LLM endpoint.
|
|
680
|
+
model:,
|
|
681
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
682
|
+
authentication_method: nil,
|
|
683
|
+
# Integration secret identifier for the client certificate used with certificate
|
|
684
|
+
# authentication.
|
|
685
|
+
certificate_ref: nil,
|
|
686
|
+
# When enabled, Telnyx forwards the assistant's dynamic variables to the external
|
|
687
|
+
# LLM endpoint. Defaults to false. The chat completion request includes a
|
|
688
|
+
# top-level `extra_metadata` object when dynamic variables are available. For
|
|
689
|
+
# example:
|
|
690
|
+
# `{"extra_metadata":{"customer_name":"Jane","account_id":"acct_789","telnyx_agent_target":"+13125550100","telnyx_end_user_target":"+13125550123"}}`.
|
|
691
|
+
forward_metadata: nil,
|
|
692
|
+
# Integration secret identifier for the external LLM API key.
|
|
693
|
+
llm_api_key_ref: nil,
|
|
694
|
+
# URL used to retrieve an access token when certificate authentication is enabled.
|
|
695
|
+
token_retrieval_url: nil
|
|
696
|
+
)
|
|
697
|
+
end
|
|
698
|
+
|
|
699
|
+
sig do
|
|
700
|
+
override.returns(
|
|
701
|
+
{
|
|
702
|
+
base_url: String,
|
|
703
|
+
model: String,
|
|
704
|
+
authentication_method:
|
|
705
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm::AuthenticationMethod::TaggedSymbol,
|
|
706
|
+
certificate_ref: String,
|
|
707
|
+
forward_metadata: T::Boolean,
|
|
708
|
+
llm_api_key_ref: String,
|
|
709
|
+
token_retrieval_url: String
|
|
710
|
+
}
|
|
711
|
+
)
|
|
712
|
+
end
|
|
713
|
+
def to_hash
|
|
714
|
+
end
|
|
715
|
+
|
|
716
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
717
|
+
module AuthenticationMethod
|
|
718
|
+
extend Telnyx::Internal::Type::Enum
|
|
719
|
+
|
|
720
|
+
TaggedSymbol =
|
|
721
|
+
T.type_alias do
|
|
722
|
+
T.all(
|
|
723
|
+
Symbol,
|
|
724
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm::AuthenticationMethod
|
|
725
|
+
)
|
|
726
|
+
end
|
|
727
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
728
|
+
|
|
729
|
+
TOKEN =
|
|
730
|
+
T.let(
|
|
731
|
+
:token,
|
|
732
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
733
|
+
)
|
|
734
|
+
CERTIFICATE =
|
|
735
|
+
T.let(
|
|
736
|
+
:certificate,
|
|
737
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
738
|
+
)
|
|
739
|
+
|
|
740
|
+
sig do
|
|
741
|
+
override.returns(
|
|
742
|
+
T::Array[
|
|
743
|
+
Telnyx::AI::InferenceEmbedding::FallbackConfig::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
744
|
+
]
|
|
745
|
+
)
|
|
746
|
+
end
|
|
747
|
+
def self.values
|
|
748
|
+
end
|
|
749
|
+
end
|
|
750
|
+
end
|
|
751
|
+
end
|
|
752
|
+
|
|
753
|
+
class PostConversationSettings < Telnyx::Internal::Type::BaseModel
|
|
754
|
+
OrHash =
|
|
755
|
+
T.type_alias do
|
|
756
|
+
T.any(
|
|
757
|
+
Telnyx::AI::InferenceEmbedding::PostConversationSettings,
|
|
758
|
+
Telnyx::Internal::AnyHash
|
|
759
|
+
)
|
|
760
|
+
end
|
|
761
|
+
|
|
762
|
+
# Whether post-conversation processing is enabled. When true, the assistant will
|
|
763
|
+
# be invoked after the conversation ends to perform any final tool calls. Defaults
|
|
764
|
+
# to false.
|
|
765
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
766
|
+
attr_reader :enabled
|
|
767
|
+
|
|
768
|
+
sig { params(enabled: T::Boolean).void }
|
|
769
|
+
attr_writer :enabled
|
|
770
|
+
|
|
771
|
+
# Configuration for post-conversation processing. When enabled, the assistant
|
|
772
|
+
# receives one additional LLM turn after the conversation ends, allowing it to
|
|
773
|
+
# execute tool calls such as logging to a CRM or sending a summary. The assistant
|
|
774
|
+
# can execute multiple parallel or sequential tools during this phase.
|
|
775
|
+
# Telephony-control tools (e.g. hangup, transfer) are unavailable
|
|
776
|
+
# post-conversation. Beta feature.
|
|
777
|
+
sig { params(enabled: T::Boolean).returns(T.attached_class) }
|
|
778
|
+
def self.new(
|
|
779
|
+
# Whether post-conversation processing is enabled. When true, the assistant will
|
|
780
|
+
# be invoked after the conversation ends to perform any final tool calls. Defaults
|
|
781
|
+
# to false.
|
|
782
|
+
enabled: nil
|
|
783
|
+
)
|
|
784
|
+
end
|
|
785
|
+
|
|
786
|
+
sig { override.returns({ enabled: T::Boolean }) }
|
|
787
|
+
def to_hash
|
|
788
|
+
end
|
|
789
|
+
end
|
|
350
790
|
end
|
|
351
791
|
end
|
|
352
792
|
end
|