tkcashgame_v4/api/eonline/v1/pagsmile.proto

309 lines
17 KiB
Protocol Buffer
Raw Normal View History

2025-10-22 10:01:11 +00:00
syntax = "proto3";
package api.eonline.v1;
import "validate/validate.proto";
option go_package = "sandc/api/eonline/v1;v1";
// PayInitReq init request
message PayInitReq {
string platform = 1 [(validate.rules).string.min_len = 1];
string deviceid = 2 [(validate.rules).string.min_len = 1];
string version = 3 [(validate.rules).string.min_len = 1]; // 版本号为三段式目前起始版本号为2.0.0后面2段每段最大长度为2位即后面2段最大为99.99
string ip = 4; // 测试时用,可以不传
string ts = 5 [(validate.rules).string.min_len = 1]; // utc时间秒客户端发送消息时的本地时间在测试模式下服务器会把ts当成登录时间计算可用于改变登录日期
string sign = 6 [(validate.rules).string.min_len = 1];
}
// PayInitReply init reply
message PayInitReply {
string uuid = 1; // 用户唯一字符串
message Item {
uint32 id = 1; // 产品id
double amount = 2; // 产品价格
uint32 status = 3; // 状态:1可提现 2:条件未达成 3:当天该产品id已提现成功, 4:禁止提现, 5:提现中
}
uint32 days = 2; // 新增登录天数从1开始
repeated Item items = 3; // 提现情况
int32 CanCheckSubmit = 4; // 0提交审核的人数已满不能提交了1可以提交身份审核
int32 CheckSubmit = 5; // 提交身份文件验证情况0没有提交1提交过
int32 CheckResult = 6; // 身份文件审核有反馈的情况0没有记录1审核没通过2审核通过
int32 CheckPayout = 7; // 提交身份文件奖励5美元领取的情况0没有提现记录1提现中2提现成功3提现失败
int32 CheckCoin = 8; // 身份文件审核过的提现奖励,美分
int32 CanCheckPayOut = 9; // 身份文件审核过的提现奖励5美元 能否 提现0能提现1条件不满足不能提现2当天已经提现过不能再次提现
string CheckResultFailedDesc = 10; // CheckResult==1时显示的审核没通过的原因描述信息
int32 error = 11; // 错误码0成功1失败2签名验证失败3客户端版本过低4 ts长度错误
string clientData = 12; // 客户端上传、需要保存的数据
}
message PbReportDataAdjust {
string gps_adid = 1; // 用户的gaid
string android_id = 2; // 原始安卓 ID
string adid = 3; // 与设备关联的 Adjust 标识符
string user_agent = 4; // 设备的User-Agent。必须进行 URL 编码。
string price = 5; // 客户端上报的价格 客户端上报的价格例如0.05
string currency = 6; // 货币单位 客户端上报的货币例如USD
}
message PbReportDataShuShu {
string gps_gaid = 1; // 用户的gaid
string android_id = 2; // 原始安卓 ID
string adid = 3; // 与设备关联的 Adjust 标识符
string user_agent = 4; // 设备的User-Agent。必须进行 URL 编码
string price = 5; // 客户端上报的价格 客户端上报的价格例如0.05
string currency = 6; // 货币单位 客户端上报的货币例如USD
string payment_method = 7; // 收款方式 暂时只有一种pix
string payment_type = 8; // 账户形式 cpf/cnpj/evp/email/phone
string payment_number = 9; // 账户号码 收款账号号码
string iap_name = 10; // 商品名称 游戏侧自定义的提现项目名称例如0.1br/50br/100br
string gamecoin_number = 11; // 提现消耗的虚拟货币数 提现消耗的虚拟货币数量例如1500
string gamecoin_type = 12; // 提现消耗的虚拟货币类型 金币或钞票例如coin/money
string ss_account_id = 13; // 数数账号ID 用户的登录ID(如果需要接入数数请务必传此值)
string ss_distinct_id = 14; // 数数访客ID 用户在未登录状态下的ID(如果需要接入数数请务必传此值)
string ss_super_properties = 15; // 数数的公共属性和预制属性 json字符串
}
// PayoutReq 赔付请求
message PayoutReq {
string platform = 1 [(validate.rules).string.min_len = 1];
string deviceid = 2 [(validate.rules).string.min_len = 1];
string version = 3 [(validate.rules).string.min_len = 1];
string ts = 4 [(validate.rules).string.min_len = 1]; // utc时间秒
string sign = 5 [(validate.rules).string.min_len = 1];
string account = 6 [(validate.rules).string.min_len = 1]; // PIX: Beneficiary's PIX account paypal账号
uint32 item_id = 7 [(validate.rules).uint32 = { lte: 3, gte: 1 }]; // 1提现0.12提现金币大额13提现绿钞大额14是身份审核通过的奖励提现
double amount = 8 [(validate.rules).double = { lte: 50, gte: 0.1 }];
string additional_remark = 9 [(validate.rules).string.min_len = 1];
string uuid = 10 [(validate.rules).string.min_len = 1];
string ip = 11;
string account_type = 12 [(validate.rules).string = { min_len: 0, max_len: 5 }]; // 非巴西PIX支付不填PIX: Beneficiary's PIX account type- One of: CPF, CNPJ, EVP, PHONE, EMAIL
string document_type = 13 [(validate.rules).string = { min_len: 0, max_len: 4 }]; // 非巴西PIX支付不填PIX: Beneficiary's personal identification type - One of: CPF, CNPJ
string document_id = 14 [(validate.rules).string = { min_len: 0, max_len: 100 }]; // 非巴西PIX支付不填PIX: Beneficiary's personal identification number
string name = 15 [(validate.rules).string = { min_len: 0, max_len: 100 }]; // 非巴西PIX支付不填PIX: Beneficiary's name- Length between 5 and 100
PbReportDataAdjust dataAdjust = 16; // 客户端上报 adjust 数据
PbReportDataShuShu dataShuShu = 17; // 客户端上报 数数 数据
string clientData = 18; // 客户端上传、需要保存的数据
string clientName = 19; // 客户端包名
string email = 20 [(validate.rules).string.min_len = 1]; // 邮箱
}
// PayoutReply 赔付响应
message PayoutReply {
string id = 1;
string record_no = 2;
int32 error = 3; // 错误码0成功1失败2签名验证失败3客户端版本过低4uuid错误5所在地国家或地区不在提现限制内6提现金额不符对应的产品id7提现产品id不对8达到提现金额限制9提现次数超过限制10今日没有提现机会11提现账号达到次数限制12身份审核条件不满足不能提现13巴西提现参数 document_type 错误,
// 14巴西提现参数 document_id 错误15 巴西提现参数 AccountType 错误16 巴西提现参数 Name 错误17巴西提现参数 Account 和 DocumentId 不同18巴西提现参数account_type为CPF时 对应的 account 错误19巴西提现参数account_type为CNPJ时 对应的 account 错误20巴西提现参数 account_type 错误,
// 21巴西提现参数 document_type 错误22巴西提现参数account_type为CPF时 对应的 document_id 错误23巴西提现参数account_type为CNPJ时 对应的 document_id 错误24 ts长度错误25 没提0.1就提现其它的 26解析数数出错 27自然量用户
}
// PayoutCallbackReq 赔付回调请求
message PayoutCallbackReq {
string payout_id = 1;
string custom_code = 2;
string status = 3;
string msg = 4;
int64 timestamp = 5;
}
// PayoutCallbackReply 赔付回调响应
message PayoutCallbackReply {
string message = 1;
}
// PayoutCheckReq 赔付查询请求
message PayoutCheckReq {
string platform = 1 [(validate.rules).string.min_len = 1];
string deviceid = 2 [(validate.rules).string.min_len = 1];
string version = 3 [(validate.rules).string.min_len = 1];
string ts = 4 [(validate.rules).string.min_len = 1]; // utc时间秒
string sign = 5 [(validate.rules).string.min_len = 1];
string ip = 6;
string record_no = 7 [(validate.rules).string.min_len = 1];
}
// PayoutCheckReply 赔付查询响应
message PayoutCheckReply {
uint32 status = 1; // 提现状态 1:提现中,2:提现成功,3:提现失败
int32 error = 2; // 错误码0成功1失败2签名验证失败3客户端版本过低4 ts长度错误
}
// GetPayoutUserLst 查询提现邮箱请求
message PayoutUserLstReq {
string platform = 1 [(validate.rules).string.min_len = 1];
string deviceid = 2 [(validate.rules).string.min_len = 1];
string version = 3 [(validate.rules).string.min_len = 1];
string ts = 4 [(validate.rules).string.min_len = 1]; // utc时间秒
string sign = 5 [(validate.rules).string.min_len = 1]; // 签名
uint32 status = 6 [(validate.rules).uint32 = { lte: 3, gte: 1 }]; // 查询提现请求的状态, 提现状态 1:提现中,2:提现成功,3:提现失败
uint32 pageIndex = 7; // 查询页第几页从1开始
uint32 pageSize = 8; // 每页多少条记录
}
// GetPayoutUserLst 获取申请提现玩家的列表请求响应
message PayoutUserLstReply {
repeated PayoutUserOne lst = 1; // 只返回 提现中的
int32 error = 2; // 错误码0成功1失败2签名验证失败3访问数据库出错4 ts长度错误
}
message PayoutUserOne {
string email = 1; // 邮件地址
string recordNo = 2; // 提现唯一编码
string account = 3; // paypal账号
uint32 status = 4; // 提现状态 1:提现中,2:提现成功,3:提现失败
}
// SetPayoutStatus 设置指定玩家的提现状态
message PayoutStatusReq {
string platform = 1 [(validate.rules).string.min_len = 1];
string deviceid = 2 [(validate.rules).string.min_len = 1];
string version = 3 [(validate.rules).string.min_len = 1];
string ts = 4 [(validate.rules).string.min_len = 1]; // utc时间秒
string sign = 5 [(validate.rules).string.min_len = 1]; // 签名
string recordNo = 6 [(validate.rules).string.min_len = 1]; // 提现唯一编码,值来自 PayoutUserOne 的 recordNo
string fail = 7; // 设置拒绝原因
uint32 status = 8 [(validate.rules).uint32 = { lte: 3, gte: 2 }]; // 设置提现状态 2:提现成功,3:提现失败
}
message PayoutStatusReply {
string recordNo = 1; // 提现唯一编码,值来自 PayoutUserOne 的 recordNo
uint32 status = 2;
uint32 error = 3; // 错误码0成功1失败2签名验证失败3访问数据库出错4 ts长度错误5 status值错误
}
// 提交身份文件验证请求
message SubmitCheckReq {
string account = 1 [(validate.rules).string.min_len = 1]; // paypal账号
string uuid = 2 [(validate.rules).string.min_len = 1];
}
message SubmitCheckReply {
int32 result = 1; // 0成功1失败2以前提交过还没审核结果3以前提交过并审核通过以前提交过但审核失败的可以继续提交
int32 error = 2; // 错误码0成功1失败
}
// 身份审核信息请求
message CheckInfoReq {
string platform = 1 [(validate.rules).string.min_len = 1];
string deviceid = 2 [(validate.rules).string.min_len = 1];
string version = 3 [(validate.rules).string.min_len = 1];
string ip = 4;
string ts = 5 [(validate.rules).string.min_len = 1]; // utc时间秒
string sign = 6 [(validate.rules).string.min_len = 1];
string uuid = 7; // 用户唯一字符串
int32 isVerificationShow = 8; // 1开0关
}
message CheckInfoReply {
int32 CanCheckSubmit = 1; // 0提交审核的人数已满不能提交了1可以提交身份审核
int32 CheckSubmit = 2; // 提交身份文件验证情况0没有提交1提交过
int32 CheckResult = 3; // 身份文件审核有反馈的情况0没有记录1审核没通过2审核通过
int32 CheckPayout = 4; // 提交身份文件奖励5美元领取的情况0没有提现记录1提现中2提现成功3提现失败
int32 CheckCoin = 5; // 身份文件审核过的提现奖励,美分
int32 CanCheckPayOut = 6; // 身份文件审核过的提现奖励5美元 能否 提现0能提现1条件不满足不能提现2当天已经提现过不能再次提现
string CheckResultFailedDesc = 7; // CheckResult==1时显示的审核没通过的原因描述信息
int32 error = 8; // 错误码0成功1失败2 ts长度错误
}
message PbMsgOne {
int64 timeStamp = 1; // 消息时间戳utc纳秒
string uuid = 2; // 用户唯一字符串
string name = 3; // 用户名
string msg = 4; // 聊天消息
}
// 发送聊天消息
message AddChatReq {
int64 timeStamp = 1; // 消息时间戳同PbMsgOne的timeStamp客户端已有聊天的最后的时间戳用来获取最新的聊天消息如果为0则从最开始获取
string platform = 2 [(validate.rules).string.min_len = 1];
string deviceid = 3 [(validate.rules).string.min_len = 1];
string version = 4 [(validate.rules).string.min_len = 1];
string ip = 5;
string ts = 6 [(validate.rules).string.min_len = 1]; // utc时间秒
string sign = 7 [(validate.rules).string.min_len = 1];
string uuid = 8; // 用户唯一字符串
string msg = 9; // 聊天消息
}
message AddChatReply {
uint32 result = 1; // 0成功1失败2 ts长度错误
string uuid = 2; // 用户唯一字符串
repeated PbMsgOne lst = 3; // 聊天消息列表
int32 error = 4; // 错误码0成功1失败
}
// 获取聊天消息列表
message GetChatReq {
int64 timeStamp = 1; // 消息时间戳同PbMsgOne的timeStamp客户端已有聊天的最后的时间戳用来获取最新的聊天消息如果为0则从最开始获取
string platform = 2 [(validate.rules).string.min_len = 1];
string deviceid = 3 [(validate.rules).string.min_len = 1];
string version = 4 [(validate.rules).string.min_len = 1];
string ip = 5;
string ts = 6 [(validate.rules).string.min_len = 1];
string sign = 7 [(validate.rules).string.min_len = 1];
string uuid = 8; // 用户唯一字符串
}
message GetChatReply {
string uuid = 1; // 用户唯一字符串
repeated PbMsgOne lst = 2; // 聊天消息列表
int32 error = 3; // 错误码0成功1失败
}
////////////////////////////////////////////////////////////////
// 以下为服务器端使用的,客户端不需要可忽略
message PbSvrData {
repeated PbMsgOne lstChat = 1; // 聊天消息列表
// map<string, PbReportData> mapReportData = 2; // 上报数据 map<TS开头的订单号>
// uint32 rfClearReportData = 3; // 清理上报数据时间戳utc秒
}
message PbUserData {
}
message PbReportData {
PbAdjustData adjust = 1;
PbShuShuData shuShu = 2;
uint32 rf = 3;
}
message PbAdjustData {
string GpsAdid = 1;
string Adid = 2;
string AndroidId = 3;
string IpAddress = 4;
string CreatedAtUnix = 5;
string Currency = 6;
string Environment = 7;
string UserAgent = 8;
string Price = 9;
string FailReason = 10;
string AppToken = 11;
string EventToken = 12;
string S2s = 13;
string clientName = 14;
}
message PbShuShuData {
string GpsAdid = 1;
string AppToken = 2;
string EventToken = 3;
string S2s = 4;
string AndroidId = 5;
string Adid = 6;
string IpAddress = 7;
string CreatedAtUnix = 8;
string UserAgent = 9;
string Price = 10;
string Currency = 11;
string FailReason = 12;
string PayoutId = 13;
string MerchantReference = 14;
string PaymentMethod = 15;
string PaymentType = 16;
string PaymentNumber = 17;
string IapName = 18;
string GamecoinNumber = 19;
string GamecoinType = 20;
string SsAccountId = 21;
string SsDistinctId = 22;
string SsSuperProperties = 23;
string clientName = 24;
}