RealityCaptureがプロセスを終了した後、メールを送付する
„success“または „error“のいずれかでプロセスが終了した後、Gmailからメールを送信する方法について、簡単なサンプルを以下に紹介します。
次のように、ファイル‚my_file.bat‘を作成します(最初の行にファイルへのパスを入力します)。
cd C:\Users\user\Desktop\
if /i "%1" NEQ "0" (
if /i "%1" NEQ "1" (
PowerShell.exe -ExecutionPolicy Bypass -file ".\email.ps1" -argument "ERROR" %1
)) else (
PowerShell.exe -ExecutionPolicy Bypass -file ".\email.ps1" -argument "SUCCESS" %1
)
次のように、ファイル‚email.ps1‘を作成します(資格情報を変更します)。
param($argument="none")
$EmailFrom = "emailFrom@gmail.com"
$EmailTo = "emailTo@gmail.com"
$Subject = "RealityCapture process"
$Body = ("Computation finished with result:",$argument)
$SMTPServer = "smtp.gmail.com"
$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 587)
$SMTPClient.EnableSsl = $true
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential("username", "password");
$SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)
Application設定の「Progress end notification - Command line process」セクションで、次のように‘my_file.bat’を呼び出します(パスを変更します)。
C:\Users\user\Desktop\my_file.bat $(processResult)
注:安全性の低いアプリがアカウントにアクセスできるように、Gmailの設定を変更する必要があるかもしれません。
または、プロセスIDやプロセス期間などのパラメータをメッセージに追加することもできます。