127132
Goto Top

Exchange 2013 - Kontakte aus CSV importieren

Hallo zusammen!

Ich muss mich hier als völliger Exchange-Noob outen.

Ich hab hier ein Exchange 2013 CU11 und eine CSV mit Kontakten aus einem Outlook 2010. Die CSV ist soweit bereinigt und lässt sich auch über einen Outlook-Client importieren.

So...ich hätte diese Kontakte aber gerne als Kontakte im Exchange.
Über das EAC könnte ich die Kontakte jetzt manuell reinklopfen. Will ich aber aus verstänflichen Gründen nicht.
Wie kann ich denn eine CSV da importieren? Das EAC gibt nur eine Exportmöglichkeit her.

Content-ID: 326974

Url: https://administrator.de/contentid/326974

Ausgedruckt am: 22.11.2024 um 21:11 Uhr

131381
131381 20.01.2017 aktualisiert um 12:27:47 Uhr
Goto Top
Mit Powershell und einer Schleife schnell gemacht

Bsp.
(Import-CSV 'c:\datei.csv' -Delimiter ";") | %{  
    New-MailContact -Name $_.Name -ExternalEmailaddress $_.Email
}
Name und EMail sind dabei in diesem Beispiel die Spaltennamen aus der CSV.

Für die Parameter von New-MailContact siehe
https://technet.microsoft.com/de-de/library/bb124519(v=exchg.160).aspx

Gruß mik
127132
127132 20.01.2017 um 12:49:24 Uhr
Goto Top
Danke, das war schon mal hilfreich.

Jetzt habe ich aber noch das Problem, dass mir quasi die Parameter nicht ausreichen.
Die CSV aus Outlook hat da nämlich folgendes Format:
Anrede|Vorname|Weitere Vornamen|Nachname|Suffix|Firma|Abteilung|Position|Straße geschäftlich|..... Insgesamt werden da 92 verschiedene Werte pro Kontakt erfasst.
Viele davon sind eben befüllt und auch wichtig.
131381
131381 20.01.2017 aktualisiert um 13:43:42 Uhr
Goto Top
Zitat von @127132:
Jetzt habe ich aber noch das Problem, dass mir quasi die Parameter nicht ausreichen.
? Die Doku hast du gelesen da gibt es diverse weitere, die oben waren nur ein simples Beispiel.
Die CSV aus Outlook hat da nämlich folgendes Format:
Anrede|Vorname|Weitere Vornamen|Nachname|Suffix|Firma|Abteilung|Position|Straße geschäftlich|..... Insgesamt werden da 92 verschiedene Werte pro Kontakt erfasst.
Viele davon sind eben befüllt und auch wichtig.
Wenn du zusätzliche Eigenschaften für Mail-Kontakte haben willst musst du entweder das AD-Schema um deine gewünschten für Contact-Items erweitern.
Hier ein Beispiel wie das für Benutzerobjekte geht:
Erstellen eines neuen Attributes für Benutzerobjekte im Active Directory Schema
Oder sinnigerweise die Kontakte in Outlook importieren und den Usern über einen Kontakteordner in einer SharedMailbox oder einem Öffentlichen Ordner bereitstellen.
Serious-Ben
Serious-Ben 20.01.2017 aktualisiert um 13:39:39 Uhr
Goto Top
Das ist ein separater Befehl -> Set-contact

In der Exchange Management Shell diesen Code ausführen (Vorher als .ps1 Datei speichern)

$CSV = Import-CSV -Delimiter ';' C:\DeineCSV.csv

foreach ($entry in $Csv) {
set-contact -identity $entry.alias -Phone $entry.Phone
set-contact -identity $entry.alias -MobilePhone $entry.MobilePhone
set-contact -identity $entry.alias -fax $entry.Fax
set-contact -identity $entry.alias -Company $entry.Company
set-contact -identity $entry.alias -Department $entry.Department
set-contact -identity $entry.alias -StreetAddress $entry.StreetAddress
set-contact -identity $entry.alias -Office $entry.Office
set-contact -identity $entry.alias -City $entry.City
}

