aboutsummaryrefslogtreecommitdiffstats
path: root/webclient/lib/basic.js
diff options
context:
space:
mode:
Diffstat (limited to 'webclient/lib/basic.js')
-rw-r--r--webclient/lib/basic.js55
1 files changed, 55 insertions, 0 deletions
diff --git a/webclient/lib/basic.js b/webclient/lib/basic.js
new file mode 100644
index 0000000..8a5d4e3
--- /dev/null
+++ b/webclient/lib/basic.js
@@ -0,0 +1,55 @@
+var BOSH_SERVICE = 'http://alias.fr.nf/http-bind/'
+var connection = null;
+
+function log(msg)
+{
+ $('#log').append('<div></div>').append(document.createTextNode(msg));
+}
+
+function rawInput(data)
+{
+ log('RECV: ' + data);
+}
+
+function rawOutput(data)
+{
+ log('SENT: ' + data);
+}
+
+function onConnect(status)
+{
+ if (status == Strophe.Status.CONNECTING) {
+ log('Strophe is connecting.');
+ } else if (status == Strophe.Status.CONNFAIL) {
+ log('Strophe failed to connect.');
+ $('#connect').get(0).value = 'connect';
+ } else if (status == Strophe.Status.DISCONNECTING) {
+ log('Strophe is disconnecting.');
+ } else if (status == Strophe.Status.DISCONNECTED) {
+ log('Strophe is disconnected.');
+ $('#connect').get(0).value = 'connect';
+ } else if (status == Strophe.Status.CONNECTED) {
+ log('Strophe is connected.');
+ connection.disconnect();
+ }
+}
+
+$(document).ready(function () {
+ connection = new Strophe.Connection(BOSH_SERVICE);
+ connection.rawInput = rawInput;
+ connection.rawOutput = rawOutput;
+
+ $('#connect').bind('click', function () {
+ var button = $('#connect').get(0);
+ if (button.value == 'connect') {
+ button.value = 'disconnect';
+
+ connection.connect($('#jid').get(0).value,
+ $('#pass').get(0).value,
+ onConnect);
+ } else {
+ button.value = 'connect';
+ connection.disconnect();
+ }
+ });
+}); \ No newline at end of file