35 lines
588 B
Go
35 lines
588 B
Go
package im
|
|
|
|
import (
|
|
"github.com/go-netty/go-netty"
|
|
"snow-im/app/utils"
|
|
"snow-im/app/utils/netool"
|
|
)
|
|
|
|
var ImLogic ImHandler
|
|
|
|
func Init() {
|
|
ImLogic = ImHandler{
|
|
ImRouter,
|
|
}
|
|
}
|
|
|
|
type ImHandler struct {
|
|
netool.Router
|
|
}
|
|
|
|
//消息处理
|
|
func (this *ImHandler) HandMessage(message []byte, connect netty.InboundContext) error {
|
|
defer func() {
|
|
if err := recover();err!=nil{
|
|
utils.Log(nil,"hand message",err)
|
|
}
|
|
}()
|
|
var msgId, msg = utils.UnpackMessage(message)
|
|
err := this.Router.HandleMsg(msgId, msg, connect)
|
|
if err != nil{
|
|
utils.Log(nil,"message err",err)
|
|
}
|
|
return err
|
|
}
|