Lync contact card wordt niet geupdate

In the Lync client each contact has a so called contact card. On this contact card several contact methods are displayed:

  • via e-mail
  • via a business telephone number
  • via a mobile number

This are just a few examples of information which is displayed on the contact card.

Besides the contact information contains information about the person:

  • what is the title of the person
  • which department does he/she work for
  • who is his/her manager

All this information is stored in a database. Lync uses two databases for this purpose:

  • RTCab
  • RTCab1

These databases work alternate days. To increase the performance the data will be reindexed.

But what happens when for example a title of a person changes? In the schema below an overview is displayed of this process.

  1. The administrator changes the title of the user in Active Directory (AD);
  2. Lync retrieves updates from the AD by using the Update-CsUserDatabase which runs every minute;
  3. This information is stored in RTCab/RTCab1;
  4. Once per 24 hours, default 1:30AM, the addressbook files will be generated. This is done by using the information stored in RTCab/RTCab1;
  5. When a client signs in the addressbook will be downloaded within 60 minutes. If you would like to force this process you will need to add a registry key:reg add HKLMSoftwarePoliciesMicrosoftCommunicator /v GalDownloadInitialDelay /t REG_DWORD /d 0 /fClose the client and remove both GalContacts files from the user profile:%userprofile%AppDataLocalMicrosoftCommunicatorsip_<username@domain.com>Start the client.
  6. After the client has downloaded the addressbook it will verify if the contact card needs to be updated. If the contact card needs to be updated the client will upload the new contact card to the database.

In some cases it can happen that the adminstrator makes the changes but the information is not visible in the addresslist. For example:

Person A makes promotion from servicedesk engineer to engineer. Person A goes on holiday and doesn’t use the Lync client. The administrator changes the title during the holiday of peson A.

In this example the title of person A will be changed after he signs in again when returning from his holiday.

Is there another way to upgrade the contact card without signing in? Yes, there is another way: use dbimpexp.

If you do not have experience with this tool don’t use it. Using this tool the wrong way can result in large problems.

The dbimpexp tool can be found in the support directory of Lync:

X:Program FilesCommon FilesMicrosoft Lync Server 2010Support

To change the information we will first need to export the information from the database:

dbimpexp /hrxmlfile:”c:export.xml” /restype:user /user:user@domain.com

When you open the created file and search for, for example, title you will find several entries like the one displayed below:

If you want to change the title you will need to update all entries in the XML. When you have replaced each entry save the file and import it into the database:

dbimpexp /import /hrxmlfile:”c:export.xml” /restype:user /user:user@domain.com

When the data is uploaded in the database a new addressbook needs to be generated. This to update the addressbook with the new information.

Depending on when the client downloads the new addressbook the changes will be displayed within 60 minutes.

Special thanks to Stuart Birkett from Microsoft PSS who provided all this informationIn de Lync client heeft elk persoon een zogenaamde contact card. Hierop zijn o.a. de methodes weergeven hoe een gebruiker bereikt kan worden:

  • via e-mail
  • via een zakelijk telefoonnummer
  • via een mobiel nummer

Dit zijn slechts enkele voorbeelden van de informatie die wordt weergeven op de contact card.

Naast de informatie om contact op te nemen met een persoon is ook de organisatorische informatie zichtbaar op de kaart:

  • wat voor functie heeft de persoon
  • op welke afdeling is hij/zij werkzaam
  • wie is zijn/haar manager

Al deze informatie is opgeslagen in een database. Lync maakt hiervoor gebruik van twee databases:

  • RTCab
  • RTCab1

Deze databases worden om de dag gebruikt. Om een betere performance te behalen worden de data in de databases namelijk geherindexeerd.

Maar wat gebeurd er precies als bijvoorbeeld de functienaam van de persoon gewijzigd wordt? In onderstaande schema is een overzicht te zien van dit proces.

  1. De beheerder maakt een wijziging in de functienaam in Active Directory (AD);
  2. Lync haalt elke minuut de updates op uit de AD d.m.v. het commando Update-CsUserDatabase;
  3. Deze informatie wordt opgeslagen in RTCab/RTCab1;
  4. Eén keer per 24 uur, standaard om 1:30AM, worden de adressenboek bestanden gegenereerd. Hiervoor wordt gebruik gemaakt van de informatie die opgeslagen is in RTCab/RTCab1;
  5. Als een client inlogt zal deze binnen een uur de nieuwe versie van het adressenboek downloaden.  Dit kan eventueel geforceerd worden door een registersleutel aan te maken:reg add HKLMSoftwarePoliciesMicrosoftCommunicator /v GalDownloadInitialDelay /t REG_DWORD /d 0 /fSluit de client af en verwijder beide GalContacts bestanden uit het gebruikersprofiel:%userprofile%AppDataLocalMicrosoftCommunicatorsip_<username@domain.com>Start de client vervolgens weer op.
  6. Nadat de client het adressenboek heeft gedownload, controleert de client of de contact card nog up to date is.
    Wanneer dit niet het geval is zal de contact card geupdate worden en zal de client deze nieuwe versie uploaden naar de database.

Het kan dus in sommige gevallen voorkomen dat de beheerder al een wijziging heeft doorgevoerd maar dit nog niet zichtbaar is in de adresenlijst. Bijvoorbeeld:

Persoon A maakt promotie van servicedesk engineer naar engineer. Persoon A gaat echter eerst op vakantie en maakt tijdens zijn vakantie geen gebruikt van de Lync client. De beheerder pas tijdens de vakantie van persoon A de functieomschrijving aan.

In het bovenstaande voorbeeld zal de functieomschrijving van persoon A pas aangepast worden zodra hij weer een keer inlogt op Lync.

Is er dan nog een andere manier om de contact card te upgraden zonder dat een gebruiker hoeft in te loggen?  Ja, er is nog een andere manier: maak gebruik van dbimpexp.

Wanneer je geen kennis hebt van deze tool is het niet aan te raden om deze te gebruiken. Dit kan namelijk tot grote gevolgen leiden indien deze tool verkeerd gebruikt wordt.

De dbimpexp tool kan gevonden worden in de support directory van Lync:

X:Program FilesCommon FilesMicrosoft Lync Server 2010Support

Om de informatie te kunnen bewerken moet eerst een export gemaakt worden vanuit de database:

dbimpexp /hrxmlfile:”c:export.xml” /restype:user /user:user@domain.com

Wanneer je het bestand vervolgens opent en bijvoorbeeld zoekt op title dan kom je o.a. de volgende entry tegen:

Als je de functienaam nu toch aan wil passen zul je alle entries in de XML moeten vervangen. Als dit eenmaal is gebeurd dien je de XML weer op te slaan en vervolgens te importeren in de database:

dbimpexp /import /hrxmlfile:”c:export.xml” /restype:user /user:user@domain.com

Als de data eenmaal in de database staat moet het adressenboek opnieuw gegenereerd worden. Dit om ervoor te zorgen dat de adressenboek bestanden de nieuwe informatie ophalen.

Afhankelijk van wanneer de andere clients het adressenboek downloaden zal de gewijzigde informatie binnen 60 minuten zichtbaar zijn.

Een speciaal dankwoord aan Stuart Birkett van Microsoft PSS voor het geven van deze uitgebreide informatie.

Free subscription



You may also like...

1 Response

  1. manju gowda schreef:

    Hi,

    Here I wanted to display the user Alias in the Title field of the Lync client cotact card.
    How can I achieve this.

    Manju

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Deze website gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.