To reapply policies in Sametime 7.5 you simply have to restart the stpolicy service – no need to restart the entire server. Sweet!
Tag: sametime
Reverse engineering the Sametime 7.5 business card servlet

Reading in chapter 9 of the Sametime Administration PDF I learned of the UserInfoServlet configured through the UserInfoConfig.xml document in the Domino directory (in the filesystem mind you) on the Sametime 7.5 server. In this post I will not go into the different configuration files but simply describe how the UserInfoServlet works, which parameters it takes and what it returns. You can use this, as I did, for troubleshooting.
Please note: All the information in this post was reverse engineered so use it and treat it accordingly.
Just to get it out of the way. The reason why my initial configuration didn’t work was that the Sametime client contacted a hostname that wasn’t configured in the Internet Sites view in the Domino Directory (I guess it resolved the ip address or hostname wrongly in some way). Anyways – the way to configure the phote part of the business card is perfectly descriped on Grant Binghams blog and in the Sametime 7.5 Administration PDF.
The UserInfoServlet
It appears that the servlet takes 4 arguments:
- operation (valid values are: 1, 2, 3)
- userid (the username of the user as listed in the ($Users) view)
- setid (valid values are the configured blackbox sets; usually 0 and 1)
- field?? (with ?? being a an incremental number starting a 1)
The operation parameter is the main parameter that controls what the servlet tries to do and what other parameters are required. See below for a description of each operation.
operation=1
This operation is used to get value for specific fields based on the name of the field the Sametime client uses. You can request information from more than one field at a time. The valid names of the fields are the ones from UserInfoConfig.xml and hence the field names shown when you use the operation=2 parameter.
URL syntax: http://hostname/servlet/UserInfoServlet?operation=1&field1=<field name>&userid=<username>
Example URL: http://hostname/servlet/UserInfoServlet?operation=1&field1=Name&field2=Title&userid=jdoe
<?xml version="1.0" encoding="UTF-8"?>
<userinfo>
<user id ="lekkim">
<field name="Name" type="text/plain">John Doe</field>
<field name="Title" type="text/plain">Marketing Manager</field>
</user>
</userinfo>
operation=2
This operation gives you a list of the fields configured for the required field set. If you leave out the optional setid-parameter a value of 0 will be implied.
URL syntax: http://hostname/servlet/UserInfoServlet?operation=2&setid=<set id>
Example URL: http://hostname/servlet/UserInfoServlet?operation=2&setid=0
<?xml version="1.0" encoding="UTF-8"?> <userinfo> <field name="MailAddress" type="text/plain" /> <field name="Telephone" type="text/plain" /> <field name="Company" type="text/plain" /> <field name="Title" type="text/plain" /> <field name="Name" type="text/plain" /> <field name="Photo" type="image/jpeg" /> <field name="Location" type="text/plain" /> </userinfo>
Example URL: http://hostname/servlet/UserInfoServlet?operation=2&setid=1
<?xml version="1.0" encoding="UTF-8"?> <userinfo> <field name="Photo" type="image/jpeg" /> <field name="Name" type="text/plain" /> <field name="Title" type="text/plain" /> <field name="MailAddress" type="text/plain" /> <field name="Telephone" type="text/plain" /> </userinfo>
operation=3
This operation is the workhorse of the servlet and the one that the Sametime client calls. This operation returns, as the others do, a XML document containing the business card of the requested user. The photo data is base64 encoded and the type attribute indicates whether it is a jpeg or a gif image.
URL syntax: http://hostname/servlet/UserInfoServlet?operation=3&userid=<username>
Example URL: http://hostname/servlet/UserInfoServlet?operation=3&userid=jdoe
<?xml version="1.0" encoding="UTF-8"?>
<userinfo>
<user id="John Doe/Acme">
<field name="MailAddress" type="text/plain">jdoe@example.com</field>
<field name="Telephone" type="text/plain">555-9921</field>
<field name="Company" type="text/plain">Acme Corp.</field>
<field name="Title" type="" error="UNAVAILABLE"/>
<field name="Name" type="text/plain">John Doe</field>
<field name="Photo" type="image/gif">R0lGODlhoQCjAOf==</field>
<field name="Location" type="" error="UNAVAILABLE"/>
</user>
</userinfo>
Re: Multiple communities in Sametime 7.5
As noted in my previous post I have added the IBM SIP community as an extra community to my Sametime 7.5. One of my coworkers tried to do the same thing and it appears that if your IBM id is your e-mail address you should not append @<country code>.ext.ibm to your IBM id when signing in. Nice to know.
Multiple communities in Sametime 7.5
How nice is this! Now that we are running Sametime 7.5 internally I have configured an additional Sametime community by following the guidelines from Chris Pipin. This means that I now have my uncle from IBM in Denmark in my Sametime client as well. Nice! Only caveat is that you cannot lookup the address of the contact using the “Lookup…” button as you would expect. You have to simply enter the address, check “External address” and click the “Add” button.
There was a caveat for him to add me as well. My IBM id is “lekkim” but he has to append “@dk.ibm.ext” to the IBM id in order for him to find me.
Does anyone know it this means that bloggers can IM each other using the IBM Sametime community? I’m up for the test so feel free to try and add me (lekkim@dk.ibm.ext) to your Sametime client.
Happy IM’ing!!
Sametime server upgraded to 7.5
Well I took the plunge and upgraded our internal Sametime 3.1 server to Sametime 7.5 and it was almost a dissapointing experience. Not a single issue. Not one… It was super easy – click, click, click and the server was upgraded without any problems – all users retain their buddylists and some hasn’t even noticed the upgrade. Only a few users have had the new client installed but we will be rolling the client out soon as well.
Although it was a very pleasant experience I did notice two things:
- When running the UI in Danish the “Paste” command in the Edit-menu is incorrectly translated to “Klistre”. The Danish translation in other programs is “Sæt ind”.
- If attempting a file transfer of a file that exceeds the maximum filesize set in the policy, the filesizes are shown in bytes and not in megebytes as one would expect (see image below).
Apart from that – Happy Sametime Friday!! 🙂
developerWorks article: Discover location awareness in IBM Lotus Sametime V7.5
"No matter where you are IBM Lotus Sametime V7.5 can find you with its new location awareness feature. Learn about the server-side and client-side mechanisms for location awareness and get a peak at a plug-in that uses location data to bring you local attractions."
Problems with Sametime client in Notes 6.5.1 against Domino/Sametime 7
Just a mental note to self. Don’t try to use the embedded Sametime client in Notes 6.5.1 against a Domino/Sametime 7 server. It does not work. Upgrading the client to Notes 6.5.5 solved the problem.
Error message was the well-known “Incorrect password” (0x8000003).
Sametime 7.5 mentioned again on “Eclipse in the News”
“IBM has rewritten Sametime to run on the Eclipse Rich Client framework, open-source software for running desktop components. This means that the instant-messaging application can host Eclipse-compatible programs, Bisconti noted.”
Via Eclipse in the News (news.com article): IBM ties Sametime IM to Office
EclipseZone: IBM Sametime Instant Messaging To Be Eclipse Based
The word is spreading:
“Although to some us (thanks to little drop-ins by Chris Aniszczyk) this may come as no surprise, it has become official that the Sametime instant-messaging client is now built throug the Eclipse Rich Client platform components.”
The post also mentions the new Sametime 7.5 Microsoft Office features mentioned by Ed Brill yesterday:
“Sametime 7.5, which will be available in about two months, will allow people to use instant-messaging features without having to leave Office applications. For example, a person could open up an e-mail inside Outlook and find out whether the sender is available on Sametime and where he or she is located.”
Full post @ EclipseZone: IBM Sametime Instant Messaging To Be Eclipse Based
I have a bone to pick with the developer who decided on the Sametime error messages…
Who decided that the error message shown when trying to connect to a “limited use” Sametime server using the Sametime Connect client should be “Wrong password”? I would really like to meet that developer in a dark alley! We have spent the better part of a day trying to figure out why some clients could connect and some couldn’t. Arrgghhhh… (Of cause it would have helped if the customer had told us which Sametime server was installed but still.)
While we’re rounding up Sametime developers – maybe we should try to find the person who decided that Sametime should use hex error codes you can only find in the API documentation!
Sorry for the rant.