telnyx 5.89.0 → 5.91.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 +9 -227
- data/lib/telnyx/models/ai/assistant_update_params.rb +9 -227
- data/lib/telnyx/models/ai/assistants/update_assistant.rb +9 -232
- data/lib/telnyx/models/ai/external_llm.rb +87 -0
- data/lib/telnyx/models/ai/external_llm_req.rb +87 -0
- data/lib/telnyx/models/ai/fallback_config.rb +37 -0
- data/lib/telnyx/models/ai/fallback_config_req.rb +37 -0
- data/lib/telnyx/models/ai/inference_embedding.rb +9 -230
- data/lib/telnyx/models/ai/post_conversation_settings.rb +30 -0
- data/lib/telnyx/models/ai/post_conversation_settings_req.rb +30 -0
- data/lib/telnyx/models/message_send_whatsapp_params.rb +9 -1
- data/lib/telnyx/models/whatsapp/phone_numbers/profile_update_params.rb +17 -1
- data/lib/telnyx/models/whatsapp/phone_numbers/whatsapp_profile_data.rb +8 -1
- data/lib/telnyx/resources/ai/assistants/versions.rb +3 -3
- data/lib/telnyx/resources/ai/assistants.rb +6 -6
- data/lib/telnyx/resources/messages.rb +3 -1
- data/lib/telnyx/resources/whatsapp/phone_numbers/profile.rb +3 -1
- data/lib/telnyx/version.rb +1 -1
- data/lib/telnyx.rb +6 -0
- data/rbi/telnyx/models/ai/assistant_create_params.rbi +12 -455
- data/rbi/telnyx/models/ai/assistant_update_params.rbi +12 -455
- data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +12 -461
- data/rbi/telnyx/models/ai/external_llm.rbi +157 -0
- data/rbi/telnyx/models/ai/external_llm_req.rbi +157 -0
- data/rbi/telnyx/models/ai/fallback_config.rbi +64 -0
- data/rbi/telnyx/models/ai/fallback_config_req.rbi +64 -0
- data/rbi/telnyx/models/ai/inference_embedding.rbi +12 -452
- data/rbi/telnyx/models/ai/post_conversation_settings.rbi +45 -0
- data/rbi/telnyx/models/ai/post_conversation_settings_req.rbi +45 -0
- data/rbi/telnyx/models/message_send_whatsapp_params.rbi +11 -0
- data/rbi/telnyx/models/whatsapp/phone_numbers/profile_update_params.rbi +11 -0
- data/rbi/telnyx/models/whatsapp/phone_numbers/whatsapp_profile_data.rbi +9 -0
- data/rbi/telnyx/resources/ai/assistants/versions.rbi +3 -5
- data/rbi/telnyx/resources/ai/assistants.rbi +6 -10
- data/rbi/telnyx/resources/messages.rbi +3 -0
- data/rbi/telnyx/resources/whatsapp/phone_numbers/profile.rbi +3 -0
- data/sig/telnyx/models/ai/assistant_create_params.rbs +18 -205
- data/sig/telnyx/models/ai/assistant_update_params.rbs +18 -205
- data/sig/telnyx/models/ai/assistants/update_assistant.rbs +18 -205
- data/sig/telnyx/models/ai/external_llm.rbs +75 -0
- data/sig/telnyx/models/ai/external_llm_req.rbs +75 -0
- data/sig/telnyx/models/ai/fallback_config.rbs +38 -0
- data/sig/telnyx/models/ai/fallback_config_req.rbs +40 -0
- data/sig/telnyx/models/ai/inference_embedding.rbs +17 -206
- data/sig/telnyx/models/ai/post_conversation_settings.rbs +17 -0
- data/sig/telnyx/models/ai/post_conversation_settings_req.rbs +17 -0
- data/sig/telnyx/models/message_send_whatsapp_params.rbs +7 -0
- data/sig/telnyx/models/whatsapp/phone_numbers/profile_update_params.rbs +7 -0
- data/sig/telnyx/models/whatsapp/phone_numbers/whatsapp_profile_data.rbs +7 -0
- data/sig/telnyx/resources/ai/assistants/versions.rbs +3 -3
- data/sig/telnyx/resources/ai/assistants.rbs +6 -6
- data/sig/telnyx/resources/messages.rbs +1 -0
- data/sig/telnyx/resources/whatsapp/phone_numbers/profile.rbs +1 -0
- metadata +20 -2
|
@@ -50,33 +50,17 @@ module Telnyx
|
|
|
50
50
|
end
|
|
51
51
|
attr_writer :enabled_features
|
|
52
52
|
|
|
53
|
-
sig
|
|
54
|
-
returns(
|
|
55
|
-
T.nilable(Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm)
|
|
56
|
-
)
|
|
57
|
-
end
|
|
53
|
+
sig { returns(T.nilable(Telnyx::AI::ExternalLlmReq)) }
|
|
58
54
|
attr_reader :external_llm
|
|
59
55
|
|
|
60
|
-
sig
|
|
61
|
-
params(
|
|
62
|
-
external_llm:
|
|
63
|
-
Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm::OrHash
|
|
64
|
-
).void
|
|
65
|
-
end
|
|
56
|
+
sig { params(external_llm: Telnyx::AI::ExternalLlmReq::OrHash).void }
|
|
66
57
|
attr_writer :external_llm
|
|
67
58
|
|
|
68
|
-
sig
|
|
69
|
-
returns(
|
|
70
|
-
T.nilable(Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig)
|
|
71
|
-
)
|
|
72
|
-
end
|
|
59
|
+
sig { returns(T.nilable(Telnyx::AI::FallbackConfigReq)) }
|
|
73
60
|
attr_reader :fallback_config
|
|
74
61
|
|
|
75
62
|
sig do
|
|
76
|
-
params(
|
|
77
|
-
fallback_config:
|
|
78
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::OrHash
|
|
79
|
-
).void
|
|
63
|
+
params(fallback_config: Telnyx::AI::FallbackConfigReq::OrHash).void
|
|
80
64
|
end
|
|
81
65
|
attr_writer :fallback_config
|
|
82
66
|
|
|
@@ -160,19 +144,13 @@ module Telnyx
|
|
|
160
144
|
# can execute multiple parallel or sequential tools during this phase.
|
|
161
145
|
# Telephony-control tools (e.g. hangup, transfer) are unavailable
|
|
162
146
|
# post-conversation. Beta feature.
|
|
163
|
-
sig
|
|
164
|
-
returns(
|
|
165
|
-
T.nilable(
|
|
166
|
-
Telnyx::AI::Assistants::UpdateAssistant::PostConversationSettings
|
|
167
|
-
)
|
|
168
|
-
)
|
|
169
|
-
end
|
|
147
|
+
sig { returns(T.nilable(Telnyx::AI::PostConversationSettingsReq)) }
|
|
170
148
|
attr_reader :post_conversation_settings
|
|
171
149
|
|
|
172
150
|
sig do
|
|
173
151
|
params(
|
|
174
152
|
post_conversation_settings:
|
|
175
|
-
Telnyx::AI::
|
|
153
|
+
Telnyx::AI::PostConversationSettingsReq::OrHash
|
|
176
154
|
).void
|
|
177
155
|
end
|
|
178
156
|
attr_writer :post_conversation_settings
|
|
@@ -277,10 +255,8 @@ module Telnyx
|
|
|
277
255
|
dynamic_variables: T::Hash[Symbol, T.anything],
|
|
278
256
|
dynamic_variables_webhook_url: String,
|
|
279
257
|
enabled_features: T::Array[Telnyx::AI::EnabledFeatures::OrSymbol],
|
|
280
|
-
external_llm:
|
|
281
|
-
|
|
282
|
-
fallback_config:
|
|
283
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::OrHash,
|
|
258
|
+
external_llm: Telnyx::AI::ExternalLlmReq::OrHash,
|
|
259
|
+
fallback_config: Telnyx::AI::FallbackConfigReq::OrHash,
|
|
284
260
|
greeting: String,
|
|
285
261
|
insight_settings: Telnyx::AI::InsightSettings::OrHash,
|
|
286
262
|
instructions: String,
|
|
@@ -290,7 +266,7 @@ module Telnyx
|
|
|
290
266
|
name: String,
|
|
291
267
|
observability_settings: Telnyx::AI::ObservabilityReq::OrHash,
|
|
292
268
|
post_conversation_settings:
|
|
293
|
-
Telnyx::AI::
|
|
269
|
+
Telnyx::AI::PostConversationSettingsReq::OrHash,
|
|
294
270
|
privacy_settings: Telnyx::AI::PrivacySettings::OrHash,
|
|
295
271
|
telephony_settings: Telnyx::AI::TelephonySettings::OrHash,
|
|
296
272
|
tool_ids: T::Array[String],
|
|
@@ -378,10 +354,8 @@ module Telnyx
|
|
|
378
354
|
dynamic_variables_webhook_url: String,
|
|
379
355
|
enabled_features:
|
|
380
356
|
T::Array[Telnyx::AI::EnabledFeatures::OrSymbol],
|
|
381
|
-
external_llm:
|
|
382
|
-
|
|
383
|
-
fallback_config:
|
|
384
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig,
|
|
357
|
+
external_llm: Telnyx::AI::ExternalLlmReq,
|
|
358
|
+
fallback_config: Telnyx::AI::FallbackConfigReq,
|
|
385
359
|
greeting: String,
|
|
386
360
|
insight_settings: Telnyx::AI::InsightSettings,
|
|
387
361
|
instructions: String,
|
|
@@ -391,7 +365,7 @@ module Telnyx
|
|
|
391
365
|
name: String,
|
|
392
366
|
observability_settings: Telnyx::AI::ObservabilityReq,
|
|
393
367
|
post_conversation_settings:
|
|
394
|
-
Telnyx::AI::
|
|
368
|
+
Telnyx::AI::PostConversationSettingsReq,
|
|
395
369
|
privacy_settings: Telnyx::AI::PrivacySettings,
|
|
396
370
|
telephony_settings: Telnyx::AI::TelephonySettings,
|
|
397
371
|
tool_ids: T::Array[String],
|
|
@@ -418,429 +392,6 @@ module Telnyx
|
|
|
418
392
|
end
|
|
419
393
|
def to_hash
|
|
420
394
|
end
|
|
421
|
-
|
|
422
|
-
class ExternalLlm < Telnyx::Internal::Type::BaseModel
|
|
423
|
-
OrHash =
|
|
424
|
-
T.type_alias do
|
|
425
|
-
T.any(
|
|
426
|
-
Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm,
|
|
427
|
-
Telnyx::Internal::AnyHash
|
|
428
|
-
)
|
|
429
|
-
end
|
|
430
|
-
|
|
431
|
-
# Base URL for the external LLM endpoint.
|
|
432
|
-
sig { returns(String) }
|
|
433
|
-
attr_accessor :base_url
|
|
434
|
-
|
|
435
|
-
# Model identifier to use with the external LLM endpoint.
|
|
436
|
-
sig { returns(String) }
|
|
437
|
-
attr_accessor :model
|
|
438
|
-
|
|
439
|
-
# Authentication method used when connecting to the external LLM endpoint.
|
|
440
|
-
sig do
|
|
441
|
-
returns(
|
|
442
|
-
T.nilable(
|
|
443
|
-
Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm::AuthenticationMethod::OrSymbol
|
|
444
|
-
)
|
|
445
|
-
)
|
|
446
|
-
end
|
|
447
|
-
attr_reader :authentication_method
|
|
448
|
-
|
|
449
|
-
sig do
|
|
450
|
-
params(
|
|
451
|
-
authentication_method:
|
|
452
|
-
Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm::AuthenticationMethod::OrSymbol
|
|
453
|
-
).void
|
|
454
|
-
end
|
|
455
|
-
attr_writer :authentication_method
|
|
456
|
-
|
|
457
|
-
# Integration secret identifier for the client certificate used with certificate
|
|
458
|
-
# authentication.
|
|
459
|
-
sig { returns(T.nilable(String)) }
|
|
460
|
-
attr_reader :certificate_ref
|
|
461
|
-
|
|
462
|
-
sig { params(certificate_ref: String).void }
|
|
463
|
-
attr_writer :certificate_ref
|
|
464
|
-
|
|
465
|
-
# When enabled, Telnyx forwards the assistant's dynamic variables to the external
|
|
466
|
-
# LLM endpoint. Defaults to false. The chat completion request includes a
|
|
467
|
-
# top-level `extra_metadata` object when dynamic variables are available. For
|
|
468
|
-
# example:
|
|
469
|
-
# `{"extra_metadata":{"customer_name":"Jane","account_id":"acct_789","telnyx_agent_target":"+13125550100","telnyx_end_user_target":"+13125550123"}}`.
|
|
470
|
-
sig { returns(T.nilable(T::Boolean)) }
|
|
471
|
-
attr_reader :forward_metadata
|
|
472
|
-
|
|
473
|
-
sig { params(forward_metadata: T::Boolean).void }
|
|
474
|
-
attr_writer :forward_metadata
|
|
475
|
-
|
|
476
|
-
# Integration secret identifier for the external LLM API key.
|
|
477
|
-
sig { returns(T.nilable(String)) }
|
|
478
|
-
attr_reader :llm_api_key_ref
|
|
479
|
-
|
|
480
|
-
sig { params(llm_api_key_ref: String).void }
|
|
481
|
-
attr_writer :llm_api_key_ref
|
|
482
|
-
|
|
483
|
-
# URL used to retrieve an access token when certificate authentication is enabled.
|
|
484
|
-
sig { returns(T.nilable(String)) }
|
|
485
|
-
attr_reader :token_retrieval_url
|
|
486
|
-
|
|
487
|
-
sig { params(token_retrieval_url: String).void }
|
|
488
|
-
attr_writer :token_retrieval_url
|
|
489
|
-
|
|
490
|
-
sig do
|
|
491
|
-
params(
|
|
492
|
-
base_url: String,
|
|
493
|
-
model: String,
|
|
494
|
-
authentication_method:
|
|
495
|
-
Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm::AuthenticationMethod::OrSymbol,
|
|
496
|
-
certificate_ref: String,
|
|
497
|
-
forward_metadata: T::Boolean,
|
|
498
|
-
llm_api_key_ref: String,
|
|
499
|
-
token_retrieval_url: String
|
|
500
|
-
).returns(T.attached_class)
|
|
501
|
-
end
|
|
502
|
-
def self.new(
|
|
503
|
-
# Base URL for the external LLM endpoint.
|
|
504
|
-
base_url:,
|
|
505
|
-
# Model identifier to use with the external LLM endpoint.
|
|
506
|
-
model:,
|
|
507
|
-
# Authentication method used when connecting to the external LLM endpoint.
|
|
508
|
-
authentication_method: nil,
|
|
509
|
-
# Integration secret identifier for the client certificate used with certificate
|
|
510
|
-
# authentication.
|
|
511
|
-
certificate_ref: nil,
|
|
512
|
-
# When enabled, Telnyx forwards the assistant's dynamic variables to the external
|
|
513
|
-
# LLM endpoint. Defaults to false. The chat completion request includes a
|
|
514
|
-
# top-level `extra_metadata` object when dynamic variables are available. For
|
|
515
|
-
# example:
|
|
516
|
-
# `{"extra_metadata":{"customer_name":"Jane","account_id":"acct_789","telnyx_agent_target":"+13125550100","telnyx_end_user_target":"+13125550123"}}`.
|
|
517
|
-
forward_metadata: nil,
|
|
518
|
-
# Integration secret identifier for the external LLM API key.
|
|
519
|
-
llm_api_key_ref: nil,
|
|
520
|
-
# URL used to retrieve an access token when certificate authentication is enabled.
|
|
521
|
-
token_retrieval_url: nil
|
|
522
|
-
)
|
|
523
|
-
end
|
|
524
|
-
|
|
525
|
-
sig do
|
|
526
|
-
override.returns(
|
|
527
|
-
{
|
|
528
|
-
base_url: String,
|
|
529
|
-
model: String,
|
|
530
|
-
authentication_method:
|
|
531
|
-
Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm::AuthenticationMethod::OrSymbol,
|
|
532
|
-
certificate_ref: String,
|
|
533
|
-
forward_metadata: T::Boolean,
|
|
534
|
-
llm_api_key_ref: String,
|
|
535
|
-
token_retrieval_url: String
|
|
536
|
-
}
|
|
537
|
-
)
|
|
538
|
-
end
|
|
539
|
-
def to_hash
|
|
540
|
-
end
|
|
541
|
-
|
|
542
|
-
# Authentication method used when connecting to the external LLM endpoint.
|
|
543
|
-
module AuthenticationMethod
|
|
544
|
-
extend Telnyx::Internal::Type::Enum
|
|
545
|
-
|
|
546
|
-
TaggedSymbol =
|
|
547
|
-
T.type_alias do
|
|
548
|
-
T.all(
|
|
549
|
-
Symbol,
|
|
550
|
-
Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm::AuthenticationMethod
|
|
551
|
-
)
|
|
552
|
-
end
|
|
553
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
554
|
-
|
|
555
|
-
TOKEN =
|
|
556
|
-
T.let(
|
|
557
|
-
:token,
|
|
558
|
-
Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
559
|
-
)
|
|
560
|
-
CERTIFICATE =
|
|
561
|
-
T.let(
|
|
562
|
-
:certificate,
|
|
563
|
-
Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
564
|
-
)
|
|
565
|
-
|
|
566
|
-
sig do
|
|
567
|
-
override.returns(
|
|
568
|
-
T::Array[
|
|
569
|
-
Telnyx::AI::Assistants::UpdateAssistant::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
570
|
-
]
|
|
571
|
-
)
|
|
572
|
-
end
|
|
573
|
-
def self.values
|
|
574
|
-
end
|
|
575
|
-
end
|
|
576
|
-
end
|
|
577
|
-
|
|
578
|
-
class FallbackConfig < Telnyx::Internal::Type::BaseModel
|
|
579
|
-
OrHash =
|
|
580
|
-
T.type_alias do
|
|
581
|
-
T.any(
|
|
582
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig,
|
|
583
|
-
Telnyx::Internal::AnyHash
|
|
584
|
-
)
|
|
585
|
-
end
|
|
586
|
-
|
|
587
|
-
sig do
|
|
588
|
-
returns(
|
|
589
|
-
T.nilable(
|
|
590
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm
|
|
591
|
-
)
|
|
592
|
-
)
|
|
593
|
-
end
|
|
594
|
-
attr_reader :external_llm
|
|
595
|
-
|
|
596
|
-
sig do
|
|
597
|
-
params(
|
|
598
|
-
external_llm:
|
|
599
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::OrHash
|
|
600
|
-
).void
|
|
601
|
-
end
|
|
602
|
-
attr_writer :external_llm
|
|
603
|
-
|
|
604
|
-
# Integration secret identifier for the fallback model API key.
|
|
605
|
-
sig { returns(T.nilable(String)) }
|
|
606
|
-
attr_reader :llm_api_key_ref
|
|
607
|
-
|
|
608
|
-
sig { params(llm_api_key_ref: String).void }
|
|
609
|
-
attr_writer :llm_api_key_ref
|
|
610
|
-
|
|
611
|
-
# Fallback Telnyx-hosted model to use when the primary LLM provider is
|
|
612
|
-
# unavailable.
|
|
613
|
-
sig { returns(T.nilable(String)) }
|
|
614
|
-
attr_reader :model
|
|
615
|
-
|
|
616
|
-
sig { params(model: String).void }
|
|
617
|
-
attr_writer :model
|
|
618
|
-
|
|
619
|
-
sig do
|
|
620
|
-
params(
|
|
621
|
-
external_llm:
|
|
622
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::OrHash,
|
|
623
|
-
llm_api_key_ref: String,
|
|
624
|
-
model: String
|
|
625
|
-
).returns(T.attached_class)
|
|
626
|
-
end
|
|
627
|
-
def self.new(
|
|
628
|
-
external_llm: nil,
|
|
629
|
-
# Integration secret identifier for the fallback model API key.
|
|
630
|
-
llm_api_key_ref: nil,
|
|
631
|
-
# Fallback Telnyx-hosted model to use when the primary LLM provider is
|
|
632
|
-
# unavailable.
|
|
633
|
-
model: nil
|
|
634
|
-
)
|
|
635
|
-
end
|
|
636
|
-
|
|
637
|
-
sig do
|
|
638
|
-
override.returns(
|
|
639
|
-
{
|
|
640
|
-
external_llm:
|
|
641
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm,
|
|
642
|
-
llm_api_key_ref: String,
|
|
643
|
-
model: String
|
|
644
|
-
}
|
|
645
|
-
)
|
|
646
|
-
end
|
|
647
|
-
def to_hash
|
|
648
|
-
end
|
|
649
|
-
|
|
650
|
-
class ExternalLlm < Telnyx::Internal::Type::BaseModel
|
|
651
|
-
OrHash =
|
|
652
|
-
T.type_alias do
|
|
653
|
-
T.any(
|
|
654
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm,
|
|
655
|
-
Telnyx::Internal::AnyHash
|
|
656
|
-
)
|
|
657
|
-
end
|
|
658
|
-
|
|
659
|
-
# Base URL for the external LLM endpoint.
|
|
660
|
-
sig { returns(String) }
|
|
661
|
-
attr_accessor :base_url
|
|
662
|
-
|
|
663
|
-
# Model identifier to use with the external LLM endpoint.
|
|
664
|
-
sig { returns(String) }
|
|
665
|
-
attr_accessor :model
|
|
666
|
-
|
|
667
|
-
# Authentication method used when connecting to the external LLM endpoint.
|
|
668
|
-
sig do
|
|
669
|
-
returns(
|
|
670
|
-
T.nilable(
|
|
671
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::AuthenticationMethod::OrSymbol
|
|
672
|
-
)
|
|
673
|
-
)
|
|
674
|
-
end
|
|
675
|
-
attr_reader :authentication_method
|
|
676
|
-
|
|
677
|
-
sig do
|
|
678
|
-
params(
|
|
679
|
-
authentication_method:
|
|
680
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::AuthenticationMethod::OrSymbol
|
|
681
|
-
).void
|
|
682
|
-
end
|
|
683
|
-
attr_writer :authentication_method
|
|
684
|
-
|
|
685
|
-
# Integration secret identifier for the client certificate used with certificate
|
|
686
|
-
# authentication.
|
|
687
|
-
sig { returns(T.nilable(String)) }
|
|
688
|
-
attr_reader :certificate_ref
|
|
689
|
-
|
|
690
|
-
sig { params(certificate_ref: String).void }
|
|
691
|
-
attr_writer :certificate_ref
|
|
692
|
-
|
|
693
|
-
# When enabled, Telnyx forwards the assistant's dynamic variables to the external
|
|
694
|
-
# LLM endpoint. Defaults to false. The chat completion request includes a
|
|
695
|
-
# top-level `extra_metadata` object when dynamic variables are available. For
|
|
696
|
-
# example:
|
|
697
|
-
# `{"extra_metadata":{"customer_name":"Jane","account_id":"acct_789","telnyx_agent_target":"+13125550100","telnyx_end_user_target":"+13125550123"}}`.
|
|
698
|
-
sig { returns(T.nilable(T::Boolean)) }
|
|
699
|
-
attr_reader :forward_metadata
|
|
700
|
-
|
|
701
|
-
sig { params(forward_metadata: T::Boolean).void }
|
|
702
|
-
attr_writer :forward_metadata
|
|
703
|
-
|
|
704
|
-
# Integration secret identifier for the external LLM API key.
|
|
705
|
-
sig { returns(T.nilable(String)) }
|
|
706
|
-
attr_reader :llm_api_key_ref
|
|
707
|
-
|
|
708
|
-
sig { params(llm_api_key_ref: String).void }
|
|
709
|
-
attr_writer :llm_api_key_ref
|
|
710
|
-
|
|
711
|
-
# URL used to retrieve an access token when certificate authentication is enabled.
|
|
712
|
-
sig { returns(T.nilable(String)) }
|
|
713
|
-
attr_reader :token_retrieval_url
|
|
714
|
-
|
|
715
|
-
sig { params(token_retrieval_url: String).void }
|
|
716
|
-
attr_writer :token_retrieval_url
|
|
717
|
-
|
|
718
|
-
sig do
|
|
719
|
-
params(
|
|
720
|
-
base_url: String,
|
|
721
|
-
model: String,
|
|
722
|
-
authentication_method:
|
|
723
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::AuthenticationMethod::OrSymbol,
|
|
724
|
-
certificate_ref: String,
|
|
725
|
-
forward_metadata: T::Boolean,
|
|
726
|
-
llm_api_key_ref: String,
|
|
727
|
-
token_retrieval_url: String
|
|
728
|
-
).returns(T.attached_class)
|
|
729
|
-
end
|
|
730
|
-
def self.new(
|
|
731
|
-
# Base URL for the external LLM endpoint.
|
|
732
|
-
base_url:,
|
|
733
|
-
# Model identifier to use with the external LLM endpoint.
|
|
734
|
-
model:,
|
|
735
|
-
# Authentication method used when connecting to the external LLM endpoint.
|
|
736
|
-
authentication_method: nil,
|
|
737
|
-
# Integration secret identifier for the client certificate used with certificate
|
|
738
|
-
# authentication.
|
|
739
|
-
certificate_ref: nil,
|
|
740
|
-
# When enabled, Telnyx forwards the assistant's dynamic variables to the external
|
|
741
|
-
# LLM endpoint. Defaults to false. The chat completion request includes a
|
|
742
|
-
# top-level `extra_metadata` object when dynamic variables are available. For
|
|
743
|
-
# example:
|
|
744
|
-
# `{"extra_metadata":{"customer_name":"Jane","account_id":"acct_789","telnyx_agent_target":"+13125550100","telnyx_end_user_target":"+13125550123"}}`.
|
|
745
|
-
forward_metadata: nil,
|
|
746
|
-
# Integration secret identifier for the external LLM API key.
|
|
747
|
-
llm_api_key_ref: nil,
|
|
748
|
-
# URL used to retrieve an access token when certificate authentication is enabled.
|
|
749
|
-
token_retrieval_url: nil
|
|
750
|
-
)
|
|
751
|
-
end
|
|
752
|
-
|
|
753
|
-
sig do
|
|
754
|
-
override.returns(
|
|
755
|
-
{
|
|
756
|
-
base_url: String,
|
|
757
|
-
model: String,
|
|
758
|
-
authentication_method:
|
|
759
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::AuthenticationMethod::OrSymbol,
|
|
760
|
-
certificate_ref: String,
|
|
761
|
-
forward_metadata: T::Boolean,
|
|
762
|
-
llm_api_key_ref: String,
|
|
763
|
-
token_retrieval_url: String
|
|
764
|
-
}
|
|
765
|
-
)
|
|
766
|
-
end
|
|
767
|
-
def to_hash
|
|
768
|
-
end
|
|
769
|
-
|
|
770
|
-
# Authentication method used when connecting to the external LLM endpoint.
|
|
771
|
-
module AuthenticationMethod
|
|
772
|
-
extend Telnyx::Internal::Type::Enum
|
|
773
|
-
|
|
774
|
-
TaggedSymbol =
|
|
775
|
-
T.type_alias do
|
|
776
|
-
T.all(
|
|
777
|
-
Symbol,
|
|
778
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::AuthenticationMethod
|
|
779
|
-
)
|
|
780
|
-
end
|
|
781
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
782
|
-
|
|
783
|
-
TOKEN =
|
|
784
|
-
T.let(
|
|
785
|
-
:token,
|
|
786
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
787
|
-
)
|
|
788
|
-
CERTIFICATE =
|
|
789
|
-
T.let(
|
|
790
|
-
:certificate,
|
|
791
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
792
|
-
)
|
|
793
|
-
|
|
794
|
-
sig do
|
|
795
|
-
override.returns(
|
|
796
|
-
T::Array[
|
|
797
|
-
Telnyx::AI::Assistants::UpdateAssistant::FallbackConfig::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
798
|
-
]
|
|
799
|
-
)
|
|
800
|
-
end
|
|
801
|
-
def self.values
|
|
802
|
-
end
|
|
803
|
-
end
|
|
804
|
-
end
|
|
805
|
-
end
|
|
806
|
-
|
|
807
|
-
class PostConversationSettings < Telnyx::Internal::Type::BaseModel
|
|
808
|
-
OrHash =
|
|
809
|
-
T.type_alias do
|
|
810
|
-
T.any(
|
|
811
|
-
Telnyx::AI::Assistants::UpdateAssistant::PostConversationSettings,
|
|
812
|
-
Telnyx::Internal::AnyHash
|
|
813
|
-
)
|
|
814
|
-
end
|
|
815
|
-
|
|
816
|
-
# Whether post-conversation processing is enabled. When true, the assistant will
|
|
817
|
-
# be invoked after the conversation ends to perform any final tool calls. Defaults
|
|
818
|
-
# to false.
|
|
819
|
-
sig { returns(T.nilable(T::Boolean)) }
|
|
820
|
-
attr_reader :enabled
|
|
821
|
-
|
|
822
|
-
sig { params(enabled: T::Boolean).void }
|
|
823
|
-
attr_writer :enabled
|
|
824
|
-
|
|
825
|
-
# Configuration for post-conversation processing. When enabled, the assistant
|
|
826
|
-
# receives one additional LLM turn after the conversation ends, allowing it to
|
|
827
|
-
# execute tool calls such as logging to a CRM or sending a summary. The assistant
|
|
828
|
-
# can execute multiple parallel or sequential tools during this phase.
|
|
829
|
-
# Telephony-control tools (e.g. hangup, transfer) are unavailable
|
|
830
|
-
# post-conversation. Beta feature.
|
|
831
|
-
sig { params(enabled: T::Boolean).returns(T.attached_class) }
|
|
832
|
-
def self.new(
|
|
833
|
-
# Whether post-conversation processing is enabled. When true, the assistant will
|
|
834
|
-
# be invoked after the conversation ends to perform any final tool calls. Defaults
|
|
835
|
-
# to false.
|
|
836
|
-
enabled: nil
|
|
837
|
-
)
|
|
838
|
-
end
|
|
839
|
-
|
|
840
|
-
sig { override.returns({ enabled: T::Boolean }) }
|
|
841
|
-
def to_hash
|
|
842
|
-
end
|
|
843
|
-
end
|
|
844
395
|
end
|
|
845
396
|
end
|
|
846
397
|
end
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Telnyx
|
|
4
|
+
module Models
|
|
5
|
+
module AI
|
|
6
|
+
class ExternalLlm < Telnyx::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(Telnyx::AI::ExternalLlm, Telnyx::Internal::AnyHash)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
# Base URL for the external LLM endpoint.
|
|
13
|
+
sig { returns(String) }
|
|
14
|
+
attr_accessor :base_url
|
|
15
|
+
|
|
16
|
+
# Model identifier to use with the external LLM endpoint.
|
|
17
|
+
sig { returns(String) }
|
|
18
|
+
attr_accessor :model
|
|
19
|
+
|
|
20
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
21
|
+
sig do
|
|
22
|
+
returns(
|
|
23
|
+
T.nilable(
|
|
24
|
+
Telnyx::AI::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
25
|
+
)
|
|
26
|
+
)
|
|
27
|
+
end
|
|
28
|
+
attr_reader :authentication_method
|
|
29
|
+
|
|
30
|
+
sig do
|
|
31
|
+
params(
|
|
32
|
+
authentication_method:
|
|
33
|
+
Telnyx::AI::ExternalLlm::AuthenticationMethod::OrSymbol
|
|
34
|
+
).void
|
|
35
|
+
end
|
|
36
|
+
attr_writer :authentication_method
|
|
37
|
+
|
|
38
|
+
# Integration secret identifier for the client certificate used with certificate
|
|
39
|
+
# authentication.
|
|
40
|
+
sig { returns(T.nilable(String)) }
|
|
41
|
+
attr_reader :certificate_ref
|
|
42
|
+
|
|
43
|
+
sig { params(certificate_ref: String).void }
|
|
44
|
+
attr_writer :certificate_ref
|
|
45
|
+
|
|
46
|
+
# When enabled, Telnyx forwards the assistant's dynamic variables to the external
|
|
47
|
+
# LLM endpoint. Defaults to false. The chat completion request includes a
|
|
48
|
+
# top-level `extra_metadata` object when dynamic variables are available. For
|
|
49
|
+
# example:
|
|
50
|
+
# `{"extra_metadata":{"customer_name":"Jane","account_id":"acct_789","telnyx_agent_target":"+13125550100","telnyx_end_user_target":"+13125550123"}}`.
|
|
51
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
52
|
+
attr_reader :forward_metadata
|
|
53
|
+
|
|
54
|
+
sig { params(forward_metadata: T::Boolean).void }
|
|
55
|
+
attr_writer :forward_metadata
|
|
56
|
+
|
|
57
|
+
# Integration secret identifier for the external LLM API key.
|
|
58
|
+
sig { returns(T.nilable(String)) }
|
|
59
|
+
attr_reader :llm_api_key_ref
|
|
60
|
+
|
|
61
|
+
sig { params(llm_api_key_ref: String).void }
|
|
62
|
+
attr_writer :llm_api_key_ref
|
|
63
|
+
|
|
64
|
+
# URL used to retrieve an access token when certificate authentication is enabled.
|
|
65
|
+
sig { returns(T.nilable(String)) }
|
|
66
|
+
attr_reader :token_retrieval_url
|
|
67
|
+
|
|
68
|
+
sig { params(token_retrieval_url: String).void }
|
|
69
|
+
attr_writer :token_retrieval_url
|
|
70
|
+
|
|
71
|
+
sig do
|
|
72
|
+
params(
|
|
73
|
+
base_url: String,
|
|
74
|
+
model: String,
|
|
75
|
+
authentication_method:
|
|
76
|
+
Telnyx::AI::ExternalLlm::AuthenticationMethod::OrSymbol,
|
|
77
|
+
certificate_ref: String,
|
|
78
|
+
forward_metadata: T::Boolean,
|
|
79
|
+
llm_api_key_ref: String,
|
|
80
|
+
token_retrieval_url: String
|
|
81
|
+
).returns(T.attached_class)
|
|
82
|
+
end
|
|
83
|
+
def self.new(
|
|
84
|
+
# Base URL for the external LLM endpoint.
|
|
85
|
+
base_url:,
|
|
86
|
+
# Model identifier to use with the external LLM endpoint.
|
|
87
|
+
model:,
|
|
88
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
89
|
+
authentication_method: nil,
|
|
90
|
+
# Integration secret identifier for the client certificate used with certificate
|
|
91
|
+
# authentication.
|
|
92
|
+
certificate_ref: nil,
|
|
93
|
+
# When enabled, Telnyx forwards the assistant's dynamic variables to the external
|
|
94
|
+
# LLM endpoint. Defaults to false. The chat completion request includes a
|
|
95
|
+
# top-level `extra_metadata` object when dynamic variables are available. For
|
|
96
|
+
# example:
|
|
97
|
+
# `{"extra_metadata":{"customer_name":"Jane","account_id":"acct_789","telnyx_agent_target":"+13125550100","telnyx_end_user_target":"+13125550123"}}`.
|
|
98
|
+
forward_metadata: nil,
|
|
99
|
+
# Integration secret identifier for the external LLM API key.
|
|
100
|
+
llm_api_key_ref: nil,
|
|
101
|
+
# URL used to retrieve an access token when certificate authentication is enabled.
|
|
102
|
+
token_retrieval_url: nil
|
|
103
|
+
)
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
sig do
|
|
107
|
+
override.returns(
|
|
108
|
+
{
|
|
109
|
+
base_url: String,
|
|
110
|
+
model: String,
|
|
111
|
+
authentication_method:
|
|
112
|
+
Telnyx::AI::ExternalLlm::AuthenticationMethod::TaggedSymbol,
|
|
113
|
+
certificate_ref: String,
|
|
114
|
+
forward_metadata: T::Boolean,
|
|
115
|
+
llm_api_key_ref: String,
|
|
116
|
+
token_retrieval_url: String
|
|
117
|
+
}
|
|
118
|
+
)
|
|
119
|
+
end
|
|
120
|
+
def to_hash
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
# Authentication method used when connecting to the external LLM endpoint.
|
|
124
|
+
module AuthenticationMethod
|
|
125
|
+
extend Telnyx::Internal::Type::Enum
|
|
126
|
+
|
|
127
|
+
TaggedSymbol =
|
|
128
|
+
T.type_alias do
|
|
129
|
+
T.all(Symbol, Telnyx::AI::ExternalLlm::AuthenticationMethod)
|
|
130
|
+
end
|
|
131
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
132
|
+
|
|
133
|
+
TOKEN =
|
|
134
|
+
T.let(
|
|
135
|
+
:token,
|
|
136
|
+
Telnyx::AI::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
137
|
+
)
|
|
138
|
+
CERTIFICATE =
|
|
139
|
+
T.let(
|
|
140
|
+
:certificate,
|
|
141
|
+
Telnyx::AI::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
142
|
+
)
|
|
143
|
+
|
|
144
|
+
sig do
|
|
145
|
+
override.returns(
|
|
146
|
+
T::Array[
|
|
147
|
+
Telnyx::AI::ExternalLlm::AuthenticationMethod::TaggedSymbol
|
|
148
|
+
]
|
|
149
|
+
)
|
|
150
|
+
end
|
|
151
|
+
def self.values
|
|
152
|
+
end
|
|
153
|
+
end
|
|
154
|
+
end
|
|
155
|
+
end
|
|
156
|
+
end
|
|
157
|
+
end
|