保利威文档中心

幫助中心

使用者資訊

更新時間:2026-07-17 15:16:39

本文件主要提供 用户模块(user) 提供的使用者資訊 API 說明。

一、觀眾詳細資訊

Interface 介面: UserInfoDetail

屬性名稱 說明 類型
userId 使用者 id string
nick 觀眾暱稱 string
pic 觀眾頭像 string
actor 觀眾頭銜 string
openId 微信 openid string
unionId 微信 unionId string
authType 該使用者的授權方式 AuthType
label 標籤 Object

二、取得目前使用者資訊

用於取得目前使用者的詳細資訊。

未進行觀看條件授權或建立 SDK 沒有傳入使用者資訊時回傳 undefined

Api 方法: getUserInfo(): undefined | UserInfoDetail

回傳值說明: 使用者資訊,undefined | UserInfoDetail 類型

範例:

const userInfo = watchCore.user.getUserInfo();
console.log('用户信息', userInfo);

三、判斷是否為特殊的使用者身份

使用者模組提供 Api 用於判斷使用者身份是否為內建的特殊使用者身份,如講師、管理員、助教等。

Api 方法: isSpecialUserType(userType: unknown, actor?: string): boolean

參數說明:

  • userType:使用者身份,unknown 類型,必傳

  • actor:使用者頭銜,string 類型,選傳

回傳值說明: 是否特殊身份

範例:

import { ChatUserType } from '@polyv/live-watch-sdk';
console.log(watchCore.user.isSpecialUserType(ChatUserType.Teacher)); // true
console.log(watchCore.user.isSpecialUserType(ChatUserType.Manager)); // true
console.log(watchCore.user.isSpecialUserType(ChatUserType.Guest)); // true
console.log(watchCore.user.isSpecialUserType(ChatUserType.Student)); // false
console.log(watchCore.user.isSpecialUserType(ChatUserType.Viewer)); // false
console.log(watchCore.user.isSpecialUserType(ChatUserType.Dummy)); // false
console.log(watchCore.user.isSpecialUserType(ChatUserType.Dummy, '观众')); // false

四、取得目前使用者 userId

用於取得目前使用者的 userId,預設以時間戳字串作為使用者 userId,關於 userId 說明如下:

  • 微信環境下進行微信授權後,以使用者的微信 openid 作為 userId;
  • 白名單授權後,以填寫的會員碼作為 userId(優先級高於微信授權);

未進行觀看條件授權或建立 SDK 沒有傳入使用者資訊時回傳 undefined

Api 方法: getUserId(): undefined | string

回傳值說明: 使用者 userId,undefined | string 類型

範例:

const userId = watchCore.user.getUserId();
console.log('用户 userId', userId);

五、取得目前使用者暱稱

用於取得目前使用者的暱稱。

未進行觀看條件授權或建立 SDK 沒有傳入使用者資訊時回傳 undefined

Api 方法: getUserNick(): undefined | string

回傳值說明: 使用者暱稱,undefined | string 類型

範例:

const nickname = watchCore.user.getUserNick();
console.log('用户昵称', nickname);

六、修改目前使用者暱稱

用於觀眾二次修改暱稱。

Api 方法: updateUserNick(nickname: string): void

參數說明:

  • nickname:新的暱稱,string 類型,必傳

範例:

watchCore.user.eventEmitter.on(UserEvents.CurrentUserSetNick, () => {
  toast.success('修改昵称成功');
});

watchCore.user.eventEmitter.on(UserEvents.SetNickError, (data) => {
  toast.error('修改昵称失败:' + data.message);
});

watchCore.user.updateUserNick('新的用户昵称');

七、取得目前使用者頭像網址

用於取得目前使用者的頭銜網址,觀看頁 SDK 提供 DEFAULT_VIEWER_AVATAR 預設觀眾頭像的常數。

未進行觀看條件授權或建立 SDK 沒有傳入使用者資訊時回傳 undefined

Api 方法: getUserAvatar(): undefined | string

回傳值說明: 使用者頭像網址,undefined | string 類型

範例:

