mirror of
https://github.com/matrix-org/dendrite.git
synced 2025-12-29 01:33:10 -06:00
Remove ToPresenceStatus
Use Presence struct field
This commit is contained in:
parent
b59f20e546
commit
2e6eb4e0a9
|
|
@ -150,9 +150,9 @@ func GetPresence(req *http.Request,
|
|||
resp.StatusMsg = presence.StatusMsg
|
||||
resp.CurrentlyActive = lastActive <= time.Minute*5
|
||||
if !resp.CurrentlyActive {
|
||||
presence.PresenceStatus = types.Unavailable
|
||||
presence.Presence = types.Unavailable
|
||||
}
|
||||
resp.Presence = presence.PresenceStatus.String()
|
||||
resp.Presence = presence.Presence.String()
|
||||
return util.JSONResponse{
|
||||
Code: http.StatusOK,
|
||||
JSON: resp,
|
||||
|
|
|
|||
|
|
@ -176,7 +176,7 @@ func (r *FederationInternalAPI) sendPresenceData(
|
|||
ev := eduserverAPI.FederationPresenceSingle{
|
||||
CurrentlyActive: lastActiveTS < time.Minute*5,
|
||||
LastActiveAgo: int(lastActiveTS.Milliseconds()),
|
||||
Presence: presence.Presence,
|
||||
Presence: presence.Presence.String(),
|
||||
UserID: presence.UserID,
|
||||
StatusMsg: presence.StatusMsg,
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ import (
|
|||
"errors"
|
||||
"fmt"
|
||||
"net/http"
|
||||
"strings"
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
|
|
@ -577,8 +578,14 @@ func (t *txnReq) handlePresence(ctx context.Context, e gomatrixserverlib.EDU) {
|
|||
return
|
||||
}
|
||||
for _, presence := range payload.Push {
|
||||
p := strings.TrimSpace(strings.ToLower(presence.Presence))
|
||||
v, ok := types.KnownPresence[p]
|
||||
if !ok {
|
||||
util.GetLogger(ctx).WithField("presence", p).Warnf("dropping unknown presence")
|
||||
continue
|
||||
}
|
||||
timestamp := gomatrixserverlib.AsTimestamp(now.Add(-(time.Millisecond * time.Duration(presence.LastActiveAgo))))
|
||||
if err := eduserverAPI.SetPresence(ctx, t.eduAPI, t.userAPI, presence.UserID, presence.StatusMsg, types.ToPresenceStatus(presence.Presence), timestamp); err != nil {
|
||||
if err := eduserverAPI.SetPresence(ctx, t.eduAPI, t.userAPI, presence.UserID, presence.StatusMsg, v, timestamp); err != nil {
|
||||
util.GetLogger(ctx).WithError(err).Error("unable to send presence data to edu server")
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue