diff --git a/wshandler/wshandler.go b/wshandler/wshandler.go index ccf6fe1..77e1ffd 100644 --- a/wshandler/wshandler.go +++ b/wshandler/wshandler.go @@ -156,12 +156,17 @@ func init() { gob.Register([]any{}) } -func NewWebsocketHandler(consumer session.Consumer, redisClient *redis.Client) (*WebsocketHandler, error) { +func NewWebsocketHandler(consumer session.Consumer, redisUri string) (*WebsocketHandler, error) { var config wsConfig if err := gocommon.LoadConfig(&config); err != nil { return nil, err } + redisSync, err := gocommon.NewRedisClient(redisUri) + if err != nil { + return nil, err + } + sendchan := make(chan send_msg_queue_elem, 1000) go func() { sender := func(elem *send_msg_queue_elem) { @@ -180,9 +185,9 @@ func NewWebsocketHandler(consumer session.Consumer, redisClient *redis.Client) ( }() return &WebsocketHandler{ - redisMsgChanName: fmt.Sprintf("_wsh_msg_%d", redisClient.Options().DB), - redisCmdChanName: fmt.Sprintf("_wsh_cmd_%d", redisClient.Options().DB), - redisSync: redisClient, + 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),