@ray-js/t-agent-plugin-aistream 0.2.7-beta.13 → 0.2.7-beta.15

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.
@@ -701,7 +701,8 @@ export declare enum AIStreamAppErrorCode {
701
701
  FILE_DATA_READ_ERROR = 39009,
702
702
  DATA_SEND_FAILED = 39010,
703
703
  CONNECTION_CLOSED_BY_REMOTE = 39012,
704
- AUDIO_UNEXPECTEDLY_RESET = 39014
704
+ AUDIO_UNEXPECTEDLY_RESET = 39014,
705
+ RECONNECT = 39016
705
706
  }
706
707
  export declare enum AIStreamServerErrorCode {
707
708
  OK = 200,
@@ -148,6 +148,7 @@ export let AIStreamAppErrorCode = /*#__PURE__*/function (AIStreamAppErrorCode) {
148
148
  AIStreamAppErrorCode[AIStreamAppErrorCode["DATA_SEND_FAILED"] = 39010] = "DATA_SEND_FAILED";
149
149
  AIStreamAppErrorCode[AIStreamAppErrorCode["CONNECTION_CLOSED_BY_REMOTE"] = 39012] = "CONNECTION_CLOSED_BY_REMOTE";
150
150
  AIStreamAppErrorCode[AIStreamAppErrorCode["AUDIO_UNEXPECTEDLY_RESET"] = 39014] = "AUDIO_UNEXPECTEDLY_RESET";
151
+ AIStreamAppErrorCode[AIStreamAppErrorCode["RECONNECT"] = 39016] = "RECONNECT";
151
152
  return AIStreamAppErrorCode;
152
153
  }({});
153
154
  export let AIStreamServerErrorCode = /*#__PURE__*/function (AIStreamServerErrorCode) {
@@ -6,7 +6,7 @@ import "core-js/modules/esnext.iterator.find.js";
6
6
  import "core-js/modules/esnext.iterator.for-each.js";
7
7
  import "core-js/modules/esnext.iterator.map.js";
8
8
  import "core-js/modules/web.dom-collections.iterator.js";
9
- import { AIStreamErrorCode, AIStreamServerErrorCode, BizTag, ConnectClientType, ConnectState, EventType, NetworkType, SessionState } from '../AIStreamTypes';
9
+ import { AIStreamAppErrorCode, AIStreamErrorCode, AIStreamServerErrorCode, BizTag, ConnectClientType, ConnectState, EventType, NetworkType, SessionState } from '../AIStreamTypes';
10
10
  import { closeSession, connect, createSession, disconnect, getCurrentHomeInfo, getNetworkType, isConnected, queryAgentToken, sendEventChatBreak, sendEventEnd, sendEventPayloadEnd, sendEventStart, sendImageData, sendTextData, startRecordAndSendAudioData, stopRecordAndSendAudioData } from './ttt';
11
11
  import { AIStreamObserver, AIStreamObserverPool } from './observer';
12
12
  import { isAbortError, safeParseJSON } from '@ray-js/t-agent';
@@ -262,7 +262,8 @@ export class AIStreamSession {
262
262
  if (options.getSessionUserData) {
263
263
  userData = await options.getSessionUserData();
264
264
  }
265
- {
265
+ let finErr;
266
+ for (let i = 0; i < 30; i++) {
266
267
  const [err, res] = await tryCatchTTT(() => createSession({
267
268
  bizTag: options.bizTag,
268
269
  agentToken,
@@ -270,13 +271,31 @@ export class AIStreamSession {
270
271
  userDataJson: JSON.stringify(userData)
271
272
  }));
272
273
  if (err) {
274
+ finErr = err;
275
+ if (err.code === AIStreamAppErrorCode.RECONNECT) {
276
+ // 200 毫秒后再试
277
+ await new Promise(resolve => {
278
+ setTimeout(resolve, 200);
279
+ });
280
+ continue;
281
+ } else {
282
+ this.promise = null;
283
+ throw err;
284
+ }
285
+ }
286
+ if (res) {
287
+ this.sessionId = res.sessionId;
288
+ this.sendDataChannels = res.sendDataChannels;
289
+ this.revDataChannels = res.revDataChannels;
273
290
  this.promise = null;
274
- throw err;
291
+ return;
275
292
  }
276
- this.sessionId = res.sessionId;
277
- this.sendDataChannels = res.sendDataChannels;
278
- this.revDataChannels = res.revDataChannels;
279
- this.promise = null;
293
+ }
294
+ this.promise = null;
295
+ if (finErr) {
296
+ throw finErr;
297
+ } else {
298
+ throw new AIStreamError('createSession reconnect timeout', AIStreamErrorCode.EVENT_ABORTED);
280
299
  }
281
300
  })();
282
301
  return this.promise;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ray-js/t-agent-plugin-aistream",
3
- "version": "0.2.7-beta.13",
3
+ "version": "0.2.7-beta.15",
4
4
  "author": "Tuya.inc",
5
5
  "license": "MIT",
6
6
  "private": false,
@@ -35,5 +35,5 @@
35
35
  "devDependencies": {
36
36
  "@types/url-parse": "^1.4.11"
37
37
  },
38
- "gitHead": "8355bb1b4ce4849a1628cd59005b16d2b85fff62"
38
+ "gitHead": "3afabdd5b9a063d70157f69158ef8edccfdac012"
39
39
  }