迪口赚钱推广
一 数据库设计
推广配置信息
--推广奖励配置 conf.spread
M[config_def.SPREAD] = {
name = config_def.SPREAD,
indexes = {{key = {id = 1},opt = {unique = true}}},
value = {
id = 1, --标识id
bind_award_amount= {}, --成功推广一个玩家赠送数量
max_award_amount = 15000, --可从每一个下线玩家处获得最多红包券数量
max_spread_user_count = 100, --一个账号可以绑定最多100个下线玩家
award_ratio = 10, --玩家游戏奖励红包券比例(10表示10%)
valid = db_def.STATE.VALID --是否有效
}
}
用户推广数据
--用户推广数据 user.spread
M.SPREAD= {
name = "spread",
indexes = {
{key = {user_id = 1}, opt = {unique = true}},
{key = {spreader_id = 1}, opt = {unique = false}}
},
value = {
user_id = 0, --被推广者id
spreader_id = 0, --推广者id
award_amount = 0, --推广收益
}
}
二 服务端设计
1.服务器加载后台的有效的推广配置
2.游戏结束,奖励赢家红包券时,如果有上级则同步奖励(上级在线时,实时刷新用户数据。不在线时,则直接更新数据库)
3.用户属性中添加spread_list,存储用户推广数据类型为:
.User_Spread { #推广信息
user_id 0 : integer #下家id
award_amount 1 : integer #奖励数量
}
三 前后端协议
#获取推广配置
get_spreadconf 17000 { #获取推广奖励配置
request {
}
response {
spread 0 : *Conf_Spread
}
}
#获取推广信息
get_spread_info 17001 {
request {
}
response {
ret 0 : integer #err 中定义code
}
}
.Conf_Spread {
id 0 : integer #配置id
bind_award_amount 1 : integer #成功推广一个玩家赠送数量
max_award_amount 2 : integer #可从每一个下线玩家处获得最多红包券数量
max_spread_user_count 3 : integer #一个账号可以绑定最多100个下线玩家
award_ratio 4: integer #玩家游戏奖励红包券比例(10表示10%)
}
#获取奖励数量
get_spread_award_amount 17002 { #获取奖励数量
request {
date_id 0 : integer #日期id 不传默认今天
}
response {
ret 0 : integer #err 中定义code
date_id 1: integer #日期id
award_amount 2 : integer #奖励数量
}
}
# 获取得奖记录
get_spread_reward_log 17002 { # 获取得奖记录
request {
begin 1 : integer #记录ID(第一页传0,下一页传上一页最小的record_id)
count 2 : integer #读取多少条记录,不传默认20条
}
response {
ret 0 : integer #err 中定义code
item_list 1: *item_log_info #返回的log数组
}
}
}
四 网站协议
同步配置关键字(spread)
注意事项
1.conf.spread表重新设计
2.以前的user.spread_bind表弃用,注意修正以前对该表的操作。还有个log.spread表也弃用,游戏不再写数据
3.考虑推广玩家游戏写库频繁,user.spread不实时写库。登录时到数据库加载,登出时,更新数据库。
4.为了区分以前推广的流水奖励,现在新增两个相关流水类型
SPREAD_BIND = 18, --推广绑定 mender 为绑定用户id
SPREAD = 19, --推广游戏奖励 mender 为绑定用户id
5.客户端get_spread_info时,服务器已update_user方式下发spread_list,后续有变化,服务器以增量方式通知。
6.已邀请好友数量以及已到账收益,客户端通过spread_list自己计算
伍 开发计划
总体设计(服务器):0.5天
1.数据库设计
2.服务器设计
3.协议设计
服务器部分:
1.配置模块(支持后台修改实时生效) 0.5天
2.用户统计模块 2天
3.收益明细 0.5天
网站
1.配置0.5
2.记录1
3.统计(统计相关的修改,以及废弃表相关的代码修正) 1.5
客户端
3