@dofe/infra-clients 0.1.17 → 0.1.19

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.
Files changed (95) hide show
  1. package/dist/index.d.ts +4 -3
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +4 -3
  4. package/dist/index.js.map +1 -1
  5. package/dist/internal/email/sendcloud.client.js.map +1 -1
  6. package/dist/internal/file-storage/dto/file.dto.d.ts +0 -1
  7. package/dist/internal/file-storage/dto/file.dto.d.ts.map +1 -1
  8. package/dist/internal/file-storage/file-s3.client.d.ts.map +1 -1
  9. package/dist/internal/file-storage/file-s3.client.js +1 -1
  10. package/dist/internal/file-storage/file-s3.client.js.map +1 -1
  11. package/dist/internal/file-storage/file-tos.client.d.ts.map +1 -1
  12. package/dist/internal/file-storage/file-tos.client.js.map +1 -1
  13. package/dist/internal/sms/sms-aliyun.client.d.ts +2 -1
  14. package/dist/internal/sms/sms-aliyun.client.d.ts.map +1 -1
  15. package/dist/internal/sms/sms-aliyun.client.js.map +1 -1
  16. package/dist/internal/sms/sms-http.client.js.map +1 -1
  17. package/dist/internal/sms/sms-tencent.client.d.ts +1 -1
  18. package/dist/internal/sms/sms-tencent.client.js.map +1 -1
  19. package/dist/internal/sms/sms-volcengine.client.d.ts +2 -2
  20. package/dist/internal/sms/sms-volcengine.client.d.ts.map +1 -1
  21. package/dist/internal/sms/sms-volcengine.client.js +2 -0
  22. package/dist/internal/sms/sms-volcengine.client.js.map +1 -1
  23. package/package.json +21 -7
  24. package/dist/internal/file-cdn/dto/file-cdn.dto.d.ts +0 -78
  25. package/dist/internal/file-cdn/dto/file-cdn.dto.d.ts.map +0 -1
  26. package/dist/internal/file-cdn/dto/file-cdn.dto.js +0 -70
  27. package/dist/internal/file-cdn/dto/file-cdn.dto.js.map +0 -1
  28. package/dist/internal/file-cdn/file-cdn.client.d.ts +0 -283
  29. package/dist/internal/file-cdn/file-cdn.client.d.ts.map +0 -1
  30. package/dist/internal/file-cdn/file-cdn.client.js +0 -526
  31. package/dist/internal/file-cdn/file-cdn.client.js.map +0 -1
  32. package/dist/internal/file-cdn/file-cdn.module.d.ts +0 -3
  33. package/dist/internal/file-cdn/file-cdn.module.d.ts.map +0 -1
  34. package/dist/internal/file-cdn/file-cdn.module.js +0 -32
  35. package/dist/internal/file-cdn/file-cdn.module.js.map +0 -1
  36. package/dist/internal/file-cdn/index.d.ts +0 -35
  37. package/dist/internal/file-cdn/index.d.ts.map +0 -1
  38. package/dist/internal/file-cdn/index.js +0 -54
  39. package/dist/internal/file-cdn/index.js.map +0 -1
  40. package/dist/internal/openspeech/index.d.ts +0 -35
  41. package/dist/internal/openspeech/index.d.ts.map +0 -1
  42. package/dist/internal/openspeech/index.js +0 -56
  43. package/dist/internal/openspeech/index.js.map +0 -1
  44. package/dist/internal/openspeech/openspeech.client.d.ts +0 -304
  45. package/dist/internal/openspeech/openspeech.client.d.ts.map +0 -1
  46. package/dist/internal/openspeech/openspeech.client.js +0 -405
  47. package/dist/internal/openspeech/openspeech.client.js.map +0 -1
  48. package/dist/internal/openspeech/openspeech.factory.d.ts +0 -247
  49. package/dist/internal/openspeech/openspeech.factory.d.ts.map +0 -1
  50. package/dist/internal/openspeech/openspeech.factory.js +0 -406
  51. package/dist/internal/openspeech/openspeech.factory.js.map +0 -1
  52. package/dist/internal/openspeech/openspeech.module.d.ts +0 -45
  53. package/dist/internal/openspeech/openspeech.module.d.ts.map +0 -1
  54. package/dist/internal/openspeech/openspeech.module.js +0 -68
  55. package/dist/internal/openspeech/openspeech.module.js.map +0 -1
  56. package/dist/internal/openspeech/providers/aliyun.provider.d.ts +0 -125
  57. package/dist/internal/openspeech/providers/aliyun.provider.d.ts.map +0 -1
  58. package/dist/internal/openspeech/providers/aliyun.provider.js +0 -274
  59. package/dist/internal/openspeech/providers/aliyun.provider.js.map +0 -1
  60. package/dist/internal/openspeech/providers/base.provider.d.ts +0 -98
  61. package/dist/internal/openspeech/providers/base.provider.d.ts.map +0 -1
  62. package/dist/internal/openspeech/providers/base.provider.js +0 -87
  63. package/dist/internal/openspeech/providers/base.provider.js.map +0 -1
  64. package/dist/internal/openspeech/providers/index.d.ts +0 -10
  65. package/dist/internal/openspeech/providers/index.d.ts.map +0 -1
  66. package/dist/internal/openspeech/providers/index.js +0 -26
  67. package/dist/internal/openspeech/providers/index.js.map +0 -1
  68. package/dist/internal/openspeech/providers/volcengine-streaming.provider.d.ts +0 -291
  69. package/dist/internal/openspeech/providers/volcengine-streaming.provider.d.ts.map +0 -1
  70. package/dist/internal/openspeech/providers/volcengine-streaming.provider.js +0 -1358
  71. package/dist/internal/openspeech/providers/volcengine-streaming.provider.js.map +0 -1
  72. package/dist/internal/openspeech/providers/volcengine.provider.d.ts +0 -144
  73. package/dist/internal/openspeech/providers/volcengine.provider.d.ts.map +0 -1
  74. package/dist/internal/openspeech/providers/volcengine.provider.js +0 -337
  75. package/dist/internal/openspeech/providers/volcengine.provider.js.map +0 -1
  76. package/dist/internal/openspeech/types.d.ts +0 -408
  77. package/dist/internal/openspeech/types.d.ts.map +0 -1
  78. package/dist/internal/openspeech/types.js +0 -11
  79. package/dist/internal/openspeech/types.js.map +0 -1
  80. package/dist/internal/volcengine-tts/dto/tts.dto.d.ts +0 -52
  81. package/dist/internal/volcengine-tts/dto/tts.dto.d.ts.map +0 -1
  82. package/dist/internal/volcengine-tts/dto/tts.dto.js +0 -59
  83. package/dist/internal/volcengine-tts/dto/tts.dto.js.map +0 -1
  84. package/dist/internal/volcengine-tts/index.d.ts +0 -4
  85. package/dist/internal/volcengine-tts/index.d.ts.map +0 -1
  86. package/dist/internal/volcengine-tts/index.js +0 -20
  87. package/dist/internal/volcengine-tts/index.js.map +0 -1
  88. package/dist/internal/volcengine-tts/volcengine-tts.client.d.ts +0 -104
  89. package/dist/internal/volcengine-tts/volcengine-tts.client.d.ts.map +0 -1
  90. package/dist/internal/volcengine-tts/volcengine-tts.client.js +0 -690
  91. package/dist/internal/volcengine-tts/volcengine-tts.client.js.map +0 -1
  92. package/dist/internal/volcengine-tts/volcengine-tts.module.d.ts +0 -3
  93. package/dist/internal/volcengine-tts/volcengine-tts.module.d.ts.map +0 -1
  94. package/dist/internal/volcengine-tts/volcengine-tts.module.js +0 -34
  95. package/dist/internal/volcengine-tts/volcengine-tts.module.js.map +0 -1
