Package google.golang.org/appengine/xmpp (v1.6.8)

Le package xmpp permet d'envoyer des messages instantanés aux utilisateurs de services compatibles avec XMPP et d'en recevoir.

Pour envoyer un message :

m := &xmpp.Message{
    To:   []string{"kaylee@example.com"},
    Body: `Hi! How's the carrot?`,
}
err := m.Send(c)

Pour recevoir des messages, procédez comme suit :

func init() {
    xmpp.Handle(handleChat)
}

func handleChat(c context.Context, m *xmpp.Message) {
    // ...
}

Variables

ErrPresenceUnavailable, ErrInvalidJID

var (
	ErrPresenceUnavailable = errors.New("xmpp: presence unavailable")
	ErrInvalidJID          = errors.New("xmpp: invalid JID")
)

Fonctions

func GetPresence

func GetPresence(c context.Context, to string, from string) (string, error)

Getpresence récupère la présence d'un utilisateur. Si l'adresse d'expédition est une chaîne vide, la valeur par défaut (yourapp@appspot.com/bot) est utilisée. Les valeurs de retour possibles sont "", "away", "dnd", "chat", "xa". ErrPresenceUnavailable est renvoyé si la présence n'est pas disponible.

func GetPresenceMulti

func GetPresenceMulti(c context.Context, to []string, from string) ([]string, error)

GetPresenceMulti récupère la présence de plusieurs utilisateurs. Si l'adresse d'expédition est une chaîne vide, la valeur par défaut (yourapp@appspot.com/bot) est utilisée. Les valeurs de retour possibles sont "", "away", "dnd", "chat", "xa". Si une présence est indisponible, une erreur "appengine.MultiError" est renvoyée.

func Handle

func Handle(f func(c context.Context, m *Message))

Gérez les dispositions pour que f soit appelé pour les messages XMPP entrants. Seuls les messages de type "chat" ou "normal" seront traités.

func Invite

func Invite(c context.Context, to, from string) error

Invite envoie une invitation. Si l'adresse "De" est une chaîne vide, la valeur par défaut (yourapp@appspot.com/bot) est utilisée.

Message

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
}

Le type Message correspond à un message de chat entrant.

func (*Message) Send

func (m *Message) Send(c context.Context) error

La fonction Send envoie un message. Si des échecs surviennent avec des destinataires spécifiques, l'erreur est une erreur appengine.MultiError.

Présence

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 représente une mise à jour de la présence sortante.

func (*Presence) Send

func (p *Presence) Send(c context.Context) error

La fonction Send envoie une mise à jour de la présence.