aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--telegram/utils.go15
-rw-r--r--xmpp/handlers.go1
2 files changed, 16 insertions, 0 deletions
diff --git a/telegram/utils.go b/telegram/utils.go
index 58f7712..a9e0bc8 100644
--- a/telegram/utils.go
+++ b/telegram/utils.go
@@ -1332,3 +1332,18 @@ func (c *Client) GetVcardInfo(toID int64) (VCardInfo, error) {
return info, nil
}
+
+func (c *Client) UpdateChatNicknames() {
+ for _, id := range c.cache.ChatsKeys() {
+ chat, ok := c.cache.GetChat(id)
+ if ok {
+ gateway.SendPresence(
+ c.xmpp,
+ c.jid,
+ gateway.SPFrom(strconv.FormatInt(id, 10)),
+ gateway.SPNickname(chat.Title),
+ )
+ gateway.SetNickname(c.jid, strconv.FormatInt(id, 10), chat.Title, c.xmpp)
+ }
+ }
+}
diff --git a/xmpp/handlers.go b/xmpp/handlers.go
index d5666b1..1286914 100644
--- a/xmpp/handlers.go
+++ b/xmpp/handlers.go
@@ -342,6 +342,7 @@ func handlePresence(s xmpp.Sender, p stanza.Presence) {
gateway.SPImmed(false),
)
}
+ session.UpdateChatNicknames()
}
}()
}