Friday, March 21, 2014

How to configure Sametime 9 user photo from IBM Connections Profiles instead of ldap field

Working on Sametime 9 you have to configure user photo in every sametime servers and client.
Usually the userphoto is could be stored insite jpegPhoto LDAP field, or you could use another repository like IBM Connections profile photo. To check and configure the server behavoir, we have to use the Sametime System Console and open the relative server configuration.


Sametime Meeting Server
Out of the box Sametime Meeting Server is set to use  jpegPhoto field inside LDAP by the following 3 fields: userInfoImageAttr, userInfoRedirect, userInfoUrlTemplate


If we like to switch to IBM Connections Profile pic, we have to set true userInfoRedirect and set Connections URL inside userInfoUrlTemplate like this:


Sametime Proxy Server
Sametime Proxy use by default Sametime Business Card who is set inside Sametime Community server configuration where typically you have to use the jpefPhoto field


If we like to switch also here to IBM Connections Profile pic, we have to set the correct URL inside the Sametime Proxy configuration using Sametime System Console


You could retrieve the user's photo passing the correct attribute to photo.do , modifying the URL                eg  /photo.do?uid= or  /photo.do?uid=

If you like to pickup the profile pics from other repository like a webserver.. you could follow this steps on the community server:

  • In the Sametime Community Server, find the UserInfoConfig.xml file.
  • Open the file with a text editor, and add the following tag to the Details section:<Detail Id="PhotoURL" FieldName="PhotoURL" Type="text/plain"/>Copy
  • Restart the Sametime Community Server.
  • Upload user photos into a web server repository, so that users can access the photos using a URL. For example: http://iddirectory.mycompany.com/userphoto/mybuscardpic.jpg


Sametime Connect  - Sametime Embedded
IBM Sametime Connect client or Sametime Embedded Notes client are using the configuration of community server so they check the jpegPhoto field in LDAP directory..



If you don't like to insert (or you could not insert...) the photo inside LDAP , you have to install the Connections Plugin for Notes , or the plugin for  Sametime Connect, and you could find this on  Greenhouse catalog 

The Notes plugin is still up to date with last supported software and installing that you could have also the IBM Connections Business cart (and the user photo) on your client.
The Connections plugin for Sametime Connect is not updated like the Notes Plugin but as you could see on the catalog is still working with Sametime Connect 9 and IBM Connections 4.5




15 comments:

  1. You can also use Connections Profiles photo for Sametime Connect Client without using any plugin. You just have to edit a few files.

    Here are the steps...

    1. Open the Sametime Community Server
    2. Locate the file UserInfoConfig.xml typically located in the domino program directory, example: Lotus\Domino\
    3. Open the UserInfoConfig.xml with your preferred text editor, and in the section add the following additional Detail.



    4. Save the xml file.
    5. If your Sametime Community Server is currently running, shut it down, and restart it.

    Then for each user, you need to enter the PhotoURL for each user, so in your example:

    https://connections.domain.com/profiles/[email protected]

    You would need to have each users unique url in their LDAP entry, if using domino as ldap source, easily done with an agent.

    But no plugin required.

    ReplyDelete
  2. the missing detail in section 3 is:

    <Detail Id="PhotoURL" FieldName="PhotoURL" Type="text/plain"/>

    ReplyDelete
    Replies
    1. Hi Carl, I am trying to change this but can you please confirm that you only have to add the PhotURL into the UserInfoConfig.xml which coexists with the exiting Photo parameter and you don't have to add the PhotoURL into the ParamsSets section? The reason I ask is that I can't see how the client picks up the field. We currently have a Connections server which picks up the Business card settings with no issues but rendering the client photo is something else. I would love to be able to use the PhotoURL field :)

      Delete
  3. Thanks Carl for your comments, was really appreciated. I've a question.. and if we could not touch the LDAP with photourl or jpegPhoto binary ? I means something like config for Sametime Meeting server or Sametime Proxy. I've a customer who doesn't allow us to store anything on LDAP and we are looking for workaround about that. We have seen is possible to write custom blackbox to do that but we are looking for some info to do that. Have a nice week

    ReplyDelete
  4. Take a look at this article that Mikkel wrote
    http://www.eview.com/eview/volr6.nsf/0/5AC97F68B3B0946B85257448003D3A03/$File/071-092%20Heisterberg_MayJun081.pdf

    ReplyDelete
  5. We're going to build a custom Blackbox to fetch the user photo from Connections 4.5. I think we'll use the connections REST api instead of database connections to get the data.

    I've figured out the API & Code we need to write to make it work.

    ReplyDelete
  6. FYI, if you allow guest access to your Sametime Meeting Server user photos will not be shown for guest users (as long you haven't allowed public access to Connections user photos) -> there is hardly any solution which fits all use cases.
    In our environment I export all user photos from Connections to a Webserver and add the according photo url fields to user ldap entries.

    ReplyDelete
    Replies
    1. Thanks for your contrinution! In my environment i've not anonymous user in Meeting Server but this behavoir appear to be logical. Thanks!

      Delete
  7. Hi,

    Thanks for sharing this.... really useful.

    ReplyDelete
  8. Hi,
    Thanks for your post.
    i tried to use this solution for sametime proxy
    in the field "The URL where stproxy downloads users' photos:" i put:
    http://connections.domain.com/profiles/photo.do?uid=
    when testing with web st, the URL of my picture is:
    http://connections.domain.com/profiles/photo.do?uid=CN=Bilel%20Moakhar,O=SiberLight

    this link is not showing my picture, only the grey (standard) one.
    but when i type
    http://connections.domain.com/profiles/photo.do?uid=BMoakhar
    i have my picture displayed.
    i want to know from where Sametime adds the "CN=Bilel%20Moakhar,O=SiberLight", to be able to change it.
    P.S: even if i put http://connections.domain.com/profiles/photo.do?email= in the "The URL where stproxy downloads users' photos:" field, i have this output as a picture URL:
    http://connections.domain.com/profiles/photo.do?email=CN=Bilel%20Moakhar,O=SiberLight

    ReplyDelete
    Replies
    1. Hello Bilel.
      You have to try with this url

      https://connections.domain.com/profiles/photo.do?distinguishedName=

      we had same issue in one enviroment but fortunally my colleague Michele has some nice friends inside IBM's support and we have found this undocumented parameter

      Delete
    2. Thanks Matteo for your quick reply :)
      i managed to find another way to setup pictures on ST proxy, not as "elegant" as your solution, but it did the job:
      http://www-10.lotus.com/ldd/lcwiki.nsf/xpDocViewer.xsp?lookupName=IBM%20Redbooks%3A%20Creating%20Integrated%20Web%20Experience%20with%20IBM%20Lotus%20collaboration%20software&documentId=3E39DB2560D676CB852579A400601689&action=openDocument&rev=true&mode=original&content=pdcontent

      thanks again for this blog :)

      Delete
  9. Hi Matteo

    I create this article but in Brazilian Portuguese

    http://www.ibm.com/developerworks/br/local/lotus/custom_cart_visit_ibm_sametime/

    ReplyDelete
  10. This may also help regarding using the IBM Connections business card photo in Sametime Proxy.
    http://www-01.ibm.com/support/docview.wss?uid=swg21673092

    ReplyDelete