powered by Jive Software

Problem with stream IDs: is it a bug in Jive or in Stream.pm?

Hi,

I tried to run ChatBot with JiveMessenger,

but it crashes in function XML::Stream::OpenStream.

This happens after a successful login when ChatBot is trying

to open the second stream. The problem is that JiveMessenger

assigns the second stream the same ID as to the first one

(but the first one is still open).

I am not an expert in XMPP protocol and don’'t know whether

this is a legal behavior - to give different streams the same ID.

But Stream.pm v 1.22 crashes on line

if (exists($self->GetRoot($sid)->)

because line

delete($self->->{$currsid}); just deleted the new stream because it has the same ID
as the old one. As a temporary fix I deleted this line
delete($self->->{$currsid});

and ChatBot is working OK now.

But where is the bug? Is it in Jive or in Stream.pm?

Thank you

John

John,

What is stream.pm? I don’‘t think we’‘re familiar with the tool you’'re discussing.

Regards,

Matt

Thank you for the reply.

What is stream.pm? I don’‘t think we’‘re familiar with the tool you’'re discussing.

Stream.pm is a Perl module in package XML::Stream version 1.22

Copyright © 1998-2004 Jabber Software Foundation http://jabber.org/

I got it from CPAN.org

http://search.cpan.org/~reatmon/XML-Stream-1.22/lib/XML/Stream.pm

among other packages required by ChatBot.

I wonder whether other people use Perl to talk to Jive,

whether they use the same version of Stream.pm and

why they don’'t run into this bug, which I described.

Another question is about Jive and XMPP protocol - is it OK

to assign the same stream ID to two different streams?

Thank you

John