我正在寻找一种免费或开源方式,在新员工创建帐户时向他们发送电子邮件。如果它是一个 powershell 脚本,或者其他每天运行一次的脚本,我就可以了。我希望能够提供从 outlook 导出的几个电子邮件文件,因为我需要所有新员工都收到几封电子邮件。
答案1
由于用户是新用户,甚至还不知道自己的用户名,我不确定下面的代码是否有助于提醒新用户他们的帐户已创建。但是,您可以安排以下脚本向用户发送电子邮件。该脚本是否还需要确定最近设置的用户,或者您是否会给它一个要发送给的用户名列表?以下脚本假设您已在 $userlist 中保存了用户电子邮件地址数组。
foreach($user in $userlist) {
$exportedmessage = "message.eml"
$smtpServer = “localhost”
$msg = new-object Net.Mail.MailMessage
$att = new-object Net.Mail.Attachment($exportedmessage)
$smtp = new-object Net.Mail.SmtpClient($smtpServer)
$msg.From = “[email protected]”
$msg.To.Add(”[email protected]”)
$msg.Subject = “Welcome to the Company”
$msg.Body = “Here is some important information you should keep handdy.”
$msg.Attachments.Add($att)
$smtp.Send($msg)
}
将此代码保存为 welcome-newuser.ps1。要安排此任务,请按照此处概述的说明进行操作: http://www.searchmarked.com/windows/how-to-schedule-a-windows-powershell-script.php
如果您使用 Quest 的免费 Active Directory cmdlet(http://www.quest.com/powershell/activeroles-server.aspx)您可以使用以下 PowerShell 代码来查找“现在”之前 24 小时创建的用户。
$then = (get-date).AddDays(-1)
get-qaduser | where { $_.creationdate -gt $then } | select email