Category Archives: IBM Connections

Social Connections 9 In Germany – Only Three Weeks Away

The next big IBM Connections Community event – Social Connections 9 – takes place November 05/06 in Ehningen / Germany. The theme of the event is “Working out loud” and it offers tons of sessions all around IBM Connections and Adoption in the social software world.

This will be my fifth Social Connections Event after Zurich, Prague, Stockholm and Boston, for me all of them were great experiences and personally very successful.

I have been working with ESS / ICS / Lotus products since 2000 and I followed many other community members through blogs, forums, web events and tweets, but I rarely had the chance to meet any of them in person. This changed with Social Connections V – I sent my first English session on the topic of scripting in IBM Connections and was accepted. I still can remember the warm welcome of Sharon, Klaus, Stuart, Simon, Femke, Sandra and Tim – it was phantastic!

Some Impressions of Social Connections 8 (Photo ©2015 by Oliver Heinz)

There a some really good ESS events all around the globe, but my focus topic is best covered by Social Connections. I like the agenda with all the different topics it covers: announcements (René Schimmer will show IBM Connections next); Technic (master brains like Victor, Martin and Sjaak will speak); Deployment; Development (e.g. Paul and René); Use Cases (Alan Hamilton); or Adoption. And the best of all there is room to get the speaker personally for deeper discussion during the day and on the evening reception. Best chances for growing the own knowledge.

After “only” attending and speaking up until now, This time Ii got the chance to help organizing this event. So, for the last three months I had the honour of assisting Wannes, Stuart, Simon, Doug, Lars, Martin, Jan, Maria and Femke in creating “Social Connections 9”. It is my sincere wish that you will like this event as much as I enjoyed all the events I “only” participated in before.

This time I am presenting two sessions, one with Victor Toal on IBM Connections Administration and a renewed “Best and worst practises deploying IBM Connections”. I am looking forward to co-presenting with Victor – I think we are a funny, yet dynamic duo with strange German dialects (him Austrian and I Bavarian), but we will (try to) speak in English, so all the people can follow, not only Germans with a fair understanding of the more beautiful German dialects ….

So, this is enough of me, my opinions and an introduction into German dialects – you Can still register for this event and I urge you to if you have not done so yet – think of all the lovely folk you can finally meet and interact with!

Registration is still open and thanks to our great sponsors it will cost you only 179€ (excl VAT), which also covers the admission to the AWESOME gala reception.

What are you waiting for?

Another new feature with IBM Connections 5.0 CR3

Within the fixlist of the new released CR3 of IBM Connections 5 there are several new configuration options mentioned. One of the interesting ones for me is the mobile update parameter AllowRemoveAccount. The default value is “false” and your Connections environment still works before, but what’s changed when you set this to true?

The official documentation is already uptodate and shows us:

When you set this option to true, accounts can be removed from a mobile device without requiring the user to login and without any authorization check. The user is asked to confirm the deletion of an account before it is removed.

So this helps me with my long list of Connections environments on my mobile clients. Until you set this to true you can only remove a profile, when you still can login to this system. I have several environments configured on my mobile which i can’t access anymore, because my user is disabled, or the system is only available within special wifi or network environments. So i’m not able to remove these accounts.

I will set this to true in all environments i have access to, to prevent this behavior.

Please beware of the additional infos in the online help:

If a user has existing accounts that they cannot access and that were created before this feature was available, those accounts cannot be deleted using the AllowRemoveAccount property.

Validation error

After checking out the mobile-config.xml (yes you should always use wsadmin to change config parameters), the parameter was not set in the file. So i added it and saved my change.

After checkIn i got a validation error, first i thought the order of parameters was wrong and so i checked the mobile-config.xsd. Even in the xsd the parameter wasn’t mentioned. So i checked <connections-root>/mobile/mobile/mobile/mobile-config/mobile-config.xsd|xml and there the parameter (and the other new ones) is available. I’m sure that the update was finished successfully without errors, so i checked two other systems (Windows and Linux) with CR3 and there was the same behavior, the new parameters were not copied to LotusConnections-config. After manually copying the xml and xsd i could set the values and after restarting of mobile the new feature was available.

When i enabled the feature the first time and i like the xml validation feature of checkIn and checkOut, so i used wsadmin to checkOut the mobile-config.xml

I haven’t checked if the new parameter useLeadingWildcardForGroupTypeahed with LotusConnections-config.xml works, but it isn’t available in the xsd too and i can’t found it in the complete connections-root directory. Will try the next days.

Using markdown with IBM Connections Blogs

I use markdown since years to create my articles or most of documentation stuff.

It’s really cool to edit the text files on all of my devices, synchronize them fast through various internet services and create HTML, PDF or even DOCX files out of this sources.

Until last week i converted the markdown sources with pandoc and pasted the html code to the different pages, where i need them. So i copy and paste it to IBM Connections, Evernote or WordPress. On WordPress i use a plugin now to render the markdown textes, but for IBM Connections i didn’t found a way.

So why not using the IBM Connections API to post html, or even convert the file on the fly and put the html automatically?

Posting to IBM Connections Blogs with Python

