# @azure/communication-signaling 中文文档

规范地址：https://npmcn.com/package/%40azure/communication-signaling/

版本：1\.0\.0-beta\.34
npm 元数据更新时间：2026-03-19T19:50:33.174Z
中文译文更新时间：2026-11-07T12:52:32.567Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40azure/communication-signaling
原文对照：https://npmcn.com/package/%40azure/communication-signaling/?lang=original

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

- 包体积（解压后）：3.8 MB，31 个文件
- 模块格式：CommonJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=8\.0\.0
- 运行依赖：10 个
- 首次发布：2020-09-22T03:20:15.045Z
- 最新版本发布：2025-06-21T01:05:02.932Z
- 近 30 天下载量：192847（2026-10-08 至 2026-11-06，npm 官方下载统计）
- 已发布版本数：33（近 12 个月 0 个）

## 中文简介

Azure 通信信号客户端

## 安装

```sh
npm install @azure/communication-signaling
```

也可以使用：`pnpm add @azure/communication-signaling`、`yarn add @azure/communication-signaling`、`bun add @azure/communication-signaling`

## README

# JavaScript 的 Azure 通信信号客户端库

Azure通信信号客户端库允许开发者添加实时通知,用于接收新/更新/删除聊天消息事件,打入指标事件,读取接收事件,以及聊天线索事件.

更多信息,请访问 Azure 通信服务 [这里](https://docs.microsoft.com/azure/communication-services/overview)

## 开始

## 先决条件

-   一个 [Azure 订阅](https://azure.microsoft.com/free/)。 。 。 .
-   现有通信服务资源。 如果您需要创建资源, 您可以使用 [Azure 门户](https://portal.azure.com/),则 [Azure 动力壳](https://docs.microsoft.com/powershell/module/az.communication/new-azcommunicationservice),或 [阿苏尔CLI](https://docs.microsoft.com/cli/azure)。 。 。 .
-   [节点.js](https://nodejs.org/)

### 安装

```bash
npm install @azure/communication-signaling
```

### 浏览器支持

#### Java 脚本套装

这个客户端库只在浏览器中支持. 要使用这个客户端库,首先需要使用捆绑器. 关于如何做到这一点的详情,请参见我们 [捆绑文件](https://aka.ms/AzureSDKBundling)。 。 。 .

## 关键概念

### 信号 客户端

`SignalingClient` 是开发者使用此客户端库的主要界面。 它提供了对不同事件的实时通知和注册听众的方法.

## 实例

### 初始化信号连接

使用用户访问令牌和Azurelogger来初始化信号客户端.

```JavaScript
import { CommunicationSignalingClient } from '@azure/communication-signaling';
import { AzureCommunicationTokenCredential } from "@azure/communication-common";
import { createClientLogger } from "@azure/logger";

let userAccessToken = '<USER_ACCESS_TOKEN>';
let tokenCredential = new AzureCommunicationTokenCredential(userAccessToken);
let logger = createClientLogger("communication-signaling");
let signalingClient = new CommunicationSignalingClient(tokenCredential, logger);

```

### 启用实时通知

```JavaScript
signalingClient.start();

```

### 禁用实时通知

```JavaScript
signalingClient.stop();

```

### 事件注册听众

通过实时信号,可以订阅以收听新来的事件,并相应调用自己的业务逻辑.

```JavaScript

// register listener to new incoming message event
signalingClient.on("chatMessageReceived", (payload) => {
    console.log("Notification chatMessageReceived!");
    // your code here
});

// register listener to typing indicator event
signalingClient.on("typingIndicatorReceived", (payload) => {
    console.log("Notification typingIndicatorReceived!");
    // your code here
});

// register listener to thread deleted event
signalingClient.on("chatThreadDeleted", (payload) => {
    console.log("Notification chatThreadDeleted!");
    // your code here
});

```

## 常见问题

### @azure/communication-signaling 是什么？

Azure 通信信号客户端

### 如何安装 @azure/communication-signaling？

在项目目录运行 npm install @azure/communication-signaling，或使用 pnpm add / yarn add / bun add。

### @azure/communication-signaling 支持 TypeScript 吗？

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

### @azure/communication-signaling 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @azure/communication-signaling 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=8\.0\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @azure/communication-signaling 可以商用吗？

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

### @azure/communication-signaling 的下载量有多少？

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

### @azure/communication-signaling 还在维护吗？

最新版本 1\.0\.0-beta\.34 发布于 2025/06/21（1\.4 年前）；至今共发布 33 个版本，其中过去 12 个月发布了 0 个；首次发布于 2020/09/22。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

