세션 해제 콜백 추가

This commit is contained in:
2023-12-25 22:06:57 +09:00
parent 08802176cb
commit 46f7d358ed
6 changed files with 110 additions and 27 deletions

View File

@ -86,9 +86,7 @@ type send_msg_queue_elem struct {
msg []byte
}
type WebsocketHandler struct {
WebsocketApiBroker
type websocketHandlerBase struct {
redisMsgChanName string
redisCmdChanName string
redisSync *redis.Client
@ -101,6 +99,11 @@ type WebsocketHandler struct {
sessionConsumer session.Consumer
}
type WebsocketHandler struct {
WebsocketApiBroker
websocketHandlerBase
}
type wsConfig struct {
gocommon.StorageAddr `json:"storage"`
}
@ -152,14 +155,16 @@ func NewWebsocketHandler(consumer session.Consumer, redisUrl string) (*Websocket
}()
return &WebsocketHandler{
redisMsgChanName: fmt.Sprintf("_wsh_msg_%d", redisSync.Options().DB),
redisCmdChanName: fmt.Sprintf("_wsh_cmd_%d", redisSync.Options().DB),
redisSync: redisSync,
connInOutChan: make(chan *wsconn),
deliveryChan: make(chan any, 1000),
localDeliveryChan: make(chan any, 100),
sendMsgChan: sendchan,
sessionConsumer: consumer,
websocketHandlerBase: websocketHandlerBase{
redisMsgChanName: fmt.Sprintf("_wsh_msg_%d", redisSync.Options().DB),
redisCmdChanName: fmt.Sprintf("_wsh_cmd_%d", redisSync.Options().DB),
redisSync: redisSync,
connInOutChan: make(chan *wsconn),
deliveryChan: make(chan any, 1000),
localDeliveryChan: make(chan any, 100),
sendMsgChan: sendchan,
sessionConsumer: consumer,
},
}, nil
}