打赏功能

一、获取频道打赏配置

从 v1.2.0 开始可以通过 PlvDonateModule.generateDefaultDonateConfig() 来获取默认配置

Api 方法: getDonateConfig(): DonateConfig

返回值说明: 频道打赏配置,DonateConfig 类型,详细类型说明如下

属性名
说明
类型

donateCashMin

现金打赏最低限制

number

donateCashQuickOptions

现金打赏金额列表

number[]

donateCashEnabled

现金打赏开关

boolean

donateGoodEnabled

道具(现金)打赏开关

boolean

donatePointEnabled

道具(积分)打赏开关

boolean

donatePointUnit

积分礼物单位

string

donateScoreUnit

积分单位

string

示例:

const donateConfig = watchCore.donate.getDonateConfig();
console.log('现金打赏开关', donateConfig.donateCashEnabled);
console.log('现金礼物打赏开关', donateConfig.donateGoodEnabled);
console.log('积分礼物打赏开关', donateConfig.donatePointEnabled);

二、判断是否显示现金打赏

Api 方法: isShowDonateCash(): boolean

返回值说明: 是否显示现金打赏

示例:

三、判断是否显示现金道具打赏

Api 方法: isShowDonateCashGood(): boolean

返回值说明: 是否显示现金道具打赏

示例:

四、是否显示积分道具打赏

Api 方法: isShowDonatePointGood(): boolean

返回值说明: 是否显示积分道具打赏

示例:

五、判断是否为免费礼物

通过打赏道具名称以及管理后台配置的打赏设置判断礼物是否免费,如果不在配置中的礼物将返回 false。

Api 方法: isFreeReward(rewardContent: string): boolean

参数说明:

  • rewardContent:打赏内容(道具名称),string 类型,必传

示例:

六、获取打赏道具信息

获取管理后台中设置的打赏道具信息,如积分打赏道具、现金打赏道具

Api 方法: getDonateGoods(): Object

返回值说明: Object 类型,详细类型说明如下

属性名
说明
类型

goods

当前支持打赏的道具

DonateGoodData[]

cashGoods

现金道具

DonateGoodData[]

pointGoods

积分道具

DonateGoodData[]

示例:

七、支付打赏

当观众进行打赏时,可调用 payDonate 进行打赏,调用后可通过支付记录 id logId 查询支付状态。

Api 方法: payDonate(params: PayDonateParams): Promise<PayDonateData>

参数说明:

  • params:打赏内容,PayDonateParams 类型,必传,详细类型说明如下

参数名
说明
类型
必须
默认值

donateType

打赏类型

DonateType

-

goodId

道具打赏道具 id

string

-

goodCount

打赏数量

number

-

amount

现金打赏时的打赏金额,单位:元

string | number

-

返回值说明: 打赏支付数据,Promise<PayDonateData> 类型,详细类型说明如下

属性名
说明
类型

donateType

打赏类型

DonateType

isFree

是否为免费礼物

boolean

logId

支付记录 id

string

goodId

打赏道具 id

string

goodCount

打赏数量

number

amount

现金打赏时的打赏金额

string | number

codeUrl

支付地址

string

qrCodeUrl

支付二维码地址,付费礼物才存在

string

wxPaySignData

微信支付签名数据

WxPaySignData

示例:

八、检查打赏支付状态

Api 方法: checkDonatePayStatus(params: CheckDonatePayStatusParams): Promise<DonatePayStatusData>

参数说明:

  • params:undefined,CheckDonatePayStatusParams 类型,必传,详细类型说明如下

参数名
说明
类型
必须
默认值

logId

记录id

string

-

donateType

打赏类型

DonateType

-

返回值说明: 打赏支付状态数据,Promise<DonatePayStatusData> 类型,详细类型说明如下

属性名
说明
类型

paySuccess

是否支付成功

boolean

九、获取当前用户打赏的剩余积分

Api 方法: getDonateSurplusPoint(): Promise<number>

返回值说明: Promise<number> 类型

十、支付积分打赏

Api 方法: payDonatePoint(params: PayDonatePointParams): Promise<number>

参数说明:

  • params:undefined,PayDonatePointParams 类型,必传,详细类型说明如下

参数名
说明
类型
必须
默认值

goodId

道具打赏道具 id

string

-

goodCount

打赏数量

number

-

返回值说明: 返回剩余积分,Promise<number> 类型

十一、获取打赏 svga 链接

Api 方法: getDonateSvgaUrl(gimg: string): undefined | string

参数说明:

  • gimg:打赏图片地址,string 类型,必传

返回值说明: undefined | string 类型

Last updated

Was this helpful?