summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--matterclient/matterclient.go21
1 files changed, 21 insertions, 0 deletions
diff --git a/matterclient/matterclient.go b/matterclient/matterclient.go
index b860ec80..93fb7cad 100644
--- a/matterclient/matterclient.go
+++ b/matterclient/matterclient.go
@@ -582,6 +582,27 @@ func (m *MMClient) GetStatus(userId string) string {
return "offline"
}
+func (m *MMClient) GetStatuses() map[string]string {
+ var ok bool
+ statuses := make(map[string]string)
+ res, err := m.Client.GetStatuses()
+ if err != nil {
+ return statuses
+ }
+ if statuses, ok = res.Data.(map[string]string); ok {
+ for userId, status := range statuses {
+ statuses[userId] = "offline"
+ if status == model.STATUS_AWAY {
+ statuses[userId] = "away"
+ }
+ if status == model.STATUS_ONLINE {
+ statuses[userId] = "online"
+ }
+ }
+ }
+ return statuses
+}
+
func (m *MMClient) GetTeamId() string {
return m.Team.Id
}