A journey in IBM Collaboration Solutions in SouthWest Europe
Romain Lienard 2700042GW9 RLIENARD@fr.ibm.com Tags:  mobile android proxy iphone api dev sample apple python sametime ipad 4 Comments 1,335 Visits
Romain Lienard 2700042GW9 RLIENARD@fr.ibm.com Tags:  kudos gamification connections badge 610 Visits
ISW, an australian IBM business partner, have developed an IBM Connections extension called Kudos.
So with Kudos you can give users specific rewards (badges) as soon as they meet some criterion. And you can create badges for pretty much everything !
On top of that users can access various ranks, depending of their use of the platform (is the user a newbie or a power user ?) :
Kudos is bundled with hundreds of pre-build badges and ranks, but you can easily create your own in a few minutes. All you have to do is write your own metrics using the metrics configurator admin widget, and create your new badge or rank using the metrics you created previously :
Thanks to Adam Brown from ISW, Kudos is now installed on our demo platform. So don't hesitate to contact us if you want more information regarding IBM Connections and Kudos.
Romain Lienard 2700042GW9 RLIENARD@fr.ibm.com Tags:  events api lc3 invitation spi profiles howto sms connections 1 Comment 2,150 Visits
Note : this entry mainly rely on this official wiki about IBM Connections Event SPI
What is SPI
So first of all, what is a SPI ?
While APIs are prebuilt functions bundled with a program that you can call from the outside world to interact with this program, SPIs are entry points that the program exposes to you, so that you can customize the behavior of a flow. Each of these entry points will be fired at a specified moment. In other words, Connections Event SPI allows third parties to consume event data generated by IBM Connections
Let's take this simple example :
When you invite someone into your IBM Connections network, a mail is sent to your colleague "[Profiles] You are invited to join my network"
=> What if your colleague don't have a smartphone and that you want to send him a SMS in order to notify him ?
These kind of things are possible using the SPIs. In fact, each time an event occurs or is going to occur, you can intercept it. Blog creation, comments, tag, file delete, everything can be intercepted after the event occurs, and sometime you can even intercept it before. And for each event, you can write an Event handler
Intercepting events is usually done after the event occurs, even if intercepting events before they really occur can be useful to change some data of the event on the fly (eg. for moderation purpose)
You will need also to determine if you want to handle your event synchronously or asynchronously. In the synchronous mode, the flow is stopped as long as your event handler doesn't terminate. Otherwise the flow continue its normal process but your event handler is called in parallel (= in another thread)
Here again, it's pretty simple to determine if your event handler must be synchronous or asynchronous. My advice is to always use the asynchronous mode, except when synchronous mode is really required (eg. a validation step which can alter the event data, or cancel the event)
Then you'll need to find the name of the event you want to intercept. At this step, your favorite friend will be this page
And last not but not least, an event is produced by an application. Applications can be Profiles, Blogs, Forums, Communities, News, etc.
OK, let's recap all of these thing : an event handler can be synchronous or asynchronous, can occurs before or after an event, and is mapped to an event name and an application.
We can now write our very first event handler ! My event handler is for demonstration purpose only, and will require an android phone. But even if you don't have an android phone, you can follow this tutorial to do your own event handler next. (You can also ignore the Android part, if you don't want to be afraid)
Setting up SMS Gateway (optional step, for demonstration purpose only)
My event handler is pretty simple : each time someone invite someone else on his IBM Connections network, I'd like to receive a SMS notification. To stay clear, I did not write a full notification system, which will read the phone number of the profile's person, etc. Everything will be hard coded.
Moreover, I do not have a SMS gateway, so I wrote my own using my android phone, the python Language, and the SL4A application (Script Layer For Android). You can install SL4A on your smartphone using this link
From the SL4A application, install the python interpreter, plug your phone via USB, then copy this file in its memory (folder is usually /sdcard/sl4a/scripts)
Launch this file from SL4A, then a web server should now be running on port 8080.
To access it from your computer, you have to install android sdk first, plug your phone via usb, then do a adb forward tcp:12345 tcp:8080 in a console window. You should now be able to open a web browser and go to http://localhost:12345/, the server on smartphone's side should answer you. Our event handler will just have to do a HTTP POST to the server in order to use it (a phone number and a message)
Implementing the Event handler
Start your favorite java IDE, create a simple java project, and in your project properties add the IBM Connections SPI library : locate a copy of the lc.events.spi.jar file from within the root installation directory of any of the IBM Connections applications: Activities, Blogs, Communities, Bookmarks, Files, Forums, Home Page, News, Profiles or Wikis.
Create a new class which implements com.ibm.connections.spi.events.PreEventHandler or com.ibm.connections.spi.events.EventHandler depending if you want to intercept the event before or after it occured. Override the handleEvent method (your IDE should do it for you when you implements PreEventHandler or EventHandler) :
Deployment and mapping of the event handler
Once you are ok with your code, you can compile it then export it in a jar file. You'll have then to put it as a new library in the Websphere Shared Libraries, then add the library to application which are going to use the library.
The documentation of this process is pretty easy to follow, even if you are not familiar with Websphere shared libraries mechanism, so I'm not going to repeat It. It can be found here
Be careful here, if your event handler is asynchronous then it's always the News application (News.war) which is going to instanciate your event handler, even if it is mapped to a Profiles source event. So the shared library that you are going to create must be used by News, not Profiles.
Our events-config.xml file now looks like this :
<postHandler enabled="true" invoke="ASYNC" name="InvitationHandler" class="com.ibm.rlienard.lc3.InvitationHandler">We use ASYNC because our handler is asynchronous. You can put whatever you want in the name field, but be sure to put the good class name in the class field. We are listening for all events incoming from PROFILES application and an eventName profiles.colleague.created
Note 1 : I read first the Events Reference of Profiles Application to know what parameters I should use. The complete events reference is available here
Note 2 : You can write a super event handler by omiting eventName, source, or type (ex. <subscription source="PROFILES" type="*" eventName="*"/> )
Do a full resynchronize of your websphere nodes, then restart the server. You're done.
Your event handler will now be fired by Connections each time someone send an invitation to someone else to become his colleague, congratulations !
If you have any questions or comments, don't hesitate !
Romain Lienard 2700042GW9 RLIENARD@fr.ibm.com Tags:  api connections mail notes lotusscript button lotus xml 2 Comments 1,173 Visits
This is the second part of my previous blog entry "Fol
In the same spirit, I wanted to do a button that let people invite me into their network in a simple click, because it can be a good way to drive adoption of Connections.
Here again, all you have to do is :
1 - create a button in your mail, via Crea
2 - Specify a label for your button, select LotusScript instead of Formula
3 - Copy & paste this code, after changing the YOUR_EMAIL with your email :
Sub Click(Source As Button)
Save your document, click on the button, and voila ! (note : you'll be prompted for your intranet password)
If you want to use this button every day, there is unfortunately no way to put it on the signature file BUT (thanks to Herbert Hilhorst for the tip) you can copy & paste your signature and the button you put on it from the current mail to the signature richtext editor (Mor
Romain Lienard 2700042GW9 RLIENARD@fr.ibm.com Tags:  xml notes connections button lotus lotusscript api 2 Comments 1,053 Visits
My colleague just asked me to develop a button in Notes mail in order to easily follow a community.
IBM Connections API can be used with Lotus Notes and its LotusScript programming language in order to facilitate some tasks for end users.
So with some Notes support from Herbert Hilhorst, I wrote a piece of LotusScript that automatically follows a community with a simple click. The authentication is done directly in the Notes client
All you have to do is :
1 - create a button in your mail, via Create>Hotspot>Button.
2 - Specify a label for your button, select LotusScript instead of Formula
3 - Copy & paste this code, after changing the CommunityUID (here it's 5bf86449-cd87-4e02-bef5-a24f24408723) according to your needs :
Sub Click(Source As Button)
Save your document, click on the button, and voila !
Vincent PERRIN 1200004A33 Vincent.firstname.lastname@example.org Tags:  customization connections profiles techtalk 508 Visits
Find out about customizing IBM Connections Profiles configuration -- both with data and user interface -- with this case study.
This implementation configured Profiles with multiple LDAP repositories, imported extension attributes, and customized the UI to provide a smooth running interface for social business.
Speaker: Stephen Power, ICS WW Technical Sales Team Specialist
Host: John Allen, ICS Sales Enablement Specialist
When: Wednesday, November 2, 2011 at 11:00 AM EST (90 minutes)
To have more information, go to PartnerWorld Event Finder : http://www-304.ibm.com/partnerworld/wps/mem/events/finder
An interesting read as a supplement to that call : link
Vincent PERRIN 1200004A33 Vincent.email@example.com Tags:  sametime sut-lite dma polycom av audio-video 1,192 Visits
As a supplement to my previous entry regarding new IBM/Polycom integration, I've just finalized a "deployment scenario" entry in Sametime Wiki.
That entry will provide you more informations and an insight of what you can easily do with a Sametime/Polycom infrastructure.
Deployment Scenario Architecture :
Link to the article : link
Vincent PERRIN 1200004A33 Vincent.firstname.lastname@example.org Tags:  android collaboration tablet lotus traveler 1,185 Visits
Tablets are everywhere. Tablets are a new way to interact with the world, but also a way to interact with each others via collaboration tools.
Lot of solution vendors has his own tablet... Different technologies exists to support these tablets as well as operating systems (iOS, Android...)
The IBM strategy is to provide an easy collaborative experience on all these environments.
This afternoon, I tested IBM Lotus Traveler 8.5.3 on an Acer Iconia Tablet based on Android 3.x.
As you can see, Lotus Notes Traveler on Android has been given new home page widgets for mail and calendar.
Both widgets come as “small” and “large” , which means 4×2 and 3×7.
Lotus Notes Traveler on Android now supports multi-line signatures.
As you can see, others IBM Collaboration applications exists/runs on that environment like IBM Sametime & IBM Connections...
Vincent PERRIN 1200004A33 Vincent.email@example.com Tags:  voice video uc jabra headsets 666 Visits
This afternoon, I had a meeting with Jabra. I had an interesting presentation of the new Jabra UC portfolio.
Jabra Unified Communications VOICE headsets are made specifically for large-
The key points of that new portfolio are :
Personally, I found the concept of the Jabra UC Voice 250 very original with a light and discreet behind-the-ear design...
The integration between Jabra Headsets and IBM Sametime is seamless. In each Sametime, Sametime SUT Lite, Sametime SUT deployment, a Jabra haeaset is a good companion...
Vincent PERRIN 1200004A33 Vincent.firstname.lastname@example.org 395 Visits
You have a Domino, Sametime, Quickr, Traveler or even Exchange or Sharepoint infrastructure.
That could be a solution to monitor in one signle place that complete infrastructure...
A single and simple dashboard to have a quick insight of the health of your infrastructure :
Want to have more details : link