This commit is contained in:
ycc
2025-05-04 09:56:09 +02:00
parent ec8924d05a
commit 7e68a12adb
14 changed files with 1014 additions and 374 deletions

View File

@ -171,8 +171,8 @@ func (r *RedisRouter) checkForMessage(msg *meowlib.ToServerMessage) (*meowlib.Fr
usrmsg.ServerTimestamp = append(usrmsg.ServerTimestamp, int64(redismsg.Score))
from_server.Chat = append(from_server.Chat, &usrmsg)
// if delivery requested, create, store and publish delivery message
res, err := r.Client.SPop("msg:" + usrmsg.ServerDeliveryUuid).Result()
// if delivery for that pick up requested, create, store and publish delivery message
deliveryRequester, err := r.Client.SPop("msg:" + usrmsg.ServerDeliveryUuid).Result()
if err != nil {
if err != redis.Nil { // exit only if real error
return nil, err
@ -180,7 +180,7 @@ func (r *RedisRouter) checkForMessage(msg *meowlib.ToServerMessage) (*meowlib.Fr
}
if err != redis.Nil {
// create a delivery record
r.Client.ZAdd("dvy:"+res, redis.Z{Score: float64(time.Now().Unix()), Member: usrmsg.ServerDeliveryUuid})
r.Client.ZAdd("dvy:"+deliveryRequester, redis.Z{Score: float64(time.Now().Unix()), Member: usrmsg.ServerDeliveryUuid})
// publish it in case of listener
r.Client.Publish("dvych:"+usrmsg.ServerDeliveryUuid, "!")
}