完善虎牙确认绑定与角色查询
This commit is contained in:
@@ -291,6 +291,50 @@ class CheckUserBindGameAccountResp(TafStruct):
|
||||
}
|
||||
|
||||
|
||||
class ConfirmBindActAccountReq(TafStruct):
|
||||
"""webActUI.confirmBindActAccount 请求。"""
|
||||
|
||||
def __init__(self):
|
||||
self.userId = ActivityUserId()
|
||||
self.gid: int = 0
|
||||
self.outerActId: str = ""
|
||||
self.bActId: int = 0
|
||||
|
||||
def write_to(self, os: TafOutputStream):
|
||||
os.write_struct(0, self.userId)
|
||||
os.write_int32(1, self.gid)
|
||||
os.write_string(2, self.outerActId)
|
||||
os.write_int32(3, self.bActId)
|
||||
|
||||
def read_from(self, ins: TafInputStream):
|
||||
self.userId = ins.read_struct(0, ActivityUserId) or self.userId
|
||||
self.gid = ins.read_int32(1, default=self.gid)
|
||||
self.outerActId = ins.read_string(2, default=self.outerActId)
|
||||
self.bActId = ins.read_int32(3, default=self.bActId)
|
||||
|
||||
|
||||
class ConfirmBindActAccountResp(TafStruct):
|
||||
"""webActUI.confirmBindActAccount 响应。"""
|
||||
|
||||
def __init__(self):
|
||||
self.status: int = 0
|
||||
self.msg: str = ""
|
||||
|
||||
def read_from(self, ins: TafInputStream):
|
||||
self.status = ins.read_int32(0, default=self.status)
|
||||
self.msg = ins.read_string(1, default=self.msg)
|
||||
|
||||
def write_to(self, os: TafOutputStream):
|
||||
os.write_int32(0, self.status)
|
||||
os.write_string(1, self.msg)
|
||||
|
||||
def to_dict(self) -> dict:
|
||||
return {
|
||||
"status": self.status,
|
||||
"msg": self.msg,
|
||||
}
|
||||
|
||||
|
||||
class GetLiveLinkParamReq(TafStruct):
|
||||
"""webActUI.getLiveLinkParam 请求。"""
|
||||
|
||||
@@ -508,6 +552,19 @@ def _self_check():
|
||||
assert parsed_link.status == 200
|
||||
assert parsed_link.livelinkParam["actId"] == "17096"
|
||||
|
||||
confirm_rsp = ConfirmBindActAccountResp()
|
||||
confirm_rsp.status = 200
|
||||
confirm_rsp.msg = "请求成功"
|
||||
os = TafOutputStream()
|
||||
os.write_struct(0, confirm_rsp)
|
||||
ins = TafInputStream(os.get_bytes())
|
||||
_, dtype = ins.read_head()
|
||||
assert dtype == TafType.STRUCT_BEGIN
|
||||
parsed_confirm = ConfirmBindActAccountResp()
|
||||
parsed_confirm.read_from(ins)
|
||||
assert parsed_confirm.status == 200
|
||||
assert parsed_confirm.msg == "请求成功"
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
_self_check()
|
||||
|
||||
@@ -301,6 +301,32 @@ class HuyaHttpClient:
|
||||
timeout=timeout,
|
||||
)
|
||||
|
||||
def confirm_bind_act_account(
|
||||
self,
|
||||
uid: int,
|
||||
cookie: str,
|
||||
b_act_id: int,
|
||||
gid: int = 0,
|
||||
outer_act_id: str = "",
|
||||
timeout: float = 15.0,
|
||||
):
|
||||
"""确认虎牙号与当前活动的游戏账号绑定关系。"""
|
||||
from .activity_structs import ConfirmBindActAccountReq, ConfirmBindActAccountResp
|
||||
req = ConfirmBindActAccountReq()
|
||||
req.userId = self._build_activity_user(uid, cookie)
|
||||
req.gid = int(gid or 0)
|
||||
req.outerActId = str(outer_act_id or "")
|
||||
req.bActId = int(b_act_id or 0)
|
||||
return self.call_rpc(
|
||||
"webActUI",
|
||||
"confirmBindActAccount",
|
||||
req,
|
||||
ConfirmBindActAccountResp,
|
||||
uid=uid,
|
||||
cookie=cookie,
|
||||
timeout=timeout,
|
||||
)
|
||||
|
||||
def get_live_link_param(
|
||||
self,
|
||||
uid: int,
|
||||
|
||||
Reference in New Issue
Block a user