|
|
|
@ -281,22 +281,17 @@ func (c *Client) ProcessStatusUpdate(chatID int64, status string, show string, o
|
|
|
|
|
c.cache.SetStatus(chatID, cacheShow, status)
|
|
|
|
|
|
|
|
|
|
newArgs := []args.V{
|
|
|
|
|
gateway.SPFrom(strconv.FormatInt(chatID, 10)),
|
|
|
|
|
gateway.SPShow(show),
|
|
|
|
|
gateway.SPStatus(status),
|
|
|
|
|
gateway.SPPhoto(photo),
|
|
|
|
|
gateway.SPResource(gateway.Jid.Resource),
|
|
|
|
|
gateway.SPImmed(gateway.SPImmed.Get(oldArgs)),
|
|
|
|
|
}
|
|
|
|
|
newArgs = gateway.SPAppendFrom(newArgs, chatID)
|
|
|
|
|
if presenceType != "" {
|
|
|
|
|
newArgs = append(newArgs, gateway.SPType(presenceType))
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return gateway.SendPresence(
|
|
|
|
|
c.xmpp,
|
|
|
|
|
c.jid,
|
|
|
|
|
newArgs...,
|
|
|
|
|
)
|
|
|
|
|
return c.sendPresence(newArgs...)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (c *Client) formatContact(chatID int64) string {
|
|
|
|
@ -1292,7 +1287,7 @@ func (c *Client) roster(resource string) {
|
|
|
|
|
c.ProcessStatusUpdate(chat, "", "")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
gateway.SendPresence(c.xmpp, c.jid, gateway.SPStatus("Logged in as: "+c.Session.Login))
|
|
|
|
|
c.sendPresence(gateway.SPStatus("Logged in as: "+c.Session.Login))
|
|
|
|
|
|
|
|
|
|
c.addResource(resource)
|
|
|
|
|
}
|
|
|
|
@ -1393,9 +1388,7 @@ func (c *Client) GetChatDescription(chat *client.Chat) string {
|
|
|
|
|
|
|
|
|
|
// subscribe to a Telegram ID
|
|
|
|
|
func (c *Client) subscribeToID(id int64, chat *client.Chat) {
|
|
|
|
|
var args []args.V
|
|
|
|
|
args = append(args, gateway.SPFrom(strconv.FormatInt(id, 10)))
|
|
|
|
|
args = append(args, gateway.SPType("subscribe"))
|
|
|
|
|
args := gateway.SimplePresence(id, "subscribe")
|
|
|
|
|
|
|
|
|
|
if chat == nil {
|
|
|
|
|
chat, _, _ = c.GetContactByID(id, nil)
|
|
|
|
@ -1406,11 +1399,11 @@ func (c *Client) subscribeToID(id int64, chat *client.Chat) {
|
|
|
|
|
gateway.SetNickname(c.jid, strconv.FormatInt(id, 10), chat.Title, c.xmpp)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
gateway.SendPresence(
|
|
|
|
|
c.xmpp,
|
|
|
|
|
c.jid,
|
|
|
|
|
args...,
|
|
|
|
|
)
|
|
|
|
|
c.sendPresence(args...)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (c *Client) sendPresence(args ...args.V) error {
|
|
|
|
|
return gateway.SendPresence(c.xmpp, c.jid, args...)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (c *Client) prepareDiskSpace(size uint64) {
|
|
|
|
@ -1459,9 +1452,9 @@ func (c *Client) UpdateChatNicknames() {
|
|
|
|
|
chat, ok := c.cache.GetChat(id)
|
|
|
|
|
if ok {
|
|
|
|
|
newArgs := []args.V{
|
|
|
|
|
gateway.SPFrom(strconv.FormatInt(id, 10)),
|
|
|
|
|
gateway.SPNickname(chat.Title),
|
|
|
|
|
}
|
|
|
|
|
newArgs = gateway.SPAppendFrom(newArgs, id)
|
|
|
|
|
|
|
|
|
|
cachedStatus, ok := c.cache.GetStatus(id)
|
|
|
|
|
if ok {
|
|
|
|
@ -1472,11 +1465,7 @@ func (c *Client) UpdateChatNicknames() {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
gateway.SendPresence(
|
|
|
|
|
c.xmpp,
|
|
|
|
|
c.jid,
|
|
|
|
|
newArgs...,
|
|
|
|
|
)
|
|
|
|
|
c.sendPresence(newArgs...)
|
|
|
|
|
|
|
|
|
|
gateway.SetNickname(c.jid, strconv.FormatInt(id, 10), chat.Title, c.xmpp)
|
|
|
|
|
}
|
|
|
|
|