telnyx 5.160.0 → 5.161.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 +12 -0
- data/README.md +1 -1
- data/lib/telnyx/client.rb +8 -0
- data/lib/telnyx/models/artifact_completed_webhook_event.rb +152 -0
- data/lib/telnyx/models/artifact_failed_webhook_event.rb +103 -0
- data/lib/telnyx/models/call_dial_params.rb +7 -7
- data/lib/telnyx/models/calls/action_answer_params.rb +7 -6
- data/lib/telnyx/models/calls/action_transfer_params.rb +7 -6
- data/lib/telnyx/models/meeting_session.rb +380 -0
- data/lib/telnyx/models/meeting_session_create_params.rb +309 -0
- data/lib/telnyx/models/meeting_session_delete_params.rb +20 -0
- data/lib/telnyx/models/meeting_session_delete_recording_media_params.rb +20 -0
- data/lib/telnyx/models/meeting_session_delete_recording_media_response.rb +61 -0
- data/lib/telnyx/models/meeting_session_list_params.rb +39 -0
- data/lib/telnyx/models/meeting_session_list_response.rb +16 -0
- data/lib/telnyx/models/meeting_session_response.rb +22 -0
- data/lib/telnyx/models/meeting_session_retrieve_events_params.rb +37 -0
- data/lib/telnyx/models/meeting_session_retrieve_events_response.rb +45 -0
- data/lib/telnyx/models/meeting_session_retrieve_params.rb +20 -0
- data/lib/telnyx/models/meeting_session_retrieve_recordings_params.rb +20 -0
- data/lib/telnyx/models/meeting_session_retrieve_recordings_response.rb +49 -0
- data/lib/telnyx/models/meeting_session_retrieve_transcript_params.rb +50 -0
- data/lib/telnyx/models/meeting_session_retrieve_transcript_response.rb +80 -0
- data/lib/telnyx/models/meeting_session_update_params.rb +37 -0
- data/lib/telnyx/models/meeting_sessions/action_accepted_response.rb +29 -0
- data/lib/telnyx/models/meeting_sessions/action_send_chat_params.rb +31 -0
- data/lib/telnyx/models/meeting_sessions/action_speak_params.rb +52 -0
- data/lib/telnyx/models/meeting_sessions/action_stop_speaking_params.rb +22 -0
- data/lib/telnyx/models/meeting_sessions/artifact_create_params.rb +42 -0
- data/lib/telnyx/models/meeting_sessions/artifact_list_params.rb +22 -0
- data/lib/telnyx/models/meeting_sessions/artifact_list_response.rb +18 -0
- data/lib/telnyx/models/meeting_sessions/artifact_retrieve_params.rb +28 -0
- data/lib/telnyx/models/meeting_sessions/meeting_session_artifact.rb +120 -0
- data/lib/telnyx/models/meeting_sessions/meeting_session_artifact_response.rb +20 -0
- data/lib/telnyx/models/phone_numbers/voicemail_pref_response.rb +64 -1
- data/lib/telnyx/models/phone_numbers/voicemail_request.rb +63 -1
- data/lib/telnyx/models/private_wireless_gateway_status.rb +2 -2
- data/lib/telnyx/models/recording_available_webhook_event.rb +82 -0
- data/lib/telnyx/models/session_status_changed_webhook_event.rb +102 -0
- data/lib/telnyx/models/sim_cards/action_bulk_enable_voice_params.rb +16 -1
- data/lib/telnyx/models/sim_cards/action_disable_voice_params.rb +22 -0
- data/lib/telnyx/models/sim_cards/action_disable_voice_response.rb +23 -0
- data/lib/telnyx/models/sim_cards/action_enable_voice_params.rb +37 -0
- data/lib/telnyx/models/sim_cards/action_enable_voice_response.rb +23 -0
- data/lib/telnyx/models/sim_cards/action_list_params.rb +2 -0
- data/lib/telnyx/models/sim_cards/wireless_sim_card_action.rb +6 -0
- data/lib/telnyx/models/storage/edge_compute_pagination_meta.rb +35 -0
- data/lib/telnyx/models/storage/sql_database.rb +75 -0
- data/lib/telnyx/models/storage/sql_database_response_wrapper.rb +18 -0
- data/lib/telnyx/models/storage/sqldb_create_params.rb +28 -0
- data/lib/telnyx/models/storage/sqldb_delete_params.rb +35 -0
- data/lib/telnyx/models/storage/sqldb_list_params.rb +85 -0
- data/lib/telnyx/models/storage/sqldb_retrieve_params.rb +22 -0
- data/lib/telnyx/models/storage/sqldbs/action_query_params.rb +66 -0
- data/lib/telnyx/models/storage/sqldbs/action_query_response.rb +109 -0
- data/lib/telnyx/models/transcript_completed_webhook_event.rb +98 -0
- data/lib/telnyx/models/unsafe_unwrap_webhook_event.rb +11 -1
- data/lib/telnyx/models/unwrap_webhook_event.rb +11 -1
- data/lib/telnyx/models/web_search/research_citation.rb +34 -0
- data/lib/telnyx/models/web_search/research_create_params.rb +65 -0
- data/lib/telnyx/models/web_search/research_create_response.rb +93 -0
- data/lib/telnyx/models/web_search/research_retrieve_params.rb +22 -0
- data/lib/telnyx/models/web_search/research_retrieve_response.rb +77 -0
- data/lib/telnyx/models/web_search_contents_params.rb +63 -0
- data/lib/telnyx/models/web_search_contents_response.rb +97 -0
- data/lib/telnyx/models/web_search_create_params.rb +95 -0
- data/lib/telnyx/models/web_search_create_response.rb +47 -0
- data/lib/telnyx/models/web_search_result.rb +56 -0
- data/lib/telnyx/models.rb +42 -0
- data/lib/telnyx/resources/calls/actions.rb +2 -2
- data/lib/telnyx/resources/calls.rb +1 -1
- data/lib/telnyx/resources/meeting_sessions/actions.rb +92 -0
- data/lib/telnyx/resources/meeting_sessions/artifacts.rb +92 -0
- data/lib/telnyx/resources/meeting_sessions.rb +290 -0
- data/lib/telnyx/resources/phone_numbers/voicemail.rb +20 -4
- data/lib/telnyx/resources/sim_cards/actions.rb +66 -1
- data/lib/telnyx/resources/storage/sqldbs/actions.rb +50 -0
- data/lib/telnyx/resources/storage/sqldbs.rb +140 -0
- data/lib/telnyx/resources/storage.rb +5 -0
- data/lib/telnyx/resources/web_search/research.rb +86 -0
- data/lib/telnyx/resources/web_search.rb +96 -0
- data/lib/telnyx/resources/webhooks.rb +2 -2
- data/lib/telnyx/version.rb +1 -1
- data/lib/telnyx.rb +61 -0
- data/rbi/telnyx/client.rbi +6 -0
- data/rbi/telnyx/models/artifact_completed_webhook_event.rbi +283 -0
- data/rbi/telnyx/models/artifact_failed_webhook_event.rbi +185 -0
- data/rbi/telnyx/models/call_dial_params.rbi +12 -12
- data/rbi/telnyx/models/calls/action_answer_params.rbi +12 -10
- data/rbi/telnyx/models/calls/action_transfer_params.rbi +12 -10
- data/rbi/telnyx/models/meeting_session.rbi +544 -0
- data/rbi/telnyx/models/meeting_session_create_params.rbi +526 -0
- data/rbi/telnyx/models/meeting_session_delete_params.rbi +35 -0
- data/rbi/telnyx/models/meeting_session_delete_recording_media_params.rbi +38 -0
- data/rbi/telnyx/models/meeting_session_delete_recording_media_response.rbi +143 -0
- data/rbi/telnyx/models/meeting_session_list_params.rbi +101 -0
- data/rbi/telnyx/models/meeting_session_list_response.rbi +30 -0
- data/rbi/telnyx/models/meeting_session_response.rbi +36 -0
- data/rbi/telnyx/models/meeting_session_retrieve_events_params.rbi +66 -0
- data/rbi/telnyx/models/meeting_session_retrieve_events_response.rbi +92 -0
- data/rbi/telnyx/models/meeting_session_retrieve_params.rbi +35 -0
- data/rbi/telnyx/models/meeting_session_retrieve_recordings_params.rbi +38 -0
- data/rbi/telnyx/models/meeting_session_retrieve_recordings_response.rbi +97 -0
- data/rbi/telnyx/models/meeting_session_retrieve_transcript_params.rbi +81 -0
- data/rbi/telnyx/models/meeting_session_retrieve_transcript_response.rbi +154 -0
- data/rbi/telnyx/models/meeting_session_update_params.rbi +63 -0
- data/rbi/telnyx/models/meeting_sessions/action_accepted_response.rbi +64 -0
- data/rbi/telnyx/models/meeting_sessions/action_send_chat_params.rbi +54 -0
- data/rbi/telnyx/models/meeting_sessions/action_speak_params.rbi +80 -0
- data/rbi/telnyx/models/meeting_sessions/action_stop_speaking_params.rbi +40 -0
- data/rbi/telnyx/models/meeting_sessions/artifact_create_params.rbi +89 -0
- data/rbi/telnyx/models/meeting_sessions/artifact_list_params.rbi +40 -0
- data/rbi/telnyx/models/meeting_sessions/artifact_list_response.rbi +39 -0
- data/rbi/telnyx/models/meeting_sessions/artifact_retrieve_params.rbi +48 -0
- data/rbi/telnyx/models/meeting_sessions/meeting_session_artifact.rbi +264 -0
- data/rbi/telnyx/models/meeting_sessions/meeting_session_artifact_response.rbi +46 -0
- data/rbi/telnyx/models/phone_numbers/voicemail_pref_response.rbi +149 -2
- data/rbi/telnyx/models/phone_numbers/voicemail_request.rbi +145 -2
- data/rbi/telnyx/models/private_wireless_gateway_status.rbi +2 -2
- data/rbi/telnyx/models/recording_available_webhook_event.rbi +146 -0
- data/rbi/telnyx/models/session_status_changed_webhook_event.rbi +171 -0
- data/rbi/telnyx/models/sim_cards/action_bulk_enable_voice_params.rbi +21 -1
- data/rbi/telnyx/models/sim_cards/action_disable_voice_params.rbi +40 -0
- data/rbi/telnyx/models/sim_cards/action_disable_voice_response.rbi +45 -0
- data/rbi/telnyx/models/sim_cards/action_enable_voice_params.rbi +63 -0
- data/rbi/telnyx/models/sim_cards/action_enable_voice_response.rbi +45 -0
- data/rbi/telnyx/models/sim_cards/action_list_params.rbi +10 -0
- data/rbi/telnyx/models/sim_cards/wireless_sim_card_action.rbi +16 -0
- data/rbi/telnyx/models/storage/edge_compute_pagination_meta.rbi +70 -0
- data/rbi/telnyx/models/storage/sql_database.rbi +131 -0
- data/rbi/telnyx/models/storage/sql_database_response_wrapper.rbi +35 -0
- data/rbi/telnyx/models/storage/sqldb_create_params.rbi +44 -0
- data/rbi/telnyx/models/storage/sqldb_delete_params.rbi +56 -0
- data/rbi/telnyx/models/storage/sqldb_list_params.rbi +198 -0
- data/rbi/telnyx/models/storage/sqldb_retrieve_params.rbi +40 -0
- data/rbi/telnyx/models/storage/sqldbs/action_query_params.rbi +125 -0
- data/rbi/telnyx/models/storage/sqldbs/action_query_response.rbi +226 -0
- data/rbi/telnyx/models/transcript_completed_webhook_event.rbi +166 -0
- data/rbi/telnyx/models/unsafe_unwrap_webhook_event.rbi +5 -0
- data/rbi/telnyx/models/unwrap_webhook_event.rbi +5 -0
- data/rbi/telnyx/models/web_search/research_citation.rbi +53 -0
- data/rbi/telnyx/models/web_search/research_create_params.rbi +138 -0
- data/rbi/telnyx/models/web_search/research_create_response.rbi +235 -0
- data/rbi/telnyx/models/web_search/research_retrieve_params.rbi +40 -0
- data/rbi/telnyx/models/web_search/research_retrieve_response.rbi +179 -0
- data/rbi/telnyx/models/web_search_contents_params.rbi +119 -0
- data/rbi/telnyx/models/web_search_contents_response.rbi +232 -0
- data/rbi/telnyx/models/web_search_create_params.rbi +162 -0
- data/rbi/telnyx/models/web_search_create_response.rbi +127 -0
- data/rbi/telnyx/models/web_search_result.rbi +83 -0
- data/rbi/telnyx/models.rbi +49 -0
- data/rbi/telnyx/resources/calls/actions.rbi +10 -8
- data/rbi/telnyx/resources/calls.rbi +5 -5
- data/rbi/telnyx/resources/meeting_sessions/actions.rbi +71 -0
- data/rbi/telnyx/resources/meeting_sessions/artifacts.rbi +67 -0
- data/rbi/telnyx/resources/meeting_sessions.rbi +256 -0
- data/rbi/telnyx/resources/phone_numbers/voicemail.rbi +22 -2
- data/rbi/telnyx/resources/sim_cards/actions.rbi +56 -1
- data/rbi/telnyx/resources/storage/sqldbs/actions.rbi +50 -0
- data/rbi/telnyx/resources/storage/sqldbs.rbi +105 -0
- data/rbi/telnyx/resources/storage.rbi +4 -0
- data/rbi/telnyx/resources/web_search/research.rbi +71 -0
- data/rbi/telnyx/resources/web_search.rbi +86 -0
- data/rbi/telnyx/resources/webhooks.rbi +10 -0
- data/sig/telnyx/client.rbs +4 -0
- data/sig/telnyx/models/artifact_completed_webhook_event.rbs +120 -0
- data/sig/telnyx/models/artifact_failed_webhook_event.rbs +88 -0
- data/sig/telnyx/models/call_dial_params.rbs +7 -5
- data/sig/telnyx/models/calls/action_answer_params.rbs +7 -5
- data/sig/telnyx/models/calls/action_transfer_params.rbs +7 -5
- data/sig/telnyx/models/meeting_session.rbs +277 -0
- data/sig/telnyx/models/meeting_session_create_params.rbs +222 -0
- data/sig/telnyx/models/meeting_session_delete_params.rbs +20 -0
- data/sig/telnyx/models/meeting_session_delete_recording_media_params.rbs +20 -0
- data/sig/telnyx/models/meeting_session_delete_recording_media_response.rbs +61 -0
- data/sig/telnyx/models/meeting_session_list_params.rbs +53 -0
- data/sig/telnyx/models/meeting_session_list_response.rbs +14 -0
- data/sig/telnyx/models/meeting_session_response.rbs +13 -0
- data/sig/telnyx/models/meeting_session_retrieve_events_params.rbs +36 -0
- data/sig/telnyx/models/meeting_session_retrieve_events_response.rbs +52 -0
- data/sig/telnyx/models/meeting_session_retrieve_params.rbs +20 -0
- data/sig/telnyx/models/meeting_session_retrieve_recordings_params.rbs +20 -0
- data/sig/telnyx/models/meeting_session_retrieve_recordings_response.rbs +34 -0
- data/sig/telnyx/models/meeting_session_retrieve_transcript_params.rbs +42 -0
- data/sig/telnyx/models/meeting_session_retrieve_transcript_response.rbs +77 -0
- data/sig/telnyx/models/meeting_session_update_params.rbs +36 -0
- data/sig/telnyx/models/meeting_sessions/action_accepted_response.rbs +30 -0
- data/sig/telnyx/models/meeting_sessions/action_send_chat_params.rbs +30 -0
- data/sig/telnyx/models/meeting_sessions/action_speak_params.rbs +42 -0
- data/sig/telnyx/models/meeting_sessions/action_stop_speaking_params.rbs +22 -0
- data/sig/telnyx/models/meeting_sessions/artifact_create_params.rbs +44 -0
- data/sig/telnyx/models/meeting_sessions/artifact_list_params.rbs +22 -0
- data/sig/telnyx/models/meeting_sessions/artifact_list_response.rbs +20 -0
- data/sig/telnyx/models/meeting_sessions/artifact_retrieve_params.rbs +30 -0
- data/sig/telnyx/models/meeting_sessions/meeting_session_artifact.rbs +109 -0
- data/sig/telnyx/models/meeting_sessions/meeting_session_artifact_response.rbs +22 -0
- data/sig/telnyx/models/phone_numbers/voicemail_pref_response.rbs +59 -3
- data/sig/telnyx/models/phone_numbers/voicemail_request.rbs +59 -3
- data/sig/telnyx/models/recording_available_webhook_event.rbs +65 -0
- data/sig/telnyx/models/session_status_changed_webhook_event.rbs +82 -0
- data/sig/telnyx/models/sim_cards/action_bulk_enable_voice_params.rbs +7 -1
- data/sig/telnyx/models/sim_cards/action_disable_voice_params.rbs +22 -0
- data/sig/telnyx/models/sim_cards/action_disable_voice_response.rbs +20 -0
- data/sig/telnyx/models/sim_cards/action_enable_voice_params.rbs +32 -0
- data/sig/telnyx/models/sim_cards/action_enable_voice_response.rbs +20 -0
- data/sig/telnyx/models/sim_cards/action_list_params.rbs +4 -0
- data/sig/telnyx/models/sim_cards/wireless_sim_card_action.rbs +8 -1
- data/sig/telnyx/models/storage/edge_compute_pagination_meta.rbs +45 -0
- data/sig/telnyx/models/storage/sql_database.rbs +80 -0
- data/sig/telnyx/models/storage/sql_database_response_wrapper.rbs +20 -0
- data/sig/telnyx/models/storage/sqldb_create_params.rbs +25 -0
- data/sig/telnyx/models/storage/sqldb_delete_params.rbs +31 -0
- data/sig/telnyx/models/storage/sqldb_list_params.rbs +97 -0
- data/sig/telnyx/models/storage/sqldb_retrieve_params.rbs +22 -0
- data/sig/telnyx/models/storage/sqldbs/action_query_params.rbs +52 -0
- data/sig/telnyx/models/storage/sqldbs/action_query_response.rbs +124 -0
- data/sig/telnyx/models/transcript_completed_webhook_event.rbs +82 -0
- data/sig/telnyx/models/unsafe_unwrap_webhook_event.rbs +5 -0
- data/sig/telnyx/models/unwrap_webhook_event.rbs +5 -0
- data/sig/telnyx/models/web_search/research_citation.rbs +21 -0
- data/sig/telnyx/models/web_search/research_create_params.rbs +63 -0
- data/sig/telnyx/models/web_search/research_create_response.rbs +95 -0
- data/sig/telnyx/models/web_search/research_retrieve_params.rbs +25 -0
- data/sig/telnyx/models/web_search/research_retrieve_response.rbs +80 -0
- data/sig/telnyx/models/web_search_contents_params.rbs +59 -0
- data/sig/telnyx/models/web_search_contents_response.rbs +104 -0
- data/sig/telnyx/models/web_search_create_params.rbs +89 -0
- data/sig/telnyx/models/web_search_create_response.rbs +65 -0
- data/sig/telnyx/models/web_search_result.rbs +49 -0
- data/sig/telnyx/models.rbs +42 -0
- data/sig/telnyx/resources/calls/actions.rbs +2 -2
- data/sig/telnyx/resources/calls.rbs +1 -1
- data/sig/telnyx/resources/meeting_sessions/actions.rbs +28 -0
- data/sig/telnyx/resources/meeting_sessions/artifacts.rbs +26 -0
- data/sig/telnyx/resources/meeting_sessions.rbs +75 -0
- data/sig/telnyx/resources/phone_numbers/voicemail.rbs +2 -0
- data/sig/telnyx/resources/sim_cards/actions.rbs +12 -0
- data/sig/telnyx/resources/storage/sqldbs/actions.rbs +18 -0
- data/sig/telnyx/resources/storage/sqldbs.rbs +36 -0
- data/sig/telnyx/resources/storage.rbs +2 -0
- data/sig/telnyx/resources/web_search/research.rbs +22 -0
- data/sig/telnyx/resources/web_search.rbs +29 -0
- data/sig/telnyx/resources/webhooks.rbs +10 -0
- metadata +185 -2
|
@@ -0,0 +1,380 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Telnyx
|
|
4
|
+
module Models
|
|
5
|
+
class MeetingSession < Telnyx::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute id
|
|
7
|
+
# Unique identifier for the meeting session.
|
|
8
|
+
#
|
|
9
|
+
# @return [String]
|
|
10
|
+
required :id, String
|
|
11
|
+
|
|
12
|
+
# @!attribute account_id
|
|
13
|
+
# Identifier of the owning account.
|
|
14
|
+
#
|
|
15
|
+
# @return [String]
|
|
16
|
+
required :account_id, String
|
|
17
|
+
|
|
18
|
+
# @!attribute assistant
|
|
19
|
+
# Assistant configuration if an assistant is attached, otherwise null.
|
|
20
|
+
#
|
|
21
|
+
# @return [Telnyx::Models::MeetingSession::Assistant, nil]
|
|
22
|
+
required :assistant, -> { Telnyx::MeetingSession::Assistant }, nil?: true
|
|
23
|
+
|
|
24
|
+
# @!attribute assistant_state
|
|
25
|
+
# Current state of the assistant, or null if no assistant is attached.
|
|
26
|
+
#
|
|
27
|
+
# @return [Symbol, Telnyx::Models::MeetingSession::AssistantState, nil]
|
|
28
|
+
required :assistant_state, enum: -> { Telnyx::MeetingSession::AssistantState }, nil?: true
|
|
29
|
+
|
|
30
|
+
# @!attribute assistant_state_changed_at
|
|
31
|
+
# Timestamp of the last assistant state change, or null.
|
|
32
|
+
#
|
|
33
|
+
# @return [Time, nil]
|
|
34
|
+
required :assistant_state_changed_at, Time, nil?: true
|
|
35
|
+
|
|
36
|
+
# @!attribute avatar
|
|
37
|
+
# Avatar configuration if an avatar is attached, otherwise null.
|
|
38
|
+
#
|
|
39
|
+
# @return [Telnyx::Models::MeetingSession::Avatar, nil]
|
|
40
|
+
required :avatar, -> { Telnyx::MeetingSession::Avatar }, nil?: true
|
|
41
|
+
|
|
42
|
+
# @!attribute avatar_state
|
|
43
|
+
# Current state of the avatar connection, or null if no avatar is attached.
|
|
44
|
+
#
|
|
45
|
+
# @return [Symbol, Telnyx::Models::MeetingSession::AvatarState, nil]
|
|
46
|
+
required :avatar_state, enum: -> { Telnyx::MeetingSession::AvatarState }, nil?: true
|
|
47
|
+
|
|
48
|
+
# @!attribute avatar_state_changed_at
|
|
49
|
+
# Timestamp of the last avatar state change, or null.
|
|
50
|
+
#
|
|
51
|
+
# @return [Time, nil]
|
|
52
|
+
required :avatar_state_changed_at, Time, nil?: true
|
|
53
|
+
|
|
54
|
+
# @!attribute bot_name
|
|
55
|
+
# Display name of the bot in the meeting.
|
|
56
|
+
#
|
|
57
|
+
# @return [String]
|
|
58
|
+
required :bot_name, String
|
|
59
|
+
|
|
60
|
+
# @!attribute config
|
|
61
|
+
#
|
|
62
|
+
# @return [Telnyx::Models::MeetingSession::Config]
|
|
63
|
+
required :config, -> { Telnyx::MeetingSession::Config }
|
|
64
|
+
|
|
65
|
+
# @!attribute created_at
|
|
66
|
+
# Timestamp when the session was created.
|
|
67
|
+
#
|
|
68
|
+
# @return [Time]
|
|
69
|
+
required :created_at, Time
|
|
70
|
+
|
|
71
|
+
# @!attribute ended_at
|
|
72
|
+
# Timestamp when the session ended, or null if ongoing.
|
|
73
|
+
#
|
|
74
|
+
# @return [Time, nil]
|
|
75
|
+
required :ended_at, Time, nil?: true
|
|
76
|
+
|
|
77
|
+
# @!attribute failure_reason
|
|
78
|
+
# Human-readable failure reason if the session failed, or null.
|
|
79
|
+
#
|
|
80
|
+
# @return [String, nil]
|
|
81
|
+
required :failure_reason, String, nil?: true
|
|
82
|
+
|
|
83
|
+
# @!attribute join_at
|
|
84
|
+
# Scheduled join time, or null for immediate join.
|
|
85
|
+
#
|
|
86
|
+
# @return [Time, nil]
|
|
87
|
+
required :join_at, Time, nil?: true
|
|
88
|
+
|
|
89
|
+
# @!attribute joined_at
|
|
90
|
+
# Timestamp when the session first became `active`, or null if it never became
|
|
91
|
+
# active. This remains positive admission evidence after terminal transitions.
|
|
92
|
+
#
|
|
93
|
+
# @return [Time, nil]
|
|
94
|
+
required :joined_at, Time, nil?: true
|
|
95
|
+
|
|
96
|
+
# @!attribute meeting_url
|
|
97
|
+
# The meeting URL the bot joins.
|
|
98
|
+
#
|
|
99
|
+
# @return [String]
|
|
100
|
+
required :meeting_url, String
|
|
101
|
+
|
|
102
|
+
# @!attribute metadata
|
|
103
|
+
# Arbitrary key-value metadata attached to the session.
|
|
104
|
+
#
|
|
105
|
+
# @return [Hash{Symbol=>Object}]
|
|
106
|
+
required :metadata, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
|
|
107
|
+
|
|
108
|
+
# @!attribute platform
|
|
109
|
+
# Detected meeting platform.
|
|
110
|
+
#
|
|
111
|
+
# @return [Symbol, Telnyx::Models::MeetingSession::Platform]
|
|
112
|
+
required :platform, enum: -> { Telnyx::MeetingSession::Platform }
|
|
113
|
+
|
|
114
|
+
# @!attribute provider
|
|
115
|
+
# Provider handling the meeting session.
|
|
116
|
+
#
|
|
117
|
+
# @return [String]
|
|
118
|
+
required :provider, String
|
|
119
|
+
|
|
120
|
+
# @!attribute recording
|
|
121
|
+
# Whether the session is being recorded.
|
|
122
|
+
#
|
|
123
|
+
# @return [Boolean]
|
|
124
|
+
required :recording, Telnyx::Internal::Type::Boolean
|
|
125
|
+
|
|
126
|
+
# @!attribute status
|
|
127
|
+
# Lifecycle status. `waiting_for_admission` means the bot reached the meeting
|
|
128
|
+
# lobby and may require host approval. `active` means the bot entered the
|
|
129
|
+
# meeting/media path. `ended` alone does not prove attendance; use non-null
|
|
130
|
+
# `joined_at` as positive evidence that the session became active.
|
|
131
|
+
# `admission_denied` is reserved for an explicit provider denial, while
|
|
132
|
+
# cancellation or another termination can end a never-admitted session as `ended`.
|
|
133
|
+
#
|
|
134
|
+
# @return [Symbol, Telnyx::Models::MeetingSession::Status]
|
|
135
|
+
required :status, enum: -> { Telnyx::MeetingSession::Status }
|
|
136
|
+
|
|
137
|
+
# @!attribute status_detail
|
|
138
|
+
# Additional human-readable detail about the status, or null.
|
|
139
|
+
#
|
|
140
|
+
# @return [String, nil]
|
|
141
|
+
required :status_detail, String, nil?: true
|
|
142
|
+
|
|
143
|
+
# @!attribute updated_at
|
|
144
|
+
# Timestamp of the last update to the session.
|
|
145
|
+
#
|
|
146
|
+
# @return [Time]
|
|
147
|
+
required :updated_at, Time
|
|
148
|
+
|
|
149
|
+
# @!attribute webhook_url
|
|
150
|
+
# Webhook endpoint for session lifecycle callbacks, or null if not configured.
|
|
151
|
+
#
|
|
152
|
+
# @return [String, nil]
|
|
153
|
+
required :webhook_url, String, nil?: true
|
|
154
|
+
|
|
155
|
+
# @!method initialize(id:, account_id:, assistant:, assistant_state:, assistant_state_changed_at:, avatar:, avatar_state:, avatar_state_changed_at:, bot_name:, config:, created_at:, ended_at:, failure_reason:, join_at:, joined_at:, meeting_url:, metadata:, platform:, provider:, recording:, status:, status_detail:, updated_at:, webhook_url:)
|
|
156
|
+
# Some parameter documentations has been truncated, see
|
|
157
|
+
# {Telnyx::Models::MeetingSession} for more details.
|
|
158
|
+
#
|
|
159
|
+
# Represents a meeting session. All serializer fields are present and required;
|
|
160
|
+
# nullable fields use null when absent. No actor, provider-bot, idempotency,
|
|
161
|
+
# routing, key, or internal fields are exposed.
|
|
162
|
+
#
|
|
163
|
+
# @param id [String] Unique identifier for the meeting session.
|
|
164
|
+
#
|
|
165
|
+
# @param account_id [String] Identifier of the owning account.
|
|
166
|
+
#
|
|
167
|
+
# @param assistant [Telnyx::Models::MeetingSession::Assistant, nil] Assistant configuration if an assistant is attached, otherwise null.
|
|
168
|
+
#
|
|
169
|
+
# @param assistant_state [Symbol, Telnyx::Models::MeetingSession::AssistantState, nil] Current state of the assistant, or null if no assistant is attached.
|
|
170
|
+
#
|
|
171
|
+
# @param assistant_state_changed_at [Time, nil] Timestamp of the last assistant state change, or null.
|
|
172
|
+
#
|
|
173
|
+
# @param avatar [Telnyx::Models::MeetingSession::Avatar, nil] Avatar configuration if an avatar is attached, otherwise null.
|
|
174
|
+
#
|
|
175
|
+
# @param avatar_state [Symbol, Telnyx::Models::MeetingSession::AvatarState, nil] Current state of the avatar connection, or null if no avatar is attached.
|
|
176
|
+
#
|
|
177
|
+
# @param avatar_state_changed_at [Time, nil] Timestamp of the last avatar state change, or null.
|
|
178
|
+
#
|
|
179
|
+
# @param bot_name [String] Display name of the bot in the meeting.
|
|
180
|
+
#
|
|
181
|
+
# @param config [Telnyx::Models::MeetingSession::Config]
|
|
182
|
+
#
|
|
183
|
+
# @param created_at [Time] Timestamp when the session was created.
|
|
184
|
+
#
|
|
185
|
+
# @param ended_at [Time, nil] Timestamp when the session ended, or null if ongoing.
|
|
186
|
+
#
|
|
187
|
+
# @param failure_reason [String, nil] Human-readable failure reason if the session failed, or null.
|
|
188
|
+
#
|
|
189
|
+
# @param join_at [Time, nil] Scheduled join time, or null for immediate join.
|
|
190
|
+
#
|
|
191
|
+
# @param joined_at [Time, nil] Timestamp when the session first became `active`, or null if it never became act
|
|
192
|
+
#
|
|
193
|
+
# @param meeting_url [String] The meeting URL the bot joins.
|
|
194
|
+
#
|
|
195
|
+
# @param metadata [Hash{Symbol=>Object}] Arbitrary key-value metadata attached to the session.
|
|
196
|
+
#
|
|
197
|
+
# @param platform [Symbol, Telnyx::Models::MeetingSession::Platform] Detected meeting platform.
|
|
198
|
+
#
|
|
199
|
+
# @param provider [String] Provider handling the meeting session.
|
|
200
|
+
#
|
|
201
|
+
# @param recording [Boolean] Whether the session is being recorded.
|
|
202
|
+
#
|
|
203
|
+
# @param status [Symbol, Telnyx::Models::MeetingSession::Status] Lifecycle status. `waiting_for_admission` means the bot reached the meeting lobb
|
|
204
|
+
#
|
|
205
|
+
# @param status_detail [String, nil] Additional human-readable detail about the status, or null.
|
|
206
|
+
#
|
|
207
|
+
# @param updated_at [Time] Timestamp of the last update to the session.
|
|
208
|
+
#
|
|
209
|
+
# @param webhook_url [String, nil] Webhook endpoint for session lifecycle callbacks, or null if not configured.
|
|
210
|
+
|
|
211
|
+
# @see Telnyx::Models::MeetingSession#assistant
|
|
212
|
+
class Assistant < Telnyx::Internal::Type::BaseModel
|
|
213
|
+
# @!attribute id
|
|
214
|
+
# Identifier of the assistant.
|
|
215
|
+
#
|
|
216
|
+
# @return [String]
|
|
217
|
+
required :id, String
|
|
218
|
+
|
|
219
|
+
# @!attribute audio_gate
|
|
220
|
+
# Audio gating strategy for the assistant call leg.
|
|
221
|
+
#
|
|
222
|
+
# @return [Symbol, Telnyx::Models::MeetingSession::Assistant::AudioGate]
|
|
223
|
+
required :audio_gate, enum: -> { Telnyx::MeetingSession::Assistant::AudioGate }
|
|
224
|
+
|
|
225
|
+
# @!method initialize(id:, audio_gate:)
|
|
226
|
+
# Assistant configuration if an assistant is attached, otherwise null.
|
|
227
|
+
#
|
|
228
|
+
# @param id [String] Identifier of the assistant.
|
|
229
|
+
#
|
|
230
|
+
# @param audio_gate [Symbol, Telnyx::Models::MeetingSession::Assistant::AudioGate] Audio gating strategy for the assistant call leg.
|
|
231
|
+
|
|
232
|
+
# Audio gating strategy for the assistant call leg.
|
|
233
|
+
#
|
|
234
|
+
# @see Telnyx::Models::MeetingSession::Assistant#audio_gate
|
|
235
|
+
module AudioGate
|
|
236
|
+
extend Telnyx::Internal::Type::Enum
|
|
237
|
+
|
|
238
|
+
NONE = :none
|
|
239
|
+
HALF_DUPLEX = :half_duplex
|
|
240
|
+
|
|
241
|
+
# @!method self.values
|
|
242
|
+
# @return [Array<Symbol>]
|
|
243
|
+
end
|
|
244
|
+
end
|
|
245
|
+
|
|
246
|
+
# Current state of the assistant, or null if no assistant is attached.
|
|
247
|
+
#
|
|
248
|
+
# @see Telnyx::Models::MeetingSession#assistant_state
|
|
249
|
+
module AssistantState
|
|
250
|
+
extend Telnyx::Internal::Type::Enum
|
|
251
|
+
|
|
252
|
+
STARTING = :starting
|
|
253
|
+
CONNECTED = :connected
|
|
254
|
+
FAILED = :failed
|
|
255
|
+
ENDED = :ended
|
|
256
|
+
|
|
257
|
+
# @!method self.values
|
|
258
|
+
# @return [Array<Symbol>]
|
|
259
|
+
end
|
|
260
|
+
|
|
261
|
+
# @see Telnyx::Models::MeetingSession#avatar
|
|
262
|
+
class Avatar < Telnyx::Internal::Type::BaseModel
|
|
263
|
+
# @!attribute avatar_id
|
|
264
|
+
# Identifier of the avatar.
|
|
265
|
+
#
|
|
266
|
+
# @return [String]
|
|
267
|
+
required :avatar_id, String
|
|
268
|
+
|
|
269
|
+
# @!attribute provider
|
|
270
|
+
# Avatar provider identifier.
|
|
271
|
+
#
|
|
272
|
+
# @return [Symbol, :anam]
|
|
273
|
+
required :provider, const: :anam
|
|
274
|
+
|
|
275
|
+
# @!method initialize(avatar_id:, provider: :anam)
|
|
276
|
+
# Avatar configuration if an avatar is attached, otherwise null.
|
|
277
|
+
#
|
|
278
|
+
# @param avatar_id [String] Identifier of the avatar.
|
|
279
|
+
#
|
|
280
|
+
# @param provider [Symbol, :anam] Avatar provider identifier.
|
|
281
|
+
end
|
|
282
|
+
|
|
283
|
+
# Current state of the avatar connection, or null if no avatar is attached.
|
|
284
|
+
#
|
|
285
|
+
# @see Telnyx::Models::MeetingSession#avatar_state
|
|
286
|
+
module AvatarState
|
|
287
|
+
extend Telnyx::Internal::Type::Enum
|
|
288
|
+
|
|
289
|
+
STARTING = :starting
|
|
290
|
+
CONNECTED = :connected
|
|
291
|
+
DEGRADED = :degraded
|
|
292
|
+
DISCONNECTED = :disconnected
|
|
293
|
+
|
|
294
|
+
# @!method self.values
|
|
295
|
+
# @return [Array<Symbol>]
|
|
296
|
+
end
|
|
297
|
+
|
|
298
|
+
# @see Telnyx::Models::MeetingSession#config
|
|
299
|
+
class Config < Telnyx::Internal::Type::BaseModel
|
|
300
|
+
# @!attribute barge_in
|
|
301
|
+
# When enabled, a human participant `speech_on` event interrupts and stops the
|
|
302
|
+
# current bot audio; it does not bypass admission or initiate speech. Assistant
|
|
303
|
+
# sessions reject `barge_in: true`.
|
|
304
|
+
#
|
|
305
|
+
# @return [Boolean]
|
|
306
|
+
required :barge_in, Telnyx::Internal::Type::Boolean
|
|
307
|
+
|
|
308
|
+
# @!attribute speak_on_enter
|
|
309
|
+
# Text spoken on meeting entry, or null if not set.
|
|
310
|
+
#
|
|
311
|
+
# @return [String, nil]
|
|
312
|
+
required :speak_on_enter, String, nil?: true
|
|
313
|
+
|
|
314
|
+
# @!attribute summarize_on_end
|
|
315
|
+
# Whether a summary artifact is generated on session end.
|
|
316
|
+
#
|
|
317
|
+
# @return [Boolean]
|
|
318
|
+
required :summarize_on_end, Telnyx::Internal::Type::Boolean
|
|
319
|
+
|
|
320
|
+
# @!attribute voice
|
|
321
|
+
# Configured voice identifier, or null if not set.
|
|
322
|
+
#
|
|
323
|
+
# @return [String, nil]
|
|
324
|
+
required :voice, String, nil?: true
|
|
325
|
+
|
|
326
|
+
# @!method initialize(barge_in:, speak_on_enter:, summarize_on_end:, voice:)
|
|
327
|
+
# Some parameter documentations has been truncated, see
|
|
328
|
+
# {Telnyx::Models::MeetingSession::Config} for more details.
|
|
329
|
+
#
|
|
330
|
+
# @param barge_in [Boolean] When enabled, a human participant `speech_on` event interrupts and stops the cur
|
|
331
|
+
#
|
|
332
|
+
# @param speak_on_enter [String, nil] Text spoken on meeting entry, or null if not set.
|
|
333
|
+
#
|
|
334
|
+
# @param summarize_on_end [Boolean] Whether a summary artifact is generated on session end.
|
|
335
|
+
#
|
|
336
|
+
# @param voice [String, nil] Configured voice identifier, or null if not set.
|
|
337
|
+
end
|
|
338
|
+
|
|
339
|
+
# Detected meeting platform.
|
|
340
|
+
#
|
|
341
|
+
# @see Telnyx::Models::MeetingSession#platform
|
|
342
|
+
module Platform
|
|
343
|
+
extend Telnyx::Internal::Type::Enum
|
|
344
|
+
|
|
345
|
+
ZOOM = :zoom
|
|
346
|
+
GOOGLE_MEET = :google_meet
|
|
347
|
+
TEAMS = :teams
|
|
348
|
+
WEBEX = :webex
|
|
349
|
+
UNKNOWN = :unknown
|
|
350
|
+
|
|
351
|
+
# @!method self.values
|
|
352
|
+
# @return [Array<Symbol>]
|
|
353
|
+
end
|
|
354
|
+
|
|
355
|
+
# Lifecycle status. `waiting_for_admission` means the bot reached the meeting
|
|
356
|
+
# lobby and may require host approval. `active` means the bot entered the
|
|
357
|
+
# meeting/media path. `ended` alone does not prove attendance; use non-null
|
|
358
|
+
# `joined_at` as positive evidence that the session became active.
|
|
359
|
+
# `admission_denied` is reserved for an explicit provider denial, while
|
|
360
|
+
# cancellation or another termination can end a never-admitted session as `ended`.
|
|
361
|
+
#
|
|
362
|
+
# @see Telnyx::Models::MeetingSession#status
|
|
363
|
+
module Status
|
|
364
|
+
extend Telnyx::Internal::Type::Enum
|
|
365
|
+
|
|
366
|
+
SCHEDULED = :scheduled
|
|
367
|
+
JOINING = :joining
|
|
368
|
+
WAITING_FOR_ADMISSION = :waiting_for_admission
|
|
369
|
+
ACTIVE = :active
|
|
370
|
+
LEAVING = :leaving
|
|
371
|
+
ENDED = :ended
|
|
372
|
+
FAILED = :failed
|
|
373
|
+
ADMISSION_DENIED = :admission_denied
|
|
374
|
+
|
|
375
|
+
# @!method self.values
|
|
376
|
+
# @return [Array<Symbol>]
|
|
377
|
+
end
|
|
378
|
+
end
|
|
379
|
+
end
|
|
380
|
+
end
|
|
@@ -0,0 +1,309 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Telnyx
|
|
4
|
+
module Models
|
|
5
|
+
# @see Telnyx::Resources::MeetingSessions#create
|
|
6
|
+
class MeetingSessionCreateParams < Telnyx::Internal::Type::BaseModel
|
|
7
|
+
extend Telnyx::Internal::Type::RequestParameters::Converter
|
|
8
|
+
include Telnyx::Internal::Type::RequestParameters
|
|
9
|
+
|
|
10
|
+
# @!attribute meeting_url
|
|
11
|
+
# The meeting URL the bot should join.
|
|
12
|
+
#
|
|
13
|
+
# @return [String]
|
|
14
|
+
required :meeting_url, String
|
|
15
|
+
|
|
16
|
+
# @!attribute assistant
|
|
17
|
+
# Request options for attaching a voice assistant to the session. Routing fields
|
|
18
|
+
# (`call_control_connection_id`, `from`, and `loopback_sip_uri`) are used only to
|
|
19
|
+
# establish the assistant call leg and are omitted from response objects.
|
|
20
|
+
# `audio_gate` is returned with `id` in the assistant response object.
|
|
21
|
+
#
|
|
22
|
+
# @return [Telnyx::Models::MeetingSessionCreateParams::Assistant, nil]
|
|
23
|
+
optional :assistant, -> { Telnyx::MeetingSessionCreateParams::Assistant }
|
|
24
|
+
|
|
25
|
+
# @!attribute avatar
|
|
26
|
+
# Request options for attaching a bring-your-own-key avatar to the session.
|
|
27
|
+
#
|
|
28
|
+
# @return [Telnyx::Models::MeetingSessionCreateParams::Avatar, nil]
|
|
29
|
+
optional :avatar, -> { Telnyx::MeetingSessionCreateParams::Avatar }
|
|
30
|
+
|
|
31
|
+
# @!attribute barge_in
|
|
32
|
+
# When enabled, a human participant `speech_on` event interrupts and stops the
|
|
33
|
+
# current bot audio; it does not bypass admission or initiate speech. Assistant
|
|
34
|
+
# sessions reject `barge_in: true`.
|
|
35
|
+
#
|
|
36
|
+
# @return [Boolean, nil]
|
|
37
|
+
optional :barge_in, Telnyx::Internal::Type::Boolean
|
|
38
|
+
|
|
39
|
+
# @!attribute bot_name
|
|
40
|
+
# Display name for the bot in the meeting. Defaults to "Meeting Bot".
|
|
41
|
+
#
|
|
42
|
+
# @return [String, nil]
|
|
43
|
+
optional :bot_name, String
|
|
44
|
+
|
|
45
|
+
# @!attribute camera_image
|
|
46
|
+
# Write-only static camera-tile image for this session, not a native account or
|
|
47
|
+
# participant profile photo. Supply exactly one JPEG source. When effective, the
|
|
48
|
+
# image is used as the bot's static camera/video output; presentation varies by
|
|
49
|
+
# meeting platform and recording configuration and is not guaranteed in
|
|
50
|
+
# recordings. An effective Avatar or Assistant webpage output takes precedence, so
|
|
51
|
+
# this input is ignored and a URL source is not fetched.
|
|
52
|
+
#
|
|
53
|
+
# @return [Telnyx::Models::MeetingSessionCreateParams::CameraImage::MeetingSessionCameraImageBase64Source, Telnyx::Models::MeetingSessionCreateParams::CameraImage::MeetingSessionCameraImageURLSource, nil]
|
|
54
|
+
optional :camera_image, union: -> { Telnyx::MeetingSessionCreateParams::CameraImage }
|
|
55
|
+
|
|
56
|
+
# @!attribute idempotency_key
|
|
57
|
+
# Client-supplied idempotency key to safely retry creation requests without
|
|
58
|
+
# duplicating sessions. Lookup is scoped to the authenticated account and compares
|
|
59
|
+
# the key only; the request payload is not fingerprinted or compared.
|
|
60
|
+
#
|
|
61
|
+
# @return [String, nil]
|
|
62
|
+
optional :idempotency_key, String
|
|
63
|
+
|
|
64
|
+
# @!attribute join_at
|
|
65
|
+
# ISO-8601 timestamp in the future at which the bot should join. If omitted, the
|
|
66
|
+
# bot joins immediately.
|
|
67
|
+
#
|
|
68
|
+
# @return [Time, nil]
|
|
69
|
+
optional :join_at, Time
|
|
70
|
+
|
|
71
|
+
# @!attribute metadata
|
|
72
|
+
# Arbitrary key-value metadata attached to the session. The serialized JSON
|
|
73
|
+
# representation must not exceed 16384 characters at runtime.
|
|
74
|
+
#
|
|
75
|
+
# @return [Hash{Symbol=>Object}, nil]
|
|
76
|
+
optional :metadata, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
|
|
77
|
+
|
|
78
|
+
# @!attribute speak_on_enter
|
|
79
|
+
# Text the bot speaks when it enters the meeting.
|
|
80
|
+
#
|
|
81
|
+
# @return [String, nil]
|
|
82
|
+
optional :speak_on_enter, String
|
|
83
|
+
|
|
84
|
+
# @!attribute summarize_on_end
|
|
85
|
+
# If true, generate a summary artifact when the session ends.
|
|
86
|
+
#
|
|
87
|
+
# @return [Boolean, nil]
|
|
88
|
+
optional :summarize_on_end, Telnyx::Internal::Type::Boolean
|
|
89
|
+
|
|
90
|
+
# @!attribute voice
|
|
91
|
+
# Session-default voice identifier used for `speak_on_enter` and ordinary speak
|
|
92
|
+
# actions. A voice supplied on an individual speak action overrides this default
|
|
93
|
+
# for that utterance.
|
|
94
|
+
#
|
|
95
|
+
# @return [String, nil]
|
|
96
|
+
optional :voice, String
|
|
97
|
+
|
|
98
|
+
# @!attribute webhook_url
|
|
99
|
+
# HTTPS endpoint to receive session lifecycle callbacks. Static validation
|
|
100
|
+
# requires HTTPS, rejects embedded credentials and blocked hosts, and enforces
|
|
101
|
+
# egress policy. Validation makes no network request to the endpoint.
|
|
102
|
+
#
|
|
103
|
+
# @return [String, nil]
|
|
104
|
+
optional :webhook_url, String
|
|
105
|
+
|
|
106
|
+
# @!method initialize(meeting_url:, assistant: nil, avatar: nil, barge_in: nil, bot_name: nil, camera_image: nil, idempotency_key: nil, join_at: nil, metadata: nil, speak_on_enter: nil, summarize_on_end: nil, voice: nil, webhook_url: nil, request_options: {})
|
|
107
|
+
# Some parameter documentations has been truncated, see
|
|
108
|
+
# {Telnyx::Models::MeetingSessionCreateParams} for more details.
|
|
109
|
+
#
|
|
110
|
+
# @param meeting_url [String] The meeting URL the bot should join.
|
|
111
|
+
#
|
|
112
|
+
# @param assistant [Telnyx::Models::MeetingSessionCreateParams::Assistant] Request options for attaching a voice assistant to the session. Routing fields (
|
|
113
|
+
#
|
|
114
|
+
# @param avatar [Telnyx::Models::MeetingSessionCreateParams::Avatar] Request options for attaching a bring-your-own-key avatar to the session.
|
|
115
|
+
#
|
|
116
|
+
# @param barge_in [Boolean] When enabled, a human participant `speech_on` event interrupts and stops the cur
|
|
117
|
+
#
|
|
118
|
+
# @param bot_name [String] Display name for the bot in the meeting. Defaults to "Meeting Bot".
|
|
119
|
+
#
|
|
120
|
+
# @param camera_image [Telnyx::Models::MeetingSessionCreateParams::CameraImage::MeetingSessionCameraImageBase64Source, Telnyx::Models::MeetingSessionCreateParams::CameraImage::MeetingSessionCameraImageURLSource] Write-only static camera-tile image for this session, not a native account or pa
|
|
121
|
+
#
|
|
122
|
+
# @param idempotency_key [String] Client-supplied idempotency key to safely retry creation requests without duplic
|
|
123
|
+
#
|
|
124
|
+
# @param join_at [Time] ISO-8601 timestamp in the future at which the bot should join. If omitted, the b
|
|
125
|
+
#
|
|
126
|
+
# @param metadata [Hash{Symbol=>Object}] Arbitrary key-value metadata attached to the session. The serialized JSON repres
|
|
127
|
+
#
|
|
128
|
+
# @param speak_on_enter [String] Text the bot speaks when it enters the meeting.
|
|
129
|
+
#
|
|
130
|
+
# @param summarize_on_end [Boolean] If true, generate a summary artifact when the session ends.
|
|
131
|
+
#
|
|
132
|
+
# @param voice [String] Session-default voice identifier used for `speak_on_enter` and ordinary speak ac
|
|
133
|
+
#
|
|
134
|
+
# @param webhook_url [String] HTTPS endpoint to receive session lifecycle callbacks. Static validation require
|
|
135
|
+
#
|
|
136
|
+
# @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
|
|
137
|
+
|
|
138
|
+
class Assistant < Telnyx::Internal::Type::BaseModel
|
|
139
|
+
# @!attribute id
|
|
140
|
+
# Identifier of the assistant to attach.
|
|
141
|
+
#
|
|
142
|
+
# @return [String]
|
|
143
|
+
required :id, String
|
|
144
|
+
|
|
145
|
+
# @!attribute call_control_connection_id
|
|
146
|
+
# Call control connection used to bridge the assistant into the meeting audio.
|
|
147
|
+
#
|
|
148
|
+
# @return [String]
|
|
149
|
+
required :call_control_connection_id, String
|
|
150
|
+
|
|
151
|
+
# @!attribute from
|
|
152
|
+
# E.164 calling number used as the originating party for the assistant call leg.
|
|
153
|
+
#
|
|
154
|
+
# @return [String]
|
|
155
|
+
required :from, String
|
|
156
|
+
|
|
157
|
+
# @!attribute loopback_sip_uri
|
|
158
|
+
# SIP URI to which the assistant media loopback is established.
|
|
159
|
+
#
|
|
160
|
+
# @return [String]
|
|
161
|
+
required :loopback_sip_uri, String
|
|
162
|
+
|
|
163
|
+
# @!attribute audio_gate
|
|
164
|
+
# Audio gating strategy for the assistant call leg.
|
|
165
|
+
#
|
|
166
|
+
# @return [Symbol, Telnyx::Models::MeetingSessionCreateParams::Assistant::AudioGate, nil]
|
|
167
|
+
optional :audio_gate, enum: -> { Telnyx::MeetingSessionCreateParams::Assistant::AudioGate }
|
|
168
|
+
|
|
169
|
+
# @!method initialize(id:, call_control_connection_id:, from:, loopback_sip_uri:, audio_gate: nil)
|
|
170
|
+
# Request options for attaching a voice assistant to the session. Routing fields
|
|
171
|
+
# (`call_control_connection_id`, `from`, and `loopback_sip_uri`) are used only to
|
|
172
|
+
# establish the assistant call leg and are omitted from response objects.
|
|
173
|
+
# `audio_gate` is returned with `id` in the assistant response object.
|
|
174
|
+
#
|
|
175
|
+
# @param id [String] Identifier of the assistant to attach.
|
|
176
|
+
#
|
|
177
|
+
# @param call_control_connection_id [String] Call control connection used to bridge the assistant into the meeting audio.
|
|
178
|
+
#
|
|
179
|
+
# @param from [String] E.164 calling number used as the originating party for the assistant call leg.
|
|
180
|
+
#
|
|
181
|
+
# @param loopback_sip_uri [String] SIP URI to which the assistant media loopback is established.
|
|
182
|
+
#
|
|
183
|
+
# @param audio_gate [Symbol, Telnyx::Models::MeetingSessionCreateParams::Assistant::AudioGate] Audio gating strategy for the assistant call leg.
|
|
184
|
+
|
|
185
|
+
# Audio gating strategy for the assistant call leg.
|
|
186
|
+
#
|
|
187
|
+
# @see Telnyx::Models::MeetingSessionCreateParams::Assistant#audio_gate
|
|
188
|
+
module AudioGate
|
|
189
|
+
extend Telnyx::Internal::Type::Enum
|
|
190
|
+
|
|
191
|
+
NONE = :none
|
|
192
|
+
HALF_DUPLEX = :half_duplex
|
|
193
|
+
|
|
194
|
+
# @!method self.values
|
|
195
|
+
# @return [Array<Symbol>]
|
|
196
|
+
end
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
class Avatar < Telnyx::Internal::Type::BaseModel
|
|
200
|
+
# @!attribute avatar_id
|
|
201
|
+
# Identifier of the avatar to use.
|
|
202
|
+
#
|
|
203
|
+
# @return [String]
|
|
204
|
+
required :avatar_id, String
|
|
205
|
+
|
|
206
|
+
# @!attribute provider
|
|
207
|
+
# Avatar provider identifier. Currently only "anam" is supported.
|
|
208
|
+
#
|
|
209
|
+
# @return [Symbol, :anam]
|
|
210
|
+
required :provider, const: :anam
|
|
211
|
+
|
|
212
|
+
request_only do
|
|
213
|
+
# @!attribute api_key
|
|
214
|
+
# Bring-your-own-key API key for the avatar provider. The key is never stored or
|
|
215
|
+
# returned by the API.
|
|
216
|
+
#
|
|
217
|
+
# @return [String]
|
|
218
|
+
required :api_key, String
|
|
219
|
+
end
|
|
220
|
+
|
|
221
|
+
# @!method initialize(api_key:, avatar_id:, provider: :anam)
|
|
222
|
+
# Some parameter documentations has been truncated, see
|
|
223
|
+
# {Telnyx::Models::MeetingSessionCreateParams::Avatar} for more details.
|
|
224
|
+
#
|
|
225
|
+
# Request options for attaching a bring-your-own-key avatar to the session.
|
|
226
|
+
#
|
|
227
|
+
# @param api_key [String] Bring-your-own-key API key for the avatar provider. The key is never stored or r
|
|
228
|
+
#
|
|
229
|
+
# @param avatar_id [String] Identifier of the avatar to use.
|
|
230
|
+
#
|
|
231
|
+
# @param provider [Symbol, :anam] Avatar provider identifier. Currently only "anam" is supported.
|
|
232
|
+
end
|
|
233
|
+
|
|
234
|
+
# Write-only static camera-tile image for this session, not a native account or
|
|
235
|
+
# participant profile photo. Supply exactly one JPEG source. When effective, the
|
|
236
|
+
# image is used as the bot's static camera/video output; presentation varies by
|
|
237
|
+
# meeting platform and recording configuration and is not guaranteed in
|
|
238
|
+
# recordings. An effective Avatar or Assistant webpage output takes precedence, so
|
|
239
|
+
# this input is ignored and a URL source is not fetched.
|
|
240
|
+
module CameraImage
|
|
241
|
+
extend Telnyx::Internal::Type::Union
|
|
242
|
+
|
|
243
|
+
variant -> { Telnyx::MeetingSessionCreateParams::CameraImage::MeetingSessionCameraImageBase64Source }
|
|
244
|
+
|
|
245
|
+
variant -> { Telnyx::MeetingSessionCreateParams::CameraImage::MeetingSessionCameraImageURLSource }
|
|
246
|
+
|
|
247
|
+
class MeetingSessionCameraImageBase64Source < Telnyx::Internal::Type::BaseModel
|
|
248
|
+
# @!attribute base64_data
|
|
249
|
+
# Canonical plain RFC 4648 Base64 for a valid decoded JPEG. Data URIs, whitespace,
|
|
250
|
+
# and the URL-safe alphabet are rejected. The encoded value is limited to
|
|
251
|
+
# 1,835,008 characters and the decoded JPEG to 1,363,148 bytes. The JPEG is
|
|
252
|
+
# limited to 4,096 pixels per dimension, 4 megapixels, and 128 MB of decoder
|
|
253
|
+
# memory. The image bytes are not persisted, returned, or logged.
|
|
254
|
+
#
|
|
255
|
+
# @return [String]
|
|
256
|
+
required :base64_data, String
|
|
257
|
+
|
|
258
|
+
# @!attribute format_
|
|
259
|
+
# Only JPEG images are accepted.
|
|
260
|
+
#
|
|
261
|
+
# @return [Symbol, :jpeg]
|
|
262
|
+
required :format_, const: :jpeg, api_name: :format
|
|
263
|
+
|
|
264
|
+
# @!method initialize(base64_data:, format_: :jpeg)
|
|
265
|
+
# Some parameter documentations has been truncated, see
|
|
266
|
+
# {Telnyx::Models::MeetingSessionCreateParams::CameraImage::MeetingSessionCameraImageBase64Source}
|
|
267
|
+
# for more details.
|
|
268
|
+
#
|
|
269
|
+
# @param base64_data [String] Canonical plain RFC 4648 Base64 for a valid decoded JPEG. Data URIs, whitespace,
|
|
270
|
+
#
|
|
271
|
+
# @param format_ [Symbol, :jpeg] Only JPEG images are accepted.
|
|
272
|
+
end
|
|
273
|
+
|
|
274
|
+
class MeetingSessionCameraImageURLSource < Telnyx::Internal::Type::BaseModel
|
|
275
|
+
# @!attribute format_
|
|
276
|
+
# Only JPEG images are accepted.
|
|
277
|
+
#
|
|
278
|
+
# @return [Symbol, :jpeg]
|
|
279
|
+
required :format_, const: :jpeg, api_name: :format
|
|
280
|
+
|
|
281
|
+
# @!attribute url
|
|
282
|
+
# Public HTTPS JPEG URL with at most 2,048 characters and no credentials,
|
|
283
|
+
# fragment, surrounding whitespace, raw control characters, or explicit
|
|
284
|
+
# non-default port. Signed queries are allowed but must be treated as credentials.
|
|
285
|
+
# Fetching is limited to public network destinations, a five-second timeout, no
|
|
286
|
+
# redirects, a 2xx image/jpeg response with identity or no content encoding, and a
|
|
287
|
+
# 1,363,148-byte limit enforced against both declared and streamed content. The
|
|
288
|
+
# service resolves the URL before bot creation and does not persist, return, or
|
|
289
|
+
# log the URL or image bytes.
|
|
290
|
+
#
|
|
291
|
+
# @return [String]
|
|
292
|
+
required :url, String
|
|
293
|
+
|
|
294
|
+
# @!method initialize(url:, format_: :jpeg)
|
|
295
|
+
# Some parameter documentations has been truncated, see
|
|
296
|
+
# {Telnyx::Models::MeetingSessionCreateParams::CameraImage::MeetingSessionCameraImageURLSource}
|
|
297
|
+
# for more details.
|
|
298
|
+
#
|
|
299
|
+
# @param url [String] Public HTTPS JPEG URL with at most 2,048 characters and no credentials, fragment
|
|
300
|
+
#
|
|
301
|
+
# @param format_ [Symbol, :jpeg] Only JPEG images are accepted.
|
|
302
|
+
end
|
|
303
|
+
|
|
304
|
+
# @!method self.variants
|
|
305
|
+
# @return [Array(Telnyx::Models::MeetingSessionCreateParams::CameraImage::MeetingSessionCameraImageBase64Source, Telnyx::Models::MeetingSessionCreateParams::CameraImage::MeetingSessionCameraImageURLSource)]
|
|
306
|
+
end
|
|
307
|
+
end
|
|
308
|
+
end
|
|
309
|
+
end
|