Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions common/changes/@coze/api/fix-module-error_2025-04-01-05-22.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"changes": [
{
"packageName": "@coze/api",
"comment": "update ESM file extensions from .js to .mjs",
"type": "patch"
}
],
"packageName": "@coze/api",
"email": "[email protected]"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"changes": [
{
"packageName": "@coze/realtime-api",
"comment": "move EventNames enum to separate file",
"type": "patch"
}
],
"packageName": "@coze/realtime-api",
"email": "[email protected]"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"changes": [
{
"packageName": "@coze/realtime-api",
"comment": "add event-names subpath export",
"type": "minor"
}
],
"packageName": "@coze/realtime-api",
"email": "[email protected]"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"changes": [
{
"packageName": "@coze/realtime-api",
"comment": "Publish fix/module-error",
"type": "patch"
}
],
"packageName": "@coze/realtime-api",
"email": "[email protected]"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"changes": [
{
"packageName": "@coze/realtime-api",
"comment": "normalize file extensions in package config",
"type": "patch"
}
],
"packageName": "@coze/realtime-api",
"email": "[email protected]"
}
8 changes: 4 additions & 4 deletions packages/coze-js/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@coze/api",
"version": "1.1.1",
"version": "1.1.1-beta.1",
"description": "Official Coze Node.js SDK for seamless AI integration into your applications | 扣子官方 Node.js SDK,助您轻松集成 AI 能力到应用中",
"keywords": [
"coze",
Expand Down Expand Up @@ -88,17 +88,17 @@
"exports": {
".": {
"require": "./dist/cjs/index.js",
"import": "./dist/esm/index.js",
"import": "./dist/esm/index.mjs",
"types": "./dist/types/index.d.ts"
},
"./ws-tools": {
"require": "./dist/cjs/ws-tools/index.js",
"import": "./dist/esm/ws-tools/index.js",
"import": "./dist/esm/ws-tools/index.mjs",
"types": "./dist/types/ws-tools/ws-tools/index.d.ts"
}
},
"main": "dist/cjs/index.js",
"module": "dist/esm/index.js",
"module": "dist/esm/index.mjs",
"types": "dist/types/index.d.ts"
}
}
15 changes: 10 additions & 5 deletions packages/realtime-api/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@coze/realtime-api",
"version": "1.1.1-beta.1",
"version": "1.1.1-beta.5",
"description": "A powerful real-time communication SDK for voice interactions with Coze AI bots | 扣子官方实时通信 SDK,用于与 Coze AI bots 进行语音交互",
"keywords": [
"coze",
Expand All @@ -21,9 +21,9 @@
},
"license": "MIT",
"author": "jackshen <[email protected]>",
"type": "module",
"exports": {
".": "./src/index.ts"
".": "./src/index.ts",
"./event-names": "./src/event-names.ts"
},
"main": "src/index.ts",
"module": "src/index.ts",
Expand Down Expand Up @@ -65,12 +65,17 @@
"cozePublishConfig": {
"exports": {
".": {
"require": "./dist/cjs/index.cjs",
"require": "./dist/cjs/index.js",
"import": "./dist/esm/index.js",
"types": "./dist/types/index.d.ts"
},
"./event-names": {
"require": "./dist/cjs/event-names/index.js",
"import": "./dist/esm/event-names/index.js",
"types": "./dist/types/event-names/event-names.d.ts"
}
},
"main": "dist/cjs/index.cjs",
"main": "dist/cjs/index.js",
"module": "dist/esm/index.js",
"typings": "dist/types/index.d.ts"
}
Expand Down
24 changes: 15 additions & 9 deletions packages/realtime-api/rslib.config.ts
Original file line number Diff line number Diff line change
@@ -1,15 +1,24 @@
import { defineConfig, type LibConfig } from '@rslib/core';

function getLibShared(format: LibConfig['format']) {
function getLibShared(format: LibConfig['format'], dts = false, subpath = '') {
const shared: LibConfig = {
autoExtension: false,
output: {
distPath: {
root: `./dist/${format}`,
js: `${subpath}`,
},
},
format,
dts: dts
? {
distPath: `./dist/types/${subpath}`,
}
: false,
syntax: 'es6',
autoExternal: false,
source: {
entry: { index: subpath ? `./src/${subpath}` : './src' },
},
};
return shared;
}
Expand All @@ -22,16 +31,13 @@ export default defineConfig({
target: 'web',
},
lib: [
{
...getLibShared('esm'),
dts: {
distPath: './dist/types',
},
},
{
...getLibShared('umd'),
umdName: 'CozeRealtimeApi',
},
getLibShared('cjs'),
getLibShared('cjs', true),
getLibShared('esm', false),
getLibShared('cjs', true, 'event-names'),
getLibShared('esm', false, 'event-names'),
],
});
3 changes: 2 additions & 1 deletion packages/realtime-api/src/client.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ import VERTC, {
} from '@volcengine/rtc';

