Benutzer-Werkzeuge

Webseiten-Werkzeuge


powershell:ad:set-emailautoresponder

Set-EmailAutoresponder.ps1

Allgemein

Das Skript

Set-EmailAutoresponder.ps1
Clear-Host
 
if ([string](Get-PSSnapin Microsoft.PowerShell.Core).psversion.major -notlike "2")
    {
    Write-Host "`n`nFalsche Powershell-Version!`n" -ForegroundColor Red
    Write-Host "Das Skript muss direkt aus einer `"Exchange-ManagementShell`" aufgerufen werden.`nEin Aufruf aus einer Powershell mit eingebundemen Exchange-PS-SNAPIN führt zu Fehlern bei der Ausführung!`n`n"
    Exit
    }
 
 
 
$FullName=Read-Host "`n`nName eingeben `"Vorname Nachname`" (mit Umlauten)"
$UserName=Read-Host "`nBenutzername eingeben, i.d.Regel `"nachname.vorname`" (ohne Umlaute etc.)"
$Mailbox=get-mailbox $UserName
$datum=Read-Host "`nDatum an dem die Abwesenheit endet eingeben (TT.MM.JJJJ)"
$DateDE=($datum | get-date -Format dd.MM.yyy).ToString()
$DateUK=($datum | get-date -uFormat %m/%d/%Y).ToString()
<#
$forwardRecipient=Read-Host "`n`nWenn eine Weiterleitung eingerichtet werden soll, hier bitte den Empfängern eingaben. Ist keine Weiterleitung gewünscht, bitte leer lassen!`n(Ausschließlich Postfächer `"xyz@secunet.com`" werden akzeptiert!)"
if ($forwardRecipient -like! "*@secunet.com")
    {
    $InternalMsg = "Sehr geehrte Damen und Herren,<br><br>bis zum "+$DateDE+" bin ich nicht im Hause. Ihre E-Mail wird nicht automatisch weitergeleitet und erst nach meiner R&uuml;ckkehr bearbeitet.<br>In dringenden F&auml;llen k&ouml;nnen Sie sich gerne an unsere Zentrale wenden. Sie erreichen diese unter der Telefonnummer +49 201 5454 0<br><br>Mit freundlichen Gr&uuml;&szlig;en<br>"+$FullName+"<br><br><br>Dear Madam/Sir,<br>I’m out of office until "+$DateUK+". Your e-mail will not be forwarded and not be answered until my return. In urgent cases you are welcome to contact (+49 (0)201 5454-0).<br><br>Best regards<br>"+$FullName+"<br><br>--<br>secunet Security Networks AG<br>http://www.secunet.com <br>______________________________________________________________________<br><br>Sitz: Kronprinzenstraße 30, 45128 Essen, Deutschland<br>Amtsgericht Essen HRB 13615<br>Vorstand: Dr. Rainer Baumgart (Vors.), Axel Deininger, Thomas Pleines<br>Aufsichtsratsvorsitzender: Ralf Wintergerst<br>______________________________________________________________________"
    $ExternalMsg = $InternalMsg
    Write-Host "Der eingegebene Empfänger der Weiterleitung ist unzulässig:" $forwardRecipient "`nEs wird keine Weiterleitung auf eingerichtet."
    }
