客户端请求token
This commit is contained in:
parent
0b91f46fd8
commit
7099975e9e
|
|
@ -1,6 +1,7 @@
|
||||||
package clawdoll
|
package clawdoll
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"github.com/zegoim/zego_server_assistant/token/go/src/token04"
|
||||||
"mongo.games.com/game/common"
|
"mongo.games.com/game/common"
|
||||||
rule "mongo.games.com/game/gamerule/clawdoll"
|
rule "mongo.games.com/game/gamerule/clawdoll"
|
||||||
"mongo.games.com/game/gamesrv/base"
|
"mongo.games.com/game/gamesrv/base"
|
||||||
|
|
@ -8,6 +9,7 @@ import (
|
||||||
"mongo.games.com/game/protocol/machine"
|
"mongo.games.com/game/protocol/machine"
|
||||||
"mongo.games.com/goserver/core/logger"
|
"mongo.games.com/goserver/core/logger"
|
||||||
"mongo.games.com/goserver/core/netlib"
|
"mongo.games.com/goserver/core/netlib"
|
||||||
|
"strconv"
|
||||||
)
|
)
|
||||||
|
|
||||||
type CSPlayerOpPacketFactory struct {
|
type CSPlayerOpPacketFactory struct {
|
||||||
|
|
@ -95,8 +97,69 @@ func MSDollMachineoCoinResultHandler(session *netlib.Session, packetId int, data
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type CSGetTokenPacketFactory struct {
|
||||||
|
}
|
||||||
|
|
||||||
|
type CSGetTokenHandler struct {
|
||||||
|
}
|
||||||
|
|
||||||
|
func (f *CSGetTokenPacketFactory) CreatePacket() interface{} {
|
||||||
|
pack := &clawdoll.CSCLAWDOLLGetToken{}
|
||||||
|
return pack
|
||||||
|
}
|
||||||
|
|
||||||
|
func (h *CSGetTokenHandler) Process(s *netlib.Session, packetid int, data interface{}, sid int64) error {
|
||||||
|
//转发到娃娃机主机
|
||||||
|
logger.Logger.Tracef("CSGetTokenHandler")
|
||||||
|
if _, ok := data.(*clawdoll.CSCLAWDOLLGetToken); ok {
|
||||||
|
p := base.PlayerMgrSington.GetPlayer(sid)
|
||||||
|
if p == nil {
|
||||||
|
logger.Logger.Warn("CSGetTokenHandler p == nil")
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
scene := p.GetScene()
|
||||||
|
if scene == nil {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
sceneEx, ok := scene.ExtraData.(*SceneEx)
|
||||||
|
if !ok {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
machineId := scene.GetDBGameFree().GetId() % 6080000
|
||||||
|
machineInfo := sceneEx.GetMachineServerInfo(machineId, p.Platform)
|
||||||
|
if machineInfo == nil {
|
||||||
|
logger.Logger.Warn("CSGetTokenHandler machineId = %v not found", machineId)
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
logger.Logger.Tracef("获取娃娃机 appId = %v, serverSecret = %v, streamId = %v,snid = %d", machineInfo.AppId, machineInfo.ServerSecret, machineInfo.StreamId, p.SnId)
|
||||||
|
|
||||||
|
//生成token
|
||||||
|
token, err := token04.GenerateToken04(uint32(machineInfo.AppId), strconv.Itoa(int(p.SnId)), machineInfo.ServerSecret, 3600, "")
|
||||||
|
if err != nil {
|
||||||
|
logger.Logger.Error(err)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
logger.Logger.Trace("======================token========================", token)
|
||||||
|
|
||||||
|
pack := &clawdoll.SCCLAWDOLLSendToken{
|
||||||
|
LogicId: scene.DBGameFree.GetId(),
|
||||||
|
Appid: machineInfo.AppId,
|
||||||
|
Token: token,
|
||||||
|
StreamId: machineInfo.StreamId,
|
||||||
|
}
|
||||||
|
p.SendToClient(int(clawdoll.CLAWDOLLPacketID_PACKET_SC_SENDTOKEN), pack)
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
common.RegisterHandler(int(clawdoll.CLAWDOLLPacketID_PACKET_CS_PLAYEROP), &CSPlayerOpHandler{})
|
common.RegisterHandler(int(clawdoll.CLAWDOLLPacketID_PACKET_CS_PLAYEROP), &CSPlayerOpHandler{})
|
||||||
netlib.RegisterFactory(int(clawdoll.CLAWDOLLPacketID_PACKET_CS_PLAYEROP), &CSPlayerOpPacketFactory{})
|
netlib.RegisterFactory(int(clawdoll.CLAWDOLLPacketID_PACKET_CS_PLAYEROP), &CSPlayerOpPacketFactory{})
|
||||||
netlib.Register(int(machine.DollMachinePacketID_PACKET_MSDollMachineoPerateResult), &machine.MSDollMachineoPerateResult{}, MSDollMachineoCoinResultHandler)
|
netlib.Register(int(machine.DollMachinePacketID_PACKET_MSDollMachineoPerateResult), &machine.MSDollMachineoPerateResult{}, MSDollMachineoCoinResultHandler)
|
||||||
|
//客户端请求token
|
||||||
|
common.RegisterHandler(int(clawdoll.CLAWDOLLPacketID_PACKET_CS_GETTOKEN), &CSGetTokenHandler{})
|
||||||
|
netlib.RegisterFactory(int(clawdoll.CLAWDOLLPacketID_PACKET_CS_GETTOKEN), &CSGetTokenPacketFactory{})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue