10-19-2015 03:11 PM
Hi all,
I am currently using Smack sdk to develop jabber client to login to Cisco Jabber server and facing a difficulty of getting presences of contacts (internal contacts, not federated contacts) in search result. If searched contacts are not in my contact list (not in roster). Could you please give me some idea or direction to achieve this feature? I am appreciated any help.
Thanks,
Phuong Vo
Solved! Go to Solution.
10-27-2015 11:14 AM
The QuickContactController is defined in the jabberwerx.cisco.js file, so make sure this file is include in your web page via <script> tab, e.g.:
<script type='text/javascript' src='../../jabberwerx.js'></script> | |
<script type='text/javascript' src='../../jabberwerx.cisco.js'></script> |
And is actually able to be loaded (you can check your browser's debug page - e.g. F12 in FF - 'Network' tab and refresh the page to make sure jabberwervx.cisco.js is actually loading)
10-21-2015 01:47 PM
I believe you can establish a mutual presence session with an arbitrary user via the jabberwerx.RosterController.subscribe() or jabberwerx.controllers.quickContact.subscribe() methods. Note, if the user is not already on the roster, the default behaviour is for the target user's client to be notified of a presence subscription request, which must be manually or automatically approved/denied before any presence is provided. However, it is common that enterprise IM&Presence server admins enable automatic presence subscription approval for all users, in which case it should just work without the approval steps.
10-21-2015 01:53 PM
The Cisco Jabber server can handle presence queries, but you're using Smack SDK, which is a third party Java SDK. You'd have to ask this question of the Ignite Real Time (I think that's the name) people. That API probably has its own approach to querying the presence of people not in your personal roster, maybe equivalent to the quick contact approach described by David.
10-27-2015 10:53 AM
Hi Nick,
Since there is the only one choice for me to work with Cisco Jabber server is using CAXL library, so we did enable BOSH server. I run the demo, it worked fine. So I was going to implement for getting contacts' presence that are not in contact list. Base on The CAXL Book :: Chapter 4 - Contacts and Presence document I need to have a QuickContactController object as implement below:
var client = new jabberwerx.Client('basic chat');
...
var quickcontacts = new jabberwerx.cisco.QuickContactController(client); //throws exception here
//connect to server using username, password and arguments specified above
client.connect(jabberwerx.$("#username").val() + "@" + demoConfig.domain,
jabberwerx.$("#password").val(), arg);
However, it always throws exception on creating QuickContactController object with message "Cannot read property 'QuickContactController' of undefined". Can you point me out what I did wrong?
Thanks,
Phuong Vo
10-27-2015 11:14 AM
The QuickContactController is defined in the jabberwerx.cisco.js file, so make sure this file is include in your web page via <script> tab, e.g.:
<script type='text/javascript' src='../../jabberwerx.js'></script> | |
<script type='text/javascript' src='../../jabberwerx.cisco.js'></script> |
And is actually able to be loaded (you can check your browser's debug page - e.g. F12 in FF - 'Network' tab and refresh the page to make sure jabberwervx.cisco.js is actually loading)
10-28-2015 10:53 AM
Thanks for your help. This feature works by using CAXL library! Now I don't know how to use this library to my project since it is java base. Thank you for all of you guys help.
Phuong Vo
10-27-2015 11:14 AM
Hi Nick,
I got it, I need to add the reference to jabberwerx.js to basicChat.html
<script type="text/javascript" src="caxl/jabberwerx.js"></script>
Thanks,
Phuong Vo
10-21-2015 06:21 PM
Thanks dstaudt and Nicholas Petreley.
For dstaudt's suggession I have to use CAXL library which is an AJAX library but we are base code is in java.
In the mean time I try to post question how to query presences to Ignite Real Time (but most of the time, the answer comes back couple years later!).
Does Cisco have similar CAXL library in java? Please let me know!
Again, thank you very much for your helps.
Phuong Vo
10-22-2015 10:01 AM
Cisco does not provide a custom Java XMPP stack.
Smack does seem to have the ability to do quite low-level XMPP protocol functions, so keep in mind that the basic operation you are looking for is based on the XMPP Subscribe mechanism:
10-22-2015 11:26 AM
Hi dstaudt,
I have response on " does Smack API support query presences of non-contact list?" as following:
"... there is no such thing as „presence queries“ in XMPP. I’ve worked with Smack API for 4 years and I never saw anything like that."
And my question is presences of contacts NOT IN CONTACT LIST (NOT ROSTER CONTACT), meaning the contacts are not subscribed. If contacts are subscribed, I all ready know their presences.
I see the Cisco Jabber desktop and mobile clients have this feature (presences of contacts not in contact list), do you know what SDK that they use? We bought Cisco Jabber server, I hope that we can have that SDK.
Thanks,
Phuong Vo
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide