Signaturer i Outlook 1

Skapa enhetliga signaturer Outlook 2010

För att skapa enhetliga signaturer används ett script som är skapat av Jan Egil Ring och finns på:

http://blog.crayon.no/blogs/janegil/archive/2010/01/09/outlook-signature-based-on-user-information-from-active-directory.aspx

Skriptet bygger på att man skapar en mall i word som man lägger domänens netlogon share. I mallen finns angivet vilka värden som ska hämtas från Active Directory. Dom värden som finns med från början är DisplayName, Title, och Email. Man kan ganska enkelt lägga till egna värden om man vet vad attributet heter i AD. När mallen är klar och på plats så skapar man en GPO som kör scriptet för dom användare som ska ha mallen.

Skapa mall

Mallen är ett vanligt Word dokument där man kan lägga in en bild och vissa statiska värden där dom dynamiska värdena ska sättas in så anger man DisplayName, Title och Email.

Exempel

Resultat

Spara mall

När mallen är klar så sparar du den som organisation.docx. Exempelvis ankeborg.docx. Kopiera sedan ner mallen till katalogen sig_files\organisation. Denna katalogstruktur kopierar du nu till netlogon utdelningen på en dc (c:\Windows\SYSVOL\domain\scripts i normala fall). Strukturen ska se ut enligt nedan.

Anpassa script

Scriptet har vissa parametrar som du måste ändra innan du kan använda det.

Parametrarna är det som står under Custum variables.

$CompanyName, $DomainName, $SigSource, $ForceSignatureNew och $ForceSignatureReplayForword.

När du har skrivit in värderna här så sparar du filen jag brukar spara den som
set-outlook-signature-organistation.ps1. Kopiera sedan upp filen till ditt netlogonshare.

Skapa GPO

För att applicera denna signatur på användare så är det enklast att använda en userpolicy där man pekar ut scriptet som ett inloggningsscript.

Denna policy kan sedan appliceras på enskilda användare eller grupper för test.

Vad scriptet gör

  1. Scriptet läser information från AD och skapar en registernyckel under HKCU\Software\$Companyname. ($Companyname blir det som du anger i scriptet)
    Under denna nyckel anges bl.a när signaturfilen är ändrad.
  2. Beroende på vilka inställningar du gjort under Custom variables så ställer scriptet in så att denna signaturfil alltid används vid skicka resp. skicka ta emot.
  3. Om signaturfilen har uppdaterats på servern så kopieras den nya mallen ner.
  4. Gör en search and replace på de nyckelord som ska ersättas med dynamiska värden.

Lokala anpassningar

Lägga till egna värden

Om du vill lägga till något dynamiskt värde i signaturen så kan du lägga till detta i scriptet.

Skapa ett nytt värde under #Get Active Directory information for current user. Exempelvis

$ADTelephoneNumber = $ADUser.TelephoneNumber
TelephoneNumber ovan är namnet på attributet som du vill läsa ut.

Kopiera en av styckerna under #Insert variables from Active Directory.. och klistra in det under det stycke du kopierat.

Ersätt texten efter $FindText = med det attribut som du vill använda och ange $ReplaceText = den variable som du skapade ovan

Exempel:

Kontrollera om Outlook har blivit startat

I vissa fall så kan det bli problem om scriptet körs innan användaren har startat Outlook. Om du får problem med detta så kan du lägga in nedanstående rader överst i scriptet.

#*********************************************************************************

# Check if Outlook has been started if not quit script.

#*********************************************************************************

$Error.Clear()

Get-ItemProperty -path “HKCU:\Software\Microsoft\Office\14.0\Common\General\” -name firstrun -ErrorAction SilentlyContinue -Errorvariable +err | out-null

If ($error.count -gt 0)

{Exit}

#*********************************************************************************

# End Outlookcheck

#*********************************************************************************

Problem med svenska versioner av Outlook

Om man kör svenskt Office så skiljer sig signatursökvägen åt. Detta kan ställa till det genom att användaren inte kan ändra signaturer alls. För att komma runt detta kan du ändra raden:
$SigPath = ‘\Microsoft\Signatures’
till
$SigPath = ‘\Microsoft\Signaturer’
Om man använder olika språkversioner så får man göra en check i scriptet som vilken version klienten kör och sedan dirigera den rätt.