Microsoft Teams and Skype for Business News and Thoughts

Tom Arbuthnot MVP
Tom Arbuthnot MCSM Communications

This site uses cookies

Find this blog useful? Please take a second to share, thanks!

Lync 2013: Setting a user picture for an Application or Response Group Contact Object

Published 04/12/2012 - 6 Comments


I tested this on a while homed on a 2013 pool and with the 2013 client. It doesn’t seem to work with the 2010 client in my testing. It is in no way supported, I just thought it might work, use at your own risk. It also seems to be fairly intermittent as to whether the pictures will appear or not in the client – if anyone has an ideas on this/tries this I’m interested to hear how you get on.

You will need the Lync and Active Directory PowerShell modules available (or a remote session with them available)

Normally in a Lync install Each “Application Endpoint”, or “bot” as we often call them (but also applies to response groups, audio test service etc.) has a contact object with no photo, for example take our (Modality Systems) TimePrompt application. This is how it would normally look


Each Bot or Response Group Creates an AD contact object in the Configuration Partition. We can confirm the AD contact object details with Get-CSApplicationEndPoint. You don’t actually need to do this but it helps you understand how it works.


These contact objects are not in the AD Default naming context, they are actually held in the configuration partition (similar to the core Lync apps e.g. ), You can see this in the Identity string where is says “CN=Configuration”

By default Get/Set-ADObject will not find them. To get to them with Set-ADObject we need to change the Search Base


(substitute domain for your domain and com for your domain suffix, as per Identity in Get-CSApplicationEndPoint)

Now we can Get that AD Object

Get-ADObject -searchbase $sb -Filter ‘displayname -like “TimePrompt*”‘

You should get one result (if not check your display name is matched correctly/is unique enough)


Format it into a list to see it better

Get-ADObject -searchbase $sb -Filter ‘displayname -like “TimePrompt*”‘ | FL


Now we can upload a photo into a temporary variable and add it to that contact object (ensure your photo is 96×96 and less than 10k).

$photo = [byte[]](Get-Content C:\temp\robot96x96.jpg -Encoding byte)

Then we can Pipe out Get-ADObject to Set-ADObject and add the photo to the thumbnailPhoto attribute

Get-ADObject -searchbase $sb -Filter ‘displayname -like “Timeprompt*”‘ | Set-ADObject -Add @{thumbnailPhoto=$photo}


We can verify the thumnailPhoto attribute is now set in ADSI edit by connecting to the Configuration context




Once the Lync address book is updated (Update-CSAddressBook) and the Lync client has sync’d the new address book, you should see the picture on the application or response group (it can take some time to sync out, the wind must be blowing in the right direction).


It doesn’t appear in 2010 client


But does in 2013



Tom Arbuthnot

Tom Arbuthnot

Principal Solutions Architect at Modality Systems
Tom Arbuthnot is Principal Solutions Architect at Unified Communications specialist Modality Systems. He is a Microsoft Certified Master and MVP, blogger, has a regular podcast with UCToday at and is a regular speaker at events including Microsoft TechEd and Ignite. He co-runs The Microsoft UC User Group London.


Dino Caputo - 05/08/2013 Reply

Thanks for posting Tom. I too can confirm the unreliable results using of adding photos to application contacts. In our testing the neither the Lync 2010 or 2013 client showed the photo, however, the Lync 2013 Mobile client did show the photo which is very strange. At one point the photo did appear in the Lync 2013 client for a moment but then reverted to showing the default picture. The 2013 mobile client continues to show the picture..

The Windows App Store version of Lync do not show the picture.

I’ve even copied the “working” picture to another application endpoint contact and the photo does not display in any use case.. Very strange behavior.

If anything changes will advise.

Markus - 27/05/2015 Reply

Hi Tom,

I have updated my client from Lync 2013 to Skype for Business 2015 (no SfB Server yet – still Lync 2013), and I have added for one application a picture which will be displayed on Lync 2010 and Lync 2013 clients, but in my SfB client I will see again the robot.
Did you have a way how I can get the picture for the application to the SfB 2015 clients?


    Tom Arbuthnot - 28/05/2015 Reply

    Can’t say I’ve tried yet, but can confirm my bots that had pictures in Lync 2013 client, don’t show pictures in SfB client, seems there may be a difference. If you raise a ticket on msft, let me now and I’ll see if I can do anything to nudge it along.

      Paul - 03/11/2016 Reply

      Did anyone ever open a ticket with MSFT about this? Have a couple apps that I have added the thumbnail photos for that will be beneficial for professionalism to have it displayed (for a campus emergency broadcast notification app — so people can really trust where it came from).

        Paul - 03/11/2016 Reply

        Well, I will reply to myself! Turns out if you install S4B 2015 from the Office 2016 C2R, this actually shows the picture now!

        The age old… “have you updated to the latest version?” :)

Leave a Reply:


Weekly Email Update 
of all the key 
Microsoft Teams and Skype for Business News
every Tuesday

No Spam ever, I promise - Tom