Pages

Tuesday, July 24, 2007

LCS integration and Notes

View Comments
I'm diverting this week my attention from Connections to Notes as we are also trying to sell Lotus Notes 8 at the customer.  Our first attempt to integrate LCS with Lotus Connections has not gone well as my team lacks the AJAX skills to get the Microsoft AJAX toolkit going.  So for now, we'll integrate Lotus Connections and LCS using the Microsoft Office Presence Controls.  These controls can also be used in Notes 8!

As you know, the customer has already set as a standard the use of Microsoft Live Communication Server.  And it looks like a business partner has already figured out how to do this integration.  From what I can see in the video, it's very simple.  As long as users have the LCS client installed on their computer (or Microsoft Office 2005 or later), all it takes to do this is 2 changes to the mail template (the NTF file).  Very cool, huh??  This is how it looks on the Notes 8 basic client:



We are going through the details at the customer site this week and will post back results on how the intragion works out.

Friday, July 13, 2007

Are you ready for this? Lotus Connections person card in Sharepoint

View Comments
Alright, so I finally got the BusinessCard from Lotus Connections Profiles integrated into Microsoft Sharepoint!  How??  Well, that's for me to know and for you to find out!!!  I'm actually bribing management right now to see if I can get at least a $30,000 pay raise.


 
Ok, I guess I should stop daydreaming, huh?  Let's talk about how this works.  First, as I mentioned in my previous post, most of the HTML for Sharepoint sites is generated by a Windows DLL.  I, of course, got really frustrated that I would have to code my own DLL in order to get this going.  I immediately started to use my network to see if there were any Sharepoint resources within IBM who could help me do this.  I eventually ended up with Jeff Calow, who is an STSM for Composite Application development.  He suggested that instead of doing .NET development, I instead use JavaScript and the DOM (document object model) to parse out the resulting HTML and inject the necessary JavaScript.  I wasn't too happy with the idea, but I figured "this is a POC and we just need something quick-n-dirty" so this should work.

Suneil Berajawala had provided me with a test page that quickly explained how to expose the Business Card in a typical web page.   All that's required is the user's email address and 2-3 lines of JavaScript.  One of those lines of code, has to go in an HTML's HEAD element.  The problem is that Sharepoint doesn't provide a way for me to insert a HEAD element (every time I did, the server would crash because it wasn't able to compile the ASPX page).  Anyway, after pinging Suneil for a while, I found the following tag in the page:

<asp:Content ContentPlaceHolderId="PlaceHolderAdditionalPageHead" runat="server">

and I asked myself:  "Could this be the place where I would insert stuff that would typically go in an <HEAD> element?".  I gave it a try and it worked!!!!

Thursday, July 12, 2007

Wow, Sharepoint is horrible

View Comments
So I'm still at the customer site and one of the things that they want to see is the people card exposed within Sharepoint.  In other words, when somebody sees my name as:

Luis Benitez

they can hover over my name and click to see my person card.  Very cool, huh?  See, it works easily on Blogs!!!!

Well, all it takes is 2-3 lines of HTML/Javascript to get going.  For any web application which follows the standard MVC (Model-View-Controller) paradigm, this should take no more than 5 minutes to implement!  That's because I can simply go into 'View' and customize it to add the required HTML/JavaScript around it. 

With Sharepoint, however, all the HTML creation is done on the server, usually as part of a DLL.  This means that it's necessary to have an ASP.NET developer create/customize a DLL in order to have that generate the proper HTML/JavaScript.  Why does Microsoft make this so hard ?  Or, how can customers like Microsoft so much when it's so hard to integrate with other things!!??!!

I'll continue investigating this and will report back on progress. 

Monday, June 25, 2007

Loading profiles data

View Comments
Today, I started to configure IBM Tivoli Directory Integrator (TDI) to load the employee data into the Profiles feature.  One challenge is that the customer is only giving us access to their development LDAP which only contains 1% of the company.  This will make it hard for us to show the value of Profiles and tagging with such a limited set of data.  We are pushing the customer to get us more information.

Another challenge is that we are using Sun ONE LDAP as the LDAP provider and this is not yet supported.  In order to get this to work, we had to make two changes:

  1. Modify the WIM properties
    1. Find the wimconfig.xml file under D:\WebSphere\AppServer\profiles\AppSrv01\config\cells\<cellName>\wim\config
    2. Create a copy of the file
    3. Open the file with your favorite editor
    4. Add this line to the <config:attributeConfigurations> element of <config:repositories>
      1. <config:externalIdAttributes name="nsuniqueid"/>
  2. Modify the TDI properties (map_dbrepos_from_source.properties)
    1. Ensure that PROF_GUID maps to nsuniqueid
In other news, I started an internal team blog for the community's core team.  We intend to use this blog to keep track of meeting notes and disseminate news to the community without having to spam your inbox.

Wednesday, June 20, 2007

Presence awareness with Microsoft Live Communication Server and Lotus Connections

View Comments

I’ve been investigating ways to add presence awareness to Lotus Connections using Microsoft’s Live Communication Server instead of Lotus Sametime. I’ve been using Dogear and Google to find resources on this topic. Below is a result so far of my research. There are two high-level ways to approach this:



  1. Use the Microsoft Office Communicator 2005 SDK


  2. Use the Microsoft Communicator Web Access AJAX SDK



Option 1

- Relies on DLLs installed on a user’s workstation to enable presence awareness in applications such web.

Pros:

* Very little code to write

Cons:

* Only works on Windows workstations

* Requires a DLL to be installed (or Microsoft Office 2003 installed and configured to talk to the Live Communication Server)

* Can’t customize the user interface (provided by the DLL / ActiveX object)



Option 2

- Relies on AJAX and JSON calls to access Microsoft Communicator Web Access (CWA). This SDK allows developers to write their own IM client.

Pros:

* OS-independent

* Browser-independent

* Customizable UI

* Already used in other parts of GM

Cons:

* Requires more code than option 1 — I believe it can be generalized though…



Based on this, it’s looking as option 2 is the preferred route. I’m going to develop some sample code and test it out today and see if it works. I’ll keep you posted!