Cue 语音文档

懂的人自然懂


v2.3.8

<p>[TOC]</p> <h1>进入房间[协议调整]</h1> <table> <thead> <tr> <th style="text-align: left;">接口名</th> <th style="text-align: left;">备注</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">/v1/room/enter</td> <td style="text-align: left;">应答结构中增加一个字段</td> </tr> </tbody> </table> <pre><code class="language-go"> // 应答数据 { BD *Room_BD `json:"bd,omitempty"` RP *Room_RP `json:"rp,omitempty"` ... NoReserved bool `json:"no_reserved"` TB *TurnTable `json:"tb,omitempty"` // 新增一个大转盘游戏状态数据, 具体结构参加下面:TurnTable } type TurnTable struct { GameId int64 `json:"game_id"` RoomId int64 `json:"room_id"` Ante int32 `json:"ante"` // 赌注 MaxCount int32 `json:"max_count"` // 参与人员数量 Creater *JoinPlayer `json:"creater"` // 创建者 Players []*JoinPlayer `json:"players"` // 成员 Winers []string `json:"winers"` // 游戏结果: 按用户Id列表顺序依次淘汰, 最后一个为胜利者 Emoticons []int `json:"emoticons"` // 伴随Winers数据的随机表情数组 State int32 `json:"state"` // 状态 1:已创建 2:准备中 3:已完成 4: 已取消 CreatedAt int64 `json:"at"` // 游戏开始时间 RemainSec int `json:"remain"` // 游戏结束剩余时间(秒) } type JoinPlayer struct { UserId string `json:"user_id"` Name string `json:"name"` // 昵称 Photo *Photo `json:"photo,omitempty"` // 头像 Vip bool `json:"vip"` // CoinLv int `json:"coinlv"` // 财富等级 CharmLv int `json:"charmlv"` // 魅力值 VipLvl int `json:"viplvl"` // vip等级 JoinAt int64 `json:"join_at"` // 加入时间 }</code></pre> <h1>创建轮盘游戏[新增]</h1> <table> <thead> <tr> <th style="text-align: left;">接口名</th> <th style="text-align: left;">备注</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">/v1/room/turnCreate</td> <td style="text-align: left;">会触发房间广播消息:room.turntableInfo</td> </tr> </tbody> </table> <pre><code class="language-go">// 请求 roomid:int coinNum:int 赌资 userCount:int 人数上限 withJoin:bool 创建者自动加入(不会触发join通知,客户端需要自行把自己添加进游戏) // 应答 ok:bool </code></pre> <h1>加入轮盘游戏[新增]</h1> <table> <thead> <tr> <th style="text-align: left;">接口名</th> <th style="text-align: left;">备注</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">/v1/room/turnJoin</td> <td style="text-align: left;">会触发房间广播消息:room.turntableJoin</td> </tr> </tbody> </table> <pre><code class="language-go">// 请求 gameid:int roomid:int // 应答 ok:bool </code></pre> <h1>开始轮盘游戏[新增]</h1> <table> <thead> <tr> <th style="text-align: left;">接口名</th> <th style="text-align: left;">备注</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">/v1/room/turnStart</td> <td style="text-align: left;">会触发房间广播消息:room.turntableStart</td> </tr> </tbody> </table> <pre><code class="language-go">// 请求 gameid:int roomid:int // 应答 ok:bool </code></pre> <h1>取消轮盘游戏[新增]</h1> <table> <thead> <tr> <th style="text-align: left;">接口名</th> <th style="text-align: left;">备注</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">/v1/room/turnCancel</td> <td style="text-align: left;">会触发房间广播消息: room.turntableCancel</td> </tr> </tbody> </table> <pre><code class="language-go">// 请求 gameid:int roomid:int // 应答 ok:bool 需要特别处理的错误码: code:450 desc:"TURNTABLE_NOEXIST" // 游戏已经不存在</code></pre> <h1>房间轮盘游戏消息广播[新增]</h1> <pre><code class="language-go">// room.turntableInfo type RoomTurnTableInfo struct { Super Info *proto.TurnTable `json:"info"` // 此结构看上面的 TurnTable } // room.turntableJoin type RoomTurnTableJoin struct { Super // "action":"room.turntableJoin" ... GameId int64 `json:"game_id"` RoomId int64 `json:"room_id"` Joiner *JoinPlayer `json:"joiner"` State int `json:"state"` } // room.turntableStart type RoomTurnTableStart struct { Super // "action":"room.turntableStart" ... GameId int64 `json:"game_id"` RoomId int64 `json:"room_id"` StartAt int64 `json:"start_at"` State int `json:"state"` Players []*proto.JoinPlayer `json:"players"` // 成员 Winers []string `json:"winers"` // 游戏结果: 按用户Id列表顺序依次淘汰, 最后一个为胜利者 Emoticons []int `json:"emoticons"` // 伴随Winers数据的随机表情数组 } // room.turntableCancel type RoomTurnTableCancel struct { Super // "action":"room.turntableCancel" ... GameId int64 `json:"game_id"` RoomId int64 `json:"room_id"` Closer string `json:"closer"` // 关闭者 State int `json:"state"` }</code></pre> <h1>房间轮盘游戏全服广播[新增]</h1> <p><strong>当胜利者收获大量金币时触发</strong></p> <pre><code class="language-go">requestId:-326 结构如下: struct { RoomId int `json:"room_id"` // UserId string `json:"user_id"` Name string `json:"name"` // 昵称 HeadUrl string `json:"head,omitempty"` // 头像 Vip bool `json:"vip"` // vip CoinLv int `json:"coinlv"` // 财富等级 CharmLv int `json:"charmlv"` // 魅力值 VipLvl int `json:"viplvl"` // vip等级 WinCoin int `json:"winCoin"` // 赢了多少金币 }</code></pre> <h1>静态文件增加轮盘游戏系统分成比例配置[调整]</h1> <table> <thead> <tr> <th style="text-align: left;">接口名</th> <th style="text-align: left;">备注</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">增加一个字段: room字段中增加turn_fee_ratio</td> <td style="text-align: left;">int</td> </tr> </tbody> </table> <pre><code class="language-go">字段如下: TurnFeeRatio int `json:"turn_fee_ratio"` // 大轮盘游戏系统分成比例(0-100) </code></pre> <h1>静态文件增加签到奖励配置[调整]</h1> <table> <thead> <tr> <th style="text-align: left;">接口名</th> <th style="text-align: left;">备注</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">增加一个字段: sign_days</td> <td style="text-align: left;">array</td> </tr> </tbody> </table> <p><strong>注意: 由于金币物品在游戏中不存在,服务端处理麻烦,如果某奖励是金币类型的话, 客户端需要自己多语言化和icon处理.</strong></p> <pre><code class="language-go">结构如下: []SignDay type SignDay struct { Items []*SignItem `json:"items"` } type SignItem struct { Type int `json:"type"` // 1 金币; 2 商城里面的物品; 3 礼物 Name string `json:"name"` // 物品名称 Icon string `json:"icon"` // 图片url Count int `json:"count"` // 物品数量 }</code></pre> <h1>获取签到列表[新增]</h1> <table> <thead> <tr> <th style="text-align: left;">接口名</th> <th style="text-align: left;">备注</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">/v1/account/signList</td> <td style="text-align: left;">无</td> </tr> </tbody> </table> <pre><code class="language-go">// 请求 无 Udid string `json:"udid"` // 设备唯一ID 服务端需要从cookie里面拿到此ID // 应答 { Days int `json:"days"` // 本周签到天数 Signed bool `json:"signed"` // 本日是否签到 } </code></pre> <h1>执行签到动作[新增]</h1> <table> <thead> <tr> <th style="text-align: left;">接口名</th> <th style="text-align: left;">备注</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">/v1/account/signHand</td> <td style="text-align: left;">无</td> </tr> </tbody> </table> <pre><code class="language-go">// 请求 无 Udid string `json:"udid"` // 设备唯一ID 服务端需要从cookie里面拿到此ID // 应答 int:bool // 本周签到天数 </code></pre> <h1>后台操作缓存Get接口[新增]</h1> <table> <thead> <tr> <th style="text-align: left;">接口名</th> <th style="text-align: left;">备注</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">/v1/sys/cache/get</td> <td style="text-align: left;">无</td> </tr> </tbody> </table> <pre><code class="language-go">// 请求 key:string //指定哪个key field:string // 如果此key是hash类型,则表示字段名称 [可选] // 应答 result:string // 本周签到天数 </code></pre> <h1>后台操作缓存Set接口[新增]</h1> <table> <thead> <tr> <th style="text-align: left;">接口名</th> <th style="text-align: left;">备注</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">/v1/sys/cache/set</td> <td style="text-align: left;">无</td> </tr> </tbody> </table> <pre><code class="language-go">// 请求 key:string //指定哪个key field:string // 如果此key是hash类型,则表示字段名称 [可选] val:string // 设置的值(如果是复合结构,请序列化为json串) // 应答 ok:bool // </code></pre> <h1>后台管理抽奖数据[新增]</h1> <pre><code class="language-go">需求1 : 当公池超过 x 金币后 从公池提取 y 金币 到盈利池 (由系统自动触发管理) 后台: 需要在菜单页面上管理 x 和 y 的值的配置; x 和 y 存储在 key: app_plat_turnwheel 中: x : app_plat_turnwheel.conf_x y : app_plat_turnwheel.conf_y 通过调用 /v1/sys/cache/set 接口实现 需求2 : 运营可以在页面上 对公池进行补充. 同时保留操作成功的日志. 由服务器提供对应接口: /v1/sys/wheel/fillPublic # val:int 填充金币数 </code></pre> <h1>后台清理用户抽奖状态[新增]</h1> <table> <thead> <tr> <th style="text-align: left;">接口名</th> <th style="text-align: left;">备注</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">/v1/sys/wheel/clearStatus</td> <td style="text-align: left;">无</td> </tr> </tbody> </table> <pre><code class="language-go">// 请求 user_id:int //指定哪个key // 应答 ok:bool //</code></pre> <h1>后台管理首冲送礼配置[新增]</h1> <pre><code class="language-go">新增 redis key: "app_first_flush_gift_cfg" 值的内容格式(array): [ {"cash":6,"itemIds":[1,2,3...],"giftIds":[1,2,3...]} {"cash":30,"itemIds":[1,2,3...],"giftIds":[1,2,3...]} ] 更新使用接口: /v1/sys/cache/set // Go的结构 type FirstBuyCfgGift struct { Cash float32 `json:"cash"` // 价值N人民币 ItemIds []int `json:"itemIds"` // 赠礼(商城里面的物品) GiftIds []int `json:"giftIds"` // 赠礼(礼物) } </code></pre> <h1>礼物全服公告协议[调整]</h1> <pre><code>requestId:-317 结构如下: struct { Format string `json:"format"` // 保持版本兼容,先不删 LangFormats []LangFormat `json:"lang_formats"` // 参见LangFormat结构 新增 Args []string `json:"args"` Gift *proto.Gift `json:"gift"` Roomid int `json:"roomid"` // 可用来区分room场景 FromUser string `json:"from_user"` // 送礼方id } struct LangFormat { Lang string `json:"lang"` Format string `json:"format"` Args []string `json:"args"` // 增加 参数 }</code></pre>

页面列表

ITEM_HTML