import { DEFAULT_VIEWER_AVATAR } from '@polyv/live-watch-sdk';

const userAvatar = watchCore.user.getUserAvatar();
console.log('用户头像', userAvatar);
console.log('默认头像', DEFAULT_VIEWER_AVATAR);

八、取得目前使用者的微信 openId

用於取得目前使用者的微信 openId,僅在微信(非)靜默授權後才回傳

Api 方法: getUserOpenId(): undefined | string

回傳值說明: 微信 openId,undefined | string 類型

範例:

const openId = watchCore.user.getUserOpenId();
console.log('openId', openId);

九、取得目前使用者的微信 unionId

用於取得目前使用者的微信 unionId,僅在微信(非)靜默授權後才回傳

Api 方法: getUserUnionId(): undefined | string

回傳值說明: 微信 unionId,undefined | string 類型

範例:

const unionId = watchCore.user.getUserUnionId();
console.log('unionId', unionId);

十、取得目前使用者的頭銜

Api 方法: getUserActor(): undefined | string

從 v0.11.0 版本開始支援

回傳值說明: 使用者頭銜,undefined | string 類型

範例:

const actor = watchCore.user.getUserActor();
console.log('actor', actor);

十一、取得目前使用者相關的標籤

Api 方法: getUserLabels(): undefined | Object

從 v2.18.0 版本開始支援

回傳值說明: 使用者頭銜

const labels = watchCore.user.getUserLabels();
console.log('labels', labels);
```,`undefined | Object` 類型

<a id="classmethoddoc_plvusermodule_needhideuseractor"></a>

## 十二、是否需要隱藏使用者頭銜

**Api 方法:** `needHideUserActor(): boolean`

> 從 v1.2.0 版本開始支援

<a id="classmethoddoc_plvusermodule_getuserauthtype"></a>

## 十三、取得目前使用者的授權方式

使用者取得目前使用者的授權方式,未授權時回傳 AuthType.None

**Api 方法:** `getUserAuthType(): AuthType`

**回傳值說明:** 授權方式,`AuthType` 類型

**範例:** 

```js
const authType = watchCore.user.getUserAuthType();
console.log('当前用户的授权方式', authType);

十四、目前是否需要手機號碼實名認證

Api 方法: needRealNameAuth(): Promise<boolean>

從 v0.8.0 版本開始支援

回傳值說明: 是否需要認證,Promise<boolean> 類型

範例:

const needAuth = watchCore.user.needRealNameAuth();
if (needAuth) {
  console.log('需要认证,显示认证弹层');
}

十五、儲存實名認證資訊

Api 方法: saveRealNameData(option: SaveRealNameOptions): Promise<RealNameResult>

從 v0.8.0 版本開始支援

參數說明:

  • option:選項參數,SaveRealNameOptions 類型,必傳,詳細類型說明如下
參數名稱 說明 類型 必須 預設值
areaCode 手機區號 string -
phoneNumber 手機號碼 string -
smsCode 簡訊驗證碼 string -

回傳值說明: Promise<RealNameResult> 類型

十六、取得目前觀眾的雲席資訊

Api 方法: getUserSeatInfo(): undefined | ViewerSeatInfo

從 v0.10.0 版本開始支援

回傳值說明: undefined | ViewerSeatInfo 類型

十七、取得目前觀眾的跟進人資訊

Api 方法: getUserSaleInfo(): ViewerSaleInfo

從 v1.1.0 版本開始支援

回傳值說明: 使用者跟進人資訊,ViewerSaleInfo 類型,詳細類型說明如下

屬性名稱 說明 類型
saleId 跟進人 id undefined | string

十八、取得邀請觀看邀請員/分銷員Id

Api 方法: getInviteWatchSaleId(): null | string

從 v2.0.0 版本開始支援

回傳值說明: null | string 類型

十九、取得邀請觀看上級邀請員的 inviteWatchSaleId

Api 方法: getInviteWatchInviteSalesId(): null | string

從 v2.2.0 版本開始支援

回傳值說明: null | string 類型

联系客服,在线咨询