Wednesday, July 26, 2006

AJAX-based Sametime client. Beta release soon.

Finally an alternative to STLinks. No Java, ActiveX or other plug-ins required.

Botstation Technologies will soon release a web-based client for Sametime messaging.
In difference to STLinks, this client does not require Java or ActiveX components installed on the user's computer.

With STAJAX users can pick online people from their buddy list and start interacting with them through text chat. Users can also change their own online status. More features might be included in the final release.

The client-side of the solution consists of a single HTML file which contains JavaScript and CSS. The background logic is done in a servlet. The servlet can be run in Tomcat, Domino, Websphere and other servlet engines. Client uses AJAX technology for data exchange with servlet and generates very little network traffic. Updates of messages sent to web client from other web clients and stand-alone Sametime clients are almost instanteneous. As the client is HTML-based, it is easy to change it's GUI and add/remove functionality. Same JavaScript functions can be called from Flash applications.

Here comes a screenshot of beta release taken in Firefox:
Sametime AJAX
Click image to view full size

Saturday, July 22, 2006

Free 10-week AJAX Programming Course

In this online course, learn the basic concepts of AJAX and how to use the various AJAX frameworks and toolkits like Dojo, jMaki, Google Web, and AJAX-enabled JavaServer Faces components.
The 1st session will start from August 4th, 2006.

Thursday, July 20, 2006

Mobile client for Sametime

Lotus Sametime 7.5 is expected to be available in the third quarter of 2006. Mobile support for Lotus Sametime is expected to support RIM BlackBerry, Nokia and Windows Mobile devices with expected availability in the fourth quarter of 2006. Integration with Microsoft SharePoint, Outlook 2000 and above and Office XP and above is expected at the beginning of 2007.

Wednesday, July 19, 2006

One of the differences in Java features between Notes R7 and Notes R6

After testing one of my Java applications in Notes/Domino R7 I discovered that it handled some of the Java operations differently than in Notes R6. The difference caused an error and could potentially lead to crash.

The old code was something similar to this:

MyClass MyObjects = new MyClass();
Document doc = MyObjects.db.getDocumentByUNID(unid32)

db is a public variable declared in MyClass. "MyObjects.db" is a valid object and is accessible from the code. The only thing that doesn't work is getDocumentByUNID function. This have however worked without problems in Notes R5 and R6.

The solution is to declare the database object in the same scope where you call the getDocumentByUNID function.

Database db = session.getDatabase(servername, dbpath);
Document doc = db.getDocumentByUNID(unid32)

Tuesday, July 18, 2006

Sametime 7.5 client released again

Sametime 7.5 client can now be downloaded again. Here is a link (thanks to
The download size is 52 MB, but the installation went surprisinglty fast. To use the demo server and download the client, you can register here:

Problems I encountered during the first 10 minutes:
1)During the installation, the default Sametime server( is suggested automatically, but when the program is started I had to enter it manually again ( because the server field was empty.
2)When the client is started for the first time, it asks to enter the name of my Sametime community... errrhhh.. Sametime what?? Community? Give me a break, you are lucky if I know my login name! I left that field empty and it worked fine.
3)The client uses Swedish language (OS language) for all menues and configurations, though I chose English in the settings (File-Settings-Language ..or whatever it is in English) and restarted the client.
4) I could not find how to switch to another username. Took me 5 minutes to figure out that this can be done by hmmm... removing current password (username can not be removed), thus causing client to ask again for a password, where I have a chance to reset user. It asked if I want to remove the current buddylist, I sensed that it would not dare to remove it from the server and called the bluff.
5) When I tried to add a new contact and typed "andrei k", it did not presented the list of matching contacts, I had to input the full name "Andrei Kouvchinnikov"

Other than these 5 things, I have nothing to complain at yet.

Some useful features in 7.5 client:
* You can change fonts and colors of the text parts of the message.
* You can use smiley pictures.
* You can insert screen captures directly into chat window.
* Time stamps for messages in chat window is rather usefull.
* Spell check of the message.
* Connect to several sametime servers at once.

I tried to test voice chat functionality, but it lloks like demo server does not support it, as the option to start a voice chat is missing. Will try later on another server. Here is a link to one post which has more info about voice chats:

Friday, July 07, 2006

Lotus Notes Java agent for consuming a Web Service

Here comes a little addition to the tutorial I wrote for IBM developerWorks. Tutorial has several example of using MSSOAP from LotusScript, but no examples of service consumer as Java agent. So here comes a Java consumer created from code in the WSIF stand-alone example.
There are several other frameworks to call Web Services from Java, some of them are loading much faster than WSIF and Apache SOAP, but WSIF is very easy to use. Take a look at kSOAP if you want a faster initial loading.

Here is the database with the example agent:

How to setup the example:
1) Download WSIF framework and unzip it
2) Copy all JAR files from the WSIF's \lib directory into Notes's \jvm\lib\ext directory.
3) Copy the example database into data\ws\ catalog.
4) Open the database, do "Preview in web browser" . Then choose Actions menu and run "javaconsumer" agent.
You will see the output of the agent in the Java debug console window.

Start Notes client without typing password

In some situations it is required to start Notes automatically without entering the password. Such situation can be locally running agents on a Notes client. Changing password to empty string is often not a good solution for different reasons.

But there is a solution for this problem. Using extpwd example from Domino C API toolkit it is possible to accomplish this task.

I've compiled the example and you can try it on your Notes client.

Steps to setup the solution:

1) Copy nextpwd.dll to the Notes program directory.
2) Create a file called password.txt in the notes\data directory and type the Notes password there.
3) Add line EXTMGR_ADDINS=extpwd to notes.ini

Now when you start Notes client, it will not ask you for password.