Dragging Sametime buddies around

I have been playing a little with the drag’n’drop support in the Notes 8.5 beta client and found out that a VCard is created the you drag a Sametime contact to a place that accepts dragging files to (this probably also works in earlier versions). This means that dragging a Sametime buddy to the desktop will create a VCard for that person. Nice! Dragging the buddy to an e-mail (or other place which accepts text transfer) will create a mailto-link.

Just one of those nice, time saving features…

Sametime Web API disabled by default

Apparently the Sametime Web API is disabled by default (at least as of Notes 8.5 beta 2). This is important since Lotus Connections and other newer wen products from Lotus use the Sametime Web API in the Sametime Connect client / Sametime embedded in Notes for awareness. For more info see this post).

To enable the Sametime Web API do as follows:

  1. Close Notes
  2. Find your plugin_customization.ini File (in <Notes binary directory>/framework/rcp)
  3. Open the file in an editor and toggle the value of “com.ibm.collaboration.realtime.webapi/startWebContainer” from false to true (of the line is not there simply add it)
  4. Save, close and start Notes

The story on Lotus Connections 2.0 and Sametime awareness

So I have been messing a bit with Sametime enabling Lotus Connections the last few days. It all started with the browser blanking out on me once I enabled Sametime Links (stlinks ie. the Javascript API for Sametime normally used to Sametime enable web pages) in the LotusConnections-config.xml (the page source only showing the stlinks HTML). After troubleshooting and fixing the stlinks the Sametime Awareness still didn’t work so I opened a PMR with Lotus.

The answer from Lotus Support is however that Sametime Links is not supported in Lotus Connections 2.0. It maybe will be in Lotus Connections 2.0 but for now it’s not supported. Does this mean Lotus Connections 2.0 cannot be Sametime enabled? Well no! The technology used in Lotus Connections 2.0 is however a little bit different since it uses the Sametime Web API intriduced with Sametime Connect 8.0.1. So Sametime awareness is enabled in the Profiles feature of Lotus Connections if:

  1. You have enabled Sametime awareness in the profiles-config.xml (note it’s not enabled in the LotusConnections-config.xml as is stlinks).
  2. You have Sametime Connect 8.0.1 installed on the local machine.
  3. You are logged into Sametime.

Once I understood this the Sametime awareness works like a charm. Also using the Sametime Web API means that chats you start are started through the Sametime Connect client instead of the plain old stlinks web page. Very nice.

Does this mean that you only can have Sametime awareness in Lotus Connections 2.0 if using Sametime Connect 8.0.1? Well no but it requires that you get in contact with Lotus Support. They can send you a plugin for Sametime Connect 7.5.1, Sametime Connect 8.0, Lotus Notes 8.0.1 and Lotus Notes 8.0.2 (the latter two for the embedded Sametime client). Installing this plugin makes the Sametime awareness work as well.

And just to point it out. This was described in the InfoCenter (see links below) but maybe the LotusConnections-config.xml should have a comment indicating that Profiles would break if stlinks was enabled.

Further reading

Sametime blackbox – update needed for Lotus Connections 2.0

I wrote a number of articles in THE VIEW some time back on writing custom Sametime blackboxes (see the March/April and May/June 2008 issues). If you implemented the Sametime blackbox that read data from Lotus Connections (like it’s done on bleedyellow.com) and you have upgraded (or are planning to upgrade) to Lotus Connections 2.0 this post is for you.

The database schema for Lotus Connections 2.0 has changed slightly in comparison with Lotus Connections 1.0.x so if you’re using a custom Sametime blackbox to read data from Lotus Connections it needs to be changed. The only thing that needs to change is the SQL since the key column in the EMPINST.PHOTO table has been renamed from PROF_UID to PROF_KEY (hightlighted in the SQL below).

SELECT EMPL.PROF_UID UID, PROF_DISPLAY_NAME DSP_NAME, PROF_MAIL_LOWER EMAIL, PROF_MOBILE MOBILE, PROF_PAGER PAGER, PROF_TITLE TITLE, PROF_TIMEZONE TIMEZONE, PROF_TELEPHONE_NUMBER PHONE, PROF_BLOG_URL BLOG_URL, EMPL.PROF_DEPARTMENT_NUMBER DEPT_NO, DEPT.PROF_DEPARTMENT_TITLE DEPT_NAME, EMPL.PROF_ORGANIZATION_IDENTIFIER ORG_IDENT, ORG.PROF_ORGANIZATION_TITLE ORG_NAME, EMPL.PROF_ISO_COUNTRY_CODE CTRY_ISOCODE, CTRY.PROF_COUNTRY_DESC CTRY_NAME, P.PROF_IMAGE PHOTO_BYTES, P.PROF_FILE_TYPE PHOTO_MIMETYPE FROM EMPINST.EMPLOYEE EMPL LEFT OUTER JOIN EMPINST.PHOTO P ON EMPL.PROF_KEY=P.PROF_KEY LEFT OUTER JOIN EMPINST.DEPARTMENT DEPT ON EMPL.PROF_DEPARTMENT_NUMBER=DEPT.PROF_DEPARTMENT_CODE LEFT OUTER JOIN EMPINST.COUNTRY CTRY ON EMPL.PROF_ISO_COUNTRY_CODE=CTRY.PROF_ISO_COUNTRY_CODE LEFT OUTER JOIN EMPINST.ORGANIZATION ORG ON EMPL.PROF_ORGANIZATION_IDENTIFIER=ORG.PROF_ORGANIZATION_CODE WHERE EMPL.PROF_MAIL_LOWER=?

