@openai/agents-realtime 0.1.4 → 0.1.5

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.
package/dist/metadata.js CHANGED
@@ -4,9 +4,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.METADATA = void 0;
5
5
  exports.METADATA = {
6
6
  "name": "@openai/agents-realtime",
7
- "version": "0.1.4",
7
+ "version": "0.1.5",
8
8
  "versions": {
9
- "@openai/agents-realtime": "0.1.4",
9
+ "@openai/agents-realtime": "0.1.5",
10
10
  "@openai/agents-core": "workspace:*"
11
11
  }
12
12
  };
package/dist/metadata.mjs CHANGED
@@ -1,9 +1,9 @@
1
1
  // This file is automatically generated
2
2
  export const METADATA = {
3
3
  "name": "@openai/agents-realtime",
4
- "version": "0.1.4",
4
+ "version": "0.1.5",
5
5
  "versions": {
6
- "@openai/agents-realtime": "0.1.4",
6
+ "@openai/agents-realtime": "0.1.5",
7
7
  "@openai/agents-core": "workspace:*"
8
8
  }
9
9
  };
@@ -16,6 +16,10 @@ export type WebSocketState = {
16
16
  status: 'connected';
17
17
  websocket: WebSocket;
18
18
  };
19
+ export interface CreateWebSocketOptions {
20
+ url: string;
21
+ apiKey: string;
22
+ }
19
23
  /**
20
24
  * The options for the OpenAI Realtime WebSocket transport layer.
21
25
  */
@@ -32,6 +36,22 @@ export type OpenAIRealtimeWebSocketOptions = {
32
36
  * The URL to use for the WebSocket connection.
33
37
  */
34
38
  url?: string;
39
+ /**
40
+ * Builds a new WebSocket connection.
41
+ * @param options - The options for the WebSocket connection.
42
+ * @returns The WebSocket connection.
43
+ */
44
+ createWebSocket?: (options: CreateWebSocketOptions) => Promise<WebSocket>;
45
+ /**
46
+ * When you pass your own createWebSocket function, which completes the connection state transition,
47
+ * you can set this to true to skip registering the `open` event listener for the same purpose.
48
+ * If this flag is set to true, the constructor will immediately call the internal operation
49
+ * to mark the internal connection state to `connected`. Otherwise, the constructor will register
50
+ * the `open` event listener and wait for it to be triggered.
51
+ *
52
+ * By default (meaning if this property is absent), this is set to false.
53
+ */
54
+ skipOpenEventListeners?: boolean;
35
55
  } & OpenAIRealtimeBaseOptions;
36
56
  /**
37
57
  * Transport layer that's handling the connection between the client and OpenAI's Realtime API
@@ -50,6 +70,10 @@ export declare class OpenAIRealtimeWebSocket extends OpenAIRealtimeBase implemen
50
70
  protected _firstAudioTimestamp: number | undefined;
51
71
  protected _audioLengthMs: number;
52
72
  constructor(options?: OpenAIRealtimeWebSocketOptions);
73
+ protected getCommonRequestHeaders(): {
74
+ 'User-Agent': string;
75
+ 'X-OpenAI-Agents-SDK': string;
76
+ };
53
77
  /**
54
78
  * The current status of the WebSocket connection.
55
79
  */
