integrations/voice/openai/dist¶
Interfaces¶
OpenAIRealtimeEventSendInput¶
Properties¶
event¶
socket¶
OpenAIRealtimeFactoryInput¶
Properties¶
client¶
model¶
OpenAIRealtimeSessionStartInput¶
Extends¶
Properties¶
model?¶
Inherited from¶
OpenAIRealtimeSocketInput.model
session?¶
socket?¶
OpenAIRealtimeSessionStartResult¶
Properties¶
session¶
socket¶
OpenAIRealtimeSocket¶
Methods¶
close()¶
Parameters¶
| Parameter | Type |
|---|---|
props? |
{ code: number; reason: string; } |
props.code? |
number |
props.reason? |
string |
Returns¶
void
on()¶
Call Signature¶
Parameters¶
| Parameter | Type |
|---|---|
event |
"event" |
listener |
(event) => void |
Returns¶
void
Call Signature¶
Parameters¶
| Parameter | Type |
|---|---|
event |
"error" |
listener |
(error) => void |
Returns¶
void
send()¶
Parameters¶
| Parameter | Type |
|---|---|
event |
RealtimeClientEvent |
Returns¶
void
OpenAIRealtimeSocketInput¶
Extended by¶
Properties¶
model?¶
OpenAIRealtimeSpeakInput¶
Properties¶
id?¶
response?¶
socket¶
text?¶
OpenAIRealtimeTurnFinalizeInput¶
Properties¶
eventId?¶
socket¶
OpenAIVoiceClient¶
Methods¶
commitAudioTurn()¶
Parameters¶
| Parameter | Type |
|---|---|
input |
OpenAIRealtimeTurnFinalizeInput |
Returns¶
RealtimeClientEvent
createRealtimeResponse()¶
Parameters¶
| Parameter | Type |
|---|---|
input |
{ response: RealtimeResponseCreateParams; socket: OpenAIRealtimeSocket; } |
input.response |
RealtimeResponseCreateParams |
input.socket |
OpenAIRealtimeSocket |
Returns¶
RealtimeClientEvent
createRealtimeSocket()¶
Parameters¶
| Parameter | Type |
|---|---|
input? |
OpenAIRealtimeSocketInput |
Returns¶
Promise\<OpenAIRealtimeSocket>
getRawClient()¶
Returns¶
Promise\<OpenAI>
sendRealtimeEvent()¶
Parameters¶
| Parameter | Type |
|---|---|
input |
OpenAIRealtimeEventSendInput |
Returns¶
RealtimeClientEvent
speak()¶
Parameters¶
| Parameter | Type |
|---|---|
input |
OpenAIRealtimeSpeakInput |
Returns¶
| Name | Type |
|---|---|
event |
RealtimeClientEvent |
speechId? |
string |
startRealtimeSession()¶
Parameters¶
| Parameter | Type |
|---|---|
input? |
OpenAIRealtimeSessionStartInput |
Returns¶
Promise\<OpenAIRealtimeSessionStartResult>
updateRealtimeSession()¶
Parameters¶
| Parameter | Type |
|---|---|
input |
{ session: RealtimeSessionCreateRequest; socket: OpenAIRealtimeSocket; } |
input.session |
RealtimeSessionCreateRequest |
input.socket |
OpenAIRealtimeSocket |
Returns¶
RealtimeClientEvent
OpenAIVoiceClientOptions¶
Properties¶
apiKey?¶
baseURL?¶
rawClient?¶
realtime?¶
OpenAIVoiceProviderOptions¶
Properties¶
apiKey?¶
baseURL?¶
client?¶
Raw official OpenAI SDK client. Prefer rawClient for new code.
model?¶
rawClient?¶
realtime?¶
sessionDefaults?¶
transcriptionLanguage?¶
voice?¶
voiceClient?¶
Type Aliases¶
OpenAIRealtimeFactory¶
Parameters¶
| Parameter | Type |
|---|---|
input |
OpenAIRealtimeFactoryInput |
Returns¶
Promise\<OpenAIRealtimeSocket>
OpenAIRealtimeResponseCreateRequest¶
type OpenAIRealtimeResponseCreateRequest = NonNullable<Extract<RealtimeClientEvent, {
type: "response.create";
}>["response"]>;
Variables¶
createOpenAIVoiceAdapter¶
openAIVoiceIntegration¶
const openAIVoiceIntegration: DefinedIntegration<{
capabilities: (
| {
audiences: "customer-facing"[];
capability: string;
changesWorkflow?: never;
description: string;
exposesSensitiveData: true;
label: string;
providerObjects: {
kind: string;
label: string;
}[];
requiresCredential: true;
sideEffect?: never;
}
| {
audiences: "customer-facing"[];
capability: string;
changesWorkflow?: never;
description: string;
exposesSensitiveData: true;
label: string;
providerObjects: {
kind: string;
label: string;
}[];
requiresCredential: true;
sideEffect: true;
}
| {
audiences: ("customer-facing" | "internal-support")[];
capability: string;
changesWorkflow: true;
description: string;
exposesSensitiveData?: never;
label: string;
providerObjects: {
kind: string;
label: string;
}[];
requiresCredential: true;
sideEffect: true;
})[];
category: string;
channelAudiences: ("customer-facing" | "mixed")[];
coverage: {
evidence: {
label: string;
url: string;
}[];
notes: string[];
scope: "provider-api-subset";
};
credentialRequirements: {
description: string;
id: string;
label: string;
metadata: {
minimumAccess: string[];
projectScoped: boolean;
scopeModel: string;
};
required: true;
}[];
directions: "bidirectional"[];
id: string;
limitations: string[];
maintainers: {
name: string;
type: "official";
}[];
metadata: {
channelCoverage: {
ephemeralSessionIssuance: string;
outboundCalling: string;
realtimeAudio: string;
realtimeToolCalls: string;
realtimeTranscript: string;
telephony: string;
transcriptionOnlySessions: string;
};
implementation: {
adapterCoverage: string[];
rawClientEscapeHatch: boolean;
sdkPackage: string;
sdkPackages: string[];
strategy: string;
verifiedAt: string;
verifiedVersion: string;
};
integrationEntryPoints: {
manifest: string;
runtime: string;
};
integrationName: string;
integrationPackageName: string;
rawClient: {
coverage: string;
export: string;
option: string;
};
};
name: string;
operations: (
| {
alias: string;
capability: string;
exposesSensitiveData: true;
externallyVisible?: never;
providerObject: string;
providerOperation: string;
requiresCredential: true;
sideEffect?: never;
}
| {
alias: string;
capability: string;
exposesSensitiveData?: never;
externallyVisible: true;
providerObject: string;
providerOperation: string;
requiresCredential: true;
sideEffect: true;
})[];
packageName: string;
privacyNotes: string[];
provider: string;
trustLevel: "official";
}, unknown, {
voice.session.start: (input, context) => Promise<OpenAIRealtimeSessionStartResult>;
voice.speak: (input, context) => Promise<{
event: RealtimeClientEvent;
speechId?: string;
}>;
voice.turn.finalize: (input, context) => Promise<OpenAI.Realtime.RealtimeClientEvent>;
}>;
Functions¶
createOpenAIRealtimeSocket()¶
Parameters¶
| Parameter | Type |
|---|---|
input |
OpenAIRealtimeFactoryInput |
Returns¶
Promise\<OpenAIRealtimeSocket>
createOpenAIVoiceClient()¶
Parameters¶
| Parameter | Type |
|---|---|
options? |
OpenAIVoiceClientOptions |
Returns¶
createOpenAIVoiceOperationHandlers()¶
function createOpenAIVoiceOperationHandlers(options?): {
voice.session.start: (input, context) => Promise<OpenAIRealtimeSessionStartResult>;
voice.speak: (input, context) => Promise<{
event: RealtimeClientEvent;
speechId?: string;
}>;
voice.turn.finalize: (input, context) => Promise<RealtimeClientEvent>;
};
Parameters¶
| Parameter | Type |
|---|---|
options? |
{ voiceClient?: OpenAIVoiceClient; } |
options.voiceClient? |
OpenAIVoiceClient |
Returns¶
{
voice.session.start: (input, context) => Promise<OpenAIRealtimeSessionStartResult>;
voice.speak: (input, context) => Promise<{
event: RealtimeClientEvent;
speechId?: string;
}>;
voice.turn.finalize: (input, context) => Promise<RealtimeClientEvent>;
}
| Name | Type |
|---|---|
voice.session.start() |
(input, context) => Promise\<OpenAIRealtimeSessionStartResult> |
voice.speak() |
(input, context) => Promise\<{ event: RealtimeClientEvent; speechId?: string; }> |
voice.turn.finalize() |
(input, context) => Promise\<RealtimeClientEvent> |
createOpenAIVoiceProvider()¶
Parameters¶
| Parameter | Type |
|---|---|
options? |
OpenAIVoiceProviderOptions |
Returns¶
References¶
OPENAI_REALTIME_V1_MODEL¶
Re-exports OPENAI_REALTIME_V1_MODEL
openAIVoiceManifestInput¶
Re-exports openAIVoiceManifestInput
openAIVoiceProviderManifest¶
Re-exports openAIVoiceProviderManifest