cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
3592
Views
15
Helpful
12
Replies

Debugging Jabber Integration, Where To Start

jmennear
Cisco Employee
Cisco Employee

Hi,

I have the sample code your team provided working well within the sandbox environment.

Since I know the BOSH port, user ID, password and domain for my cisco internal jabber server I thought, why not test it out there.

Well, I could not get it to work, it consistently returns an error reporting that the XML is not well formed.

Not having credentials to log into the cisco internal jabber server admin, I found another Jabber server set up for a customer, a lab within Cisco's firewall and for testing customer applications. They gave me the domain, BOSH port, user ID's and passwords so I was set to go and watch it succeed.

It failed there, too.

Since it's a cisco lab environment, I have access to the Jabber server admin interface so, I pulled down RTMT and started traces on various things that I thought might be important, but, looking at the real-time logs doesn't really show me any errors that I find useful in debugging why the sample app works in sandbox but will not work anywhere else.

So, how do I go about finding out what the problem is? Do I need to contact TAC to figure this out?

-john

12 Replies 12

tinghche
Level 5
Level 5

Hi John,

What kind of error are you seeing? it will be helpful as a starting point.

If you are interested in trying CAXL core API, you can reference to core api sample here

https://developer.cisco.com/site/collaboration/jabber/websdk/learn/im-and-presence-how-to/use-jabber-im-core-apis/

Best,

Howard

Hi,

That sample code is exactly what I started with and i could get it to run perfectly fine in the sandbox environment.

I switched to a Cisco IT Jabber server and got this error:

"<stream:error xmlns:stream="http://etherx.jabber.org/streams"><xml-not-well-formed xmlns="urn:ietf:params:xml:ns:xmpp-streams"/></stream:error>"


I contacted the account team I am working with and they set me up with an account on their customer server so that I could run the code there and again I got this error:


"<stream:error xmlns:stream="http://etherx.jabber.org/streams"><xml-not-well-formed xmlns="urn:ietf:params:xml:ns:xmpp-streams"/></stream:error>"


I did change the BOSH to the proper server.

I did change the domain to the proper value.

I used valid user ID's and their passwords (for me on my Cisco Jabber server I used my CEC user ID and PW).


I think that there is something different in the way the servers are set up in a production environment that is slightly different from how they are set up in the sandbox.


As I said, I started RTMT up and pulled trace files from the customer lab machine, but, I was not able to determine anything from what I was seeing.

-john

Could you please paste the BOSH url to browser directly to see if it respond?

The error message seems to indicate that the host is not reachable.

Best,

Howard

This is from the internal Cisco server:

---------------------------

This URI is for XMPP communication via the BOSH protocol.

Please reference the following protocols:

  • RFC 3920: Extensible Messaging and Presence Protocol (XMPP): Core
  • RFC 3921: Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence
  • XEP-0124: Bidirectional-streams Over Synchronous HTTP (BOSH)
  • XEP-0206: XMPP Over BOSH

---------------------------

And this is from my customer lab server:

---------------------------

This URI is for XMPP communication via the BOSH protocol.

Please reference the following protocols:

  • RFC 3920: Extensible Messaging and Presence Protocol (XMPP): Core
  • RFC 3921: Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence
  • XEP-0124: Bidirectional-streams Over Synchronous HTTP (BOSH)
  • XEP-0206: XMPP Over BOSH

---------------------------

-john

Possibly due to one server being configured for secure connections and one for insecure..?  If insecure, can you get a network packet capture of the actual XMPP traffic (working compared to non-working)? 

You mean to use wireshark on my PC to capture traffic, or to use it on the jabber server?

-john mennear

408-894-6856

http://cisco-ucdt.blogspot.com/

http://cisco-ciac.blogspot.com/

Either, but its probably easier to get from your PC

In our customer lab they have offered to change the XMPP port to be http, but, they do not know how to go about making that change.

Would that help as a test? If so, do you know how we would change it to http instead of secure?

-john mennear

408-894-6856

http://cisco-ucdt.blogspot.com/

http://cisco-ciac.blogspot.com/

From CUPS, System->Security->Settings

uncheck "Enable Web Client to CUP Secure Mode" and save.

Then go to "Cisco Unified Serviceability", restart the "Cisco UP XCP Web Connection Manager" service under Tools->Control Center - Feature Services

Howard

var demoConfig = ;

Could not connect: <stream:error xmlns:stream="http://etherx.jabber.org/streams"><undefined-condition xmlns="urn:ietf:params:xml:ns:xmpp-streams"/></stream:error>

-john mennear

408-894-6856

http://cisco-ucdt.blogspot.com/

http://cisco-ciac.blogspot.com/

John,

Please send me an email, let's schedule sometime to go through this via Webex.

Thanks,

Howard

Hi,

Is this question got answered. If so, can you please post the result on this.?

Thanks,

Dany