# @eulerstream/euler-websocket-sdk 中文文档

规范地址：https://npmcn.com/package/%40eulerstream/euler-websocket-sdk/

版本：1\.1\.0
npm 元数据更新时间：2026-10-25T22:40:40.756Z
中文译文更新时间：2026-11-14T00:22:57.973Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40eulerstream/euler-websocket-sdk
原文对照：https://npmcn.com/package/%40eulerstream/euler-websocket-sdk/?lang=original
项目主页：https://github.com/EulerStream/Euler-WebSocket-SDK
源码仓库：https://github.com/EulerStream/Euler-WebSocket-SDK

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：77.4 kB，26 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：5 个
- 首次发布：2025-05-29T21:47:00.309Z
- 最新版本发布：2026-10-25T22:40:40.402Z
- 近 30 天下载量：25909（2026-10-14 至 2026-11-12，npm 官方下载统计）
- 已发布版本数：10（近 12 个月 2 个）

## 中文简介

Euler Stream WebSocket服务的浏览器 & Node.JS相容模块.

## 安装

```sh
npm install @eulerstream/euler-websocket-sdk
```

也可以使用：`pnpm add @eulerstream/euler-websocket-sdk`、`yarn add @eulerstream/euler-websocket-sdk`、`bun add @eulerstream/euler-websocket-sdk`

## README

# 欧勒斯通WebSocket SDK

