Giter VIP home page Giter VIP logo

node-xmpp-bosh's People

Contributors

anup avatar aredridel avatar dhruvbird avatar flosse avatar gavllew avatar harobed avatar julien51 avatar krnekit avatar lboynton avatar pathsny avatar satyamshekhar avatar sonnyp avatar valeriansaliou avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

node-xmpp-bosh's Issues

Supporting wss:// and https:// protocol

I did some modifications in my forked project, but they're all dirty hack. So, maybe @dhruvbird can support them officially ?

What I modified:

  • https-server.js: Copy http-server.js and add cert/key options in it. Now we have HTTPServer and HTTPSServer...
  • bosh.js & main.js: Create HTTPSServer while cert/key options given.
  • options flow: Some options detecting and loading cert steps in several files.
  • run-server.js: Options and tips ( ws:// -> wss:// ; http:// -> https:// )

Program always uses default xmpp port

What steps will reproduce the problem?

  1. Run openfire with xmpp in another port (5223)
  2. Use Pidgin to connect using Connection Port 5223 and in BOSH Server port http://url:5280/http-bind/

What is the expected output? What do you see instead?
Expected output: Connection to the server
Output: Connects to node-xmpp-bosh server and node-xmpp-bosh can't conenct to the XMPP server.

How to solve it?
Change the default port to 5223.

What version of the product are you using? On what operating system?
Version node-xmpp-bosh 0.5.6 (npm installation)
Ubuntu 11.10

Please provide any additional information below.
It seems to ignore port information passed by pidgin and to always use default port.

Can't establish connection

Here is my log:

<body rid='7905790180136' xmlns='http://jabber.org/protocol/httpbind' type='terminate'><presence xmlns='jabber:client' type='unavailable'/></body>
strophe.js?t (line 2188)
<body xmlns='http://jabber.org/protocol/httpbind' condition='item-not-found' message='Invalid session ID' type='terminate'/>

I connect fine with the same code to a punjab server which is a free testing service provided by Jack Motiff.

Connecting to this free testing server http://bosh.metajack.im:5280/xmpp-httpbind' I have no problems. Any help would be great thank you.

xmlns:stream in <body/>

HI

As I see in http://xmpp.org/extensions/xep-0206.html (2. Wrapper Element) first point says:

If the BOSH wrapper is not empty, then it SHOULD contain one of the following:

but we have:

DIGEST-MD5/stream:features

without xmlns:stream in body and one of our client failed to pasre xml :(

or I missing somethig?...

Thx

Adjust default trimming size for long log lines

Current default is 80 chars. Set it to something bigger (such as 200 bytes) or maybe deduce it based on the logging level.
Another option would be to read it in from the config file/command line.

Cannot auth with v0.6.0

Hi, it seems with v0.6.0 I can no longer authenticate with the XMPP server (I'm using ejabberd). Here is the log:

+----------------------------------------------------------------------------------------------------------------+
| Starting WEBSOCKET DRAFT 10 server 'v0.6.0' on ws://0.0.0.0:5280' at 'Fri Feb 17 2012 10:35:42 GMT+0000 (GMT)' |
+----------------------------------------------------------------------------------------------------------------+
[2012-02-17 10:35:50.702] [INFO] [http-server.js] - RECD: <body xmlns="http://jabber.org/protocol/httpbind" content="text/xml charset=utf-8" rid="9487908443" xml:lang="en" hold="1" to="abc.com" xmlns:xmpp="urn:xmpp:xbosh" xmpp:version="1.0" wait="60" route="xmpp:my.jabber.server:5222"/>
[2012-02-17 10:35:50.710] [INFO] [xmpp-proxy.js] - fef2a90b-72bd-4754-8be7-ddd32ad9b0a3 9adb3ccc-9adb-4b1b-8033-6c5ac76a5c9a Sent: <stream:stream xmlns:stream="http://etherx.jabber.org/streams" xmlns="jabber:client" to="abc.com" version="1.0">
[2012-02-17 10:35:50.713] [INFO] [xmpp-proxy.js] - fef2a90b-72bd-4754-8be7-ddd32ad9b0a3 9adb3ccc-9adb-4b1b-8033-6c5ac76a5c9a _on_data RECD: <?xml version='1.0'?><stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' id='3344545251' from='abc.com' version='1.0' xml:lang='en'><stream:features><starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>SCRAM-SHA-1</mechanism><mechanism>DIGEST-MD5</mechanism><mechanism>PLAIN</mechanism></mechanisms></stream:features>
[2012-02-17 10:35:50.714] [INFO] [xmpp-proxy.js] - fef2a90b-72bd-4754-8be7-ddd32ad9b0a3 9adb3ccc-9adb-4b1b-8033-6c5ac76a5c9a _on_stanza parsed: <stream:features><starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"/><mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>SCRAM-SHA-1</mechanism><mechanism>DIGEST-MD5</mechanism><mechanism>PLAIN</mechanism></mechanisms></stream:features>
[2012-02-17 10:35:50.715] [INFO] [xmpp-proxy.js] - fef2a90b-72bd-4754-8be7-ddd32ad9b0a3 9adb3ccc-9adb-4b1b-8033-6c5ac76a5c9a Sent: <starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"/>
[2012-02-17 10:35:50.715] [INFO] [xmpp-proxy.js] - fef2a90b-72bd-4754-8be7-ddd32ad9b0a3 9adb3ccc-9adb-4b1b-8033-6c5ac76a5c9a _on_data RECD: <proceed xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>
[2012-02-17 10:35:50.717] [INFO] [xmpp-proxy.js] - fef2a90b-72bd-4754-8be7-ddd32ad9b0a3 9adb3ccc-9adb-4b1b-8033-6c5ac76a5c9a _on_stanza parsed: <proceed xmlns="urn:ietf:params:xml:ns:xmpp-tls"/>
[2012-02-17 10:35:50.749] [INFO] [xmpp-proxy.js] - fef2a90b-72bd-4754-8be7-ddd32ad9b0a3 9adb3ccc-9adb-4b1b-8033-6c5ac76a5c9a Sent: <stream:stream xmlns:stream="http://etherx.jabber.org/streams" xmlns="jabber:client" to="abc.com" version="1.0">
[2012-02-17 10:35:50.750] [INFO] [xmpp-proxy.js] - fef2a90b-72bd-4754-8be7-ddd32ad9b0a3 9adb3ccc-9adb-4b1b-8033-6c5ac76a5c9a _on_data RECD: <?xml version='1.0'?><stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' id='2692183849' from='abc.com' version='1.0' xml:lang='en'><stream:features><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>SCRAM-SHA-1</mechanism><mechanism>DIGEST-MD5</mechanism><mechanism>PLAIN</mechanism></mechanisms></stream:features>
[2012-02-17 10:35:50.751] [ERROR] [xmpp-proxy.js] - fef2a90b-72bd-4754-8be7-ddd32ad9b0a3 9adb3ccc-9adb-4b1b-8033-6c5ac76a5c9a _on_stream_error - will terminate: undefined
[2012-02-17 10:35:50.751] [INFO] [xmpp-proxy.js] - fef2a90b-72bd-4754-8be7-ddd32ad9b0a3 9adb3ccc-9adb-4b1b-8033-6c5ac76a5c9a Sent: </stream:stream>
[2012-02-17 10:35:50.753] [INFO] [response.js] - SENT: <body xmlns="http://jabber.org/protocol/httpbind" type="terminate"/>

It works with v0.5.6, so I assume this is a new bug. For some reason it thinks there is a stream error, but it looks fine to me?

error starting node-xmpp-bosh

I'm try to start bosh service in many ways (from source, from npm, etc) ... and I always get this error:

node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
TypeError: Object # has no method 'consoleAppender'
at Object. (/Users/max/projetos/node-xmpp-bosh/src/log.js:7:23)
at Module._compile (module.js:441:26)
at Object..js (module.js:459:10)
at Module.load (module.js:348:31)
at Function._load (module.js:308:12)
at Module.require (module.js:354:17)
at require (module.js:370:17)
at Object. (/Users/max/projetos/node-xmpp-bosh/src/dutil.js:563:30)
at Module._compile (module.js:441:26)
at Object..js (module.js:459:10)

log4js has no method 'consoleAppender'

Step to reproduce:
npm install node-xmpp-bosh
./run-server,js

I didn't have the time to look at it yet but since it looks critical I report the problem.

--config not working

Whenever I try to set a config, because I want to change the libpurple setting, I get

oot@epimetheus:~/.nvm/v0.4.7/lib# node node_modules/node-xmpp-bosh/run-server.js --config 'bosh.js.conf' Caught Exception: 'Error: Cannot find module './true'' while trying to read config file './true'

I have tried it with basically every different string combination

Cannot connect to TLS server

I am trying to connect to a TLS server on port 5223, using old style ssl.

[email protected]

Connect Server: chat.na1.lol.riotgames.com

I don't know if this is an issue or not, but it always says bosh terminated the connection

<stream:stream> root elements closed

node-xmpp-bosh parses and sends only <stream:stream> elements that are closed.

Jack Moffitt's draft however specifies:

The stream tag MUST NOT be closed (i.e. the closing </stream:stream> tag should not appear in the message) as it is the start of the client's outgoing XML.

You may need to apply some weird string magic if you insist on DOM parsing.

Broken GET handler (JSON data)

Affects 0.5.X (maybe 0.6) + nodejs 0.4.7

Everything is fine using POST, but with GET:

node.js:134
throw e; // process.nextTick error, or 'error' event on first tick
^
TypeError: Object # has no method 'setHeader'
at Object.send_response (/usr/local/lib/node_modules/node-xmpp-bosh/src/response.js:72:19)
at Object._send_no_requeue (/usr/local/lib/node_modules/node-xmpp-bosh/src/session.js:855:12)
at Object._pop_and_send (/usr/local/lib/node_modules/node-xmpp-bosh/src/session.js:759:18)
at Array. (/usr/local/lib/node_modules/node-xmpp-bosh/src/session.js:787:22)
at EventEmitter._tickCallback (node.js:126:26)
shisp@ubuntu:~$

Running node-xmpp-bosh on nodejitsu

I'm trying to run node-xmpp-bosh on nodejitsu. After deploying it to nodejitsu I see the "Starting BOSH server" and "Starting WEBSOCKET server" messages on the log file. But the server doesn't seem to be running - http-bind/ gives a broken link.

The deployed app starts with run-server.js. Is this the correct way to start the BOSH server?

is there any other way I can run node-xmpp-bosh on a public server - I want to test it out on a free service like nodejitsu or CloudFoundry.

WebSockets don't send <stream:stream> restart after SASL auth

Specified as a direct translation of the TCP protocol, my WebSocket implementation relies on that detail. :-(

Here's some sample output of my client:

>> <stream:stream xmlns="jabber:client" version="1.0" to="example.com">
<< <stream:stream xmlns="jabber:client" xmlns:stream="http://etherx.jabber.org/streams" version="1.0" xml:lang="en" from="example.com">
<< <stream:features xmlns="jabber:client" xmlns:stream="http://etherx.jabber.org/streams" version="1.0"><mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>PLAIN</mechanism><mechanism>DIGEST-MD5</mechanism><mechanism>SCRAM-SHA-1</mechanism></mechanisms><c xmlns="http://jabber.org/protocol/caps" hash="sha-1" node="http://www.process-one.net/en/ejabberd/" ver="o8zQAtrb2wELMmZizvbnpvqp5cE="/><register xmlns="http://jabber.org/features/iq-register"/></stream:features>
>> <auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="DIGEST-MD5"></auth>
<< <challenge xmlns="urn:ietf:params:xml:ns:xmpp-sasl" xmlns:stream="http://etherx.jabber.org/streams" version="1.0">bm9uY2U9IjI3NzU0MDYxMjciLHFvcD0iYXV0aCIsY2hhcnNldD11dGYtOCxhbGdvcml0aG09bWQ1LXNlc3M=</challenge>
>> <response xmlns="urn:ietf:params:xml:ns:xmpp-sasl">dXNlcm5hbWU9ImNvbGxlY3RvciIscmVhbG09ImphYmJlci5jY2MuZGUiLG5vbmNlPSIyNzc1NDA2MTI3Iixjbm9uY2U9Ijc3MTM6NTk5IixuYz0iMDAwMDAwMDEiLHFvcD0iYXV0aCIsZGlnZXN0LXVyaT0ieG1wcC9qYWJiZXIuY2NjLmRlIixyZXNwb25zZT0iZGY3MWM3ZDM4OTJmODAwZGU3MTIxNjEzMTBiNDUyYTAiLGF1dGh6aWQ9ImNvbGxlY3RvckBqYWJiZXIuY2NjLmRlIixjaGFyc2V0PSJ1dGYtOCI=</response>
<< <challenge xmlns="urn:ietf:params:xml:ns:xmpp-sasl" xmlns:stream="http://etherx.jabber.org/streams" version="1.0">cnNwYXV0aD1lYWQ1NDU4MTAzNDc5NjUwNGE2MjA0OGVlOGNlOTliZA==</challenge>
>> <response xmlns="urn:ietf:params:xml:ns:xmpp-sasl"></response>
<< <success xmlns="urn:ietf:params:xml:ns:xmpp-sasl" xmlns:stream="http://etherx.jabber.org/streams" version="1.0"/>
# At this point I reset my parser, does node-xmpp-bosh do the same?
>> <stream:stream xmlns="jabber:client" version="1.0" to="example.com">
<< <stream:features xmlns="jabber:client" xmlns:stream="http://etherx.jabber.org/streams" version="1.0"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"/><session xmlns="urn:ietf:params:xml:ns:xmpp-session"/><c xmlns="http://jabber.org/protocol/caps" hash="sha-1" node="http://www.process-one.net/en/ejabberd/" ver="o8zQAtrb2wELMmZizvbnpvqp5cE="/><register xmlns="http://jabber.org/features/iq-register"/></stream:features>
>> <iq type="set" id="bind"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"/></iq>
<< <iq id="bind" type="result" xmlns="jabber:client" xmlns:stream="http://etherx.jabber.org/streams" version="1.0"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"><jid>[email protected]/18674533551332549886610980</jid></bind></iq>

Error: junk after document element

monitor.js broken

The output from jslint is not displayed on the screen for some reason (when using monitor.js).

Provide an API compatible abstraction to use node-xml as node-expat

https://github.com/robrighter/node-xml

This allows anyone to use it (independent of platform) since node-xml is pure javascript (no C-bindings to libexpat1).

However, this comes at a cost:

This mode would be discouraged, but hopefully supported some time in the future.

Missing terminate when resource conflict occurs

I noticed that when there is a resource conflict, node-xmpp-bosh doesn't include a type="terminate" on the body element.

<body xmlns="http://jabber.org/protocol/httpbind" stream="0d45874e-5fd1-4cdc-a4b7-f94d4f0ca763">
<stream:error xmlns="jabber:client" xmlns:stream="http://etherx.jabber.org/streams" version="1.0">
<conflict xmlns="urn:ietf:params:xml:ns:xmpp-streams"/>
<text xml:lang="" xmlns="urn:ietf:params:xml:ns:xmpp-streams">Replaced by new connection</text>
</stream:error>
</body>

When testing against ejabberd, it does include type="terminate", and I think this is the correct behaviour after looking at http://xmpp.org/extensions/xep-0206.html#remote-stream-error

On-the-fly updates

This isn't a bug but more of a feature request/question. Is it possible to update node-xmpp-bosh on the fly without having to restart it?

npm install node-xmpp-bosh

I received warning:

[email protected] install /home/sklyar/node_modules/node-xmpp-bosh/node_modules/jsdom/node_modules/contextify
node-gyp rebuild

node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: Cannot find module '/usr/lib/nodejs/npm/node_modules/node-gyp/bin/node-gyp.js'
at Function._resolveFilename (module.js:332:11)
at Function._load (module.js:279:25)
at Array.0 (module.js:479:10)
at EventEmitter._tickCallback (node.js:192:40)
npm WARN optional dependency failed, continuing [email protected]

Is it problem?

SASL support for X-FACEBOOK-PLATFORM

I have the BOSH server running on nodejitsu, with a strophe client. I am trying to authenticate a user for Facebook chat using the X-FACEBOOK-PLATFORM. I have also added 'chat.facebook.com' to the no-TLS list in the conf file.

But, when chat.facebook.com offers the choice between DIGEST-MD5 and X-FACEBOOK-PLATFORM, the app defaults to DIGEST-MD5.

Is this an issue with node-xmpp-bosh or nodejitsu? Is there a way to solve this?

I have tested the strophe client with PunJab and X-FACEBOOK-PLATFORM does work.

Bug: node-xmpp-bosh not starting.

Hi.

When I run the command to start the bosh server, I receive the following:

root@jappix:# /etc/init.d/bosh restart
Restarting bosh serverStopping bosh server.
Starting bosh server.
.
root@jappix:
# node: no process found

Checking the error log, I find the following error:

node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
TypeError: Object # has no method 'consoleAppender'
at Object. (/usr/local/lib/node_modules/node-xmpp-bosh/src/log.js:7:23)
at Module._compile (module.js:441:26)
at Object..js (module.js:459:10)
at Module.load (module.js:348:32)
at Function._load (module.js:308:12)
at Module.require (module.js:354:17)
at require (module.js:370:17)
at Object. (/usr/local/lib/node_modules/node-xmpp-bosh/src/dutil.js:534:30)
at Module._compile (module.js:441:26)
at Object..js (module.js:459:10)

Been checking for a fix for some time now, any help would be appreciated.

Thanks.

broadcast

Hi,
If I have 2 attached tabs (chrome) with Strophe.attache ... shouldn't node-xmpp-bosh broadcast all messages sending by tab 1 to tab 2? To keep in sync?

'ERROR on listener at endpoint' when changing Host

I deployed my Node.js app to EC2.

On my local server, BOSH host was configured to example.dev, and now after deployment it sits on subdomain.example.com (the entire node app sits on the subdomain) and since then I get this error:

Error: ERROR on listener at endpoint: http://subdomain.example.com:5280/^\/http-bind(\/+)?$/
at Server. (/var/www/subdomain.example.com/nodechat/src/bosh.js:1874:10)
at Server.emit (events.js:67:17)
at Array.0 (net.js:732:14)
at EventEmitter._tickCallback (node.js:192:41)

What am I doing wrong?
How can I trace the issue behind this?

Thank you,

<?xml version='1.0'?>

One of php jabber-client use SimpleXML class to build xmpp stanza and SimpleXMLElement::asXML() function to get result string, but always return preambula <?xml version='1.0'?> at begin

and in node-xmpp-bosh next construction not working properly

<dummy><?xml version='1.0'?><bla>bla</bla></dummy>

because dummy is not valid xml element, and that is why developers make dirty hack with

s = substr(s, strlen('<?xml version='1.0'?>');

but ejabberd_http_bind hasn't such trouble

So... What do you think about?

Cannot call method 'push' of undefined

Just had one of my bosh servers die with this error:

/usr/lib/nodejs/node-xmpp-bosh/src/session.js:807
this.pending_bosh_responses[stream.name].push(attrs);
^
TypeError: Cannot call method 'push' of undefined
at Object.enqueue_bosh_response (/usr/lib/nodejs/node-xmpp-bosh/src/session.js:807:50)
at Object.send_stream_terminate_response (/usr/lib/nodejs/node-xmpp-bosh/src/stream.js:79:17)
at /usr/lib/nodejs/node-xmpp-bosh/src/session.js:633:24
at Array.forEach (native)
at Object.handle_client_stream_terminate_request (/usr/lib/nodejs/node-xmpp-bosh/src/session.js:625:30)
at Object._process_one_request (/usr/lib/nodejs/node-xmpp-bosh/src/session.js:276:18)
at Object.process_requests (/usr/lib/nodejs/node-xmpp-bosh/src/session.js:320:22)
at process_bosh_request (/usr/lib/nodejs/node-xmpp-bosh/src/bosh.js:182:25)
at bosh_request_handler (/usr/lib/nodejs/node-xmpp-bosh/src/bosh.js:237:9)
at /usr/lib/nodejs/node-xmpp-bosh/src/http-server.js:69:17

I assume the pending_bosh_responses[stream.name] array hasn't been initialised for some reason. I've temporarily fixed this by checking if it's undefined just before push is called on it, and initialising it if so, but there is probably a better fix.

node-xmpp-bosh 0.5.6
nodejs 0.6.8
CentOS 5.7

Minor refactoring task - HTTPServer's constructor parameters

Make the HTTPServer() constructor function take in a hash-map so that the parameters are self documenting. Currently, the long string of parameters makes it hard to see what each one does.

Also, maybe "http" to something else in bosh.js since it might be misinterpreted to be the node.js default http module.

_on_stream_error - will terminate: undefined entity

[2012-04-06 13:49:09.235] [ERROR] [xmpp-proxy.js] - 30f0d096-0078-4a7c-b6e2-05d684f37a58 363a37cf-6e8e-461c-829d-b3899ef197f4 _on_stream_error - will terminate: undefined entity

and such xml

<message from='one@chat' to='two@chat' type='chat'><body>salut &agrave; tous, on peut chatter un peu ?</body></message>

we can see - expat parse() failed, but why?... if expat doesn't known entity agrave it doesn't mean session must terminate, imho

what do you think?

TypeError: Object #<Object> has no method 'consoleAppender'

node_modules/node-xmpp-bosh/src/log.js:7
var appender = log4js.consoleAppender(log4js.basicLayout);
^
TypeError: Object # has no method 'consoleAppender'
at Object. (/home/user/project/node_modules/node-xmpp-bosh/src/log.js:7:23)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at Object. (/home/user/project/node_modules/node-xmpp-bosh/src/dutil.js:534:30)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)

Node-xmpp-bosh - Do I need any other XMPP for user auth

I was able to successfully compile node-xmpp-bosh

npm version is 1.1.21
node version is 0.6.18
node-xmpp-bosh is 0.6.1 with package.json "log4js": "= 0.4.2"

Do I need Prosody or openfire when I have node-xmpp-bosh up & running. As I need to have user authentication who will access the Jappix Mini.

If your answer is yes for above question, I am using prosody which uses 5280... how should I configure both so that jappix mini <---> node-xmpp-bosh <----> prosody / Openfire. Please provide some more details here. I have both node-xmpp-bosh & prosody or openfire on same server. Here Jappix mini code is on my websites otherservers.

Node-xmpp-bosh works fine on IE9, Firefox & chrome [ shows message text as Bidirectional-streams Over Synchronous HTTP ] however on IE7 it gives message as getting file information when I type http://url:5280/http-bind

Thanks

JSON GET feature is broken

Hello,

After upgrading from 0.3.1 to the latest 0.6.1 I noticed the JSON GET handler was broken, the browser says that a variable has no end as an error.

Some Jappix users, using NXB as we recommend them, were posting about that in our issues, at first thought it was coming from us, but I tried myself to upgrade node-xmpp-bosh and noticed that also.

Cheers ;)

where is type="terminate" in <body><stream:error><conflict... ?

I received such body if user open chat with same resource

<body xmlns="http://jabber.org/protocol/httpbind" stream="3a59e76d-8e39-40f8-aa7d-f5ea22cefed0"><stream:error xmlns="jabber:client" xmlns:stream="http://etherx.jabber.org/streams" version="1.0"><conflict xmlns="urn:ietf:params:xml:ns:xmpp-streams"/><text xml:lang="" xmlns="urn:ietf:params:xml:ns:xmpp-streams">Replaced by new connection</text></stream:error></body>

But I waiting for terminate in type attribute of body tag...

When I am wrong? And how to detect such situation?

Thx

[not a bug] How to extend node-xmpp-bosh

Hi,
Is there a way to send a notification to clients without going through my xmpp server? that is, use it as a normal channel service like fayer or socket.io

Explaining: I have a webchat that use prosody with node-xmpp-bosh, but I'd like to send notifications (from main server) to users like "your photo received a new comment". I know that I could use prosody for this, but maybe it is more simple just use node-xmpp-bosh.

is it possible?

Huge memory leak when using node-xmpp-bosh extensively

Hi.

I was using node-xmpp-bosh server with Strophe-1.0.2 library on client side. Generally it was working OK but there was one issue: after some time the connection to node-xmpp-bosh server is lost and client doesn't know about that. So messages didn't transfer to the target and client's contact became offline(from target's point of view) too.

I found the thread where similar problem was discussed and solved: http://groups.google.com/group/strophe/browse_thread/thread/411e17f93859d915 . I used this Strophe plugin https://github.com/zanchin/strophejs/blob/master/plugins/plugin.cm.js and eventually messages transferring became reliable. But this lead to another problem - server's PC goes out of memory after ~5 hours of work and the only way to fix this is restart bosh server.
I also noticed that after integrating that Strophe plugin the numbers at "X/Y active sessions" are growing faster. Typycally I have 10-12 active sessions (simultaneously connected clients) and Y number is growing very fast. E.g. like +10 used sessions per 5 minutes.
So it looks like aggressive connection manager plugin which I took from https://github.com/zanchin/strophejs/blob/master/plugins/plugin.cm.js is breaking node-xmpp-bosh server.

I'm not a JavaScript expert, my level of knowledge rather very low. I'm just trying to use existing solution and I would be very happy if you can help me with that.

Please let me know if I can help you with solving this issue in any way.

Thanks,
Andrey.

Generally better logging

We need more information and configurability in logging. For example display the current function name, constructor, and line number while logging.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.