GiftStore
Introduction
GiftStore provides a complete set of gift management APIs, including sending gifts, refreshing gift lists, setting language, and listening to gift events.
Through this class, gift interaction features can be implemented in live rooms.
Important:
Use the GiftStore.create factory method to create a GiftStore instance, passing a valid live room ID.
Note:
Gift state updates are delivered through the giftState publisher. Subscribe to it to receive real-time updates of gift data in the room.
Features
Gift Sending:Support sending specified gifts to the current room
Gift List:Get and refresh the available gift list in the current room
Language Setting:Set the display language for gift information
Event Listening:Listen to gift receiving events
Subscribable Data
GiftState fields are described below:
Property | Type | Description |
usableGifts | All gift categories and gift lists available in the current room. |
API List
Function | Description |
Create gift management instance. | |
Gift event callbacks. | |
Gift event callbacks. | |
Send gift. | |
Refresh available gift list. | |
Set display language. |
Creating Instance
GiftStore.create
Create gift management instance
Observing State and Events
addGiftListener
Gift event callbacks
removeGiftListener
Gift event callbacks
Gift Operations
sendGift
Send a specified gift to the current room
abstract fun sendGift(giftID: String,count: Int,completion: CompletionHandler?)
Version
Supported since version 3.5.
Parameters
Parameter | Type | Required | Description |
giftID | String | Required | Unique identifier ID of the gift to send. |
count | Int | Required | Number of gifts to send at once. |
completion | Required | Completion callback (success/failure status). |
refreshUsableGifts
Manually refresh the available gift list in the current room.
abstract fun refreshUsableGifts(completion: CompletionHandler?)
Version
Supported since version 3.5.
Parameters
Parameter | Type | Required | Description |
completion | Required | Completion callback (on success, the latest gift list can be obtained through state; on failure, error information is returned). |
setLanguage
Set the display language for gift information.
abstract fun setLanguage(language: String)
Version
Supported since version 3.5.
Parameters
Parameter | Type | Required | Description |
language | String | Required | Language code ("zh-CN" for Chinese, "en" for English). After setting, gift names, descriptions, etc. will be updated to the corresponding language when the display interface is refreshed. |
Data Structures
Gift
Gift data model, containing complete attribute information of a single gift.
Property | Type | Description |
giftID | String | Gift ID. |
name | String | Gift name. |
desc | String | Gift description. |
iconURL | String | Network URL of the gift icon image, used to load gift thumbnails. |
resourceURL | String | Network URL of the gift animation resource file, used to load gift display animations. |
level | Long | Gift level, used to distinguish gift rarity or value tier. |
coins | Long | Gift price (coins). |
extensionInfo | Map<String, String> | Gift extension information, customizable fields (such as effect type, sending restrictions, etc.). |
GiftCategory
Gift category.
Property | Type | Description |
categoryID | String | Category unique identifier ID, used to distinguish different gift categories. |
name | String | Category display name, used for UI category display (such as "Popular Gifts", "Premium Gifts"). |
desc | String | Category description information, used to explain the characteristics of this category. |
extensionInfo | Map<String, String> | Category extension information, containing custom fields (such as sorting weight, display style, etc.). |
giftList | All gifts under the current category. |
GiftState
Gift state, managing the gift data state of the current room, supporting real-time updates and subscription listening.
Property | Type | Description |
usableGifts | All gift categories and gift lists available in the current room. |
GiftListener
Gift event, used to receive gift dynamics in live rooms/voice chat rooms.
Methods
onReceiveGift: Event callback when receiving a new gift message. This event is triggered when other viewers send gifts in the live room/voice chat room, returning relevant information.
open fun onReceiveGift(liveID: String, gift: Gift, count: Int, sender: LiveUserInfo) {}
Parameter | Type | Description |
liveID | String | Live room ID. |
gift | Gift information. | |
count | Int | Gift count. |
sender | Gift sender information. |