There are loads of ways to install a commandline SMTP client, but Powershell has one built in and so you can configure FFS to run the powershell script at the end. Here are my notes to myself on how, pieced together from suggestions around the web...
Step One
Save the smtp email password in a secure format. Save it to the same location of the FFS log file we want to attach. Use this folder going forward. Folder is %UserProfile%\AppData\Roaming\FreeFileSync\
Do so with this command in powershell (do not run as administrator)
Read-Host -AsSecureString | ConvertFrom-SecureString | Out-File -FilePath $env:userprofile\Appdata\Roaming\FreeFileSync\EmailAuthCert
you will be prompted for the smtp password
Step Two
Prepare the computer to accept a home-brew script.
In powershell (DO this time run powershell as administrator) run the following command
Set-ExecutionPolicy remotesigned
Step Three
Take this script and alter lines 1-7 as required. Remove the last switch on line 8 if SSL is not supported. Save script to %UserProfile%\AppData\Roaming\FreeFileSync\email.ps1
$From = "user1@domain.com"
$Subject = "FFS Back-up Log"
$To = "user2@domain.com"
$Emailusername = "user1@domain.com_or_something_different_if_thats_how_yours_works"
$SMTP_Port = "587"
$SMTP_Server = "smtp.domain.com"
$Body = "Whatever body you want and you can use html tags. Just whatever you do, put it on one line!"
Send-MailMessage -From $From -Subject $Subject -To $To -Attachments $env:userprofile\Appdata\roaming\freefilesync\LastSyncs.log -Body $Body -BodyAsHtml -Credential (New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $Emailusername,(Get-Content -Path $env:userprofile\Appdata\roaming\freefilesync\EmailAuthCert | ConvertTo-SecureString)) -Port $SMTP_Port -SmtpServer $SMTP_Server -UseSsl
Step Four
Configure FFS and in the Sync settings box, On Completion box enter: powershell %userprofile%\Appdata\Roaming\FreeFileSync\email.ps1
Whaddaya think??
Dave
Get FFS to send an email
- Posts: 8
- Joined: 11 Sep 2016
- Posts: 8
- Joined: 11 Sep 2016
HEADS UP!! Original powershell in Windows 7 does not support alternate port numbers for SMTP. Edit the final line to not include ''-Port $SMTP_Port'' and remove line 5. OR if you require alternate portnumber function to send out, upgrade powershell in Windows to v3.0
https://msdn.microsoft.com/en-us/powershell/scripting/setup/installing-windows-powershell#BKMK_InstallingOnWindows7andWindowsServer2008R2
https://msdn.microsoft.com/en-us/powershell/scripting/setup/installing-windows-powershell#BKMK_InstallingOnWindows7andWindowsServer2008R2
- Site Admin
- Posts: 7212
- Joined: 9 Dec 2007
Email notifications are now directly supported with FreeFileSync 10.20!