Der linke Wert -XXXX mit dem Parameterstrich entspricht dem Feld im AD-Kontakt und der rechte $entry.XXXXXX entspricht der Spalte der CSV Datei, die erste Zeile der CSV enthält diese Angaben. Als CSV Trennzeichen (Delimiter) ist ein Semikolon definiert.

P.S. Es gibt für Set-Contact noch viele weitere Feldtypen -> Einfach set-contact googlen ;)

MfG
127132
127132 20.01.2017 um 14:15:25 Uhr
Goto Top
Okay....die Kontakte hab ich jetzt in Outlook importiert und dann freigegeben.
Eigentlich wollte ich, dass diese Kontakte dann auswählbar sind, wenn man beim Verfassen einer E-Mail auf die Schaltfläche "An..." klickt.
Dort werden aber die freigegebenen Kontakte gar nicht angezeigt. Unter Personen (Outlook 2013) findet man die freigegebenen Kontakte.

Wie gesagt, Endziel sollte sein, dass man diese Kontakte über den Button "An..." beim E-Mail-Verfassen erreichen kann.

Ich bin dann jetzt den Umweg gegangen und hab die freigegebenen Kontakte alle in den lokalen Kontaktordner kopiert.
Da sind dann die Kontakte vorhanden wenn man eine E-Mail schreibt. Aber dann dummerweise mehrfach, weil eine Faxnummer auch als eigenständiger Empfänger angezeigt wird.
Kann man da irgendwie einstellen, dass Faxnummern nicht angezeigt werden?

Ich behaupte jetzt einfach mal, ich kapiere Exchange und Outlook nicht wirklich. Wäre das nicht einfacher per GUI Kontakte zentral zu managen und daraus dann veschiedene Verteiler, Adresslisten oder Kontaktgruppen (oder wie immer man das nennen will) zu generieren und entsprechende Berechtigungen zu vergeben?
127132
127132 20.01.2017 um 14:17:16 Uhr
Goto Top
Ah...das scheint das zu sein, was ich suche.
Danke schon mal.
131381
131381 20.01.2017 aktualisiert um 14:28:03 Uhr
Goto Top
Die Kontakte-Ordner kann man per Rechtsklick auf den Ordner in der Ordnerliste und an-haken des Kästchens als Adressbuch verfügbar machen.
Eine Script-Synclösung die auch für die Nutzung mit Smartphones funktioniert findest du hier:
Kontaktliste in Userpostfach importieren via PS
Ich behaupte jetzt einfach mal, ich kapiere Exchange und Outlook nicht wirklich.
Wenn man damit erst anfängt normal face-smile. Es ist noch kein Meister vom Himmel gefallen.
127132
127132 20.01.2017 um 14:46:11 Uhr
Goto Top
Zitat von @131381:

Die Kontakte-Ordner kann man per Rechtsklick auf den Ordner in der Ordnerliste und an-haken des Kästchens als Adressbuch verfügbar machen.

Also das klappt bei mir nicht. Bei freigegebenen Kontakten fehlt auch der Reiter "Outlook-Adressbuch". Bei lokalen Kontakten geht das.


Über das bin ich ja auch schon gestolpert. Da ich aber User und kein Admin bin, muss ich mich da erst mal ganz dicke einlesen.
Was ich bis jetzt rausgezogen hab:
"Kontakte" sind entweder E-Mail-Benutzer oder E-Mail-Kontakte (in meinem Fall mit externer Adresse). Die muss ich dann irgendwie anlegen. Und dann erstelle ich eine Adressliste und lass mir dort dann die entsprechenden Benutzer oder Kontakte anzeigen.

So wie ich das sehe, muss ich das Pferd von hinten aufzäumen. Normalerweise würde ich Kontakte erstellen und die dann auf verschiedene Adresslisten verteilen. So muss ich aber den Adresslisten sagen, welche Kontakte/Benutzer sie enthalten sollen. Und dazu muss ich erst den Benutzern/Kontakten irgendwelche Attribute mitgeben.
131381
131381 20.01.2017 aktualisiert um 15:28:07 Uhr
Goto Top
Für sowas gibt's dynamische Adresslisten mit RecipientFilter und die Custom Attributes ...

Arbeite dich erst mal Schritt für Schritt ein, alles auf einmal bringt nichts.