Il pacchetto xmpp consente di inviare e ricevere messaggi immediati da e verso gli utenti di servizi compatibili con XMPP.
Per inviare un messaggio:
m := &xmpp.Message{ To: []string{"kaylee@example.com"}, Body: `Hi! How's the carrot?`, } err := m.Send(c)
Per ricevere messaggi:
func init() { xmpp.Handle(handleChat) } func handleChat(c context.Context, m *xmpp.Message) { // ... }
Variabili
ErrPresenza non disponibile, ErrInvalidJID
var (
ErrPresenceUnavailable = errors.New("xmpp: presence unavailable")
ErrInvalidJID = errors.New("xmpp: invalid JID")
)
Funzioni
funzione GetPresence
GetPresence recupera la presenza di un utente. Se l'indirizzo del mittente è una stringa vuota, verrà utilizzato il valore predefinito (yourapp@appspot.com/bot). I possibili valori restituiti sono "", "away", "dnd", "chat", "xa". Se la presenza non è disponibile, viene restituito ErrPresenceAllowed.
funzione GetPresenceMulti
GetPresenceMulti recupera la presenza di più utenti. Se l'indirizzo del mittente è una stringa vuota, verrà utilizzato il valore predefinito (yourapp@appspot.com/bot). I possibili valori restituiti sono "", "away", "dnd", "chat", "xa". Se una presenza non è disponibile, viene restituito un appengine.MultiError
Punto di manipolazione func
L'handle consente di fare in modo che f venga chiamato per i messaggi XMPP in arrivo. Verranno gestiti solo i messaggi di tipo "chat" o "normale".
funzione Invito
L'invito invia un invito. Se l'indirizzo del mittente è una stringa vuota, verrà utilizzato il valore predefinito (yourapp@appspot.com/bot).
Messaggio
type Message struct {
// Sender is the JID of the sender.
// Optional for outgoing messages.
Sender string
// To is the intended recipients of the message.
// Incoming messages will have exactly one element.
To []string
// Body is the body of the message.
Body string
// Type is the message type, per RFC 3921.
// It defaults to "chat".
Type string
// RawXML is whether the body contains raw XML.
RawXML bool
}
Messaggio rappresenta un messaggio di chat in arrivo.
funzione (*Messaggio) Invia
Invia invia un messaggio. Se si verificano errori con destinatari specifici, l'errore sarà appengine.MultiError.
Presenza
type Presence struct {
// Sender is the JID (optional).
Sender string
// The intended recipient of the presence update.
To string
// Type, per RFC 3921 (optional). Defaults to "available".
Type string
// State of presence (optional).
// Valid values: "away", "chat", "xa", "dnd" (RFC 3921).
State string
// Free text status message (optional).
Status string
}
Presence rappresenta un aggiornamento della presenza in uscita.
funzione (*Presenza) Invia
Invia invia un aggiornamento sulla presenza di persone.