chore: refresh gramsrv public release
This commit is contained in:
parent
75cebe8dbf
commit
70b6820474
1274 changed files with 378751 additions and 59919 deletions
|
|
@ -49,6 +49,25 @@ func (r *Router) pushUserMessage(ctx context.Context, userID int64, logMessage s
|
|||
}
|
||||
}
|
||||
|
||||
// pushUserMessageTransient 推送 transient(typing/presence)update:未就绪的 session 直接
|
||||
// 跳过、不进 pending。实现未提供 TransientSessionBinder 能力时回退到普通 pushUserMessage
|
||||
// (退化为旧行为:会进 pending,但仍不影响 durable 正确性)。
|
||||
func (r *Router) pushUserMessageTransient(ctx context.Context, userID int64, logMessage string, msg bin.Encoder) int {
|
||||
if r.deps.Sessions == nil || userID == 0 || msg == nil {
|
||||
return 0
|
||||
}
|
||||
if transient, ok := r.deps.Sessions.(TransientSessionBinder); ok {
|
||||
sessionID, _ := SessionIDFrom(ctx)
|
||||
authKeyID, _ := AuthKeyIDFrom(ctx)
|
||||
sent, err := transient.PushToUserTransientExceptAuthKeySession(ctx, userID, authKeyID, sessionID, proto.MessageFromServer, msg, r.cfg.OutboundPushTimeout)
|
||||
if err != nil {
|
||||
r.log.Debug(logMessage, zap.Int64("user_id", userID), zap.Int("sent", sent), zap.Error(err))
|
||||
}
|
||||
return sent
|
||||
}
|
||||
return r.pushUserMessage(ctx, userID, logMessage, msg)
|
||||
}
|
||||
|
||||
func (r *Router) pushCurrentSessionMessage(ctx context.Context, logMessage string, msg bin.Encoder) {
|
||||
if r.deps.Sessions == nil || msg == nil {
|
||||
return
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue