node-xmpp-client-virtus
v1.0.1
Published
XMPP custom client for JavaScript. (forked from node-xmpp-client)
Downloads
19
Maintainers
Readme
node-xmpp-client-virtus
XMPP custom client for JavaScript. XMPP Client with X-TOKEN SASL authentication. (forked from node-xmpp-client)
Manual
See http://node-xmpp.org/doc/client.html for instructions on how to use node-xmpp-client-virtus
.
Installation
npm install node-xmpp-client-virtus
Testing
Install the dev dependencies, then...
npm test
To run the tests and the code style checks then use:
grunt test
Also see the tests run in travis. The tests in travis run both the code and code style tests.
How to use
Please see the various examples.
Features
- Node.js and browsers
- Client authentication with SASL
- Multiple transports
- TCP
- BOSH
- WebSocket
_xmpp-client._tcp
SRV record support
Dependencies
- node-xmpp-core:
node-xmpp
core libraries
Building XML Elements
Strophe.js' XML Builder is very convenient for producing XMPP
stanzas. ltx includes it in a much more primitive way: the
c()
, cnode()
and t()
methods can be called on any Element
object, returning the new child element.
This can be confusing: in the end, you will hold the last-added child
until you use up()
, a getter for the parent. Connection.send()
first invokes tree()
to retrieve the uppermost parent, the XMPP
stanza, before sending it out the wire.
Browser Support
node-xmpp-client-virtus
now comes with a prebuilt browser bundle:
<script src="/node_modules/node-xmpp-client/bundle.js"></script>
<script type="text/javascript">
var client = new XMPP.Client(opts);
</script>
Keepalives
Rather than send empty packets in order to keep any socket alive please try the following:
this.client.connection.socket.setTimeout(0)
this.client.connection.socket.setKeepAlive(true, 10000)
Where this.client
is the result of new require('node-xmpp-client-virtus')()
.