6
0
gaore-common-sdk-go/services/asdk/client.go
yuxh fe6c49973b feat(asdk): 新增查询玩家最近登录游戏接口封装
供 AI 客服定位玩家在玩的游戏:传入一批平台账号,返回其中最近登录的
那一款子游戏及其所属根游戏(game_sign),玩法 QA 据此归类检索。

data 为空对象表示这些账号都没有登录记录,是正常结果而非错误,code 仍为 0。
2026-09-14 14:56:11 +08:00

71 lines
1.7 KiB
Go

package asdk
import (
"fmt"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/responses"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/utils"
"time"
)
const (
VERSION = "2020-11-16"
)
var HOST = requests.Host{
Default: "asdk",
}
type Client struct {
sdk.Client
}
func NewClient() (client *Client, err error) {
client = new(Client)
err = client.Init()
return
}
// GenerateInnerApiSign
// 生成内部接口签名
func GenerateInnerApiSign(ts int64) (int64, string) {
const InnerSignSecret = "sYbfhozSu^@K8~y*"
if ts == 0 {
ts = time.Now().Unix()
}
return ts, utils.Md5(fmt.Sprintf("%d%s", ts, InnerSignSecret))
}
// CreateKickUserReq 踢人
func (c *Client) CreateKickUserReq(req *KickUserReq) (resp *KickUserResp, err error) {
resp = CreateKickUserResp()
err = c.DoAction(req, resp)
if err != nil {
return
}
return
}
func (c *Client) Auth(req *AuthReq) (resp *AuthResp, err error) {
resp = &AuthResp{
BaseResponse: &responses.BaseResponse{},
}
err = c.DoAction(req, resp)
return
}
// ClearPaySwitchCache 清切支付名单判定缓存(内网无签名接口,按 user_name + game_id 即时清 asdk 判定缓存)
func (c *Client) ClearPaySwitchCache(req *ClearPaySwitchCacheReq) (resp *ClearPaySwitchCacheResp, err error) {
resp = CreateClearPaySwitchCacheResp()
err = c.DoAction(req, resp)
return
}
// GetLastLoginGame 查询玩家最近登录游戏所属的根游戏(内网接口,供 AI 客服定位玩家在玩的游戏)
func (c *Client) GetLastLoginGame(req *LastLoginGameReq) (resp *LastLoginGameResp, err error) {
resp = CreateLastLoginGameResp()
err = c.DoAction(req, resp)
return
}