@@ -31,10 +31,17 @@ class OpenAIRealtimeWebSocket extends openaiRealtimeBase_1.OpenAIRealtimeBase {
31
31
  _firstAudioTimestamp;
32
32
  _audioLengthMs = 0;
33
33
  #ongoingResponse = false;
34
+ #createWebSocket;
35
+ #skipOpenEventListeners;
34
36
  constructor(options = {}) {
35
37
  super(options);
36
38
  this.#url = options.url;
37
39
  this.#useInsecureApiKey = options.useInsecureApiKey ?? false;
40
+ this.#createWebSocket = options.createWebSocket;
41
+ this.#skipOpenEventListeners = options.skipOpenEventListeners ?? false;
42
+ }
43
+ getCommonRequestHeaders() {
44
+ return utils_1.HEADERS;
38
45
  }
39
46
  /**
40
47
  * The current status of the WebSocket connection.
@@ -71,7 +78,7 @@ class OpenAIRealtimeWebSocket extends openaiRealtimeBase_1.OpenAIRealtimeBase {
71
78
  _onAudio(audioEvent) {
72
79
  this.emit('audio', audioEvent);
73
80
  }
74
- #setupWebSocket(resolve, reject, sessionConfig) {
81
+ async #setupWebSocket(resolve, reject, sessionConfig) {
75
82
  if (this.#state.websocket) {
76
83
  resolve();
77
84
  return;
@@ -84,28 +91,37 @@ class OpenAIRealtimeWebSocket extends openaiRealtimeBase_1.OpenAIRealtimeBase {
84
91
  !this.#useInsecureApiKey) {
85
92
  throw new agents_core_1.UserError('Using the WebSocket connection in a browser environment requires an ephemeral client key. If you have to use a regular API key, set the `useInsecureApiKey` option to true.');
86
93
  }
87
- // browsers and workerd should use the protocols argument, node should use the headers argument
88
- const websocketArguments = _shims_1.useWebSocketProtocols
89
- ? [
90
- 'realtime',
91
- // Auth
92
- 'openai-insecure-api-key.' + this.#apiKey,
93
- // Version header
94
- utils_1.WEBSOCKET_META,
95
- ]
96
- : {
97
- headers: {
98
- Authorization: `Bearer ${this.#apiKey}`,
99
- ...utils_1.HEADERS,
100
- },
101
- };
102
- const ws = new _shims_1.WebSocket(this.#url, websocketArguments);
94
+ let ws = null;
95
+ if (this.#createWebSocket) {
96
+ ws = await this.#createWebSocket({
97
+ url: this.#url,
98
+ apiKey: this.#apiKey,
99
+ });
100
+ }
101
+ else {
102
+ // browsers and workerd should use the protocols argument, node should use the headers argument
103
+ const websocketArguments = _shims_1.useWebSocketProtocols
104
+ ? [
105
+ 'realtime',
106
+ // Auth
107
+ 'openai-insecure-api-key.' + this.#apiKey,
108
+ // Version header
109
+ utils_1.WEBSOCKET_META,
110
+ ]
111
+ : {
112
+ headers: {
113
+ Authorization: `Bearer ${this.#apiKey}`,
114
+ ...this.getCommonRequestHeaders(),
115
+ },
116
+ };
117
+ ws = new _shims_1.WebSocket(this.#url, websocketArguments);
118
+ }
103
119
  this.#state = {
104
120
  status: 'connecting',
105
121
  websocket: ws,
106
122
  };
107
123
  this.emit('connection_change', this.#state.status);
108
- ws.addEventListener('open', () => {
124
+ const onSocketOpenReady = () => {
109
125
  this.#state = {
110
126
  status: 'connected',
111
127
  websocket: ws,
@@ -113,7 +129,13 @@ class OpenAIRealtimeWebSocket extends openaiRealtimeBase_1.OpenAIRealtimeBase {
113
129
  this.emit('connection_change', this.#state.status);
114
130
  this._onOpen();
115
131
  resolve();
116
- });
132
+ };
133
+ if (this.#skipOpenEventListeners === true) {
134
+ onSocketOpenReady();
135
+ }
136
+ else {
137
+ ws.addEventListener('open', onSocketOpenReady);
138
+ }
117
139
  ws.addEventListener('error', (error) => {
118
140
  this._onError(error);
119
141
  this.#state = {
@@ -218,12 +240,7 @@ class OpenAIRealtimeWebSocket extends openaiRealtimeBase_1.OpenAIRealtimeBase {
218
240
  model: this.currentModel,
219
241
  };
220
242
  await new Promise((resolve, reject) => {
221
- try {
222
- this.#setupWebSocket(resolve, reject, sessionConfig);
223
- }
224
- catch (error) {
225
- reject(error);
226
- }
243
+ this.#setupWebSocket(resolve, reject, sessionConfig).catch(reject);
227
244
  });
228
245
  await this.updateSessionConfig(sessionConfig);
229
246
  }
@@ -1 +1 @@
1
- {"version":3,"file":"openaiRealtimeWebsocket.js","sourceRoot":"","sources":["../src/openaiRealtimeWebsocket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openaiRealtimeWebsocket.js","sourceRoot":"","sources":["../src/openaiRealtimeWebsocket.ts"],"names":[],"mappings":";;;AAAA,2DAIwC;AAOxC,gEAG8B;AAC9B,sCAAuE;AACvE,qDAAgD;AAEhD,oEAA4D;AA0D5D;;;;GAIG;AACH,MAAa,uBACX,SAAQ,uCAAkB;IAG1B,OAAO,CAAqB;IAC5B,IAAI,CAAqB;IACzB,MAAM,GAAmB;QACvB,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,SAAS;KACrB,CAAC;IACF,kBAAkB,CAAU;IAC5B,cAAc,CAAqB;IACnC,yBAAyB,CAAqB;IAC9C;;;;;;OAMG;IACO,oBAAoB,CAAqB;IACzC,cAAc,GAAW,CAAC,CAAC;IACrC,gBAAgB,GAAY,KAAK,CAAC;IAClC,gBAAgB,CAA2D;IAC3E,uBAAuB,CAAW;IAElC,YAAY,UAA0C,EAAE;QACtD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC;QACxB,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,IAAI,KAAK,CAAC;QAC7D,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;QAChD,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,IAAI,KAAK,CAAC;IACzE,CAAC;IAES,uBAAuB;QAC/B,OAAO,eAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAc,aAAa;QACzB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;;;;;OAMG;IACO,QAAQ,CAAC,UAA+B;QAChD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,OAA8B,EAC9B,MAA8B,EAC9B,aAA6C;QAE7C,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC1B,OAAO,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,uBAAS,CACjB,oEAAoE,CACrE,CAAC;QACJ,CAAC;QAED,IACE,IAAA,6BAAoB,GAAE;YACtB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;YAC/B,CAAC,IAAI,CAAC,kBAAkB,EACxB,CAAC;YACD,MAAM,IAAI,uBAAS,CACjB,6KAA6K,CAC9K,CAAC;QACJ,CAAC;QAED,IAAI,EAAE,GAAqB,IAAI,CAAC;QAEhC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,EAAE,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC;gBAC/B,GAAG,EAAE,IAAI,CAAC,IAAK;gBACf,MAAM,EAAE,IAAI,CAAC,OAAO;aACrB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,+FAA+F;YAC/F,MAAM,kBAAkB,GAAG,8BAAqB;gBAC9C,CAAC,CAAC;oBACE,UAAU;oBACV,OAAO;oBACP,0BAA0B,GAAG,IAAI,CAAC,OAAO;oBACzC,iBAAiB;oBACjB,sBAAc;iBACf;gBACH,CAAC,CAAC;oBACE,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;wBACvC,GAAG,IAAI,CAAC,uBAAuB,EAAE;qBAClC;iBACF,CAAC;YAEN,EAAE,GAAG,IAAI,kBAAS,CAAC,IAAI,CAAC,IAAK,EAAE,kBAAyB,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,CAAC,MAAM,GAAG;YACZ,MAAM,EAAE,YAAY;YACpB,SAAS,EAAE,EAAE;SACd,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEnD,MAAM,iBAAiB,GAAG,GAAG,EAAE;YAC7B,IAAI,CAAC,MAAM,GAAG;gBACZ,MAAM,EAAE,WAAW;gBACnB,SAAS,EAAE,EAAE;aACd,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QAEF,IAAI,IAAI,CAAC,uBAAuB,KAAK,IAAI,EAAE,CAAC;YAC1C,iBAAiB,EAAE,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;QACjD,CAAC;QAED,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACrC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACrB,IAAI,CAAC,MAAM,GAAG;gBACZ,MAAM,EAAE,cAAc;gBACtB,SAAS,EAAE,SAAS;aACrB,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnD,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACzC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACzB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAA,yCAAkB,EAAC,OAAO,CAAC,CAAC;YAChE,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;gBACzB,OAAO;YACT,CAAC;YAED,IAAI,MAAM,CAAC,IAAI,KAAK,6BAA6B,EAAE,CAAC;gBAClD,IAAI,CAAC,yBAAyB,GAAG,MAAM,CAAC,aAAa,CAAC;gBACtD,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC;gBACrC,IAAI,IAAI,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;oBAC5C,6EAA6E;oBAC7E,+DAA+D;oBAC/D,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBACvC,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;gBAC1B,CAAC;gBAED,MAAM,IAAI,GAAG,IAAA,2BAAmB,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC/C,6CAA6C;gBAC7C,8GAA8G;gBAC9G,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC1D,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;oBACnC,oBAAoB;oBACpB,MAAM,CAAC,GAAG,GAAG,CAAC,IAAc,CAAC;oBAC7B,IAAI,CAAC,KAAK,YAAY,IAAI,CAAC,KAAK,YAAY,EAAE,CAAC;wBAC7C,0BAA0B;wBAC1B,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;oBAC7C,CAAC;yBAAM,IAAI,CAAC,KAAK,WAAW,EAAE,CAAC;wBAC7B,MAAM,IAAI,GAAI,GAAW,CAAC,IAAI,IAAI,KAAK,CAAC;wBACxC,8CAA8C;wBAC9C,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;oBAC7D,CAAC;yBAAM,CAAC;wBACN,wCAAwC;wBACxC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,GAAG,EAAE,GAAG,CAAC,CAAC;oBAClD,CAAC;gBACH,CAAC;qBAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;oBACnC,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC5B,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;oBAC7C,CAAC;yBAAM,CAAC;wBACN,qBAAqB;wBACrB,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,GAAG,EAAE,GAAG,CAAC,CAAC;oBAClD,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,iDAAiD;oBACjD,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,GAAG,EAAE,GAAG,CAAC,CAAC;gBAClD,CAAC;gBAED,MAAM,UAAU,GAAwB;oBACtC,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,IAAI;oBACV,UAAU,EAAE,MAAM,CAAC,WAAW;iBAC/B,CAAC;gBACF,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC5B,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,mCAAmC,EAAE,CAAC;gBAC/D,MAAM,oCAAoC,GACvC,IAAI,CAAC,iBAAyB,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc;oBAC3D,EAAE,kBAAkB,IAAI,KAAK,CAAC;gBAClC,IAAI,CAAC,SAAS,CAAC,CAAC,oCAAoC,CAAC,CAAC;YACxD,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBAC9C,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC/B,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;gBAC3C,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;YAChC,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBAC7C,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC7C,yDAAyD;gBACzD,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;YAChC,IAAI,CAAC,MAAM,GAAG;gBACZ,MAAM,EAAE,cAAc;gBACtB,SAAS,EAAE,SAAS;aACrB,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAA6C;QACzD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC;QACjD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,GAAG,GACP,OAAO,CAAC,GAAG;YACX,IAAI,CAAC,IAAI;YACT,0CAA0C,IAAI,CAAC,YAAY,EAAE,CAAC;QAChE,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAEhB,MAAM,aAAa,GAAmC;YACpD,GAAG,CAAC,OAAO,CAAC,oBAAoB,IAAI,EAAE,CAAC;YACvC,KAAK,EAAE,IAAI,CAAC,YAAY;SACzB,CAAC;QAEF,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAChD,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,KAA4B;QACpC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,mFAAmF,CACpF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAChC,IAAI,CAAC,oBAAoB,GAAG,SAAS,CAAC;QACtC,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,yBAAyB,GAAG,SAAS,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,MAAe;QAClB,MAAM,IAAI,KAAK,CACb,+FAA+F,CAChG,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,SAAS,CAAC,KAAkB,EAAE,UAAgC,EAAE;QAC9D,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YACvC,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,8BAA8B;QAC9B,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,iBAAiB;aACxB,CAAC,CAAC;YACH,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAChC,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,UAAU,CAAC,WAAmB,EAAE,wBAAiC,IAAI;QACnE,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,mEAAmE;QACnE,IAAI,qBAAqB,EAAE,CAAC;YAC1B,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,IAAI,MAAM,CAAC,iBAAiB,CAAC;QAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAE5E,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC;YACb,IAAI,EAAE,4BAA4B;YAClC,OAAO,EAAE,IAAI,CAAC,cAAc;YAC5B,aAAa,EAAE,IAAI,CAAC,yBAAyB;YAC7C,YAAY;SACb,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,SAAS,CAAC,wBAAiC,IAAI;QAC7C,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,OAAO,IAAI,CAAC,oBAAoB,KAAK,QAAQ,EAAE,CAAC;YAC1E,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAE3D,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAChC,IAAI,CAAC,oBAAoB,GAAG,SAAS,CAAC;QACtC,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,yBAAyB,GAAG,SAAS,CAAC;IAC7C,CAAC;CACF;AA9XD,0DA8XC"}
@@ -28,10 +28,17 @@ export class OpenAIRealtimeWebSocket extends OpenAIRealtimeBase {
28
28
  _firstAudioTimestamp;
29
29
  _audioLengthMs = 0;
30
30
  #ongoingResponse = false;
31
+ #createWebSocket;
32
+ #skipOpenEventListeners;
31
33
  constructor(options = {}) {
32
34
  super(options);
33
35
  this.#url = options.url;
34
36
  this.#useInsecureApiKey = options.useInsecureApiKey ?? false;
37
+ this.#createWebSocket = options.createWebSocket;
38
+ this.#skipOpenEventListeners = options.skipOpenEventListeners ?? false;
39
+ }
40
+ getCommonRequestHeaders() {
41
+ return HEADERS;
35
42
  }
36
43
  /**
37
44
  * The current status of the WebSocket connection.
@@ -68,7 +75,7 @@ export class OpenAIRealtimeWebSocket extends OpenAIRealtimeBase {
68
75
  _onAudio(audioEvent) {
69
76
  this.emit('audio', audioEvent);
70
77
  }
71
- #setupWebSocket(resolve, reject, sessionConfig) {
78
+ async #setupWebSocket(resolve, reject, sessionConfig) {
72
79
  if (this.#state.websocket) {
73
80
  resolve();
74
81
  return;
@@ -81,28 +88,37 @@ export class OpenAIRealtimeWebSocket extends OpenAIRealtimeBase {
81
88
  !this.#useInsecureApiKey) {
82
89
  throw new UserError('Using the WebSocket connection in a browser environment requires an ephemeral client key. If you have to use a regular API key, set the `useInsecureApiKey` option to true.');
83
90
  }
84
- // browsers and workerd should use the protocols argument, node should use the headers argument
85
- const websocketArguments = useWebSocketProtocols
86
- ? [
87
- 'realtime',
88
- // Auth
89
- 'openai-insecure-api-key.' + this.#apiKey,
90
- // Version header
91
- WEBSOCKET_META,
92
- ]
93
- : {
94
- headers: {
95
- Authorization: `Bearer ${this.#apiKey}`,
96
- ...HEADERS,
97
- },
98
- };
99
- const ws = new WebSocket(this.#url, websocketArguments);
91
+ let ws = null;
92
+ if (this.#createWebSocket) {
93
+ ws = await this.#createWebSocket({
94
+ url: this.#url,
95
+ apiKey: this.#apiKey,
96
+ });
97
+ }
98
+ else {
99
+ // browsers and workerd should use the protocols argument, node should use the headers argument
100
+ const websocketArguments = useWebSocketProtocols
101
+ ? [
102
+ 'realtime',
103
+ // Auth
104
+ 'openai-insecure-api-key.' + this.#apiKey,
105
+ // Version header
106
+ WEBSOCKET_META,
107
+ ]
108
+ : {
109
+ headers: {
110
+ Authorization: `Bearer ${this.#apiKey}`,
111
+ ...this.getCommonRequestHeaders(),
112
+ },
113
+ };
114
+ ws = new WebSocket(this.#url, websocketArguments);
115
+ }
100
116
  this.#state = {
101
117
  status: 'connecting',
102
118
  websocket: ws,
103
119
  };
104
120
  this.emit('connection_change', this.#state.status);
105
- ws.addEventListener('open', () => {
121
+ const onSocketOpenReady = () => {
106
122
  this.#state = {
107
123
  status: 'connected',
108
124
  websocket: ws,
@@ -110,7 +126,13 @@ export class OpenAIRealtimeWebSocket extends OpenAIRealtimeBase {
110
126
  this.emit('connection_change', this.#state.status);
111
127
  this._onOpen();
112
128
  resolve();
113
- });
129
+ };
130
+ if (this.#skipOpenEventListeners === true) {
131
+ onSocketOpenReady();
132
+ }
133
+ else {
134
+ ws.addEventListener('open', onSocketOpenReady);
135
+ }
114
136
  ws.addEventListener('error', (error) => {
115
137
  this._onError(error);
116
138
  this.#state = {
@@ -215,12 +237,7 @@ export class OpenAIRealtimeWebSocket extends OpenAIRealtimeBase {
215
237
  model: this.currentModel,
216
238
  };
217
239
  await new Promise((resolve, reject) => {
218
- try {
219
- this.#setupWebSocket(resolve, reject, sessionConfig);
220
- }
221
- catch (error) {
222
- reject(error);
223
- }
240
+ this.#setupWebSocket(resolve, reject, sessionConfig).catch(reject);
224
241
  });
225
242
  await this.updateSessionConfig(sessionConfig);
226
243
  }
@@ -1 +1 @@
1
- {"version":3,"file":"openaiRealtimeWebsocket.mjs","sourceRoot":"","sources":["../src/openaiRealtimeWebsocket.ts"],"names":[],"mappings":"OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,SAAS,GACV,MAAM,gCAAgC;OAOhC,EACL,kBAAkB,GAEnB;OACM,EAAE,mBAAmB,EAAE,OAAO,EAAE,cAAc,EAAE;OAChD,EAAE,SAAS,EAAE,MAAM,qBAAqB;OAExC,EAAE,kBAAkB,EAAE;AAqC7B;;;;GAIG;AACH,MAAM,OAAO,uBACX,SAAQ,kBAAkB;IAG1B,OAAO,CAAqB;IAC5B,IAAI,CAAqB;IACzB,MAAM,GAAmB;QACvB,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,SAAS;KACrB,CAAC;IACF,kBAAkB,CAAU;IAC5B,cAAc,CAAqB;IACnC,yBAAyB,CAAqB;IAC9C;;;;;;OAMG;IACO,oBAAoB,CAAqB;IACzC,cAAc,GAAW,CAAC,CAAC;IACrC,gBAAgB,GAAY,KAAK,CAAC;IAElC,YAAY,UAA0C,EAAE;QACtD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC;QACxB,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,IAAI,KAAK,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAc,aAAa;QACzB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;;;;;OAMG;IACO,QAAQ,CAAC,UAA+B;QAChD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACjC,CAAC;IAED,eAAe,CACb,OAA8B,EAC9B,MAA8B,EAC9B,aAA6C;QAE7C,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC1B,OAAO,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,SAAS,CACjB,oEAAoE,CACrE,CAAC;QACJ,CAAC;QAED,IACE,oBAAoB,EAAE;YACtB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;YAC/B,CAAC,IAAI,CAAC,kBAAkB,EACxB,CAAC;YACD,MAAM,IAAI,SAAS,CACjB,6KAA6K,CAC9K,CAAC;QACJ,CAAC;QAED,+FAA+F;QAC/F,MAAM,kBAAkB,GAAG,qBAAqB;YAC9C,CAAC,CAAC;gBACE,UAAU;gBACV,OAAO;gBACP,0BAA0B,GAAG,IAAI,CAAC,OAAO;gBACzC,iBAAiB;gBACjB,cAAc;aACf;YACH,CAAC,CAAC;gBACE,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;oBACvC,GAAG,OAAO;iBACX;aACF,CAAC;QAEN,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,IAAK,EAAE,kBAAyB,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,GAAG;YACZ,MAAM,EAAE,YAAY;YACpB,SAAS,EAAE,EAAE;SACd,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEnD,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE;YAC/B,IAAI,CAAC,MAAM,GAAG;gBACZ,MAAM,EAAE,WAAW;gBACnB,SAAS,EAAE,EAAE;aACd,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACrC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACrB,IAAI,CAAC,MAAM,GAAG;gBACZ,MAAM,EAAE,cAAc;gBACtB,SAAS,EAAE,SAAS;aACrB,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnD,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACzC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACzB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAChE,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;gBACzB,OAAO;YACT,CAAC;YAED,IAAI,MAAM,CAAC,IAAI,KAAK,6BAA6B,EAAE,CAAC;gBAClD,IAAI,CAAC,yBAAyB,GAAG,MAAM,CAAC,aAAa,CAAC;gBACtD,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC;gBACrC,IAAI,IAAI,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;oBAC5C,6EAA6E;oBAC7E,+DAA+D;oBAC/D,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBACvC,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;gBAC1B,CAAC;gBAED,MAAM,IAAI,GAAG,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC/C,6CAA6C;gBAC7C,8GAA8G;gBAC9G,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC1D,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;oBACnC,oBAAoB;oBACpB,MAAM,CAAC,GAAG,GAAG,CAAC,IAAc,CAAC;oBAC7B,IAAI,CAAC,KAAK,YAAY,IAAI,CAAC,KAAK,YAAY,EAAE,CAAC;wBAC7C,0BAA0B;wBAC1B,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;oBAC7C,CAAC;yBAAM,IAAI,CAAC,KAAK,WAAW,EAAE,CAAC;wBAC7B,MAAM,IAAI,GAAI,GAAW,CAAC,IAAI,IAAI,KAAK,CAAC;wBACxC,8CAA8C;wBAC9C,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;oBAC7D,CAAC;yBAAM,CAAC;wBACN,wCAAwC;wBACxC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,GAAG,EAAE,GAAG,CAAC,CAAC;oBAClD,CAAC;gBACH,CAAC;qBAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;oBACnC,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC5B,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;oBAC7C,CAAC;yBAAM,CAAC;wBACN,qBAAqB;wBACrB,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,GAAG,EAAE,GAAG,CAAC,CAAC;oBAClD,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,iDAAiD;oBACjD,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,GAAG,EAAE,GAAG,CAAC,CAAC;gBAClD,CAAC;gBAED,MAAM,UAAU,GAAwB;oBACtC,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,IAAI;oBACV,UAAU,EAAE,MAAM,CAAC,WAAW;iBAC/B,CAAC;gBACF,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC5B,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,mCAAmC,EAAE,CAAC;gBAC/D,MAAM,oCAAoC,GACvC,IAAI,CAAC,iBAAyB,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc;oBAC3D,EAAE,kBAAkB,IAAI,KAAK,CAAC;gBAClC,IAAI,CAAC,SAAS,CAAC,CAAC,oCAAoC,CAAC,CAAC;YACxD,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBAC9C,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC/B,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;gBAC3C,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;YAChC,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBAC7C,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC7C,yDAAyD;gBACzD,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;YAChC,IAAI,CAAC,MAAM,GAAG;gBACZ,MAAM,EAAE,cAAc;gBACtB,SAAS,EAAE,SAAS;aACrB,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAA6C;QACzD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC;QACjD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,GAAG,GACP,OAAO,CAAC,GAAG;YACX,IAAI,CAAC,IAAI;YACT,0CAA0C,IAAI,CAAC,YAAY,EAAE,CAAC;QAChE,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAEhB,MAAM,aAAa,GAAmC;YACpD,GAAG,CAAC,OAAO,CAAC,oBAAoB,IAAI,EAAE,CAAC;YACvC,KAAK,EAAE,IAAI,CAAC,YAAY;SACzB,CAAC;QAEF,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,IAAI,CAAC;gBACH,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;YACvD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAChD,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,KAA4B;QACpC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,mFAAmF,CACpF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAChC,IAAI,CAAC,oBAAoB,GAAG,SAAS,CAAC;QACtC,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,yBAAyB,GAAG,SAAS,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,MAAe;QAClB,MAAM,IAAI,KAAK,CACb,+FAA+F,CAChG,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,SAAS,CAAC,KAAkB,EAAE,UAAgC,EAAE;QAC9D,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YACvC,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,8BAA8B;QAC9B,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,iBAAiB;aACxB,CAAC,CAAC;YACH,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAChC,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,UAAU,CAAC,WAAmB,EAAE,wBAAiC,IAAI;QACnE,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,mEAAmE;QACnE,IAAI,qBAAqB,EAAE,CAAC;YAC1B,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,IAAI,MAAM,CAAC,iBAAiB,CAAC;QAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAE5E,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC;YACb,IAAI,EAAE,4BAA4B;YAClC,OAAO,EAAE,IAAI,CAAC,cAAc;YAC5B,aAAa,EAAE,IAAI,CAAC,yBAAyB;YAC7C,YAAY;SACb,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,SAAS,CAAC,wBAAiC,IAAI;QAC7C,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,OAAO,IAAI,CAAC,oBAAoB,KAAK,QAAQ,EAAE,CAAC;YAC1E,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAE3D,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAChC,IAAI,CAAC,oBAAoB,GAAG,SAAS,CAAC;QACtC,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,yBAAyB,GAAG,SAAS,CAAC;IAC7C,CAAC;CACF"}
1
+ {"version":3,"file":"openaiRealtimeWebsocket.mjs","sourceRoot":"","sources":["../src/openaiRealtimeWebsocket.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@openai/agents-realtime",
3
3
  "repository": "https://github.com/openai/openai-agents-js",
4
4
  "homepage": "https://openai.github.io/openai-agents-js/",
5
- "version": "0.1.4",
5
+ "version": "0.1.5",
6
6
  "description": "The OpenAI Agents SDK is a lightweight yet powerful framework for building multi-agent workflows. This package contains the logic for building realtime voice agents on the server or in the browser.",
7
7
  "author": "OpenAI <support@openai.com>",
8
8
  "main": "dist/index.js",