cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
6486
Views
4
Helpful
51
Replies

Jabber + Sandbox - where to begin

mark.kilby
Level 1
Level 1

Hi

 

Am trying to get the Jabber demo going using a sandbox environment for CUPS.

 

E.g. as explained here: Video: Use the Jabber IM Core APIs - Cisco Developer Community

 

I've successfully got connected to a sandbox environment "Collaboration 10.5 Lab" over the VPN per supplied in the email.

 

Scenario as follows:

  • Local web server running on my machine
  • Demo jabber application is deployed to this local web server
  • Proxy configured to relay Jabber requests from my web server to sandbox
  • VPN sandbox connection established with CUPS in the environment

 

In the 'sandbox server view' I can see a server that suggests it looks like the CUPS host (hq-cups.abc.inc).

 

When I run the web application up and try to login I get an exception.

 

First issue is I don't have any user IDs for Jabber - documented suggests a set would be emailed to me but obviously not.

 

Secondly I'm unsure the configuration for the host is configured correctly:

 

Inside "basic-chat.html" I have:

var demoConfig = {

domain: "hq-cups.abc.inc", //the domain specified for your CUP server

httpBindingURL: "http://localhost:8080/httpbinding", //the BOSH url for your server

unsecureAllowed: true //unsecureAllowed should be true if plaintext authentication is allowed over unencrypted or unsecured HTTP channels

};

 

On my proxy I'm forwarding anything mathing 'httpbinding' to this endpoint:

http://hq-cups.abc.inc:7335/httpbinding

 

Am pretty certain the proxy is working because I can issue REST requests to a separate server we have on our site.

 

Appreciate any help here. As I've run out of things to try.

 

Regards,

Mark.

51 Replies 51

Hi Mark,

The IP address for the CUP server is correct. can you try secure HTTP?

https://10.10.20.17:7335/httpbinding

Joe

Thanks Joe

That has moved me on a step - I now get a good response from the server AND this is mirrored via the proxy too, as follows:

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

My demo app fails to log on as yet but I'm going to look at that in more detail later this evening, so if you don't mind I'll keep the thread open until I get that demo app logging on and working. But it's hopefully very nearly there.

Thank-you so much for your help here.

Regards,

Mark.

Hi Joe

Indeed https was needed to get to the server.

So I am reaching the server but now user authentication fails, which I guess has something to do with the connection string and user credentials, which I have taken from information made available within the sandbox environment:

var demoConfig = {

    domain: "hq-cups.abc.inc",

    httpBindingURL: "http://localhost/httpbinding",

    unsecureAllowed: true

};

And also the user IDs I'm using which I got the the sandbox 'spider diagram' area:

user01/cisco1234.

Can you see what I am missing here?

The HTTP REST exchanges are listed below.

Regards,

Mark.

Request

  1. <body xmlns="http://jabber.org/protocol/httpbind" xmlns:xmpp="urn:xmpp:xbosh" hold="1" ver="1.9" from="user01@hq-cups.abc.inc" to="hq-cups.abc.inc" secure="true" wait="30" xmpp:version="1.0" rid="3048865863"/>

Response

  1. <body authid='940DBE5CB' inactivity='60' polling='5' requests='2' secure='true' sid='940DBE5CB' ver='1.8' wait='30' xmlns='http://jabber.org/protocol/httpbind' xmlns:stream='http://etherx.jabber.org/streams'><stream:features><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>PLAIN</mechanism><mechanism>CISCO-VTG-TOKEN</mechanism></mechanisms></stream:features></body>

Request

  1. <body xmlns="http://jabber.org/protocol/httpbind" sid="940DBE5CB" rid="3048865864"><auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="PLAIN">AHVzZXIwMQBjaXNjbzEyMzQ=</auth></body>

Response

<body xmlns='http://jabber.org/protocol/httpbind' xmlns:stream='http://etherx.jabber.org/streams'><failure xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><not-authorized/></failure></body>


Hi - anyone can help on this?