@@ -1,274 +0,0 @@
1
- "use strict";
2
- /**
3
- * @fileoverview 阿里云 OpenSpeech 语音识别服务提供商
4
- *
5
- * 本文件实现了阿里云 NLS(自然语言服务)的录音文件识别功能。
6
- * 阿里云语音识别服务文档:https://help.aliyun.com/document_detail/90727.html
7
- *
8
- * @module openspeech/providers/aliyun
9
- */
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- exports.AliyunOpenspeechProvider = void 0;
12
- const base_provider_1 = require("./base.provider");
13
- const infra_utils_1 = require("@dofe/infra-utils");
14
- /**
15
- * 阿里云语音识别服务提供商
16
- *
17
- * @description 封装了阿里云 NLS 录音文件识别的核心功能:
18
- * - 任务提交:将音频文件提交到阿里云进行语音识别
19
- * - 状态查询:查询识别任务的处理状态和结果
20
- *
21
- * 主要特性:
22
- * - 支持智能分轨(双声道对话场景)
23
- * - 支持语义句子检测
24
- * - 支持时间戳对齐
25
- * - 支持回调通知
26
- *
27
- * @class AliyunOpenspeechProvider
28
- * @extends {BaseOpenspeechProvider}
29
- *
30
- * @example
31
- * ```typescript
32
- * const provider = new AliyunOpenspeechProvider(logger, {
33
- * accessKeyId: 'your-access-key-id',
34
- * accessKeySecret: 'your-access-key-secret',
35
- * endpoint: 'https://nls-meta.cn-shanghai.aliyuncs.com',
36
- * nslAppKey: 'your-app-key',
37
- * });
38
- *
39
- * // 提交任务
40
- * const taskId = await provider.submitTask({
41
- * audioUrl: 'https://example.com/audio.mp3',
42
- * });
43
- *
44
- * // 查询状态
45
- * const result = await provider.queryTaskStatus(taskId);
46
- * if (result.status === 'success') {
47
- * console.log('识别结果:', result.text);
48
- * }
49
- * ```
50
- */
51
- class AliyunOpenspeechProvider extends base_provider_1.BaseOpenspeechProvider {
52
- config;
53
- /**
54
- * 云服务商标识:阿里云 OSS
55
- * @readonly
56
- */
57
- vendor = 'oss';
58
- /**
59
- * 构造函数
60
- *
61
- * @param {Logger} logger - Winston 日志记录器
62
- * @param {AliyunOpenspeechConfig} config - 阿里云配置
63
- * @throws {Error} 配置缺失时抛出异常
64
- */
65
- constructor(logger, config) {
66
- super(logger);
67
- this.config = config;
68
- if (!config) {
69
- throw new Error('Aliyun OpenSpeech config is required');
70
- }
71
- }
72
- /**
73
- * 提交语音识别任务到阿里云
74
- *
75
- * @description 调用阿里云 NLS API 提交录音文件识别任务。
76
- * 任务提交后,阿里云会异步处理,可通过回调或轮询获取结果。
77
- *
78
- * 任务配置说明:
79
- * - auto_split: 开启智能分轨,适用于双方对话场景
80
- * - enable_semantic_sentence_detection: 开启语义句子检测
81
- * - enable_timestamp_alignment: 开启时间戳对齐
82
- * - enable_callback: 开启回调通知
83
- *
84
- * @param {SubmitTaskParams} params - 任务提交参数
85
- * @param {string} params.audioUrl - 音频文件 URL
86
- * @param {string} [params.callbackUrl] - 回调 URL(可选,默认使用系统配置)
87
- * @returns {Promise<string>} 阿里云返回的任务 ID (TaskId)
88
- * @throws {Error} 配置缺失或 API 调用失败时抛出异常
89
- *
90
- * @example
91
- * ```typescript
92
- * const taskId = await provider.submitTask({
93
- * audioUrl: 'https://bucket.oss-cn-hangzhou.aliyuncs.com/audio.mp3',
94
- * });
95
- * console.log('Task ID:', taskId);
96
- * ```
97
- */
98
- async submitTask(params) {
99
- const { audioUrl, callbackUrl } = params;
100
- if (!this.config) {
101
- throw new Error('Aliyun OpenSpeech config (oss) not found');
102
- }
103
- // 校验必要的配置项
104
- if (!this.config.accessKeyId || !this.config.accessKeySecret) {
105
- throw new Error('Aliyun OpenSpeech config missing accessKeyId or accessKeySecret');
106
- }
107
- if (!this.config.nslAppKey) {
108
- throw new Error('Aliyun OpenSpeech config missing nslAppKey');
109
- }
110
- // 动态引入阿里云 NLS SDK
111
- // eslint-disable-next-line @typescript-eslint/no-var-requires
112
- const NlsClient = require('@alicloud/nls-filetrans-2018-08-17');
113
- try {
114
- // 创建 NLS 客户端实例
115
- const nlsClient = new NlsClient({
116
- accessKeyId: this.config.accessKeyId,
117
- accessKeySecret: this.config.accessKeySecret,
118
- endpoint: this.config.endpoint,
119
- apiVersion: this.config.apiVersion || '2018-08-17',
120
- });
121
- // 构建回调 URL
122
- const webhookUrl = callbackUrl ||
123
- `${infra_utils_1.environmentUtil.generateEnvironmentUrls().api}/webhook/audio-transcribe/oss`;
124
- // 构建任务参数
125
- // 详细参数说明参考:https://help.aliyun.com/document_detail/90727.html
126
- const task = {
127
- // 应用 AppKey
128
- app_key: this.config.nslAppKey,
129
- // 音频文件链接
130
- file_link: audioUrl,
131
- // API 版本,4.0 支持更多功能
132
- version: '4.0',
133
- // 是否返回词级别时间戳
134
- enable_words: false,
135
- // 是否开启回调
136
- enable_callback: true,
137
- // 是否开启采样率自适应
138
- enable_sample_rate_adaptive: true,
139
- // 回调地址
140
- callback_url: webhookUrl,
141
- // 智能分轨:双声道对话场景下,根据 ChannelId 判断发言人
142
- auto_split: true,
143
- // 语气词过滤(声音顺滑)
144
- enable_disfluency: false,
145
- // 语义句子检测:识别句子中的语义信息
146
- enable_semantic_sentence_detection: true,
147
- // 时间戳对齐:识别句子中的时间戳信息
148
- enable_timestamp_alignment: true,
149
- };
150
- const taskParams = {
151
- Task: JSON.stringify(task),
152
- };
153
- const options = {
154
- method: 'POST',
155
- };
156
- this.logInfo('Submitting transcription task', {
157
- audioUrl,
158
- callbackUrl: webhookUrl,
159
- });
160
- // 提交任务
161
- const submitResp = await nlsClient.submitTask(taskParams, options);
162
- const taskId = submitResp?.TaskId;
163
- if (!taskId) {
164
- this.logError('Submit task failed: TaskId missing', {
165
- response: submitResp,
166
- });
167
- throw new Error('Aliyun submitTask failed: TaskId missing');
168
- }
169
- this.logInfo('Task submitted successfully', { taskId });
170
- return taskId;
171
- }
172
- catch (error) {
173
- this.logError('Submit task error', {
174
- audioUrl,
175
- error: error.message,
176
- });
177
- throw error;
178
- }
179
- }
180
- /**
181
- * 查询阿里云语音识别任务状态
182
- *
183
- * @description 调用阿里云 NLS API 查询任务状态。
184
- * 任务状态包括:
185
- * - SUCCESS: 识别成功,返回识别文本
186
- * - RUNNING: 正在处理中
187
- * - QUEUEING: 排队等待中
188
- * - FAIL: 识别失败
189
- * - EXPIRED: 任务过期
190
- *
191
- * @param {string} vendorTaskId - 阿里云任务 ID
192
- * @returns {Promise<TaskStatusResult>} 任务状态和结果
193
- *
194
- * @example
195
- * ```typescript
196
- * const result = await provider.queryTaskStatus('task-123456');
197
- *
198
- * switch (result.status) {
199
- * case 'success':
200
- * console.log('识别文本:', result.text);
201
- * break;
202
- * case 'processing':
203
- * console.log('处理中,请稍后重试');
204
- * break;
205
- * case 'error':
206
- * console.error('识别失败:', result.error);
207
- * break;
208
- * }
209
- * ```
210
- */
211
- async queryTaskStatus(vendorTaskId) {
212
- if (!this.config) {
213
- throw new Error('Aliyun OpenSpeech config (oss) not found');
214
- }
215
- // 校验必要的配置项
216
- if (!this.config.accessKeyId || !this.config.accessKeySecret) {
217
- throw new Error('Aliyun OpenSpeech config missing accessKeyId or accessKeySecret');
218
- }
219
- // 动态引入阿里云 NLS SDK
220
- // eslint-disable-next-line @typescript-eslint/no-var-requires
221
- const NlsClient = require('@alicloud/nls-filetrans-2018-08-17');
222
- try {
223
- const nlsClient = new NlsClient({
224
- accessKeyId: this.config.accessKeyId,
225
- accessKeySecret: this.config.accessKeySecret,
226
- endpoint: this.config.endpoint,
227
- apiVersion: this.config.apiVersion || '2018-08-17',
228
- });
229
- // 查询任务结果
230
- const resultResp = await nlsClient.getTaskResult({
231
- TaskId: vendorTaskId,
232
- });
233
- const status = resultResp?.StatusText;
234
- // 处理成功状态
235
- if (status === 'SUCCESS') {
236
- const text = resultResp?.Result;
237
- const textStr = typeof text === 'string' ? text : JSON.stringify(text || '');
238
- this.logInfo('Transcription succeeded', { vendorTaskId });
239
- return {
240
- status: 'success',
241
- text: textStr,
242
- };
243
- }
244
- // 处理失败状态
245
- if (status === 'FAIL' || status === 'EXPIRED') {
246
- this.logError('Transcription failed', {
247
- vendorTaskId,
248
- status,
249
- response: resultResp,
250
- });
251
- return {
252
- status: 'error',
253
- error: `Aliyun transcription failed, status=${status}`,
254
- };
255
- }
256
- // 其他状态(RUNNING, QUEUEING 等)视为处理中
257
- return {
258
- status: 'processing',
259
- };
260
- }
261
- catch (error) {
262
- this.logError('Query task status error', {
263
- vendorTaskId,
264
- error: error.message,
265
- });
266
- return {
267
- status: 'error',
268
- error: error.message,
269
- };
270
- }
271
- }
272
- }
273
- exports.AliyunOpenspeechProvider = AliyunOpenspeechProvider;
274
- //# sourceMappingURL=aliyun.provider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"aliyun.provider.js","sourceRoot":"","sources":["../../../../../../packages/clients/src/internal/openspeech/providers/aliyun.provider.ts"],"names":[],"mappings":"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"}
@@ -1,98 +0,0 @@
1
- /**
2
- * @fileoverview OpenSpeech 服务提供商基类
3
- *
4
- * 本文件定义了语音识别服务提供商的抽象基类,提供了通用的日志记录功能,
5
- * 并定义了子类必须实现的抽象方法。
6
- *
7
- * @module openspeech/providers/base
8
- */
9
- import { Logger } from 'winston';
10
- import { FileBucketVendor } from '@prisma/client';
11
- import { IOpenspeechProvider, SubmitTaskParams, TaskStatusResult } from '../types';
12
- /**
13
- * 语音识别服务提供商抽象基类
14
- *
15
- * @description 提供了所有云服务商实现类的公共基础设施:
16
- * - 统一的日志记录器注入
17
- * - 定义子类必须实现的抽象方法
18
- * - 提供便捷的日志记录方法
19
- *
20
- * @abstract
21
- * @class BaseOpenspeechProvider
22
- * @implements {IOpenspeechProvider}
23
- *
24
- * @example
25
- * ```typescript
26
- * class MyProvider extends BaseOpenspeechProvider {
27
- * readonly vendor = 'oss';
28
- *
29
- * constructor(logger: Logger) {
30
- * super(logger);
31
- * }
32
- *
33
- * async submitTask(params: SubmitTaskParams): Promise<string> {
34
- * this.logInfo('Submitting task', { audioUrl: params.audioUrl });
35
- * // 实现提交逻辑
36
- * }
37
- *
38
- * async queryTaskStatus(vendorTaskId: string): Promise<TaskStatusResult> {
39
- * // 实现查询逻辑
40
- * }
41
- * }
42
- * ```
43
- */
44
- export declare abstract class BaseOpenspeechProvider implements IOpenspeechProvider {
45
- protected readonly logger: Logger;
46
- /**
47
- * 云服务商标识,子类必须定义
48
- */
49
- abstract readonly vendor: FileBucketVendor;
50
- /**
51
- * 构造函数
52
- *
53
- * @param {Logger} logger - Winston 日志记录器实例
54
- * @protected
55
- */
56
- constructor(logger: Logger);
57
- /**
58
- * 提交语音识别任务
59
- *
60
- * @abstract
61
- * @param {SubmitTaskParams} params - 任务提交参数
62
- * @returns {Promise<string>} 云服务商返回的任务 ID
63
- */
64
- abstract submitTask(params: SubmitTaskParams): Promise<string>;
65
- /**
66
- * 查询语音识别任务状态
67
- *
68
- * @abstract
69
- * @param {string} vendorTaskId - 云服务商的任务 ID
70
- * @returns {Promise<TaskStatusResult>} 任务状态和结果
71
- */
72
- abstract queryTaskStatus(vendorTaskId: string): Promise<TaskStatusResult>;
73
- /**
74
- * 记录信息日志
75
- *
76
- * @protected
77
- * @param {string} message - 日志消息
78
- * @param {Record<string, unknown>} [meta] - 附加元数据
79
- */
80
- protected logInfo(message: string, meta?: Record<string, unknown>): void;
81
- /**
82
- * 记录错误日志
83
- *
84
- * @protected
85
- * @param {string} message - 日志消息
86
- * @param {Record<string, unknown>} [meta] - 附加元数据
87
- */
88
- protected logError(message: string, meta?: Record<string, unknown>): void;
89
- /**
90
- * 记录警告日志
91
- *
92
- * @protected
93
- * @param {string} message - 日志消息
94
- * @param {Record<string, unknown>} [meta] - 附加元数据
95
- */
96
- protected logWarn(message: string, meta?: Record<string, unknown>): void;
97
- }
98
- //# sourceMappingURL=base.provider.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base.provider.d.ts","sourceRoot":"","sources":["../../../../../../packages/clients/src/internal/openspeech/providers/base.provider.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAElB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,8BAAsB,sBAAuB,YAAW,mBAAmB;IAY7D,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM;IAX7C;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAE3C;;;;;OAKG;gBAC4B,MAAM,EAAE,MAAM;IAE7C;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;IAE9D;;;;;;OAMG;IACH,QAAQ,CAAC,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAEzE;;;;;;OAMG;IACH,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAIxE;;;;;;OAMG;IACH,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAIzE;;;;;;OAMG;IACH,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;CAGzE"}
@@ -1,87 +0,0 @@
1
- "use strict";
2
- /**
3
- * @fileoverview OpenSpeech 服务提供商基类
4
- *
5
- * 本文件定义了语音识别服务提供商的抽象基类,提供了通用的日志记录功能,
6
- * 并定义了子类必须实现的抽象方法。
7
- *
8
- * @module openspeech/providers/base
9
- */
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- exports.BaseOpenspeechProvider = void 0;
12
- /**
13
- * 语音识别服务提供商抽象基类
14
- *
15
- * @description 提供了所有云服务商实现类的公共基础设施:
16
- * - 统一的日志记录器注入
17
- * - 定义子类必须实现的抽象方法
18
- * - 提供便捷的日志记录方法
19
- *
20
- * @abstract
21
- * @class BaseOpenspeechProvider
22
- * @implements {IOpenspeechProvider}
23
- *
24
- * @example
25
- * ```typescript
26
- * class MyProvider extends BaseOpenspeechProvider {
27
- * readonly vendor = 'oss';
28
- *
29
- * constructor(logger: Logger) {
30
- * super(logger);
31
- * }
32
- *
33
- * async submitTask(params: SubmitTaskParams): Promise<string> {
34
- * this.logInfo('Submitting task', { audioUrl: params.audioUrl });
35
- * // 实现提交逻辑
36
- * }
37
- *
38
- * async queryTaskStatus(vendorTaskId: string): Promise<TaskStatusResult> {
39
- * // 实现查询逻辑
40
- * }
41
- * }
42
- * ```
43
- */
44
- class BaseOpenspeechProvider {
45
- logger;
46
- /**
47
- * 构造函数
48
- *
49
- * @param {Logger} logger - Winston 日志记录器实例
50
- * @protected
51
- */
52
- constructor(logger) {
53
- this.logger = logger;
54
- }
55
- /**
56
- * 记录信息日志
57
- *
58
- * @protected
59
- * @param {string} message - 日志消息
60
- * @param {Record<string, unknown>} [meta] - 附加元数据
61
- */
62
- logInfo(message, meta) {
63
- this.logger.info(`[${this.vendor}] ${message}`, meta);
64
- }
65
- /**
66
- * 记录错误日志
67
- *
68
- * @protected
69
- * @param {string} message - 日志消息
70
- * @param {Record<string, unknown>} [meta] - 附加元数据
71
- */
72
- logError(message, meta) {
73
- this.logger.error(`[${this.vendor}] ${message}`, meta);
74
- }
75
- /**
76
- * 记录警告日志
77
- *
78
- * @protected
79
- * @param {string} message - 日志消息
80
- * @param {Record<string, unknown>} [meta] - 附加元数据
81
- */
82
- logWarn(message, meta) {
83
- this.logger.warn(`[${this.vendor}] ${message}`, meta);
84
- }
85
- }
86
- exports.BaseOpenspeechProvider = BaseOpenspeechProvider;
87
- //# sourceMappingURL=base.provider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base.provider.js","sourceRoot":"","sources":["../../../../../../packages/clients/src/internal/openspeech/providers/base.provider.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAUH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAsB,sBAAsB;IAYX;IAN/B;;;;;OAKG;IACH,YAA+B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAoBjD;;;;;;OAMG;IACO,OAAO,CAAC,OAAe,EAAE,IAA8B;QAC/D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;OAMG;IACO,QAAQ,CAAC,OAAe,EAAE,IAA8B;QAChE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;IACzD,CAAC;IAED;;;;;;OAMG;IACO,OAAO,CAAC,OAAe,EAAE,IAA8B;QAC/D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;CACF;AAhED,wDAgEC"}
@@ -1,10 +0,0 @@
1
- /**
2
- * @fileoverview OpenSpeech 服务提供商导出
3
- *
4
- * @module openspeech/providers
5
- */
6
- export * from './base.provider';
7
- export * from './aliyun.provider';
8
- export * from './volcengine.provider';
9
- export * from './volcengine-streaming.provider';
10
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/clients/src/internal/openspeech/providers/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iCAAiC,CAAC"}
@@ -1,26 +0,0 @@
1
- "use strict";
2
- /**
3
- * @fileoverview OpenSpeech 服务提供商导出
4
- *
5
- * @module openspeech/providers
6
- */
7
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
- if (k2 === undefined) k2 = k;
9
- var desc = Object.getOwnPropertyDescriptor(m, k);
10
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
- desc = { enumerable: true, get: function() { return m[k]; } };
12
- }
13
- Object.defineProperty(o, k2, desc);
14
- }) : (function(o, m, k, k2) {
15
- if (k2 === undefined) k2 = k;
16
- o[k2] = m[k];
17
- }));
18
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
19
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
20
- };
21
- Object.defineProperty(exports, "__esModule", { value: true });
22
- __exportStar(require("./base.provider"), exports);
23
- __exportStar(require("./aliyun.provider"), exports);
24
- __exportStar(require("./volcengine.provider"), exports);
25
- __exportStar(require("./volcengine-streaming.provider"), exports);
26
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/clients/src/internal/openspeech/providers/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;AAEH,kDAAgC;AAChC,oDAAkC;AAClC,wDAAsC;AACtC,kEAAgD"}