游戏账号估值
通过 YY 游戏交易市场 API,帮用户查询游戏账号的估值价格。支持王者荣耀、和平精英、三角洲行动三款游戏。
工作流程
- 确认游戏 → 2. 引导填写属性 → 3. 提交估值 → 4. 执行估值 → 5. 扫码(如需) → 6. 展示结果
Step 1:确认游戏
识别用户想估值的游戏。如果用户没有明确指定,列出支持的三个游戏让其选择:
游戏 gameId categoryId authType 需要扫码
王者荣耀 5 "5" 0 否
和平精英 15 "15" 1 是(base64 二维码)
三角洲行动 1 "1" 2 是(微信 URL 二维码)
Step 2:引导填写属性
根据游戏不同,用对话方式逐步询问需要的属性。使用 AskUserQuestion 工具提供选项,不要让用户自由输入选项类属性。
王者荣耀(4 个必填属性)
区服(单选):安卓QQ / 苹果QQ / 安卓微信 / 苹果微信
营地ID:6-10 位数字,自由输入
实名情况(单选):可二次实名 / 不可二次实名
防沉迷(单选):有防沉迷 / 无防沉迷
和平精英(3 个必填属性)
区服(单选):安卓QQ / 苹果QQ / 安卓微信 / 苹果微信
实名情况(单选):可二次实名 / 不可二次实名
防沉迷(单选):有防沉迷 / 无防沉迷
三角洲行动(2 个必填 + 1 个选填)
登录方式(单选):QQ / 微信
实名情况(单选):可二次实名 / 不可二次实名
安全箱(多选,选填):顶级/高级/进阶/基础安全箱
Step 3:提交估值
调用脚本提交估值请求:
/scripts/game-valuation commit ''
attrItems 的构造规则:
type=1(单选):attrId 取选中 option 的 id
type=2(多选):每个选中项一条 attrItem
type=3(文本输入):attrId 取 attribute 自身的 id,值放 attrVals
属性映射表
王者荣耀:
属性 用户选择 attrId attrCode attrVals
区服-安卓QQ 安卓QQ 7880839 Qu -
区服-苹果QQ 苹果QQ 7880840 Qu -
区服-安卓微信 安卓微信 7880841 Qu -
区服-苹果微信 苹果微信 7880842 Qu -
营地ID 用户输入 7880843 YingDiID ["输入值"]
实名-可二次 可二次实名 7880862 ShiMingQingKuang -
实名-不可二次 不可二次实名 7880863 ShiMingQingKuang -
防沉迷-有 有防沉迷 7880865 YouWuFangChenMi -
防沉迷-无 无防沉迷 7880866 YouWuFangChenMi -
和平精英:
属性 用户选择 attrId attrCode
区服-安卓QQ 安卓QQ 7880875 Qu
区服-苹果QQ 苹果QQ 7880876 Qu
区服-安卓微信 安卓微信 7880877 Qu
区服-苹果微信 苹果微信 7880878 Qu
实名-可二次 可二次实名 7880917 ShiMingQingKuang
实名-不可二次 不可二次实名 7880918 ShiMingQingKuang
防沉迷-有 有防沉迷 7880920 YouWuFangChenMi
防沉迷-无 无防沉迷 7880921 YouWuFangChenMi
三角洲行动:
属性 用户选择 attrId attrCode
登录-QQ QQ 7880930 DengLuFangShi
登录-微信 微信 7880931 DengLuFangShi
实名-可二次 可二次实名 7880975 ShiMingQingKuang
实名-不可二次 不可二次实名 7880976 ShiMingQingKuang
安全箱-顶级 顶级安全箱 7881280 AnQuanXiang
安全箱-高级 高级安全箱 7881281 AnQuanXiang
安全箱-进阶 进阶安全箱 7881282 AnQuanXiang
安全箱-基础 基础安全箱 7881283 AnQuanXiang
Step 4:执行估值(commit 后必须调用)
commit 成功后,必须调用 execute 接口触发后端数据抓取,否则 detail 会返回空数据:
/scripts/game-valuation execute
请求体:{"recordId": , "hdid": ""}
这一步是文档未记录但实际必需的步骤,跳过会导致 detail 返回空数据。
Step 5:处理扫码(authType=1 或 2)
如果 commit 返回的 authType 不为 0,需要引导用户扫码:
保存二维码到本地文件:
/scripts/game-valuation qrcode ''
明确告知用户扫码验证流程即将开始:
需要扫码验证身份才能获取估值结果。二维码已保存到本地,请用手机扫描。我会在后台每 5 秒检查一次扫码状态,最长等待 10 分钟。如果你想取消等待,随时告诉我「取消」。
逐次轮询扫码结果,每次轮询前向用户报告当前状态:
/scripts/game-valuation poll
每次轮询时输出:正在等待扫码...(第 N 次检查,已等待 Xs)
如果用户在任何时候说「取消」「停止」「不等了」,立即停止轮询并告知用户可以重新开始
当 bizCode=0 时扫码成功,进入 Step 6
如果超时(二维码过期),提示用户可以重新提交估值
Step 6:展示估值结果
使用 report 命令直接获取格式化的估值报告:
/scripts/game-valuation report
也可以用 detail 命令获取原始 JSON 数据:
/scripts/game-valuation detail
结果展示格式
{gameName} — 账号估值报告
━━━━━━━━━━━━━━━━━━━━━━━━━━
预估价格: ¥{predictValuation}
价格区间: ¥{minValuation} ~ ¥{maxValuation}
超越用户: {surpassedUser}
最值钱单品: {mostValueItem}
核心数据: {逐行展示 coreData 的 featureLabel: featureValue/maxNum}
详细估值: https://mall.yy.com/?pageId=20000
如果 accountValue 为空或 detail 返回错误,显示友好提示而非原始 JSON。
前置条件:配置认证凭据
本 Skill 需要 YY 账号认证才能使用。请在首次使用前设置以下环境变量:
# 从浏览器 mall.yy.com 的 Cookie 中获取以下值
export GAME_VALUATION_YYUID="<你的YY用户ID>"
export GAME_VALUATION_UDB_OAR="<你的UDB认证令牌>"
获取方式:打开浏览器访问 mall.yy.com,登录后按 F12 打开开发者工具 → Application → Cookies,复制 yyuid 和 udb_oar 的值。
注意:本 Skill 不内置任何默认凭据。如果环境变量未设置,估值请求将返回 401 错误。
错误处理
code 含义 处理
0 成功 正常流程
401 未登录 提示用户设置 GAME_VALUATION_YYUID 和 GAME_VALUATION_UDB_OAR 环境变量
80002 recordId 异常 提示估值记录不存在,建议重新提交
注意事项
二维码有效期 600 秒(10 分钟),超时后需要重新 commit
三角洲行动的登录方式由扫码端决定(微信扫码→微信,QQ 扫码→QQ),DengLuFangShi 的选择应与用户预期的扫码方式一致
营地ID(王者荣耀)必须为 6-10 位纯数字,需在提交前校验格式
多选属性(三角洲行动安全箱)用户可以不选,也可以选多个