Else
    {
    $InternalMsg = "Sehr geehrte Damen und Herren,<br><br>bis zum "+$DateDE+" bin ich nicht im Hause. Ihre E-Mail wird intern weitergeleitet und bearbeitet.<br>In dringenden F&auml;llen k&ouml;nnen Sie sich gerne an `""+$forwardRecipient +"`" oder an unsere Zentrale wenden. Sie erreichen diese unter der Telefonnummer +49 201 5454 0<br><br>Mit freundlichen Gr&uuml;&szlig;en<br>"+$FullName+"<br><br><br>Dear Madam/Sir,<br>I’m out of office until "+$DateUK+". Your e-mail will not be internally forwarded. In urgent cases you are welcome to `""+$forwardRecipient+"`"contact (+49 (0)201 5454-0).<br><br>Best regards<br>"+$FullName+"<br><br>--<br>secunet Security Networks AG<br>http://www.secunet.com <br>______________________________________________________________________<br><br>Sitz: Kronprinzenstraße 30, 45128 Essen, Deutschland<br>Amtsgericht Essen HRB 13615<br>Vorstand: Dr. Rainer Baumgart (Vors.), Axel Deininger, Thomas Pleines<br>Aufsichtsratsvorsitzender: Ralf Wintergerst<br>______________________________________________________________________"
    $ExternalMsg = $InternalMsg
    Set-MailBox $mailbox.alias -ForwardingAddress $forwardRecipient -DeliverToMailboxAndForward $True
    Write-host "Im Postfach " $mailbox.primarysmtpaddress "wurde eine Weiterletiung auf das Postfach " $forwardRecipient " eingerichtet. Sie kann über den folgenden Befehl gelöscht werden:`nSet-MailBox" $mailbox.alias "-ForwardingAddress `$Null -DeliverToMailboxAndForward `$False`n`n"
    }
#>
 
$InternalMsg = "Sehr geehrte Damen und Herren,<br><br>bis zum "+$DateDE+" bin ich nicht im Hause. Ihre E-Mail wird nicht automatisch weitergeleitet und erst nach meiner R&uuml;ckkehr bearbeitet.<br>In dringenden F&auml;llen k&ouml;nnen Sie sich gerne an unsere Zentrale wenden. Sie erreichen diese unter der Telefonnummer +49 201 5454 0<br><br>Mit freundlichen Gr&uuml;&szlig;en<br>"+$FullName+"<br><br><br>Dear Madam/Sir,<br>I’m out of office until "+$DateUK+". Your e-mail will not be forwarded and not be answered until my return. In urgent cases you are welcome to contact (+49 (0)201 5454-0).<br><br>Best regards<br>"+$FullName+"<br><br>--<br>secunet Security Networks AG<br>http://www.secunet.com <br>______________________________________________________________________<br><br>Sitz: Kurf&uuml;rstenstra&szlig;e 58, 45138 Essen, Deutschland<br>Amtsgericht Essen HRB 13615<br>Vorstand: Dr. Rainer Baumgart (Vors.), Axel Deininger, Thomas Pleines<br>Aufsichtsratsvorsitzender: Ralf Wintergerst<br>______________________________________________________________________"
$ExternalMsg = $InternalMsg
 
$confirmAR=Read-Host "Soll in dem Postfach des Benutzers `""$Mailbox.Alias"`" die Abwesenheitsbenachrichtigung bis zum `""$dateDE`""gesetzt werden?`n(J/N)"
if (($confirmAR -eq "J") -or ($confirmAR -eq "j"))
    {
    $Mailbox | Set-MailboxAutoReplyConfiguration -AutoReplyState enabled -ExternalAudience all -InternalMessage $InternalMsg -ExternalMessage $ExternalMsg
    Write-Host "`n`n`nDie Abwesenheitseinstellungen für das Postfach `""$mailbox.PrimarySmtpAddress"`" wurden wie folgt festgelegt:"
    $Mailbox | get-MailboxAutoReplyConfiguration | Select-Object AutoReplyState,ExternalAudience,InternalMessage,ExternalMessage | Format-List
    }
Else{
    If (($confirmAR -eq "N") -or ($confirmAR -eq "n"))
        {
        Write-Host "(N)ein gewählt, Abbruch"
        }
    Else{
        Write-Host "Die Eingabe entsprach weder `"J`" für Ja noch `"N`" für Nein, das Skript wird abgebrochen"
        }
    }
powershell/ad/set-emailautoresponder.txt · Zuletzt geändert: 2024/05/27 08:36 von 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki