Implement ban by software version xep-0092

This commit is contained in:
eleksir
2025-05-29 23:56:19 +03:00
parent 0ed74ed812
commit 3ebd2b48d1
32 changed files with 1793 additions and 7 deletions

View File

@@ -0,0 +1,36 @@
package jabber
import (
"fmt"
"github.com/eleksir/go-xmpp"
"github.com/google/uuid"
log "github.com/sirupsen/logrus"
)
// QuerySoftwareVersion запрошивает версию и название клиента.
func (j *Jabber) QuerySoftwareVersion(jid string) (string, error) {
var (
id string
err error
)
if id, err = j.Talk.RawInformationQuery(
j.Talk.JID(),
jid,
uuid.New().String(),
xmpp.IQTypeGet,
"jabber:iq:version",
"",
); err != nil {
err = fmt.Errorf(
"unable to query software version of jid=%s err=%w",
jid,
err,
)
} else {
log.Infof("Query software version of %s", jid)
}
return id, err
}