I need to know the user sign-in details configured on Sandbox IM / Presence server in order to get the Jabber demo working.

User credentials I have are rejected (user01/cisco1234).

Regards,

Mark.

My sandbox expired - trying to reserve a new one - earliest dates are showing as 2015!!

Guess some maintenance is being done...?

Hi Mark,

That should not be the case.. Let me check it out and get back to you.

You are booking a 10.5 lab correct?

Joe

Thanks Joe that's correct: 10.5 lab

Can you give any help on the question of user authentication?

Hi Mark,

It seems we are at capacity right now but the date you were given was not correct. You should have got a date this week. We are looking at the scheduler configuration.

Regarding user authentication, are you using a Jabber Client or Jabber SDK sample app? The credentials are correct.

When you are set back up with a lab, we can test the user logins.

Joe

Thx Joe.

Mark,

Quick Question. Do you actually need admin access to your Sandbox Environment (CUCM and CUP servers)or are you just testing from a client side and not too concerned about the infrastructure in the background?

The reason I ask is that we have a CUCM and CUP 9.1 environment shared lab. You do not need to book time on this but admin privileges to the servers is not allowed. This may suit you better.

Let me know what you think and I can provide more information.

Joe

Hi Joe

No we do not - all we need is a to do text-based presence / pair-wise chat sessions / multi user chatrooms.

We are using the Jabber demo to try get going here. So our access is via from our own web application / web server / proxy over the Jabber API.

If we can do that with 9.1 then we will give that a go.

Regards,

Mark.

Thanks Mark,

The Shared endpoint lab will work for you in that case. Let me post some instructions in this thread. I will do so this afternoon. You will be accessing the Shared Endpoint lab through the Cloudshell portal.

Joe

Hi,

Login to the Sandbox portal and click on the "Shared Endpoint Lab" and select "reserve now" It will ask you to reserve for 2 hours. Hit the reserve button. You are not actually reserving anything but activating the session.

The Shared endpoint page will load and you will see a list of devices on the RHS (press the "commands" button to bring up this tab if it does not load automatically

This is the list of devices that can be created for you in the lab. The devices are created dynamically depending on which one you select. Click on "jabber SDK for Windows/MAC" at the bottom of the list. The Run arrow on the right of the command button will execute the command.

The scripting will execute and you will receive an email with your access VPN details and user/device details. If you need another device, please logout, log back in and perform the same as above. A different device will be created that will be associated with your username. If you are using the Jabber SDK, you can select what device to use when you have logged in.

If you have trouble with the above, let us know and we can help out.

Joe

Hi Joe

Bit of help please.

In the 'command output' window it gives me VPN details but these don't work.

I open the URL in IE but it doesn't accept my password, the 'previously assigned' mentioned below, I took to mean the password I used to login to the sandbox. There are no details in the email re passwords.

The command output is listed below.

Obviously when I get access I will need to logon to the demo with a user id / password, but for the login I only see a password below - I would imagine it needs to supply a user ID and a password - that's what the demo app requires.

Regards,

Mark.

====================

Link to download AnyConnect client available in Instructions tab on the left. See below, or check email, for credentials.

20/10/2014 15:55:28

Thanks for requesting Shared lab access. Your access information is as follows:

VPN Access:

URL: https://64.103.37.6

Username: mark.kilby

Password: [Previously Assigned]

Once VPN is established, you can connect to your device with the following:

Username:

Password: cisco1234

Device:

Directory Number:

Reservation will end shortly. To register a different device please return to DevNet Labs and repeat this process.SUCCESS: Cisco Unified Client Services Framework added for user mark.kilby

Hi Mark,

Apologies for the delayed response.

For some reason, the automation is not providing you with the CSF username. I am looking into this but I will create two accounts for you manually and send the details to you personal email.

As for the "previously assigned", this means that your VPN credentials were created the very first time you accessed the shared sandbox. these do not change and are only sent out to you once. Again, I will create the VPN credentials manually and send then out to you email.

Regards,

Joe