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
|
@@ -66,27 +66,16 @@ module Telnyx
|
|
|
66
66
|
end
|
|
67
67
|
attr_writer :enabled_features
|
|
68
68
|
|
|
69
|
-
sig { returns(T.nilable(Telnyx::AI::
|
|
69
|
+
sig { returns(T.nilable(Telnyx::AI::ExternalLlm)) }
|
|
70
70
|
attr_reader :external_llm
|
|
71
71
|
|
|
72
|
-
sig
|
|
73
|
-
params(
|
|
74
|
-
external_llm: Telnyx::AI::InferenceEmbedding::ExternalLlm::OrHash
|
|
75
|
-
).void
|
|
76
|
-
end
|
|
72
|
+
sig { params(external_llm: Telnyx::AI::ExternalLlm::OrHash).void }
|
|
77
73
|
attr_writer :external_llm
|
|
78
74
|
|
|
79
|
-
sig
|
|
80
|
-
returns(T.nilable(Telnyx::AI::InferenceEmbedding::FallbackConfig))
|
|
81
|
-
end
|
|
75
|
+
sig { returns(T.nilable(Telnyx::AI::FallbackConfig)) }
|
|
82
76
|
attr_reader :fallback_config
|
|
83
77
|
|
|
84
|
-
sig
|
|
85
|
-
params(
|
|
86
|
-
fallback_config:
|
|
87
|
-
Telnyx::AI::InferenceEmbedding::FallbackConfig::OrHash
|
|
88
|
-
).void
|
|
89
|
-
end
|
|
78
|
+
sig { params(fallback_config: Telnyx::AI::FallbackConfig::OrHash).void }
|
|
90
79
|
attr_writer :fallback_config
|
|
91
80
|
|
|
92
81
|
# Text that the assistant will use to start the conversation. This may be
|
|
@@ -148,17 +137,13 @@ module Telnyx
|
|
|
148
137
|
# can execute multiple parallel or sequential tools during this phase.
|
|
149
138
|
# Telephony-control tools (e.g. hangup, transfer) are unavailable
|
|
150
139
|
# post-conversation. Beta feature.
|
|
151
|
-
sig
|
|
152
|
-
returns(
|
|
153
|
-
T.nilable(Telnyx::AI::InferenceEmbedding::PostConversationSettings)
|
|
154
|
-
)
|
|
155
|
-
end
|
|
140
|
+
sig { returns(T.nilable(Telnyx::AI::PostConversationSettings)) }
|
|
156
141
|
attr_reader :post_conversation_settings
|
|
157
142
|
|
|
158
143
|
sig do
|
|
159
144
|
params(
|
|
160
145
|
post_conversation_settings:
|
|
161
|
-
Telnyx::AI::
|
|
146
|
+
Telnyx::AI::PostConversationSettings::OrHash
|
|
162
147
|
).void
|
|
163
148
|
end
|
|
164
149
|
attr_writer :post_conversation_settings
|
|
@@ -239,9 +224,8 @@ module Telnyx
|
|
|
239
224
|
dynamic_variables: T::Hash[Symbol, T.anything],
|
|
240
225
|
dynamic_variables_webhook_url: String,
|
|
241
226
|
enabled_features: T::Array[Telnyx::AI::EnabledFeatures::OrSymbol],
|
|
242
|
-
external_llm: Telnyx::AI::
|
|
243
|
-
fallback_config:
|
|
244
|
-
Telnyx::AI::InferenceEmbedding::FallbackConfig::OrHash,
|
|
227
|
+
external_llm: Telnyx::AI::ExternalLlm::OrHash,
|
|
228
|
+
fallback_config: Telnyx::AI::FallbackConfig::OrHash,
|
|
245
229
|
greeting: String,
|
|
246
230
|
import_metadata: Telnyx::AI::ImportMetadata::OrHash,
|
|
247
231
|
insight_settings: Telnyx::AI::InsightSettings::OrHash,
|
|
@@ -249,7 +233,7 @@ module Telnyx
|
|
|
249
233
|
messaging_settings: Telnyx::AI::MessagingSettings::OrHash,
|
|
250
234
|
observability_settings: Telnyx::AI::Observability::OrHash,
|
|
251
235
|
post_conversation_settings:
|
|
252
|
-
Telnyx::AI::
|
|
236
|
+
Telnyx::AI::PostConversationSettings::OrHash,
|
|
253
237
|
privacy_settings: Telnyx::AI::PrivacySettings::OrHash,
|
|
254
238
|
telephony_settings: Telnyx::AI::TelephonySettings::OrHash,
|
|
255
239
|
tools:
|
|
@@ -343,16 +327,15 @@ module Telnyx
|
|
|
343
327
|
dynamic_variables_webhook_url: String,
|
|
344
328
|
enabled_features:
|
|
345
329
|
T::Array[Telnyx::AI::EnabledFeatures::TaggedSymbol],
|
|
346
|
-
external_llm: Telnyx::AI::
|
|
347
|
-
fallback_config: Telnyx::AI::
|
|
330
|
+
external_llm: Telnyx::AI::ExternalLlm,
|
|
331
|
+
fallback_config: Telnyx::AI::FallbackConfig,
|
|
348
332
|
greeting: String,
|
|
349
333
|
import_metadata: Telnyx::AI::ImportMetadata,
|
|
350
334
|
insight_settings: Telnyx::AI::InsightSettings,
|
|
351
335
|
llm_api_key_ref: String,
|
|
352
336
|
messaging_settings: Telnyx::AI::MessagingSettings,
|
|
353
337
|
observability_settings: Telnyx::AI::Observability,
|
|
354
|
-
post_conversation_settings:
|
|
355
|
-
Telnyx::AI::InferenceEmbedding::PostConversationSettings,
|
|
338
|
+
post_conversation_settings: Telnyx::AI::PostConversationSettings,
|
|
356
339
|
privacy_settings: Telnyx::AI::PrivacySettings,
|
|
357
340
|
telephony_settings: Telnyx::AI::TelephonySettings,
|
|
358
341
|
tools: T::Array[Telnyx::AI::AssistantTool::Variants],
|
|
@@ -364,429 +347,6 @@ module Telnyx
|
|
|
364
347
|
end
|
|
365
348
|
def to_hash
|
|
366
349
|
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
|
|
790
350
|
end
|
|
791
351
|
end
|
|
792
352
|
end
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Telnyx
|
|
4
|
+
module Models
|
|
5
|
+
module AI
|
|
6
|
+
class PostConversationSettings < Telnyx::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(
|
|
10
|
+
Telnyx::AI::PostConversationSettings,
|
|
11
|
+
Telnyx::Internal::AnyHash
|
|
12
|
+
)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# Whether post-conversation processing is enabled. When true, the assistant will
|
|
16
|
+
# be invoked after the conversation ends to perform any final tool calls. Defaults
|
|
17
|
+
# to false.
|
|
18
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
19
|
+
attr_reader :enabled
|
|
20
|
+
|
|
21
|
+
sig { params(enabled: T::Boolean).void }
|
|
22
|
+
attr_writer :enabled
|
|
23
|
+
|
|
24
|
+
# Configuration for post-conversation processing. When enabled, the assistant
|
|
25
|
+
# receives one additional LLM turn after the conversation ends, allowing it to
|
|
26
|
+
# execute tool calls such as logging to a CRM or sending a summary. The assistant
|
|
27
|
+
# can execute multiple parallel or sequential tools during this phase.
|
|
28
|
+
# Telephony-control tools (e.g. hangup, transfer) are unavailable
|
|
29
|
+
# post-conversation. Beta feature.
|
|
30
|
+
sig { params(enabled: T::Boolean).returns(T.attached_class) }
|
|
31
|
+
def self.new(
|
|
32
|
+
# Whether post-conversation processing is enabled. When true, the assistant will
|
|
33
|
+
# be invoked after the conversation ends to perform any final tool calls. Defaults
|
|
34
|
+
# to false.
|
|
35
|
+
enabled: nil
|
|
36
|
+
)
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
sig { override.returns({ enabled: T::Boolean }) }
|
|
40
|
+
def to_hash
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Telnyx
|
|
4
|
+
module Models
|
|
5
|
+
module AI
|
|
6
|
+
class PostConversationSettingsReq < Telnyx::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(
|
|
10
|
+
Telnyx::AI::PostConversationSettingsReq,
|
|
11
|
+
Telnyx::Internal::AnyHash
|
|
12
|
+
)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# Whether post-conversation processing is enabled. When true, the assistant will
|
|
16
|
+
# be invoked after the conversation ends to perform any final tool calls. Defaults
|
|
17
|
+
# to false.
|
|
18
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
19
|
+
attr_reader :enabled
|
|
20
|
+
|
|
21
|
+
sig { params(enabled: T::Boolean).void }
|
|
22
|
+
attr_writer :enabled
|
|
23
|
+
|
|
24
|
+
# Configuration for post-conversation processing. When enabled, the assistant
|
|
25
|
+
# receives one additional LLM turn after the conversation ends, allowing it to
|
|
26
|
+
# execute tool calls such as logging to a CRM or sending a summary. The assistant
|
|
27
|
+
# can execute multiple parallel or sequential tools during this phase.
|
|
28
|
+
# Telephony-control tools (e.g. hangup, transfer) are unavailable
|
|
29
|
+
# post-conversation. Beta feature.
|
|
30
|
+
sig { params(enabled: T::Boolean).returns(T.attached_class) }
|
|
31
|
+
def self.new(
|
|
32
|
+
# Whether post-conversation processing is enabled. When true, the assistant will
|
|
33
|
+
# be invoked after the conversation ends to perform any final tool calls. Defaults
|
|
34
|
+
# to false.
|
|
35
|
+
enabled: nil
|
|
36
|
+
)
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
sig { override.returns({ enabled: T::Boolean }) }
|
|
40
|
+
def to_hash
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
@@ -27,6 +27,13 @@ module Telnyx
|
|
|
27
27
|
end
|
|
28
28
|
attr_writer :whatsapp_message
|
|
29
29
|
|
|
30
|
+
# Messaging profile ID - required if the 'from' number is not SMS-enabled
|
|
31
|
+
sig { returns(T.nilable(String)) }
|
|
32
|
+
attr_reader :messaging_profile_id
|
|
33
|
+
|
|
34
|
+
sig { params(messaging_profile_id: String).void }
|
|
35
|
+
attr_writer :messaging_profile_id
|
|
36
|
+
|
|
30
37
|
# Message type - must be set to "WHATSAPP"
|
|
31
38
|
sig do
|
|
32
39
|
returns(T.nilable(Telnyx::MessageSendWhatsappParams::Type::OrSymbol))
|
|
@@ -50,6 +57,7 @@ module Telnyx
|
|
|
50
57
|
from: String,
|
|
51
58
|
to: String,
|
|
52
59
|
whatsapp_message: Telnyx::WhatsappMessageContent::OrHash,
|
|
60
|
+
messaging_profile_id: String,
|
|
53
61
|
type: Telnyx::MessageSendWhatsappParams::Type::OrSymbol,
|
|
54
62
|
webhook_url: String,
|
|
55
63
|
request_options: Telnyx::RequestOptions::OrHash
|
|
@@ -61,6 +69,8 @@ module Telnyx
|
|
|
61
69
|
# Phone number in +E.164 format
|
|
62
70
|
to:,
|
|
63
71
|
whatsapp_message:,
|
|
72
|
+
# Messaging profile ID - required if the 'from' number is not SMS-enabled
|
|
73
|
+
messaging_profile_id: nil,
|
|
64
74
|
# Message type - must be set to "WHATSAPP"
|
|
65
75
|
type: nil,
|
|
66
76
|
# The URL where webhooks related to this message will be sent.
|
|
@@ -75,6 +85,7 @@ module Telnyx
|
|
|
75
85
|
from: String,
|
|
76
86
|
to: String,
|
|
77
87
|
whatsapp_message: Telnyx::WhatsappMessageContent,
|
|
88
|
+
messaging_profile_id: String,
|
|
78
89
|
type: Telnyx::MessageSendWhatsappParams::Type::OrSymbol,
|
|
79
90
|
webhook_url: String,
|
|
80
91
|
request_options: Telnyx::RequestOptions
|
|
@@ -55,6 +55,13 @@ module Telnyx
|
|
|
55
55
|
sig { params(email: String).void }
|
|
56
56
|
attr_writer :email
|
|
57
57
|
|
|
58
|
+
# Messaging profile ID for inbound messages
|
|
59
|
+
sig { returns(T.nilable(String)) }
|
|
60
|
+
attr_reader :profile_id
|
|
61
|
+
|
|
62
|
+
sig { params(profile_id: String).void }
|
|
63
|
+
attr_writer :profile_id
|
|
64
|
+
|
|
58
65
|
sig { returns(T.nilable(String)) }
|
|
59
66
|
attr_reader :website
|
|
60
67
|
|
|
@@ -70,6 +77,7 @@ module Telnyx
|
|
|
70
77
|
description: String,
|
|
71
78
|
display_name: String,
|
|
72
79
|
email: String,
|
|
80
|
+
profile_id: String,
|
|
73
81
|
website: String,
|
|
74
82
|
request_options: Telnyx::RequestOptions::OrHash
|
|
75
83
|
).returns(T.attached_class)
|
|
@@ -82,6 +90,8 @@ module Telnyx
|
|
|
82
90
|
description: nil,
|
|
83
91
|
display_name: nil,
|
|
84
92
|
email: nil,
|
|
93
|
+
# Messaging profile ID for inbound messages
|
|
94
|
+
profile_id: nil,
|
|
85
95
|
website: nil,
|
|
86
96
|
request_options: {}
|
|
87
97
|
)
|
|
@@ -97,6 +107,7 @@ module Telnyx
|
|
|
97
107
|
description: String,
|
|
98
108
|
display_name: String,
|
|
99
109
|
email: String,
|
|
110
|
+
profile_id: String,
|
|
100
111
|
website: String,
|
|
101
112
|
request_options: Telnyx::RequestOptions
|
|
102
113
|
}
|