登录回调信息(AuthResult)
数据结构
警告
业务如需使用 FirstLogin
字段判断是否为新用户。则业务在清档的时候,也需要提醒 Player Network SDK 方清除相关的数据。
FINTLAuthResult:继承自 FINTLBaseResult,包含了登录信息。
名称 | 类型 | 说明 |
---|---|---|
OpenID | FString | Player Network SDK 用户唯一标识 |
Token | FString | Player Network SDK 用户 token |
TokenExpire | int64 | token 过期时间戳 例如,1600844518 |
FirstLogin | int32 | 是否首次登录 未知:-1 否:0 是:1 |
UserName | FString | 昵称 |
Gender | int32 | 性别 0:未定义 1:男 2:女 |
Birthdate | FString | 出生年月日 例如,1987-02-23 |
PictureUrl | FString | 头像链接 |
Pf | FString | pf 值 用于 Midas 支付 |
Pfkey | FString | pf key 用于 Midas 支付 |
NeedRealNameAuth | bool | 是否需要实名认证 |
ChannelID | int32 | 渠道号 |
ChannelName | EINTLLoginChannel | 渠道名 |
ChannelInfo | FString | 第三方渠道登录信息 JSON 数据,不同渠道取值不同 |
BindList | FString | 绑定信息 JSON 数据,数组类型 |
LegalDocumentsAcceptedVersion | FString | 法务文件版本信息 |
DeleteAccountStatus | int32 | 删号状态信息 更多信息,请参见 DeleteAccountStatus。 |
DeleteAccountInfo | String | 如果需要 `DeleteAccountInfo',请联系 Player Network 助手 注销账号信息,JSON 数据。 更多信息,请参见 DeleteAccountInfo。 |
TransferCode | FString | 特殊地区游客引继码 |
TransferCodeExpireTime | int32 | 特殊地区游客引继码过期时间 |
DeleteLIAccountStatus | int | LEVEL INFINITE PASS 账号注销状态 更多信息,请参见 DeleteLIAccountStatus。 |
string | 邮件地址 |
其中 FINTLAuthResult
里面的 ExtraJson 中包含了后台查询到的用户的 协议版本 和 合规状态 的 JSON 字符串。
协议版本
协议版本的模版字符串为:
"need_notify_rsp": {
"has_bind_li": true,
"is_receive_email": 1,
"is_receive_email_in_night": 0,
"user_agreed_game_dma": "",
"user_agreed_game_pp": "36",
"user_agreed_game_tos": "36",
"user_agreed_li_dt": "",
"user_agreed_li_pp": "1",
"user_agreed_li_tos": "",
"need_notify": false
}
关键参数 | 类型 | 说明 |
---|---|---|
user_agreed_game_tos | string | 玩家同意的服务条款版本,若未同意则传入空值 |
user_agreed_game_pp | string | 玩家同意的隐私协议版本,若未同意则传入空值 |
user_agreed_li_pp | string | 玩家同意的 LEVEL INFINITE PASS 隐私协议版本,若未同意则传入空值 |
user_agreed_li_dt | string | 玩家同意的数据传输协议版本,若未同意则传入空值 |
user_agreed_li_tos | string | 玩家同意的 LEVEL INFINITE PASS 服务条款版本,若未同意则传入空值 |
is_receive_email | int | 是否接收营销邮件 |
is_receive_email_in_night | int | 是否接收营销邮件(韩国) |
need_notify | bool | 是否升级 LI PASS 协议 |
has_bind_li | bool | 当前渠道是否已绑定了 LI PASS |
合规状态
未成年认证状态的模版字符串为:
"get_status_rsp": {
"adult_age": 18,
"adult_age_map": "{\"1\":18,\"10\":18,\"11\":18,\"2\":18,\"3\":14,\"4\":14,\"5\":18,\"6\":18,\"7\":18,\"8\":18,\"9\":18}",
"adult_check_status": 1,
"adult_check_status_expiration": "0",
"certificate_type": 0,
"email": "",
"eu_user_agree_status": 0,
"game_grade": 0,
"game_grade_map": "{\"1\":14,\"2\":14,\"5\":14}",
"is_dma": false,
"is_eea": false,
"is_need_li_cert": false,
"msg": "success",
"need_parent_control": 0,
"need_realname_auth": 0,
"parent_certificate_status": 0,
"parent_certificate_status_expiration": "0",
"parent_control_map": {},
"qr_code_ret": 0,
"realname_auth_status": 0,
"region": "344",
"ret": 0,
"ts": "1712112893"
}
关键参数 | 类型 | 描述 |
---|---|---|
adult_check_status | number | 是否已经成年 -1:还未成年 0:还未设置 1:已经成年 |
adult_check_status_expiration | string | 未成年状态下次需要认证时间 |
parent_certificate_status | number | 是否已经通过家长认证 -1:家长拒绝认证 0:家长未进行认证 1:家长通过认证 10:家长认证之中(仅限邮箱认证) |
parent_certificate_status_expiration | string | 家长拒绝认证之后,下次可以认证时间 |
eu_user_agree_status | number | 欧盟玩家是否同意在非欧盟地区存储数据 -1:拒绝 0:未设置 1:同意 |
ts | string | 当前时间戳 |
adult_age | number | 入参国家/地区的成年标准 查询不到使用默认成年标准 |
game_grade | number | 入参国家/地区的游戏分级标准 查询不到使用默认分级标准 |
adult_age_map | string | 韩国的分端成年标准 |
game_grade_map | string | 韩国的分端游戏分级标准 |
certificate_type | number | 入参国家/地区的认证方式 查询不到使用默认认证方式 0:不需要认证 1:自我认证 2:使用信用卡支付认证 3:邮箱认证 |
region | string | ISO 3166-1 国家或地区的数字代码 例如 156 代表中国,040 代表奥地利 |
韩国年龄标准
由于韩国政府要求分端区分年龄标准,在查询合规状态信息时,需判断当前玩家是否属于韩国地区。因此需要用 AdultAgeMap
和 GameGradeMap
来读取当前设备对应端的年龄标准。
OS | 端 |
---|---|
1 | Android |
2 | iOS |
5 | PC |
6 | Switch |
10 | PS5 |
11 | Xbox |
例如 PC 端的成年标准为 AdultAgeMap[5]
,PC 端的游戏分级标准为 GameGradeMap[5]
。
int adultAgeInPC = AdultAgeMap[5]
int gameGradeInPC = GameGradeMap[5]
DeleteAccountStatus
警告
需要返回 DeleteAccountStatus
的业务请联系 Player Network 助手进行配置,否则 DeleteAccountStatus
会返回 -1。
值 | 说明 | 备注 |
---|---|---|
0 | 没有进行删号或者删号已取消 | 允许玩家进入游戏 |
1 | 删号静默期 | 阻拦用户登录,提示用户选择是否要撤回删号进入游戏 |
2 | 删号完成 | 不允许玩家进入游戏 |
3 | 正在删号 | 不允许玩家进入游戏 |
4 | 删号失败 | 不允许玩家进入游戏 |
-1 | 后台没有返回删号状态 | 建议允许玩家进入游戏 |
-2 | 删号状态服务网络异常 | 建议允许玩家进入游戏 |
-3 | DMCS 响应数据格式不对(JSON 中缺返回状态或 err_code 字段) | 建议允许玩家进入游戏 |
-4 | 内部错误 (参数验证不正确或配置验证不等于内部授权逻辑) | 建议允许玩家进入游戏 |
-10 或 -11 | 删号状态服务内部错误 | 建议允许玩家进入游戏 |
>= 5 | 未定义 | 建议允许玩家进入游戏 |
建议允许玩家进入游戏的原因:
- 如拒绝玩家登录会影响所有用户,不建议将此作为删号关键路径。
- 同时,游戏侧也需评估返回值为负数时,如允许玩家进入是否会对游戏数据有其他影响。
DeleteAccountInfo
JSON 数据如下:
{
"ret": 0, // int, 返回代码,0 表示正常。
"err_code": -10, // int,Player Network SDK 的错误代码,游戏不需要注意
"msg": "", // 错误信息,请求成功时为空
"status": 0, // int, 0: 没有记录或账号注销被取消;1: 冷却期;2: 账号注销成功;3: 注销账号;4: 账号注销失败
"created_at": 12345678, // int64, 账号注销请求被创建的时间戳(当状态为 0 时,时间戳为 0)
"target_destroy_at": 12345678, //执行账号注销的时间戳(当状态为 0 时,时间戳为 0)。
"destroy_at": 12345679 // int64,账号实际被删除的时间戳(当状态不是 2 时,时间戳为 0)
}
DeleteLIAccountStatus
值 | 说明 |
---|---|
-1 | 账号注销状态查询失败或后端没有返回状态 |
0 | 没有注销账号记录或删除请求已被撤回 |
1 | 要求注销账号 |
2 | 账号注销成功 |
3 | 注销账号中| |
4 | 注销账号失败 |