You can read a lot on the IBM Connections API in the [official documentation](http://www-10.lotus.com/ldd/lcwiki.nsf/xpAPIViewer.xsp?lookupName=IBM Connections 5.0 API Documentation#action=openDocument&res_title=IBM_Connections_API_overview_ic50&content=apicontent), i’m not a developer so i need normally practical examples to use this.

How to connect to IBM Connections REST API with Python?

First we need the URL to connect to the Blogs API:

url = 'https://greenhouse.lotus.com/blogs/stoeps/api/entries'

In this case “stoeps” is the blog handle, the blog where i want to add my post. You find the blog handle when you open the blog through your browser and check the url:

getBlogHandle

Now we need to authenticate, Connections API can be used with basic authentication, so we create a base64 encoded string of username and password:

import base64
encodedstring = base64.encodestring('christoph.stoettner@stoeps.de'+":"+'myCoolPassword')[:1]
auth = "Basic %s" % encodedstring

To post we have to use a XML File or XML String, which contains a title and body of our post, the REST service needs a Content-type of application/atom+xml:

xml = '''<?xml version="1.0" encoding="UTF-8"?>
      <entry xmlns="http://www.w3.org/2005/Atom" xmlns:app="http://www.w3.org/2007/app" xmlns:snx="http://www.ibm.com/xmlns/prod/sn">
        <title type="text">That's the title</title>
        <content type="html"><![CDATA[<p>and some text for the body.</p>]]></content>
      </entry>'''

Now let’s connect to the REST service with urllib2 and post the xml string.

import urllib2
request = urllib2.Request( url )
request.add_data( xml ) # add_data changes Method to POST
request.add_header( 'Content-type', 'application/atom+xml' )
request.add_header( 'Authorization', auth )

response = urllib2.urlopen( request )

# let's check return code
if response.code = 201:
    print 'Post successfully created'

Some more

We have seen that we can post a xml with title and body. There are more possible ways to get a html string for our post.

I changed the xml variable to fill two variables with title and body.

postTitle = 'A cool API post to blogs'
postBody = '''<p>This is the body of our Blogs post, we can use html tags here</p>
              <h2>Fill text to show more content</h2>
              <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. In commodo posuere ante, ut faucibus enim sagittis ut. Fusce scelerisque arcu quis mattis fringilla. Pellentesque a est enim. Nam congue sem eget augue porttitor semper. Fusce luctus sit amet ligula sit amet viverra. Cras pulvinar arcu eget velit volutpat, in condimentum nunc luctus. Vivamus vestibulum ante et nisl venenatis consequat. Aliquam ut augue nec lectus sodales eleifend eleifend nec orci.</p>'''
xml = '''<?xml version="1.0" encoding="UTF-8"?>
          <entry xmlns="http://www.w3.org/2005/Atom" xmlns:app="http://www.w3.org/2007/app" xmlns:snx="http://www.ibm.com/xmlns/prod/sn">
            <title type="text">' + postTitle + '</title>
            <content type="html"><![CDATA[' + postBody + ']]></content>
          </entry>'''

You see you can add html code to the variable postBody. You can read from a html file with:

postBody = open('post.html').read()

Or you can convert a markdown file to html:

import markdown2
markdownFile = 'post.md'
postBody = markdown2.markdown_path( markdownFile )

In my script here i added a function to read the first line of the markdown to set it as title and i added a function to find images integrated in the article, upload them to stoeps/api/media and replace the img src= tag.

So this post is completely written in markdown and i posted it through python to Greenhouse. Here is the link to the post.

IBM Connections 5.0 CR3 is available – new feature

Julius Schwarzweller wrote a blog post with a collection of links to CR3 for IBM Connections 5.0 this week. A official update document with new features is missing.

I installed it today (without CCM) and the first new feature i found is “sharing folders” with Communities:

22-07-_2015_21-57-33

As shown in the screenshot only public folders can be added to community files widget.

From files application you can still share a folder with people, groups and communities (but then the folder will be public available too):

22-07-_2015_22-12-05

Social Connections 8 Boston

Social Connections 8 ended some hours ago and first I want to thank the organization team! It was a great job and an awesome conference you built here. The speaker gift was an absolute great idea!

It was the first time Social Connections headed to the United States and the location at IBM Boston was a well made decision. I visited the Boston area the first time and enjoyed all the days.

I already arrived on Sunday evening and had the pleasure to stay with Victor and his family until we headed to Boston. Thanks for the hospitality!

Opening session speaker Susan Livingston showed great new stuff around IBM Connections and IBM Verse. I think the most important is the planned function of synchronizing IBM Connections Files based on folders. Nested folder functionality is nice, i know that lots of people asking for this, but in my opinion i prefer to tag files and give me more possible keywords to find content.

2015-04-16 09.45.04

Editor enhancements sound really good, i hope that all these functions will appear in all IBM Connections application, to get a continuous experience.

2015-04-16 09.52.23

During the conference I had two sessions:



But the most important i met lovely people! Most of them i know online since years and we follow each other, discuss on several chats or share information through several blogs.

Oliver Heinz made perfect photos during the event and I’m sure they will be published on Flickr soon.

You can find some of my pictures in my Flickr Album.