import { getAudioDevices, isScreenShareDevice } from './utils';
import { EventNames, RealtimeEventHandler } from './event-handler';
import EventNames from './event-names';
import { RealtimeEventHandler } from './event-handler';
import { RealtimeAPIError, RealtimeError } from './error';
import { type VideoConfig } from '.';

Expand Down
144 changes: 1 addition & 143 deletions packages/realtime-api/src/event-handler.ts
Original file line number Diff line number Diff line change
@@ -1,147 +1,5 @@
import EventNames from './event-names';
import { RealtimeError, RealtimeAPIError } from './error';

export enum EventNames {
/**
* en: All events
* zh: 所有事件
*/
ALL = 'realtime.event',
/**
* en: All client events
* zh: 所有客户端事件
*/
ALL_CLIENT = 'client.*',
/**
* en: All server events
* zh: 所有服务端事件
*/
ALL_SERVER = 'server.*',
/**
* en: Client connected
* zh: 客户端连接
*/
CONNECTED = 'client.connected',
/**
* en: Client connecting
* zh: 客户端连接中
*/
CONNECTING = 'client.connecting',
/**
* en: Client interrupted
* zh: 客户端中断
*/
INTERRUPTED = 'client.interrupted',
/**
* en: Client disconnected
* zh: 客户端断开
*/
DISCONNECTED = 'client.disconnected',
/**
* en: Client audio unmuted
* zh: 客户端音频未静音
*/
AUDIO_UNMUTED = 'client.audio.unmuted',
/**
* en: Client audio muted
* zh: 客户端音频静音
*/
AUDIO_MUTED = 'client.audio.muted',
/**
* en: Client video on
* zh: 客户端视频开启
*/
VIDEO_ON = 'client.video.on',
/**
* en: Client video off
* zh: 客户端视频关闭
*/
VIDEO_OFF = 'client.video.off',
/**
* en: Client video event
* zh: 客户端视频事件
*/
PLAYER_EVENT = 'client.video.event',
/**
* en: Client error
* zh: 客户端错误
*/
ERROR = 'client.error',
/**
* en: Audio noise reduction enabled
* zh: 抑制平稳噪声
*/
SUPPRESS_STATIONARY_NOISE = 'client.suppress.stationary.noise',
/**
* en: Suppress non-stationary noise
* zh: 抑制非平稳噪声
*/
SUPPRESS_NON_STATIONARY_NOISE = 'client.suppress.non.stationary.noise',
/**
* en: Audio input device changed
* zh: 音频输入设备改变
*/
AUDIO_INPUT_DEVICE_CHANGED = 'client.input.device.changed',
/**
* en: Audio output device changed
* zh: 音频输出设备改变
*/
AUDIO_OUTPUT_DEVICE_CHANGED = 'client.output.device.changed',
/**
* en: Video input device changed
* zh: 视频输入设备改变
*/
VIDEO_INPUT_DEVICE_CHANGED = 'client.video.input.device.changed',
/**
* en: Network quality changed
* zh: 网络质量改变
*/
NETWORK_QUALITY = 'client.network.quality',
/**
* en: Bot joined
* zh: Bot 加入
*/
BOT_JOIN = 'server.bot.join',
/**
* en: Bot left
* zh: Bot 离开
*/
BOT_LEAVE = 'server.bot.leave',
/**
* en: Audio speech started
* zh: 开始说话
*/
AUDIO_AGENT_SPEECH_STARTED = 'server.audio.agent.speech_started',
/**
* en: Audio speech stopped
* zh: 停止说话
*/
AUDIO_AGENT_SPEECH_STOPPED = 'server.audio.agent.speech_stopped',
/**
* en: Server error
* zh: 服务端错误
*/
SERVER_ERROR = 'server.error',
/**
* en: User speech started
* zh: 用户开始说话
*/
AUDIO_USER_SPEECH_STARTED = 'server.audio.user.speech_started',
/**
* en: User speech stopped
* zh: 用户停止说话
*/
AUDIO_USER_SPEECH_STOPPED = 'server.audio.user.speech_stopped',
/**
* en: User successfully enters the room
* zh: 用户成功进入房间后,会收到该事件
*/
SESSION_CREATED = 'server.session.created',
/**
* en: Session updated
* zh: 会话更新
*/
SESSION_UPDATE = 'server.session.update',
}
export type EventCallback = (eventName: string, event: unknown) => void;

export class RealtimeEventHandler {
Expand Down
Loading
Loading