In the Lync 2010 world, everything was golden. Lync was pretty cool, and it integrated well with Exchange 2010. Then our senior admin upgraded the network to Lync 2013, and things changed.
Not a whole lot changed, but one thing changed that I kind of enjoyed doing: changing my avatar.
The problem is that in Lync 2013, in order for users to change their pictures, the Exchange environment needs to be 2013, otherwise, users will end up with something like this:
After doing a bit of reading, it turns out you can still have pictures, but the administrator needs to upload the pictures and/or somehow pictures need to uploaded into Active Directory.
So what I did — others more well versed may come up with a different solution — is I created my image, saved it into a network share on the Exchange server, and then ran this command in an elevated prompt in the Exchange shell:
Import-RecipientDataProperty -Identity [email protected] -Picture -FileData ([Byte[]]$(Get-Content -Path "\\exchangeserver\photos\jimmyLync.jpg" -Encoding Byte -ReadCount 0))
Of course, with the appropriate changes to our environment.
Then I hopped over to the Lync server and in an elevated Lync shell, I ran
Update-CsUserDatabase
and
Update-CsAddressBook
I don’t remember where I read those commands, but I did it because I read that Lync updates those items once every 24 hours, so I figured why not force it like doing a group policy refresh.
I did notice that the changes were being made to Exchange because Outlook changed my picture, but what gives with Lync? No answer was being found online, and I even removed the local Lync cache and still no luck.
Then I decided to try hiding my picture, clicking ok, then showing again (like in the image above). It appeared!
The only thing I can think is that was causing it not to work was that the cache wasn’t refreshing on the Lync server, so hiding and showing the image again somehow refreshes it.
Maybe. In any case, at least I can contribute this solution to the web.
TechNet Articles: