> For the complete documentation index, see [llms.txt](https://polyv.gitbook.io/document/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://polyv.gitbook.io/document/docs/live/js/new-sdk/interactions-receive-sdk/sdk/notice.md).

# 公告

## 功能概述

本模块用于接收处理讲师、助教和管理员等用户的公告操作。

## 初始化及销毁

在实例化该模块并进行使用之前，需要对SDK进行初始化配置，详细见[参考文档](https://git.polyv.net/help-center/document-center/-/blob/master/live/js/new_sdk/interactions_receive_sdk/sdk/overview/README.md#初始化)。

#### 在线文件引入方式

```html
// script 标签引入，根据版本号引入JS版本。
<script src="https://websdk.videocc.net/interactions-receive-sdk/0.24.0/lib/polyv-ir.umd.js"></script>

<script>
    const { Announcement } = window.PolyvIRSDK;
</script>
```

#### import 方式引入（推荐）

```javascript
import { Announcement } from '@polyv/interactions-receive-sdk';

const announcementSdk = new Announcement();
// 销毁 SDK 实例，清除逻辑
announcementSdk.destroy();
```

## 使用流程

### 监听 "收到公告" 事件

在讲师/助教等发起端发送公告后，`announcementSdk.events.BULLETIN` 事件会被触发，事件参数中包含公告id及内容，接入方可以监听此事件并根据内容进行展示。

```javascript
announcementSdk.on(announcementSdk.events.BULLETIN, function(msg) {
  console.log(`收到公告，公告ID：` + msg.id + `，公告内容：` + msg.content);
});
```

### 监听 “关闭公告” 事件

发起端关闭公告后，`announcementSdk.events.REMOVE_BULLETIN` 事件会被触发，接入方可以据此移除公告显示。

```javascript
announcementSdk.on(announcementSdk.events.REMOVE_BULLETIN, function(msg) {
  console.log('公告已关闭：' + msg.id);
});
```

### 注意

如果不需要再使用公告SDK时，请调用SDK实例的destroy方法去销毁实例。
