MCPcopy Index your code
hub / github.com/dearcode/candy / LoadMessage

Method LoadMessage

gate/server.go:490–503  ·  view source on GitHub ↗

LoadMessage 客户端同步离线消息,每次可逆序(旧消息)或正序(新消息)接收100条

(ctx context.Context, req *meta.GateLoadMessageRequest)

Source from the content-addressed store, hash-verified

488
489// LoadMessage 客户端同步离线消息,每次可逆序(旧消息)或正序(新消息)接收100条
490func (g *Gate) LoadMessage(ctx context.Context, req *meta.GateLoadMessageRequest) (*meta.GateLoadMessageResponse, error) {
491 s, err := g.getOnlineSession(ctx)
492 if err != nil {
493 log.Errorf("getSession error:%s", errors.ErrorStack(err))
494 return &meta.GateLoadMessageResponse{Header: &meta.ResponseHeader{Code: util.ErrorGetOnlineSession, Msg: err.Error()}}, nil
495 }
496 msgs, err := g.store.loadMessage(s.id, req.ID, req.Reverse)
497 if err != nil {
498 log.Errorf("%d loadMessage error:%s", s.id, errors.ErrorStack(err))
499 return &meta.GateLoadMessageResponse{Header: &meta.ResponseHeader{Code: util.ErrorLoadMessage, Msg: err.Error()}}, nil
500 }
501
502 return &meta.GateLoadMessageResponse{Msgs: msgs}, nil
503}

Callers

nothing calls this directly

Calls 3

getOnlineSessionMethod · 0.95
loadMessageMethod · 0.80
ErrorMethod · 0.45

Tested by

no test coverage detected