レコードが一定期間変更されない時にメールを自動送信する方法
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
02-21-2023 08:43 PM
レコードが挿入または変更されてから一定期間変更がない場合にメールを自動送信する方法を教えていただきたいです。
Notificationsでレコードが挿入・変更されたときにメール送信をする設定をすることはできますが、上記のようなメール送信ルールを作成することは可能でしょうか?
スクリプト等の作成が必要でしたら合わせてご教授いただけると幸いです。
よろしくお願いいたします。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
02-23-2023 04:43 AM
OOBではこのような機能がないようで、スクリプトで対応となる場合、
スケジュールを作成し、定期的にレコードの"更新日時"をチェックし、変更ない場合はMailAPIを利用し、メールを送信してはいかがでしょう。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
02-23-2023 06:28 AM
Scheduled JobかFlowで定期的に古いレコードを検知する方法もあるかと思いますが、あえて別のアイデアを考えてみました。以下はBusinessRuleで7日後にイベント"test.remaind.mail"を発行するScriptです。イベント名や時間やパラメーターは要件に合わせて変えてください。Notificationでは、イベントを受け取ってUpdatedが7日より古いか判定することで(数分の誤差を含めて判定すると良さそう)、7日間更新されなかった時に通知することができます。(再検知させるために、あえてイベントを3回分(7日、8日、9日)設定してくとかの安全策も良さそう)
//BusinessRule
var dt = new GlideDateTime();
dt.addDays(7);
gs.eventQueueScheduled('test.remind.mail',current,gs.getUserID(),gs.nowNoTZ(),dt);