脚本 SDK 类型 [欧拉流](https://www.eulerstream.com/) TikTok LIVE WebSocket服务. 构建 URL,解码出原生的bulf帧,并消耗来自任何JavaScript运行时间的强烈类型的网播事件.

[![LinkedIn](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white&style=flat-square)](https://www.linkedin.com/in/isaackogan/) [![Patrons](https://www.eulerstream.com/api/pips/patrons?v=002)](https://www.eulerstream.com/) ![Connections](https://tiktok.eulerstream.com/analytics/pips) ![Stars](https://img.shields.io/github/stars/EulerStream/Euler-WebSocket-SDK?style=flat&color=0274b5&alt=1) ![Issues](https://img.shields.io/github/issues/EulerStream/Euler-WebSocket-SDK)

## 企业解决方案

<table><tbody><tr><td><br><img src="https://raw.githubusercontent.com/isaackogan/TikTokLive/master/.github/SquareLogo.png" width="180px" loading="lazy" decoding="async" referrerpolicy="no-referrer"><br><br></td><td><a href="https://www.eulerstream.com/" rel="nofollow noopener noreferrer"><strong>欧拉流</strong> 是一种付费的TikTok LIVE服务,提供管理的TikTok LIVE WebSocket连接,增加访问权限,TikTok LIVE提示,JWT认证等等.</a></td></tr></tbody></table>

## 社区

请加入 [欧拉史崔姆不和](https://www.eulerstream.com/discord) 问问题 顾虑 或只是聊天.

## 安装

```bash
npm install @eulerstream/euler-websocket-sdk
# or
pnpm add @eulerstream/euler-websocket-sdk
```

## 支持的运行时间

双人船通过 `exports` 地图在 `package.json`。您的捆绑者 / 运行时间自动选择正确的一个 —— 不需要配置 .

| 运行时间 | 已解决条目 | 页:1 |
| --- | --- | --- |
| **节点.js** (≥18) | `dist/node/*.js` | 读取 `EULER_WS_URL` 从 `process.env` 以覆盖默认主机. |
| **浏览器** | `dist/web/*.js` | 没有 `process` 访问; 默认为 `wss://ws.eulerstream.com`。 。 。 . |
| **炸弹** (Vite, webpack, esbuilt, Rollup, Next.js等) (中文(简体) ) | 通过 `browser` 编号 : `import` 条件 | 仅限无害环境管理,可树可摇. |

所有建筑都是无害环境管理。 没有共同的JS建筑——从 `import` 语法或通过处理无害环境管理的捆绑机.

## Protobuf Schema 版本

TikTok的网播原生出自 [`tiktok-live-proto`](https://www.npmjs.com/package/tiktok-live-proto)。两个计划版本的船相并用,您可以在运行时选择SDK解码器中的哪个:

| 版本 | 子路径导入 | 何时使用 |
| --- | --- | --- |
| **页:1** | `@eulerstream/euler-websocket-sdk/v2` _(默认)_ | 现相相相. 建议所有新的合并. |
| **单曲** | `@eulerstream/euler-websocket-sdk/v1` | 留给那些还没有迁移的老年消费者的遗产计划. |

选择连接时通过 `schemaVersion` 特性标记( 默认为 `v2`:

```ts
import { createWebSocketUrl, SchemaVersion } from '@eulerstream/euler-websocket-sdk';

const url = createWebSocketUrl({
  uniqueId: '@someuser',
  features: { schemaVersion: SchemaVersion.v2 },
});
```

需要时直接从已版本子路径导入消息类型 :

```ts
import type { WebcastChatMessage, WebcastGiftMessage } from '@eulerstream/euler-websocket-sdk/v2';
```

顶级的输入为方便起见再出口 v2 schema,所以 `import { WebcastChatMessage } from '@eulerstream/euler-websocket-sdk'` 还行.

## 快速启动

```ts
import { createWebSocketUrl, ClientCloseCode } from '@eulerstream/euler-websocket-sdk';

const url = createWebSocketUrl({
  uniqueId: '@someuser',
  jwtKey: process.env.EULER_JWT,
  features: {
    bundleEvents: true,
    syntheticPresence: true,
  },
});

const ws = new WebSocket(url);
ws.addEventListener('close', (e) => {
  if (e.code === ClientCloseCode.NOT_LIVE) console.log('streamer is offline');
});
```

## 你得到的东西

1.  `createWebSocketUrl(options)` ——构建一个完全合格的WS URL,特征旗被平整为查询参数.
2.  强型网播消息界面(v1和v2)再出自 `tiktok-live-proto`。 。 。 .
3.  原始框架的Protobuf解码公用事业`DecodedData`, (中文(简体) ), `decodeFrame`等)在运行时 `rawMessages` 模式.
4.  `WebcastEventEmitter` - 键入 `eventemitter3` 子类键入了 schema 的事件名称 .
5.  `ClientCloseCode` 词源+ `CloseMessageMap` 用于从服务器解释 WebSocket 关闭代码.

## WebSocket 关闭代码

```ts
export enum ClientCloseCode {
  // Standard
  NORMAL = 1000,
  INTERNAL_SERVER_ERROR = 1011,

  // Custom (4000–4999)
  STREAM_END = 4005,
  NO_MESSAGES_TIMEOUT = 4006,
  INVALID_OPTIONS = 4400,
  INVALID_AUTH = 4401,
  NO_PERMISSION = 4403,
  NOT_LIVE = 4404,
  KEEPALIVE_TIMEOUT = 4408,
  TOO_MANY_CONNECTIONS = 4429,
  TIKTOK_CLOSED_CONNECTION = 4500,
  MAX_LIFETIME_EXCEEDED = 4555,
  WEBCAST_FETCH_ERROR = 4556,
  ROOM_INFO_FETCH_ERROR = 4557,
}
```

## 常见问题

### @eulerstream/euler-websocket-sdk 是什么？

Euler Stream WebSocket服务的浏览器 & Node\.JS相容模块\.

### 如何安装 @eulerstream/euler-websocket-sdk？

在项目目录运行 npm install @eulerstream/euler-websocket-sdk，或使用 pnpm add / yarn add / bun add。

### @eulerstream/euler-websocket-sdk 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @eulerstream/euler-websocket-sdk 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @eulerstream/euler-websocket-sdk 可以商用吗？

@eulerstream/euler-websocket-sdk 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @eulerstream/euler-websocket-sdk 的下载量有多少？

根据 npm 官方下载统计，@eulerstream/euler-websocket-sdk 在 2026/10/14 – 2026/11/12 这 30 天内被下载 25,909 次，日均约 864 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @eulerstream/euler-websocket-sdk 还在维护吗？

最新版本 1\.1\.0 发布于 2026/10/26（19 天前）；至今共发布 10 个版本，其中过去 12 个月发布了 2 个；首次发布于 2025/05/30。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

