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
|
@@ -61,17 +61,28 @@ module Telnyx
|
|
|
61
61
|
end
|
|
62
62
|
attr_writer :enabled_features
|
|
63
63
|
|
|
64
|
-
sig
|
|
64
|
+
sig do
|
|
65
|
+
returns(T.nilable(Telnyx::AI::AssistantCreateParams::ExternalLlm))
|
|
66
|
+
end
|
|
65
67
|
attr_reader :external_llm
|
|
66
68
|
|
|
67
|
-
sig
|
|
69
|
+
sig do
|
|
70
|
+
params(
|
|
71
|
+
external_llm: Telnyx::AI::AssistantCreateParams::ExternalLlm::OrHash
|
|
72
|
+
).void
|
|
73
|
+
end
|
|
68
74
|
attr_writer :external_llm
|
|
69
75
|
|
|
70
|
-
sig
|
|
76
|
+
sig do
|
|
77
|
+
returns(T.nilable(Telnyx::AI::AssistantCreateParams::FallbackConfig))
|
|
78
|
+
end
|
|
71
79
|
attr_reader :fallback_config
|
|
72
80
|
|
|
73
81
|
sig do
|
|
74
|
-
params(
|
|
82
|
+
params(
|
|
83
|
+
fallback_config:
|
|
84
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::OrHash
|
|
85
|
+
).void
|
|
75
86
|
end
|
|
76
87
|
attr_writer :fallback_config
|
|
77
88
|
|
|
@@ -130,13 +141,19 @@ module Telnyx
|
|
|
130
141
|
# can execute multiple parallel or sequential tools during this phase.
|
|
131
142
|
# Telephony-control tools (e.g. hangup, transfer) are unavailable
|
|
132
143
|
# post-conversation. Beta feature.
|
|
133
|
-
sig
|
|
144
|
+
sig do
|
|
145
|
+
returns(
|
|
146
|
+
T.nilable(
|
|
147
|
+
Telnyx::AI::AssistantCreateParams::PostConversationSettings
|
|
148
|
+
)
|
|
149
|
+
)
|
|
150
|
+
end
|
|
134
151
|
attr_reader :post_conversation_settings
|
|
135
152
|
|
|
136
153
|
sig do
|
|
137
154
|
params(
|
|
138
155
|
post_conversation_settings:
|
|
139
|
-
Telnyx::AI::
|
|
156
|
+
Telnyx::AI::AssistantCreateParams::PostConversationSettings::OrHash
|
|
140
157
|
).void
|
|
141
158
|
end
|
|
142
159
|
attr_writer :post_conversation_settings
|
|
@@ -238,15 +255,17 @@ module Telnyx
|
|
|
238
255
|
dynamic_variables: T::Hash[Symbol, T.anything],
|
|
239
256
|
dynamic_variables_webhook_url: String,
|
|
240
257
|
enabled_features: T::Array[Telnyx::AI::EnabledFeatures::OrSymbol],
|
|
241
|
-
external_llm:
|
|
242
|
-
|
|
258
|
+
external_llm:
|
|
259
|
+
Telnyx::AI::AssistantCreateParams::ExternalLlm::OrHash,
|
|
260
|
+
fallback_config:
|
|
261
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::OrHash,
|
|
243
262
|
greeting: String,
|
|
244
263
|
insight_settings: Telnyx::AI::InsightSettings::OrHash,
|
|
245
264
|
llm_api_key_ref: String,
|
|
246
265
|
messaging_settings: Telnyx::AI::MessagingSettings::OrHash,
|
|
247
266
|
observability_settings: Telnyx::AI::ObservabilityReq::OrHash,
|
|
248
267
|
post_conversation_settings:
|
|
249
|
-
Telnyx::AI::
|
|
268
|
+
Telnyx::AI::AssistantCreateParams::PostConversationSettings::OrHash,
|
|
250
269
|
privacy_settings: Telnyx::AI::PrivacySettings::OrHash,
|
|
251
270
|
telephony_settings: Telnyx::AI::TelephonySettings::OrHash,
|
|
252
271
|
tool_ids: T::Array[String],
|
|
@@ -338,15 +357,16 @@ module Telnyx
|
|
|
338
357
|
dynamic_variables: T::Hash[Symbol, T.anything],
|
|
339
358
|
dynamic_variables_webhook_url: String,
|
|
340
359
|
enabled_features: T::Array[Telnyx::AI::EnabledFeatures::OrSymbol],
|
|
341
|
-
external_llm: Telnyx::AI::
|
|
342
|
-
fallback_config:
|
|
360
|
+
external_llm: Telnyx::AI::AssistantCreateParams::ExternalLlm,
|
|
361
|
+
fallback_config:
|
|
362
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig,
|
|
343
363
|
greeting: String,
|
|
344
364
|
insight_settings: Telnyx::AI::InsightSettings,
|
|
345
365
|
llm_api_key_ref: String,
|
|
346
366
|
messaging_settings: Telnyx::AI::MessagingSettings,
|
|
347
367
|
observability_settings: Telnyx::AI::ObservabilityReq,
|
|
348
368
|
post_conversation_settings:
|
|
349
|
-
Telnyx::AI::
|
|
369
|
+
Telnyx::AI::AssistantCreateParams::PostConversationSettings,
|
|
350
370
|
privacy_settings: Telnyx::AI::PrivacySettings,
|
|
351
371
|
telephony_settings: Telnyx::AI::TelephonySettings,
|
|
352
372
|
tool_ids: T::Array[String],
|
|
@@ -374,6 +394,429 @@ module Telnyx
|
|
|
374
394
|
end
|
|
375
395
|
def to_hash
|
|
376
396
|
end
|
|
397
|
+
|
|
398
|
+
class ExternalLlm < Telnyx::Internal::Type::BaseModel
|
|
399
|
+
OrHash =
|
|
400
|
+
T.type_alias do
|
|
401
|
+
T.any(
|
|
402
|
+
Telnyx::AI::AssistantCreateParams::ExternalLlm,
|
|
403
|
+
Telnyx::Internal::AnyHash
|
|
404
|
+
)
|
|
405
|
+
end
|
|
406
|
+
|
|
407
|
+
# Base URL for the external LLM endpoint.
|
|
408
|
+
sig { returns(String) }
|
|
409
|
+
attr_accessor :base_url
|
|
410
|
+
|
|
411
|
+
# Model identifier to use with the external LLM endpoint.
|
|
412
|
+
sig { returns(String) }
|
|
413
|
+
attr_accessor :model
|
|
414
|
+
|
|
415
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
416
|
+
sig do
|
|
417
|
+
returns(
|
|
418
|
+
T.nilable(
|
|
419
|
+
Telnyx::AI::AssistantCreateParams::ExternalLlm::AuthenticationMethod::OrSymbol
|
|
420
|
+
)
|
|
421
|
+
)
|
|
422
|
+
end
|
|
423
|
+
attr_reader :authentication_method
|
|
424
|
+
|
|
425
|
+
sig do
|
|
426
|
+
params(
|
|
427
|
+
authentication_method:
|
|
428
|
+
Telnyx::AI::AssistantCreateParams::ExternalLlm::AuthenticationMethod::OrSymbol
|
|
429
|
+
).void
|
|
430
|
+
end
|
|
431
|
+
attr_writer :authentication_method
|
|
432
|
+
|
|
433
|
+
# Integration secret identifier for the client certificate used with certificate
|
|
434
|
+
# authentication.
|
|
435
|
+
sig { returns(T.nilable(String)) }
|
|
436
|
+
attr_reader :certificate_ref
|
|
437
|
+
|
|
438
|
+
sig { params(certificate_ref: String).void }
|
|
439
|
+
attr_writer :certificate_ref
|
|
440
|
+
|
|
441
|
+
# When enabled, Telnyx forwards the assistant's dynamic variables to the external
|
|
442
|
+
# LLM endpoint. Defaults to false. The chat completion request includes a
|
|
443
|
+
# top-level `extra_metadata` object when dynamic variables are available. For
|
|
444
|
+
# example:
|
|
445
|
+
# `{"extra_metadata":{"customer_name":"Jane","account_id":"acct_789","telnyx_agent_target":"+13125550100","telnyx_end_user_target":"+13125550123"}}`.
|
|
446
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
447
|
+
attr_reader :forward_metadata
|
|
448
|
+
|
|
449
|
+
sig { params(forward_metadata: T::Boolean).void }
|
|
450
|
+
attr_writer :forward_metadata
|
|
451
|
+
|
|
452
|
+
# Integration secret identifier for the external LLM API key.
|
|
453
|
+
sig { returns(T.nilable(String)) }
|
|
454
|
+
attr_reader :llm_api_key_ref
|
|
455
|
+
|
|
456
|
+
sig { params(llm_api_key_ref: String).void }
|
|
457
|
+
attr_writer :llm_api_key_ref
|
|
458
|
+
|
|
459
|
+
# URL used to retrieve an access token when certificate authentication is enabled.
|
|
460
|
+
sig { returns(T.nilable(String)) }
|
|
461
|
+
attr_reader :token_retrieval_url
|
|
462
|
+
|
|
463
|
+
sig { params(token_retrieval_url: String).void }
|
|
464
|
+
attr_writer :token_retrieval_url
|
|
465
|
+
|
|
466
|
+
sig do
|
|
467
|
+
params(
|
|
468
|
+
base_url: String,
|
|
469
|
+
model: String,
|
|
470
|
+
authentication_method:
|
|
471
|
+
Telnyx::AI::AssistantCreateParams::ExternalLlm::AuthenticationMethod::OrSymbol,
|
|
472
|
+
certificate_ref: String,
|
|
473
|
+
forward_metadata: T::Boolean,
|
|
474
|
+
llm_api_key_ref: String,
|
|
475
|
+
token_retrieval_url: String
|
|
476
|
+
).returns(T.attached_class)
|
|
477
|
+
end
|
|
478
|
+
def self.new(
|
|
479
|
+
# Base URL for the external LLM endpoint.
|
|
480
|
+
base_url:,
|
|
481
|
+
# Model identifier to use with the external LLM endpoint.
|
|
482
|
+
model:,
|
|
483
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
484
|
+
authentication_method: nil,
|
|
485
|
+
# Integration secret identifier for the client certificate used with certificate
|
|
486
|
+
# authentication.
|
|
487
|
+
certificate_ref: nil,
|
|
488
|
+
# When enabled, Telnyx forwards the assistant's dynamic variables to the external
|
|
489
|
+
# LLM endpoint. Defaults to false. The chat completion request includes a
|
|
490
|
+
# top-level `extra_metadata` object when dynamic variables are available. For
|
|
491
|
+
# example:
|
|
492
|
+
# `{"extra_metadata":{"customer_name":"Jane","account_id":"acct_789","telnyx_agent_target":"+13125550100","telnyx_end_user_target":"+13125550123"}}`.
|
|
493
|
+
forward_metadata: nil,
|
|
494
|
+
# Integration secret identifier for the external LLM API key.
|
|
495
|
+
llm_api_key_ref: nil,
|
|
496
|
+
# URL used to retrieve an access token when certificate authentication is enabled.
|
|
497
|
+
token_retrieval_url: nil
|
|
498
|
+
)
|
|
499
|
+
end
|
|
500
|
+
|
|
501
|
+
sig do
|
|
502
|
+
override.returns(
|
|
503
|
+
{
|
|
504
|
+
base_url: String,
|
|
505
|
+
model: String,
|
|
506
|
+
authentication_method:
|
|
507
|
+
Telnyx::AI::AssistantCreateParams::ExternalLlm::AuthenticationMethod::OrSymbol,
|
|
508
|
+
certificate_ref: String,
|
|
509
|
+
forward_metadata: T::Boolean,
|
|
510
|
+
llm_api_key_ref: String,
|
|
511
|
+
token_retrieval_url: String
|
|
512
|
+
}
|
|
513
|
+
)
|
|
514
|
+
end
|
|
515
|
+
def to_hash
|
|
516
|
+
end
|
|
517
|
+
|
|
518
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
519
|
+
module AuthenticationMethod
|
|
520
|
+
extend Telnyx::Internal::Type::Enum
|
|
521
|
+
|
|
522
|
+
TaggedSymbol =
|
|
523
|
+
T.type_alias do
|
|
524
|
+
T.all(
|
|
525
|
+
Symbol,
|
|
526
|
+
Telnyx::AI::AssistantCreateParams::ExternalLlm::AuthenticationMethod
|
|
527
|
+
)
|
|
528
|
+
end
|
|
529
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
530
|
+
|
|
531
|
+
TOKEN =
|
|
532
|
+
T.let(
|
|
533
|
+
:token,
|
|
534
|
+
Telnyx::AI::AssistantCreateParams::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
535
|
+
)
|
|
536
|
+
CERTIFICATE =
|
|
537
|
+
T.let(
|
|
538
|
+
:certificate,
|
|
539
|
+
Telnyx::AI::AssistantCreateParams::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
540
|
+
)
|
|
541
|
+
|
|
542
|
+
sig do
|
|
543
|
+
override.returns(
|
|
544
|
+
T::Array[
|
|
545
|
+
Telnyx::AI::AssistantCreateParams::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
546
|
+
]
|
|
547
|
+
)
|
|
548
|
+
end
|
|
549
|
+
def self.values
|
|
550
|
+
end
|
|
551
|
+
end
|
|
552
|
+
end
|
|
553
|
+
|
|
554
|
+
class FallbackConfig < Telnyx::Internal::Type::BaseModel
|
|
555
|
+
OrHash =
|
|
556
|
+
T.type_alias do
|
|
557
|
+
T.any(
|
|
558
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig,
|
|
559
|
+
Telnyx::Internal::AnyHash
|
|
560
|
+
)
|
|
561
|
+
end
|
|
562
|
+
|
|
563
|
+
sig do
|
|
564
|
+
returns(
|
|
565
|
+
T.nilable(
|
|
566
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm
|
|
567
|
+
)
|
|
568
|
+
)
|
|
569
|
+
end
|
|
570
|
+
attr_reader :external_llm
|
|
571
|
+
|
|
572
|
+
sig do
|
|
573
|
+
params(
|
|
574
|
+
external_llm:
|
|
575
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::OrHash
|
|
576
|
+
).void
|
|
577
|
+
end
|
|
578
|
+
attr_writer :external_llm
|
|
579
|
+
|
|
580
|
+
# Integration secret identifier for the fallback model API key.
|
|
581
|
+
sig { returns(T.nilable(String)) }
|
|
582
|
+
attr_reader :llm_api_key_ref
|
|
583
|
+
|
|
584
|
+
sig { params(llm_api_key_ref: String).void }
|
|
585
|
+
attr_writer :llm_api_key_ref
|
|
586
|
+
|
|
587
|
+
# Fallback Telnyx-hosted model to use when the primary LLM provider is
|
|
588
|
+
# unavailable.
|
|
589
|
+
sig { returns(T.nilable(String)) }
|
|
590
|
+
attr_reader :model
|
|
591
|
+
|
|
592
|
+
sig { params(model: String).void }
|
|
593
|
+
attr_writer :model
|
|
594
|
+
|
|
595
|
+
sig do
|
|
596
|
+
params(
|
|
597
|
+
external_llm:
|
|
598
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::OrHash,
|
|
599
|
+
llm_api_key_ref: String,
|
|
600
|
+
model: String
|
|
601
|
+
).returns(T.attached_class)
|
|
602
|
+
end
|
|
603
|
+
def self.new(
|
|
604
|
+
external_llm: nil,
|
|
605
|
+
# Integration secret identifier for the fallback model API key.
|
|
606
|
+
llm_api_key_ref: nil,
|
|
607
|
+
# Fallback Telnyx-hosted model to use when the primary LLM provider is
|
|
608
|
+
# unavailable.
|
|
609
|
+
model: nil
|
|
610
|
+
)
|
|
611
|
+
end
|
|
612
|
+
|
|
613
|
+
sig do
|
|
614
|
+
override.returns(
|
|
615
|
+
{
|
|
616
|
+
external_llm:
|
|
617
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm,
|
|
618
|
+
llm_api_key_ref: String,
|
|
619
|
+
model: String
|
|
620
|
+
}
|
|
621
|
+
)
|
|
622
|
+
end
|
|
623
|
+
def to_hash
|
|
624
|
+
end
|
|
625
|
+
|
|
626
|
+
class ExternalLlm < Telnyx::Internal::Type::BaseModel
|
|
627
|
+
OrHash =
|
|
628
|
+
T.type_alias do
|
|
629
|
+
T.any(
|
|
630
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm,
|
|
631
|
+
Telnyx::Internal::AnyHash
|
|
632
|
+
)
|
|
633
|
+
end
|
|
634
|
+
|
|
635
|
+
# Base URL for the external LLM endpoint.
|
|
636
|
+
sig { returns(String) }
|
|
637
|
+
attr_accessor :base_url
|
|
638
|
+
|
|
639
|
+
# Model identifier to use with the external LLM endpoint.
|
|
640
|
+
sig { returns(String) }
|
|
641
|
+
attr_accessor :model
|
|
642
|
+
|
|
643
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
644
|
+
sig do
|
|
645
|
+
returns(
|
|
646
|
+
T.nilable(
|
|
647
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::AuthenticationMethod::OrSymbol
|
|
648
|
+
)
|
|
649
|
+
)
|
|
650
|
+
end
|
|
651
|
+
attr_reader :authentication_method
|
|
652
|
+
|
|
653
|
+
sig do
|
|
654
|
+
params(
|
|
655
|
+
authentication_method:
|
|
656
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::AuthenticationMethod::OrSymbol
|
|
657
|
+
).void
|
|
658
|
+
end
|
|
659
|
+
attr_writer :authentication_method
|
|
660
|
+
|
|
661
|
+
# Integration secret identifier for the client certificate used with certificate
|
|
662
|
+
# authentication.
|
|
663
|
+
sig { returns(T.nilable(String)) }
|
|
664
|
+
attr_reader :certificate_ref
|
|
665
|
+
|
|
666
|
+
sig { params(certificate_ref: String).void }
|
|
667
|
+
attr_writer :certificate_ref
|
|
668
|
+
|
|
669
|
+
# When enabled, Telnyx forwards the assistant's dynamic variables to the external
|
|
670
|
+
# LLM endpoint. Defaults to false. The chat completion request includes a
|
|
671
|
+
# top-level `extra_metadata` object when dynamic variables are available. For
|
|
672
|
+
# example:
|
|
673
|
+
# `{"extra_metadata":{"customer_name":"Jane","account_id":"acct_789","telnyx_agent_target":"+13125550100","telnyx_end_user_target":"+13125550123"}}`.
|
|
674
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
675
|
+
attr_reader :forward_metadata
|
|
676
|
+
|
|
677
|
+
sig { params(forward_metadata: T::Boolean).void }
|
|
678
|
+
attr_writer :forward_metadata
|
|
679
|
+
|
|
680
|
+
# Integration secret identifier for the external LLM API key.
|
|
681
|
+
sig { returns(T.nilable(String)) }
|
|
682
|
+
attr_reader :llm_api_key_ref
|
|
683
|
+
|
|
684
|
+
sig { params(llm_api_key_ref: String).void }
|
|
685
|
+
attr_writer :llm_api_key_ref
|
|
686
|
+
|
|
687
|
+
# URL used to retrieve an access token when certificate authentication is enabled.
|
|
688
|
+
sig { returns(T.nilable(String)) }
|
|
689
|
+
attr_reader :token_retrieval_url
|
|
690
|
+
|
|
691
|
+
sig { params(token_retrieval_url: String).void }
|
|
692
|
+
attr_writer :token_retrieval_url
|
|
693
|
+
|
|
694
|
+
sig do
|
|
695
|
+
params(
|
|
696
|
+
base_url: String,
|
|
697
|
+
model: String,
|
|
698
|
+
authentication_method:
|
|
699
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::AuthenticationMethod::OrSymbol,
|
|
700
|
+
certificate_ref: String,
|
|
701
|
+
forward_metadata: T::Boolean,
|
|
702
|
+
llm_api_key_ref: String,
|
|
703
|
+
token_retrieval_url: String
|
|
704
|
+
).returns(T.attached_class)
|
|
705
|
+
end
|
|
706
|
+
def self.new(
|
|
707
|
+
# Base URL for the external LLM endpoint.
|
|
708
|
+
base_url:,
|
|
709
|
+
# Model identifier to use with the external LLM endpoint.
|
|
710
|
+
model:,
|
|
711
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
712
|
+
authentication_method: nil,
|
|
713
|
+
# Integration secret identifier for the client certificate used with certificate
|
|
714
|
+
# authentication.
|
|
715
|
+
certificate_ref: nil,
|
|
716
|
+
# When enabled, Telnyx forwards the assistant's dynamic variables to the external
|
|
717
|
+
# LLM endpoint. Defaults to false. The chat completion request includes a
|
|
718
|
+
# top-level `extra_metadata` object when dynamic variables are available. For
|
|
719
|
+
# example:
|
|
720
|
+
# `{"extra_metadata":{"customer_name":"Jane","account_id":"acct_789","telnyx_agent_target":"+13125550100","telnyx_end_user_target":"+13125550123"}}`.
|
|
721
|
+
forward_metadata: nil,
|
|
722
|
+
# Integration secret identifier for the external LLM API key.
|
|
723
|
+
llm_api_key_ref: nil,
|
|
724
|
+
# URL used to retrieve an access token when certificate authentication is enabled.
|
|
725
|
+
token_retrieval_url: nil
|
|
726
|
+
)
|
|
727
|
+
end
|
|
728
|
+
|
|
729
|
+
sig do
|
|
730
|
+
override.returns(
|
|
731
|
+
{
|
|
732
|
+
base_url: String,
|
|
733
|
+
model: String,
|
|
734
|
+
authentication_method:
|
|
735
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::AuthenticationMethod::OrSymbol,
|
|
736
|
+
certificate_ref: String,
|
|
737
|
+
forward_metadata: T::Boolean,
|
|
738
|
+
llm_api_key_ref: String,
|
|
739
|
+
token_retrieval_url: String
|
|
740
|
+
}
|
|
741
|
+
)
|
|
742
|
+
end
|
|
743
|
+
def to_hash
|
|
744
|
+
end
|
|
745
|
+
|
|
746
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
747
|
+
module AuthenticationMethod
|
|
748
|
+
extend Telnyx::Internal::Type::Enum
|
|
749
|
+
|
|
750
|
+
TaggedSymbol =
|
|
751
|
+
T.type_alias do
|
|
752
|
+
T.all(
|
|
753
|
+
Symbol,
|
|
754
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::AuthenticationMethod
|
|
755
|
+
)
|
|
756
|
+
end
|
|
757
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
758
|
+
|
|
759
|
+
TOKEN =
|
|
760
|
+
T.let(
|
|
761
|
+
:token,
|
|
762
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
763
|
+
)
|
|
764
|
+
CERTIFICATE =
|
|
765
|
+
T.let(
|
|
766
|
+
:certificate,
|
|
767
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
768
|
+
)
|
|
769
|
+
|
|
770
|
+
sig do
|
|
771
|
+
override.returns(
|
|
772
|
+
T::Array[
|
|
773
|
+
Telnyx::AI::AssistantCreateParams::FallbackConfig::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
774
|
+
]
|
|
775
|
+
)
|
|
776
|
+
end
|
|
777
|
+
def self.values
|
|
778
|
+
end
|
|
779
|
+
end
|
|
780
|
+
end
|
|
781
|
+
end
|
|
782
|
+
|
|
783
|
+
class PostConversationSettings < Telnyx::Internal::Type::BaseModel
|
|
784
|
+
OrHash =
|
|
785
|
+
T.type_alias do
|
|
786
|
+
T.any(
|
|
787
|
+
Telnyx::AI::AssistantCreateParams::PostConversationSettings,
|
|
788
|
+
Telnyx::Internal::AnyHash
|
|
789
|
+
)
|
|
790
|
+
end
|
|
791
|
+
|
|
792
|
+
# Whether post-conversation processing is enabled. When true, the assistant will
|
|
793
|
+
# be invoked after the conversation ends to perform any final tool calls. Defaults
|
|
794
|
+
# to false.
|
|
795
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
796
|
+
attr_reader :enabled
|
|
797
|
+
|
|
798
|
+
sig { params(enabled: T::Boolean).void }
|
|
799
|
+
attr_writer :enabled
|
|
800
|
+
|
|
801
|
+
# Configuration for post-conversation processing. When enabled, the assistant
|
|
802
|
+
# receives one additional LLM turn after the conversation ends, allowing it to
|
|
803
|
+
# execute tool calls such as logging to a CRM or sending a summary. The assistant
|
|
804
|
+
# can execute multiple parallel or sequential tools during this phase.
|
|
805
|
+
# Telephony-control tools (e.g. hangup, transfer) are unavailable
|
|
806
|
+
# post-conversation. Beta feature.
|
|
807
|
+
sig { params(enabled: T::Boolean).returns(T.attached_class) }
|
|
808
|
+
def self.new(
|
|
809
|
+
# Whether post-conversation processing is enabled. When true, the assistant will
|
|
810
|
+
# be invoked after the conversation ends to perform any final tool calls. Defaults
|
|
811
|
+
# to false.
|
|
812
|
+
enabled: nil
|
|
813
|
+
)
|
|
814
|
+
end
|
|
815
|
+
|
|
816
|
+
sig { override.returns({ enabled: T::Boolean }) }
|
|
817
|
+
def to_hash
|
|
818
|
+
end
|
|
819
|
+
end
|
|
377
820
|
end
|
|
378
821
|
end
|
|
379
822
|
end
|