このページは現在英語版のみで提供されており、日本語版も近日中に提供される予定です。ご利用いただきありがとうございます。

Callback After Ending Battle

Feature Description

The app server can use this callback to monitor battle ended.

Must-Knows

To enable callbacks, configuration is required.
URL, and turn on the switch corresponding to this callback protocol. For detailed configuration methods, see Third-Party Callback Configuration Document.
The direction of the callback is that the live backend initiates an HTTP POST request to the app backend.
After receiving the callback request, the app server must verify whether the parameter SDKAppID in the request URL is its own SDKAppID.

Scenarios That May Trigger This Callback

The battle ends normally when the time is up.
During the battle, all room owners exit the battle.
After the battle is created, it ends directly when all the called room owners do not agree to join the battle.

Timing Of Callback Occurrence

After the battle ends.

API Description

Request URL Sample:

In the following example, the callback URL configured for the App is https://www.example.com.
Example:
https://www.example.com?SdkAppid=$SDKAppID&CallbackCommand=$CallbackCommand&contenttype=json&ClientIP=$ClientIP&OptPlatform=$OptPlatform

Description Of Request Parameters

Parameter
Description
https
The request protocol is HTTPS, and the request method is POST
www.example.com
Callback URL
SdkAppid
The SDKAppID assigned in the Chat console when creating an application
CallbackCommand
Fixed as Live.CallbackAfterEndBattle
contenttype
The fixed value is json
ClientIP
Client IP, format as: 127.0.0.1
OptPlatform
Client platform. For the value, see Introduction to Third-Party Callback for the parameter meaning of OptPlatform

Request Packet Sample:

{
"CallbackCommand": "Live.CallbackAfterEndBattle",
"BattleId": "4siHsNsWN/T3aub9zKraqPfGQAimPhdFoe6VWhtz9lY=",
"Duration": 30000,
"CreateTime": 1739956115,
"StartTime": 1739956115,
"EndTime": 1739956145,
"OpType": 0, // 0 indicates normal completion when time is up; 1 indicates completion caused by all streamers exiting after the battle starts; 2 indicates that the battle was created but ended directly without starting because no streamers joined.
"FromRoomInfo": { //Caller information
"RoomId": "pk-3",
"Score": 0,
"Owner_Account": 144115245353757792
},
"ToRoomList": [ // Called party information
{
"RoomId": "pk-5",
"Score": 0,
"Owner_Account": 144115245442327522
}
],
"EventTime": 1739956146119
}

Description Of Request Packet Fields

Field
Type
Description
CallbackCommand
String
Callback command
BattleId
String
Battle Id
Duration
Integer
Duration of the battle
CreateTime
Integer
Creation time of the battle
StartTime
Integer
Start time of the battle
EndTime
Integer
Termination time of the battle
OpType
Integer
0 indicates normal completion when time is up;
1 indicates completion caused by all room owners exiting after the battle starts;
2 indicates that the battle was created but ended directly without starting because no room owners joined.
FromRoomInfo
String
Caller information of the battle
ToRoomList
Array
Callee information of the battle
RoomId
String
Room Id
Score
Integer
The room score in battle
Owner_Account
String
The room owner in battle
EventTime
Integer
Millisecond-level timestamp triggered by the event

Response Packet Example

After the app synchronizes data in the background, it sends a callback response packet.
{
"ActionStatus": "OK",
"ErrorInfo": "",
"ErrorCode": 0 // Ignore callback result
}

Response Packet Field Description

Field
Type
Attribute
Description
ActionStatus
String
Required
The result of request processing. OK indicates successful processing, FAIL indicates failure
ErrorInfo
String
Required
Error message
ErrorCode
Integer
Required
Error code

Reference