Sametime Awareness Simulator finally available for download

The Sametime Awareness Simulator is sponsored and brought to you by IntraVision the maker of OnTime Group Calendar, the leading provider of group calendar and meeting room booking and managing software for the Lotus Notes platform. Read more at ontimesuite.com.

Announcement

I’m happy to announce that the Sametime Awareness Simulator is finally available for general download from the applications main page (lekkimworld.com/sas). More information such as installation instructions, how-to-use information etc. can be found at that page too.

Comments more than welcome.

Part 2 of the blackbox article published

The second and final article in my series on Sametime blackboxes (Configuring the Sametime business card system, Part 2: Reach more data with custom blackboxes) has been published at the THE VIEW website and will be out in the May/June issue.

Where as the first article primarily focused on configuration and setup of the blackbox system the second article describes how to develop your own custom blackbox implementations. One of the blackboxes I describe is the one I developed for the bleedyellow.com Sametime server. This implementation retrieves business card data from Lotus Connections.

Sametime screencapture tool

Although I have previously been having problems with the screencapture tool in Sametime I still use it a lot. Today I was surprised to discover that it uses the clipboard to transfer data between the screencapture component and the text input box. The clipboard is also used when sending the captured data directly to the chat partner. The fact that any unsent message in the text area is lot when doing that is a topic for another post.

Using the clipboard is fine by then why isn’t the contents of the clipboard restored after submitting? What if I had some important stuff on the clipboard I was using? Hmm… To me this isn’t a nice user experience.

P.S.: I’m running Sametime 8 in Notes 8.0.1.

TwitNotes – deploying in Sametime

Deploying the TwitNotes shelfView (aka sidebar) component in Sametime 7.5.1/8.0 yields a nasty stacktrace from the underlying platform. I thought everything should work across both platforms with everything based on XPD. I haven taken care not to rely on Notes 8 API’s such as the topology service but I guess that would yield a bundle dependency issue and not a stacktrace like this.

Anyone seen similar?

java.lang.NullPointerException: The active part must not be null
        at org.eclipse.ui.internal.expressions.ActivePartExpression.(Unknown Source)
        at org.eclipse.ui.internal.PartSite.initializeDefaultServices(Unknown Source)
        at org.eclipse.ui.internal.PartSite.(Unknown Source)
        at org.eclipse.ui.internal.ViewSite.(Unknown Source)
        at com.ibm.rcp.ui.internal.shelf.ShelfViewReference.createPartHelper(Unknown Source)
        at com.ibm.rcp.ui.internal.shelf.ShelfViewReference.createPart(Unknown Source)
        at org.eclipse.ui.internal.WorkbenchPartReference.getPart(Unknown Source)
        at com.ibm.rcp.ui.shelf.ShelfPage.activatePart(Unknown Source)
        at com.ibm.rcp.ui.shelf.ShelfPage.access$10(Unknown Source)
        at com.ibm.rcp.ui.shelf.ShelfPage$7.handleEvent(Unknown Source)
        at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source)
        at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
        at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
        at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
        at org.eclipse.swt.widgets.Widget.notifyListeners(Unknown Source)
        at com.ibm.rcp.swt.swidgets.SViewForm.internalSetMaximized(Unknown Source)
        at com.ibm.rcp.swt.swidgets.SViewForm.setMaximized(Unknown Source)
        at com.ibm.rcp.swt.swidgets.SViewForm.onMouseUpTitle(Unknown Source)
        at com.ibm.rcp.swt.swidgets.SViewForm.onMouseUp(Unknown Source)
        at com.ibm.rcp.swt.swidgets.SViewForm$4.handleEvent(Unknown Source)
        at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source)
        at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
        at org.eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source)
        at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
        at org.eclipse.ui.internal.Workbench.runEventLoop(Unknown Source)
        at org.eclipse.ui.internal.Workbench.runUI(Unknown Source)
        at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Unknown Source)
        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(Unknown Source)
        at com.ibm.rcp.personality.framework.internal.RCPApplication.run(Unknown Source)
        at org.eclipse.core.internal.runtime.PlatformActivator$1.run(Unknown Source)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
        at java.lang.reflect.AccessibleObject.invokeL(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
        at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
        at org.eclipse.core.launcher.Main.run(Main.java:977)
        at com.ibm.rcp.core.internal.launcher.Main.startLaunch(Main.java:895)
        at com.ibm.rcp.core.internal.launcher.Main.main(Main.java:1313)
        at java.lang.reflect.AccessibleObject.invokeV(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at com.ibm.oti.vm.JarRunner.main(Unknown Source)

Re: (y) becomes _

I think it’s a bug in the chat window display since inserting a space after the emoticon once you have written some more text displays the emoticon.

I did a video of the bug but for some reason Youtube wont convert it so please download it here.

(y) becomes _

Am I the only one where typing (y) in the Sametime chat windows doesn’t result in the yes-emoticon but an underscore instead? We’re seeing this across the office on Notes 8.0.1 Standard.

Update: Now 😀 also turn into an underscore instead of a grin-emoticon and apparently it happens in both ends of the conversation. Restarting the chat doesn’t solve the problem.