Export-CSUserData
Mit Lync 2013 hat Microsoft endlich auch einen PowerShell-Befehl geschaffen, mit dem man die Daten der Benutzer oder eines Benutzers exportieren und wieder importieren muss. Damit sind die Zeiten von DBImpExp hoffentlich gezählt. Endlich können Administratoren so z.B. die Buddy-Liste der Mitarbeiter exportieren und importieren.
Export und Import
Die Funktion ist über zwei PowerShell Commandlets erreichbar.
#Export aller User eines Pools Export-CSUserData -PoolFqdn "pool.msxfaq.de" -Filename "c:\temp\lyncUserdata.zip" #Export eines User eines Pools Export-CSUserData -PoolFqdn "pool.msxfaq.de" -Filename "c:\temp\lyncUserdata.zip" -UserFilter User1@msxfaq.net
Die Exportdatei ist per Default eine ZIP-Datei mit zwei Dateien. Über den Parameter "-LegacyFormat" ist der Export im Lync 2010 Format möglich.
- Export-CsUserData
http://technet.microsoft.com/de-de/library/jj204897.aspx
In die Gegenrichtung geht das natürlich auch.
Achtung: Ein IMPORT kopiert die Daten in die Backup Datenbank und braucht einen Neustart des RTCSRV.EXE, (Frontend), um aktiv zu werden. Dafür ist die Belastung für den Server geringer
#Import aller User eines Pools Import-CSUserData -PoolFqdn "pool.msxfaq.de" -Filename "c:\temp\lyncUserdata.zip" #Import eines User eines Pools Import-CSUserData -PoolFqdn "pool.msxfaq.de" -Filename "c:\temp\lyncUserdata.zip" -UserFilter User1@msxfaq.net
- Import-CSUserData
http://technet.microsoft.com/de-DE/library/jj205373.aspx - Difference between Update-CsUserdata
and Import-CsUserdata
http://blogs.technet.com/b/lynctweets/archive/2013/11/14/difference-between-update-csUserdata-and-import-csUserdata.aspx
Wer allerdings in einen bestehenden Server die früheren Kontakte als "Merge" addieren will, macht das besser mit Update-CSUserData. Hier wird aber kein Pool angegeben.
#Import eines User eines Pools Update-CSUserData -Filename "c:\temp\lyncUserdata.zip" -UserFilter User1@msxfaq.net
Diese Aktion braucht aber deutlich länger, da nun Kontakt für Kontakt in die SQL-Datenbank importiert wird.
- Update-CsUserData
https://technet.microsoft.com/de-de/library/JJ205358.aspx
Primäre Funktion: Backup und Restore
Der Export und mögliche Import der Benutzerdaten und hier insbesondere der Buddyliste hat eine längere Geschichte bei Lync und OCS. Diese Informationen liegen bei einem Lync Server in der SQL-Datenbank, und die ist zumindest bei OCS 2007R2 und Lync 2010 noch nicht repliziert. Erst Lync 2013 nutzt SQL Mirroring. Und SQL-Datenbank lassen sich nicht einfach über geografische Grenzen hinweg replizieren.
Daher war der regelmäßige Export der Benutzerdaten in eine Datei eine gängige Praxis, um die für Anwender wichtigsten Daten (Buddyliste) notfalls auch auf einem anderen Server wieder herstellen zu können. Bei Lync 2010 und OCS2007R2 hat sich der Administrator dazu das Tool DBImpExp benutzt. Bei Lync 2013 ist nun ein PowerShell-Befehl enthalten.
Sie können also auch mit Lync 2013 z.B. regemäßig (wie wären 1x alle 6h ?) die Konfiguration der Benutzer in eine Datei exportieren und an einem anderen Ort speichern. So können Sie z.B. die Buddyliste eines Benutzers einfach wieder herstellen. Das funktioniert auch auf einem anderen Server und anderem Pool, wenn Sie einen Pool "verloren" haben und als schnelle Lösung die Benutzer "hart" auf den neuen Boot verschieben.
- Move-CSUser
http://technet.microsoft.com/de-de/library/gg398528.aspx
Mit der Option "-Force" wird der Benutzer mit Datenverlust umgezogen - Sichern von Hauptdaten und
-einstellungen
Lync 2010: http://technet.microsoft.com/de-de/library/hh202170(v=ocs.14).aspx
Lync 2013: http://technet.microsoft.com/de-de/library/hh202170(v=ocs.15).aspx - Automating Lync 2010 Backups
http://www.bricomp.com/blogs/post.cfm/automating-lync-2010-backups - Automating Backups of Lync
2010 Configuration
http://www.onesimplescript.com/2012/05/automating-backups-of-lync-2010.html - Backing up and Restoring
Lync 2013 Contacts
http://social.technet.microsoft.com/wiki/contents/articles/25001.backing-up-and-restoring-lync-2013-contacts.aspx - Backing Up and Restoring
Lync 2013 Contacts
http://www.skypeadmin.com/2014/06/23/backing-up-and-restoring-lync-2013-contacts/
Ein Blick in die Daten
Die exportierten Dateien sind eine einfache und risikofrei Quelle um die Daten etwas genauer zu untersuchen, ohne direkten Zugriff auf die Datenbank zu haben. Das native Lync 2013 Format ist eine ZIP-Archiv mit zwei Dateien.
- [Content_Types].xml
Eine Dummydatei, die das Format der nächsten Datei beschreibt
<?xml version="1.0" encoding="utf-8"?> <Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"> <Default Extension="xml" ContentType="text/xml" /> </Types>
- DocItemSet.xml
Diese Datei enthält die eigentliche XML-Struktur mit den Daten des Benutzers. Im wesentlichen gibt es hier in der Regel vier Knoten:
Interessant ist nun, wenn man die vier Gruppen genauer anschaut. Die Beschreibung von "Name" kennzeichnet den Inhalt:
Bereich und Beschreibung | XML-Auszug |
---|---|
Name="urn:confs:User1@msxfaq.netEnthält Informationen über die Konferenzen |
|
Name="urn:hcd:User1@msxfaq.net"In diesem Bereich gibt es die gleichen Container wie auch in anderen Stellen. Aber ich haben noch nicht ermittelt, welche Bedeutung diese Daten haben. |
|
Name="urn:lcd:User1@msxfaq.net"Hier dürfte die Buddyliste des Benutzers zu finden sein. |
|
Name="urn:upc:User1@msxfaq.net"Systemdaten zur Anmeldung des Benutzers |
|
Auch wenn die Daten sehr umfangreich erscheinen, so konnte ich einige Einstellungen hier nicht entdecken, z.B. die Rufweiterleitungen, viele der Einstellungen auf dem Client etc. Aber wer sich traut kann natürlich schon einmal die XML-Dateien verändern und wieder importieren. Allerdings sollten Sie immer ein Backup der funktionierenden Einstellungen haben. Wer programmatisch im Auftrag des Benutzers arbeiten will, sollte sich eher die richtigen Lync API nutzen machen wie z.B. UCMA.
Auswertungen
Es gibt noch einen zweiten Anwendungsfall für diese Datei, nämlich die Auswertung der Inhalte. Die Datei enthält z.B. Daten zu Konferenzen, zu Buddylisten aber auch z.B. Daten zur PIN-Authentifizierung, die allein für statistische Zwecke und Reporting interessant sind. für ein Sizing ist es z.B. interessant zu wissen, wie viele Kontakte durchschnittlich die Anwender verwenden. Man kann auch mal schauen, wer die meisten Buddies hat. Vielleicht wäre dem Anwender mit einer Schulung geholfen. Aber auch die Anzahl der Zertifikate eines Benutzers ist ein Hinweis, ob er auf unterschiedlichen Endgeräten arbeitet, denn die Lync Zertifikate sind ja nicht exportierbar. Wer sich also auf mehreren Geräten anmeldet, hat für jedes Gerät ein Zertifikat.
Weitere Links
- DBImpExp
- Lync API
- UCMA
- Unified Contact Store
-
How To Export Lync Contacts to
Excel
http://blogs.technet.com/b/nexthop/archive/2011/04/07/howtoexportcontacts.aspx -
Lync Server 2013 - Bulk updating
Contact Groups
http://charlesulrich.blogspot.de/2013/03/lync-server-2013-bulk-updating-contact.html -
Skype for Business Online / Lync
Online Contact Manager
http://support.express-desk.com/support/Skype-for-Business-Online-Contact-Manager-documentation
Import und Export über Kontakte, die im Unified Contact Store liegen.