The service is broken down into main categories of functionality: Public, Session, Client, Message, Presence, Roster, XML, and RPC.
All data formats are based on the file extensions used in the request:
This is a restricted public HTTP gateway to send jabber messages and view presence of users on the server.
/public/presence/user.*
Offers the public presence for a user on the local server, will initially ask the user to allow this first./public/message/user.*
To send a message, use body, type, and subject in query to set data.
This is a flexible API to allow HTTP-based clients to interact w/ the server in stateless manner.
Send user=foo&pass=bar&res=foobar to log in and create a session ID. Send optional status=foo to set initial available presence, and roster=1 to ask for the roster to be sent.
All the client interfaces require a session ID and will return an error if an invalid sid is sent. If no sid is sent, they will return a 401 and use the basic auth information to maintain a session.
Client
http://server:5280/client.*?sid=...exit=Exit+Message will invalidate the sid and sign off the session.
By not sending a query string, it will return ALL incoming buffered packets
Message
http://server:5280/message.*?sid=...will return all waiting messages and can be limited with optional filter of from=jid
Sending: to=jid&body=...&subject=...&type=...
Presence
http://server:5280/presence.*?sid=...will return all waiting presence packets
by setting a from=user@host it will check the server-side proxy cache for that user's presence and return it
Set currentpresence with status=...&show=...
Send presence/subscriptions with to=jid&type=... and optional status=...
Roster
http://server:5280/roster.*?sid=...returns the roster items