openai 0.88.0 → 0.89.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/openai/client.rb +4 -0
- data/lib/openai/models/beta/beta_response_input_item.rb +91 -1
- data/lib/openai/models/beta/beta_response_item.rb +93 -1
- data/lib/openai/models/beta/beta_response_output_item.rb +91 -1
- data/lib/openai/models/conversations/conversation_item.rb +91 -1
- data/lib/openai/models/live/audio_format.rb +109 -0
- data/lib/openai/models/live/built_in_voice.rb +38 -0
- data/lib/openai/models/live/client_config.rb +22 -0
- data/lib/openai/models/live/client_delegation.rb +22 -0
- data/lib/openai/models/live/client_event.rb +54 -0
- data/lib/openai/models/live/commentary_append_event.rb +59 -0
- data/lib/openai/models/live/commentary_appended_event.rb +65 -0
- data/lib/openai/models/live/custom_voice.rb +17 -0
- data/lib/openai/models/live/data_channel_config.rb +81 -0
- data/lib/openai/models/live/delegation_created_event.rb +140 -0
- data/lib/openai/models/live/error.rb +60 -0
- data/lib/openai/models/live/error_event.rb +52 -0
- data/lib/openai/models/live/fork_client_event.rb +53 -0
- data/lib/openai/models/live/fork_server_event.rb +295 -0
- data/lib/openai/models/live/fork_session_config.rb +107 -0
- data/lib/openai/models/live/fork_session_start_event.rb +48 -0
- data/lib/openai/models/live/function_tool.rb +60 -0
- data/lib/openai/models/live/info_event.rb +60 -0
- data/lib/openai/models/live/initial_item.rb +419 -0
- data/lib/openai/models/live/input_audio_append_event.rb +50 -0
- data/lib/openai/models/live/input_audio_mute_event.rb +33 -0
- data/lib/openai/models/live/input_audio_muted_event.rb +42 -0
- data/lib/openai/models/live/input_audio_unmute_event.rb +33 -0
- data/lib/openai/models/live/input_audio_unmuted_event.rb +42 -0
- data/lib/openai/models/live/input_transcript_delta_event.rb +76 -0
- data/lib/openai/models/live/instructions_append_event.rb +57 -0
- data/lib/openai/models/live/instructions_appended_event.rb +65 -0
- data/lib/openai/models/live/live_create_params.rb +57 -0
- data/lib/openai/models/live/live_create_response.rb +77 -0
- data/lib/openai/models/live/media_session_config.rb +227 -0
- data/lib/openai/models/live/media_session_fork_config.rb +75 -0
- data/lib/openai/models/live/output_audio_delta_event.rb +58 -0
- data/lib/openai/models/live/output_transcript_delta_event.rb +76 -0
- data/lib/openai/models/live/response_create_event.rb +33 -0
- data/lib/openai/models/live/response_event.rb +67 -0
- data/lib/openai/models/live/response_item_create_event.rb +44 -0
- data/lib/openai/models/live/responses_delegation_config.rb +332 -0
- data/lib/openai/models/live/responses_delegation_update_config.rb +332 -0
- data/lib/openai/models/live/server_event.rb +295 -0
- data/lib/openai/models/live/server_event_selector.rb +32 -0
- data/lib/openai/models/live/session_accept_params.rb +257 -0
- data/lib/openai/models/live/session_close_event.rb +33 -0
- data/lib/openai/models/live/session_closed_event.rb +113 -0
- data/lib/openai/models/live/session_config.rb +236 -0
- data/lib/openai/models/live/session_download_recording_params.rb +27 -0
- data/lib/openai/models/live/session_fork_params.rb +66 -0
- data/lib/openai/models/live/session_fork_response.rb +77 -0
- data/lib/openai/models/live/session_hangup_params.rb +22 -0
- data/lib/openai/models/live/session_refer_params.rb +34 -0
- data/lib/openai/models/live/session_reject_params.rb +32 -0
- data/lib/openai/models/live/session_resource.rb +268 -0
- data/lib/openai/models/live/session_start_event.rb +46 -0
- data/lib/openai/models/live/session_started_event.rb +51 -0
- data/lib/openai/models/live/session_update_config.rb +69 -0
- data/lib/openai/models/live/session_update_event.rb +46 -0
- data/lib/openai/models/live/session_updated_event.rb +51 -0
- data/lib/openai/models/live/session_usage.rb +24 -0
- data/lib/openai/models/live/session_usage_updated_event.rb +81 -0
- data/lib/openai/models/live/thinking_append_event.rb +59 -0
- data/lib/openai/models/live/thinking_appended_event.rb +65 -0
- data/lib/openai/models/responses/response_input_item.rb +91 -1
- data/lib/openai/models/responses/response_item.rb +93 -1
- data/lib/openai/models/responses/response_output_item.rb +91 -1
- data/lib/openai/models/webhooks/live_call_incoming_webhook_event.rb +12 -7
- data/lib/openai/models/webhooks/live_transport_incoming_webhook_event.rb +137 -0
- data/lib/openai/models/webhooks/realtime_call_incoming_webhook_event.rb +4 -4
- data/lib/openai/models/webhooks/unwrap_webhook_event.rb +9 -2
- data/lib/openai/models.rb +2 -0
- data/lib/openai/resources/live/forks.rb +16 -0
- data/lib/openai/resources/live/sessions.rb +180 -0
- data/lib/openai/resources/live/sideband.rb +16 -0
- data/lib/openai/resources/live.rb +54 -0
- data/lib/openai/resources/webhooks.rb +1 -1
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +65 -0
- data/rbi/openai/client.rbi +3 -0
- data/rbi/openai/models/beta/beta_response_input_item.rbi +109 -0
- data/rbi/openai/models/beta/beta_response_item.rbi +105 -0
- data/rbi/openai/models/beta/beta_response_output_item.rbi +119 -0
- data/rbi/openai/models/conversations/conversation_item.rbi +133 -0
- data/rbi/openai/models/live/audio_format.rbi +185 -0
- data/rbi/openai/models/live/built_in_voice.rbi +46 -0
- data/rbi/openai/models/live/client_config.rbi +54 -0
- data/rbi/openai/models/live/client_delegation.rbi +51 -0
- data/rbi/openai/models/live/client_event.rbi +41 -0
- data/rbi/openai/models/live/commentary_append_event.rbi +88 -0
- data/rbi/openai/models/live/commentary_appended_event.rbi +97 -0
- data/rbi/openai/models/live/custom_voice.rbi +46 -0
- data/rbi/openai/models/live/data_channel_config.rbi +119 -0
- data/rbi/openai/models/live/delegation_created_event.rbi +207 -0
- data/rbi/openai/models/live/error.rbi +95 -0
- data/rbi/openai/models/live/error_event.rbi +87 -0
- data/rbi/openai/models/live/fork_client_event.rbi +40 -0
- data/rbi/openai/models/live/fork_server_event.rbi +436 -0
- data/rbi/openai/models/live/fork_session_config.rbi +234 -0
- data/rbi/openai/models/live/fork_session_start_event.rbi +80 -0
- data/rbi/openai/models/live/function_tool.rbi +95 -0
- data/rbi/openai/models/live/info_event.rbi +92 -0
- data/rbi/openai/models/live/initial_item.rbi +661 -0
- data/rbi/openai/models/live/input_audio_append_event.rbi +79 -0
- data/rbi/openai/models/live/input_audio_mute_event.rbi +62 -0
- data/rbi/openai/models/live/input_audio_muted_event.rbi +74 -0
- data/rbi/openai/models/live/input_audio_unmute_event.rbi +62 -0
- data/rbi/openai/models/live/input_audio_unmuted_event.rbi +74 -0
- data/rbi/openai/models/live/input_transcript_delta_event.rbi +115 -0
- data/rbi/openai/models/live/instructions_append_event.rbi +86 -0
- data/rbi/openai/models/live/instructions_appended_event.rbi +97 -0
- data/rbi/openai/models/live/live_create_params.rbi +121 -0
- data/rbi/openai/models/live/live_create_response.rbi +160 -0
- data/rbi/openai/models/live/media_session_config.rbi +390 -0
- data/rbi/openai/models/live/media_session_fork_config.rbi +143 -0
- data/rbi/openai/models/live/output_audio_delta_event.rbi +93 -0
- data/rbi/openai/models/live/output_transcript_delta_event.rbi +115 -0
- data/rbi/openai/models/live/response_create_event.rbi +62 -0
- data/rbi/openai/models/live/response_event.rbi +105 -0
- data/rbi/openai/models/live/response_item_create_event.rbi +183 -0
- data/rbi/openai/models/live/responses_delegation_config.rbi +562 -0
- data/rbi/openai/models/live/responses_delegation_update_config.rbi +585 -0
- data/rbi/openai/models/live/server_event.rbi +436 -0
- data/rbi/openai/models/live/server_event_selector.rbi +64 -0
- data/rbi/openai/models/live/session_accept_params.rbi +451 -0
- data/rbi/openai/models/live/session_close_event.rbi +62 -0
- data/rbi/openai/models/live/session_closed_event.rbi +148 -0
- data/rbi/openai/models/live/session_config.rbi +427 -0
- data/rbi/openai/models/live/session_download_recording_params.rbi +57 -0
- data/rbi/openai/models/live/session_fork_params.rbi +131 -0
- data/rbi/openai/models/live/session_fork_response.rbi +160 -0
- data/rbi/openai/models/live/session_hangup_params.rbi +53 -0
- data/rbi/openai/models/live/session_refer_params.rbi +64 -0
- data/rbi/openai/models/live/session_reject_params.rbi +62 -0
- data/rbi/openai/models/live/session_resource.rbi +461 -0
- data/rbi/openai/models/live/session_start_event.rbi +78 -0
- data/rbi/openai/models/live/session_started_event.rbi +86 -0
- data/rbi/openai/models/live/session_update_config.rbi +134 -0
- data/rbi/openai/models/live/session_update_event.rbi +78 -0
- data/rbi/openai/models/live/session_updated_event.rbi +86 -0
- data/rbi/openai/models/live/session_usage.rbi +53 -0
- data/rbi/openai/models/live/session_usage_updated_event.rbi +148 -0
- data/rbi/openai/models/live/thinking_append_event.rbi +88 -0
- data/rbi/openai/models/live/thinking_appended_event.rbi +97 -0
- data/rbi/openai/models/responses/response_input_item.rbi +113 -0
- data/rbi/openai/models/responses/response_item.rbi +105 -0
- data/rbi/openai/models/responses/response_output_item.rbi +125 -0
- data/rbi/openai/models/webhooks/live_call_incoming_webhook_event.rbi +11 -7
- data/rbi/openai/models/webhooks/live_transport_incoming_webhook_event.rbi +226 -0
- data/rbi/openai/models/webhooks/realtime_call_incoming_webhook_event.rbi +4 -4
- data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +1 -0
- data/rbi/openai/models.rbi +2 -0
- data/rbi/openai/resources/live/forks.rbi +19 -0
- data/rbi/openai/resources/live/sessions.rbi +110 -0
- data/rbi/openai/resources/live/sideband.rbi +19 -0
- data/rbi/openai/resources/live.rbi +43 -0
- data/rbi/openai/resources/responses.rbi +75 -38
- data/rbi/openai/resources/webhooks.rbi +1 -0
- data/sig/openai/client.rbs +2 -0
- data/sig/openai/models/beta/beta_response_input_item.rbs +56 -0
- data/sig/openai/models/beta/beta_response_item.rbs +56 -0
- data/sig/openai/models/beta/beta_response_output_item.rbs +56 -0
- data/sig/openai/models/conversations/conversation_item.rbs +56 -0
- data/sig/openai/models/live/audio_format.rbs +73 -0
- data/sig/openai/models/live/built_in_voice.rbs +58 -0
- data/sig/openai/models/live/client_config.rbs +15 -0
- data/sig/openai/models/live/client_delegation.rbs +15 -0
- data/sig/openai/models/live/client_event.rbs +24 -0
- data/sig/openai/models/live/commentary_append_event.rbs +37 -0
- data/sig/openai/models/live/commentary_appended_event.rbs +44 -0
- data/sig/openai/models/live/custom_voice.rbs +15 -0
- data/sig/openai/models/live/data_channel_config.rbs +56 -0
- data/sig/openai/models/live/delegation_created_event.rbs +89 -0
- data/sig/openai/models/live/error.rbs +46 -0
- data/sig/openai/models/live/error_event.rbs +39 -0
- data/sig/openai/models/live/fork_client_event.rbs +24 -0
- data/sig/openai/models/live/fork_server_event.rbs +212 -0
- data/sig/openai/models/live/fork_session_config.rbs +89 -0
- data/sig/openai/models/live/fork_session_start_event.rbs +32 -0
- data/sig/openai/models/live/function_tool.rbs +42 -0
- data/sig/openai/models/live/info_event.rbs +44 -0
- data/sig/openai/models/live/initial_item.rbs +332 -0
- data/sig/openai/models/live/input_audio_append_event.rbs +32 -0
- data/sig/openai/models/live/input_audio_mute_event.rbs +24 -0
- data/sig/openai/models/live/input_audio_muted_event.rbs +34 -0
- data/sig/openai/models/live/input_audio_unmute_event.rbs +24 -0
- data/sig/openai/models/live/input_audio_unmuted_event.rbs +34 -0
- data/sig/openai/models/live/input_transcript_delta_event.rbs +49 -0
- data/sig/openai/models/live/instructions_append_event.rbs +37 -0
- data/sig/openai/models/live/instructions_appended_event.rbs +44 -0
- data/sig/openai/models/live/live_create_params.rbs +45 -0
- data/sig/openai/models/live/live_create_response.rbs +49 -0
- data/sig/openai/models/live/media_session_config.rbs +157 -0
- data/sig/openai/models/live/media_session_fork_config.rbs +66 -0
- data/sig/openai/models/live/output_audio_delta_event.rbs +41 -0
- data/sig/openai/models/live/output_transcript_delta_event.rbs +49 -0
- data/sig/openai/models/live/response_create_event.rbs +18 -0
- data/sig/openai/models/live/response_event.rbs +44 -0
- data/sig/openai/models/live/response_item_create_event.rbs +32 -0
- data/sig/openai/models/live/responses_delegation_config.rbs +244 -0
- data/sig/openai/models/live/responses_delegation_update_config.rbs +246 -0
- data/sig/openai/models/live/server_event.rbs +212 -0
- data/sig/openai/models/live/server_event_selector.rbs +19 -0
- data/sig/openai/models/live/session_accept_params.rbs +185 -0
- data/sig/openai/models/live/session_close_event.rbs +17 -0
- data/sig/openai/models/live/session_closed_event.rbs +68 -0
- data/sig/openai/models/live/session_config.rbs +168 -0
- data/sig/openai/models/live/session_download_recording_params.rbs +25 -0
- data/sig/openai/models/live/session_fork_params.rbs +54 -0
- data/sig/openai/models/live/session_fork_response.rbs +49 -0
- data/sig/openai/models/live/session_hangup_params.rbs +25 -0
- data/sig/openai/models/live/session_refer_params.rbs +33 -0
- data/sig/openai/models/live/session_reject_params.rbs +33 -0
- data/sig/openai/models/live/session_resource.rbs +183 -0
- data/sig/openai/models/live/session_start_event.rbs +32 -0
- data/sig/openai/models/live/session_started_event.rbs +39 -0
- data/sig/openai/models/live/session_update_config.rbs +56 -0
- data/sig/openai/models/live/session_update_event.rbs +32 -0
- data/sig/openai/models/live/session_updated_event.rbs +39 -0
- data/sig/openai/models/live/session_usage.rbs +15 -0
- data/sig/openai/models/live/session_usage_updated_event.rbs +58 -0
- data/sig/openai/models/live/thinking_append_event.rbs +37 -0
- data/sig/openai/models/live/thinking_appended_event.rbs +44 -0
- data/sig/openai/models/responses/response_input_item.rbs +56 -0
- data/sig/openai/models/responses/response_item.rbs +56 -0
- data/sig/openai/models/responses/response_output_item.rbs +56 -0
- data/sig/openai/models/webhooks/live_transport_incoming_webhook_event.rbs +95 -0
- data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +1 -0
- data/sig/openai/models.rbs +2 -0
- data/sig/openai/resources/live/forks.rbs +9 -0
- data/sig/openai/resources/live/sessions.rbs +44 -0
- data/sig/openai/resources/live/sideband.rbs +9 -0
- data/sig/openai/resources/live.rbs +19 -0
- data/sig/openai/resources/webhooks.rbs +1 -0
- metadata +196 -1
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Live
|
|
7
|
+
|
|
8
|
+
class InputAudioAppendEvent < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
OrHash = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::Live::InputAudioAppendEvent,
|
|
13
|
+
OpenAI::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# Base64-encoded raw audio in the startup-selected format, without a WAV or other
|
|
18
|
+
# container header. Primary WebSocket only; media transports use their audio
|
|
19
|
+
# track. Audio appends have no acknowledgment. Reflected sideband server events
|
|
20
|
+
# reuse this event type and audio key, with no timestamps or event_id; their audio
|
|
21
|
+
# is always mono PCM16LE at 24 kHz.
|
|
22
|
+
sig { returns(String) }
|
|
23
|
+
attr_accessor :audio
|
|
24
|
+
|
|
25
|
+
# The Live client event type. Always `session.input_audio.append`.
|
|
26
|
+
sig { returns(Symbol) }
|
|
27
|
+
attr_accessor :type
|
|
28
|
+
|
|
29
|
+
# Optional client identifier for correlating this command with a server event's
|
|
30
|
+
# client_event_id or error.client_event_id.
|
|
31
|
+
sig { returns(T.nilable(String)) }
|
|
32
|
+
attr_accessor :event_id
|
|
33
|
+
|
|
34
|
+
# Send audio to a Live session over its primary WebSocket. WebRTC and SIP sessions
|
|
35
|
+
# send audio over their media transport.
|
|
36
|
+
sig do
|
|
37
|
+
params(
|
|
38
|
+
|
|
39
|
+
audio: String,
|
|
40
|
+
|
|
41
|
+
event_id: T.nilable(String),
|
|
42
|
+
|
|
43
|
+
type: Symbol
|
|
44
|
+
)
|
|
45
|
+
.returns(T.attached_class)
|
|
46
|
+
end
|
|
47
|
+
def self.new(
|
|
48
|
+
|
|
49
|
+
# Base64-encoded raw audio in the startup-selected format, without a WAV or other
|
|
50
|
+
# container header. Primary WebSocket only; media transports use their audio
|
|
51
|
+
# track. Audio appends have no acknowledgment. Reflected sideband server events
|
|
52
|
+
# reuse this event type and audio key, with no timestamps or event_id; their audio
|
|
53
|
+
# is always mono PCM16LE at 24 kHz.
|
|
54
|
+
audio:,
|
|
55
|
+
|
|
56
|
+
# Optional client identifier for correlating this command with a server event's
|
|
57
|
+
# client_event_id or error.client_event_id.
|
|
58
|
+
event_id: nil,
|
|
59
|
+
|
|
60
|
+
# The Live client event type. Always `session.input_audio.append`.
|
|
61
|
+
|
|
62
|
+
type: :"session.input_audio.append"
|
|
63
|
+
)
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
sig do
|
|
67
|
+
override.returns(
|
|
68
|
+
{audio: String, type: Symbol, event_id: T.nilable(String)}
|
|
69
|
+
)
|
|
70
|
+
end
|
|
71
|
+
def to_hash
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
end
|
|
79
|
+
end
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Live
|
|
7
|
+
|
|
8
|
+
class InputAudioMuteEvent < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
OrHash = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::Live::InputAudioMuteEvent,
|
|
13
|
+
OpenAI::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# The Live client event type. Always `session.input_audio.mute`.
|
|
18
|
+
sig { returns(Symbol) }
|
|
19
|
+
attr_accessor :type
|
|
20
|
+
|
|
21
|
+
# Optional client identifier for correlating this command with a server event's
|
|
22
|
+
# client_event_id or error.client_event_id.
|
|
23
|
+
sig { returns(T.nilable(String)) }
|
|
24
|
+
attr_accessor :event_id
|
|
25
|
+
|
|
26
|
+
# Mute audio input to the Live model without closing the session. The server
|
|
27
|
+
# acknowledges with `session.input_audio.muted`.
|
|
28
|
+
sig do
|
|
29
|
+
params(
|
|
30
|
+
|
|
31
|
+
event_id: T.nilable(String),
|
|
32
|
+
|
|
33
|
+
type: Symbol
|
|
34
|
+
)
|
|
35
|
+
.returns(T.attached_class)
|
|
36
|
+
end
|
|
37
|
+
def self.new(
|
|
38
|
+
|
|
39
|
+
# Optional client identifier for correlating this command with a server event's
|
|
40
|
+
# client_event_id or error.client_event_id.
|
|
41
|
+
event_id: nil,
|
|
42
|
+
|
|
43
|
+
# The Live client event type. Always `session.input_audio.mute`.
|
|
44
|
+
|
|
45
|
+
type: :"session.input_audio.mute"
|
|
46
|
+
)
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
sig do
|
|
50
|
+
override.returns(
|
|
51
|
+
{type: Symbol, event_id: T.nilable(String)}
|
|
52
|
+
)
|
|
53
|
+
end
|
|
54
|
+
def to_hash
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
end
|
|
62
|
+
end
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Live
|
|
7
|
+
|
|
8
|
+
class InputAudioMutedEvent < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
OrHash = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::Live::InputAudioMutedEvent,
|
|
13
|
+
OpenAI::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# The unique ID of the Live server event.
|
|
18
|
+
sig { returns(String) }
|
|
19
|
+
attr_accessor :event_id
|
|
20
|
+
|
|
21
|
+
# The event type, always `session.input_audio.muted`.
|
|
22
|
+
sig { returns(Symbol) }
|
|
23
|
+
attr_accessor :type
|
|
24
|
+
|
|
25
|
+
# The event_id of the client command associated with this server event, when
|
|
26
|
+
# supplied.
|
|
27
|
+
sig { returns(T.nilable(String)) }
|
|
28
|
+
attr_reader :client_event_id
|
|
29
|
+
|
|
30
|
+
sig { params(client_event_id: String).void }
|
|
31
|
+
attr_writer :client_event_id
|
|
32
|
+
|
|
33
|
+
# Returned when a session.input_audio.mute command is accepted. Input audio is no
|
|
34
|
+
# longer sent to the model; sideband audio reflection continues.
|
|
35
|
+
sig do
|
|
36
|
+
params(
|
|
37
|
+
|
|
38
|
+
event_id: String,
|
|
39
|
+
|
|
40
|
+
client_event_id: String,
|
|
41
|
+
|
|
42
|
+
type: Symbol
|
|
43
|
+
)
|
|
44
|
+
.returns(T.attached_class)
|
|
45
|
+
end
|
|
46
|
+
def self.new(
|
|
47
|
+
|
|
48
|
+
# The unique ID of the Live server event.
|
|
49
|
+
event_id:,
|
|
50
|
+
|
|
51
|
+
# The event_id of the client command associated with this server event, when
|
|
52
|
+
# supplied.
|
|
53
|
+
client_event_id: nil,
|
|
54
|
+
|
|
55
|
+
# The event type, always `session.input_audio.muted`.
|
|
56
|
+
|
|
57
|
+
type: :"session.input_audio.muted"
|
|
58
|
+
)
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
sig do
|
|
62
|
+
override.returns(
|
|
63
|
+
{event_id: String, type: Symbol, client_event_id: T.nilable(String)}
|
|
64
|
+
)
|
|
65
|
+
end
|
|
66
|
+
def to_hash
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
end
|
|
74
|
+
end
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Live
|
|
7
|
+
|
|
8
|
+
class InputAudioUnmuteEvent < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
OrHash = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::Live::InputAudioUnmuteEvent,
|
|
13
|
+
OpenAI::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# The Live client event type. Always `session.input_audio.unmute`.
|
|
18
|
+
sig { returns(Symbol) }
|
|
19
|
+
attr_accessor :type
|
|
20
|
+
|
|
21
|
+
# Optional client identifier for correlating this command with a server event's
|
|
22
|
+
# client_event_id or error.client_event_id.
|
|
23
|
+
sig { returns(T.nilable(String)) }
|
|
24
|
+
attr_accessor :event_id
|
|
25
|
+
|
|
26
|
+
# Resume audio input to a Live model after muting it. The server acknowledges with
|
|
27
|
+
# `session.input_audio.unmuted`.
|
|
28
|
+
sig do
|
|
29
|
+
params(
|
|
30
|
+
|
|
31
|
+
event_id: T.nilable(String),
|
|
32
|
+
|
|
33
|
+
type: Symbol
|
|
34
|
+
)
|
|
35
|
+
.returns(T.attached_class)
|
|
36
|
+
end
|
|
37
|
+
def self.new(
|
|
38
|
+
|
|
39
|
+
# Optional client identifier for correlating this command with a server event's
|
|
40
|
+
# client_event_id or error.client_event_id.
|
|
41
|
+
event_id: nil,
|
|
42
|
+
|
|
43
|
+
# The Live client event type. Always `session.input_audio.unmute`.
|
|
44
|
+
|
|
45
|
+
type: :"session.input_audio.unmute"
|
|
46
|
+
)
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
sig do
|
|
50
|
+
override.returns(
|
|
51
|
+
{type: Symbol, event_id: T.nilable(String)}
|
|
52
|
+
)
|
|
53
|
+
end
|
|
54
|
+
def to_hash
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
end
|
|
62
|
+
end
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Live
|
|
7
|
+
|
|
8
|
+
class InputAudioUnmutedEvent < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
OrHash = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::Live::InputAudioUnmutedEvent,
|
|
13
|
+
OpenAI::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# The unique ID of the Live server event.
|
|
18
|
+
sig { returns(String) }
|
|
19
|
+
attr_accessor :event_id
|
|
20
|
+
|
|
21
|
+
# The event type, always `session.input_audio.unmuted`.
|
|
22
|
+
sig { returns(Symbol) }
|
|
23
|
+
attr_accessor :type
|
|
24
|
+
|
|
25
|
+
# The event_id of the client command associated with this server event, when
|
|
26
|
+
# supplied.
|
|
27
|
+
sig { returns(T.nilable(String)) }
|
|
28
|
+
attr_reader :client_event_id
|
|
29
|
+
|
|
30
|
+
sig { params(client_event_id: String).void }
|
|
31
|
+
attr_writer :client_event_id
|
|
32
|
+
|
|
33
|
+
# Returned when a session.input_audio.unmute command is accepted. Input audio is
|
|
34
|
+
# sent to the model again.
|
|
35
|
+
sig do
|
|
36
|
+
params(
|
|
37
|
+
|
|
38
|
+
event_id: String,
|
|
39
|
+
|
|
40
|
+
client_event_id: String,
|
|
41
|
+
|
|
42
|
+
type: Symbol
|
|
43
|
+
)
|
|
44
|
+
.returns(T.attached_class)
|
|
45
|
+
end
|
|
46
|
+
def self.new(
|
|
47
|
+
|
|
48
|
+
# The unique ID of the Live server event.
|
|
49
|
+
event_id:,
|
|
50
|
+
|
|
51
|
+
# The event_id of the client command associated with this server event, when
|
|
52
|
+
# supplied.
|
|
53
|
+
client_event_id: nil,
|
|
54
|
+
|
|
55
|
+
# The event type, always `session.input_audio.unmuted`.
|
|
56
|
+
|
|
57
|
+
type: :"session.input_audio.unmuted"
|
|
58
|
+
)
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
sig do
|
|
62
|
+
override.returns(
|
|
63
|
+
{event_id: String, type: Symbol, client_event_id: T.nilable(String)}
|
|
64
|
+
)
|
|
65
|
+
end
|
|
66
|
+
def to_hash
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
end
|
|
74
|
+
end
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Live
|
|
7
|
+
|
|
8
|
+
class InputTranscriptDeltaEvent < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
OrHash = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::Live::InputTranscriptDeltaEvent,
|
|
13
|
+
OpenAI::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# The transcript text fragment for the audio in this time range. Append fragments
|
|
18
|
+
# in delivery order to build the transcript.
|
|
19
|
+
sig { returns(String) }
|
|
20
|
+
attr_accessor :delta
|
|
21
|
+
|
|
22
|
+
# The end of this event on the Live session timeline, in milliseconds from the
|
|
23
|
+
# beginning of the session. For appended context, this can equal start_ms.
|
|
24
|
+
sig { returns(Integer) }
|
|
25
|
+
attr_accessor :end_ms
|
|
26
|
+
|
|
27
|
+
# The unique ID of the Live server event.
|
|
28
|
+
sig { returns(String) }
|
|
29
|
+
attr_accessor :event_id
|
|
30
|
+
|
|
31
|
+
# The start of this event on the Live session timeline, in milliseconds from the
|
|
32
|
+
# beginning of the session.
|
|
33
|
+
sig { returns(Integer) }
|
|
34
|
+
attr_accessor :start_ms
|
|
35
|
+
|
|
36
|
+
# The event type, always `session.input_transcript.delta`.
|
|
37
|
+
sig { returns(Symbol) }
|
|
38
|
+
attr_accessor :type
|
|
39
|
+
|
|
40
|
+
# The event_id of the client command associated with this server event, when
|
|
41
|
+
# supplied.
|
|
42
|
+
sig { returns(T.nilable(String)) }
|
|
43
|
+
attr_reader :client_event_id
|
|
44
|
+
|
|
45
|
+
sig { params(client_event_id: String).void }
|
|
46
|
+
attr_writer :client_event_id
|
|
47
|
+
|
|
48
|
+
# A transcript fragment for user input audio in the Live session. Accumulate
|
|
49
|
+
# fragments in delivery order; these events do not define complete turns or
|
|
50
|
+
# include a transcript-done event.
|
|
51
|
+
sig do
|
|
52
|
+
params(
|
|
53
|
+
|
|
54
|
+
delta: String,
|
|
55
|
+
|
|
56
|
+
end_ms: Integer,
|
|
57
|
+
|
|
58
|
+
event_id: String,
|
|
59
|
+
|
|
60
|
+
start_ms: Integer,
|
|
61
|
+
|
|
62
|
+
client_event_id: String,
|
|
63
|
+
|
|
64
|
+
type: Symbol
|
|
65
|
+
)
|
|
66
|
+
.returns(T.attached_class)
|
|
67
|
+
end
|
|
68
|
+
def self.new(
|
|
69
|
+
|
|
70
|
+
# The transcript text fragment for the audio in this time range. Append fragments
|
|
71
|
+
# in delivery order to build the transcript.
|
|
72
|
+
delta:,
|
|
73
|
+
|
|
74
|
+
# The end of this event on the Live session timeline, in milliseconds from the
|
|
75
|
+
# beginning of the session. For appended context, this can equal start_ms.
|
|
76
|
+
end_ms:,
|
|
77
|
+
|
|
78
|
+
# The unique ID of the Live server event.
|
|
79
|
+
event_id:,
|
|
80
|
+
|
|
81
|
+
# The start of this event on the Live session timeline, in milliseconds from the
|
|
82
|
+
# beginning of the session.
|
|
83
|
+
start_ms:,
|
|
84
|
+
|
|
85
|
+
# The event_id of the client command associated with this server event, when
|
|
86
|
+
# supplied.
|
|
87
|
+
client_event_id: nil,
|
|
88
|
+
|
|
89
|
+
# The event type, always `session.input_transcript.delta`.
|
|
90
|
+
|
|
91
|
+
type: :"session.input_transcript.delta"
|
|
92
|
+
)
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
sig do
|
|
96
|
+
override.returns(
|
|
97
|
+
{
|
|
98
|
+
delta: String,
|
|
99
|
+
end_ms: Integer,
|
|
100
|
+
event_id: String,
|
|
101
|
+
start_ms: Integer,
|
|
102
|
+
type: Symbol,
|
|
103
|
+
client_event_id: T.nilable(String)
|
|
104
|
+
}
|
|
105
|
+
)
|
|
106
|
+
end
|
|
107
|
+
def to_hash
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
end
|
|
113
|
+
|
|
114
|
+
end
|
|
115
|
+
end
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Live
|
|
7
|
+
|
|
8
|
+
class InstructionsAppendEvent < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
OrHash = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::Live::InstructionsAppendEvent,
|
|
13
|
+
OpenAI::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# Instruction text to append, limited to 500 tokens. This is a plain string, not
|
|
18
|
+
# an array of content parts.
|
|
19
|
+
sig { returns(String) }
|
|
20
|
+
attr_accessor :content
|
|
21
|
+
|
|
22
|
+
# Required, nullable. Set null for general session context, or use the ID from
|
|
23
|
+
# session.delegation.created for an existing client delegation. Non-null IDs are
|
|
24
|
+
# not accepted with Responses delegation.
|
|
25
|
+
sig { returns(T.nilable(String)) }
|
|
26
|
+
attr_accessor :delegation_id
|
|
27
|
+
|
|
28
|
+
# The Live client event type. Always `session.instructions.append`.
|
|
29
|
+
sig { returns(Symbol) }
|
|
30
|
+
attr_accessor :type
|
|
31
|
+
|
|
32
|
+
# Optional client identifier for correlating this command with a server event's
|
|
33
|
+
# client_event_id or error.client_event_id.
|
|
34
|
+
sig { returns(T.nilable(String)) }
|
|
35
|
+
attr_accessor :event_id
|
|
36
|
+
|
|
37
|
+
# Append instructions to the Live conversation while it is running, optionally
|
|
38
|
+
# associating them with an existing client delegation.
|
|
39
|
+
sig do
|
|
40
|
+
params(
|
|
41
|
+
|
|
42
|
+
content: String,
|
|
43
|
+
|
|
44
|
+
delegation_id: T.nilable(String),
|
|
45
|
+
|
|
46
|
+
event_id: T.nilable(String),
|
|
47
|
+
|
|
48
|
+
type: Symbol
|
|
49
|
+
)
|
|
50
|
+
.returns(T.attached_class)
|
|
51
|
+
end
|
|
52
|
+
def self.new(
|
|
53
|
+
|
|
54
|
+
# Instruction text to append, limited to 500 tokens. This is a plain string, not
|
|
55
|
+
# an array of content parts.
|
|
56
|
+
content:,
|
|
57
|
+
|
|
58
|
+
# Required, nullable. Set null for general session context, or use the ID from
|
|
59
|
+
# session.delegation.created for an existing client delegation. Non-null IDs are
|
|
60
|
+
# not accepted with Responses delegation.
|
|
61
|
+
delegation_id:,
|
|
62
|
+
|
|
63
|
+
# Optional client identifier for correlating this command with a server event's
|
|
64
|
+
# client_event_id or error.client_event_id.
|
|
65
|
+
event_id: nil,
|
|
66
|
+
|
|
67
|
+
# The Live client event type. Always `session.instructions.append`.
|
|
68
|
+
|
|
69
|
+
type: :"session.instructions.append"
|
|
70
|
+
)
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
sig do
|
|
74
|
+
override.returns(
|
|
75
|
+
{content: String, delegation_id: T.nilable(String), type: Symbol, event_id: T.nilable(String)}
|
|
76
|
+
)
|
|
77
|
+
end
|
|
78
|
+
def to_hash
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
end
|
|
86
|
+
end
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Live
|
|
7
|
+
|
|
8
|
+
class InstructionsAppendedEvent < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
OrHash = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::Live::InstructionsAppendedEvent,
|
|
13
|
+
OpenAI::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# The end of this event on the Live session timeline, in milliseconds from the
|
|
18
|
+
# beginning of the session. For appended context, this can equal start_ms.
|
|
19
|
+
sig { returns(Integer) }
|
|
20
|
+
attr_accessor :end_ms
|
|
21
|
+
|
|
22
|
+
# The unique ID of the Live server event.
|
|
23
|
+
sig { returns(String) }
|
|
24
|
+
attr_accessor :event_id
|
|
25
|
+
|
|
26
|
+
# The start of this event on the Live session timeline, in milliseconds from the
|
|
27
|
+
# beginning of the session.
|
|
28
|
+
sig { returns(Integer) }
|
|
29
|
+
attr_accessor :start_ms
|
|
30
|
+
|
|
31
|
+
# The event type, always `session.instructions.appended`.
|
|
32
|
+
sig { returns(Symbol) }
|
|
33
|
+
attr_accessor :type
|
|
34
|
+
|
|
35
|
+
# The event_id of the client command associated with this server event, when
|
|
36
|
+
# supplied.
|
|
37
|
+
sig { returns(T.nilable(String)) }
|
|
38
|
+
attr_reader :client_event_id
|
|
39
|
+
|
|
40
|
+
sig { params(client_event_id: String).void }
|
|
41
|
+
attr_writer :client_event_id
|
|
42
|
+
|
|
43
|
+
# Returned when a session.instructions.append command is accepted into the Live
|
|
44
|
+
# session timeline. Acknowledges the appended instructions without guaranteeing
|
|
45
|
+
# that the model has acted on them.
|
|
46
|
+
sig do
|
|
47
|
+
params(
|
|
48
|
+
|
|
49
|
+
end_ms: Integer,
|
|
50
|
+
|
|
51
|
+
event_id: String,
|
|
52
|
+
|
|
53
|
+
start_ms: Integer,
|
|
54
|
+
|
|
55
|
+
client_event_id: String,
|
|
56
|
+
|
|
57
|
+
type: Symbol
|
|
58
|
+
)
|
|
59
|
+
.returns(T.attached_class)
|
|
60
|
+
end
|
|
61
|
+
def self.new(
|
|
62
|
+
|
|
63
|
+
# The end of this event on the Live session timeline, in milliseconds from the
|
|
64
|
+
# beginning of the session. For appended context, this can equal start_ms.
|
|
65
|
+
end_ms:,
|
|
66
|
+
|
|
67
|
+
# The unique ID of the Live server event.
|
|
68
|
+
event_id:,
|
|
69
|
+
|
|
70
|
+
# The start of this event on the Live session timeline, in milliseconds from the
|
|
71
|
+
# beginning of the session.
|
|
72
|
+
start_ms:,
|
|
73
|
+
|
|
74
|
+
# The event_id of the client command associated with this server event, when
|
|
75
|
+
# supplied.
|
|
76
|
+
client_event_id: nil,
|
|
77
|
+
|
|
78
|
+
# The event type, always `session.instructions.appended`.
|
|
79
|
+
|
|
80
|
+
type: :"session.instructions.appended"
|
|
81
|
+
)
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
sig do
|
|
85
|
+
override.returns(
|
|
86
|
+
{end_ms: Integer, event_id: String, start_ms: Integer, type: Symbol, client_event_id: T.nilable(String)}
|
|
87
|
+
)
|
|
88
|
+
end
|
|
89
|
+
def to_hash
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
end
|
|
97
|
+
end
|