【发布时间】:2016-01-13 14:18:57
【问题描述】:
希望有人可以帮助我!
我有一个带有访问传感器的侦察警报系统。每次打开特定的门时,我都会收到有关该活动的电子邮件。由于没有来自 Scout 的一天中的时间通知,它要么是打开的,要么是关闭的,我想在电子邮件端使用 Google Apps Script for Gmail 来处理这个问题。
周一至周五 - 早上 8 点之前和下午 6 点之后来自警报系统的任何电子邮件都应该进入我的收件箱,否则应该进入垃圾箱。
周六至周日 - 来自警报系统的所有电子邮件都应发送到我的收件箱。
请告诉我这是可能的!!!
-更新- 这是一个测试代码,但它似乎不起作用。我的收件箱中在奇怪的时间收到了大量的所有邮件,希望有人能帮忙清理一下吗?
function MoveMsgBasedOnTime()
{
//Enter the Label you created in your Google Apps Account for scout@#######.com
var Label = GmailApp.getUserLabelByName("2 - Scout");
//Retrieve All Messages with Matching Label
var Threads = Label.getThreads();
for (var i = 0; i < Threads.length; i++)
{
var Msgs = Threads[i].getMessages();
for (var j=0;j < Msgs.length ;j++)
{
var MsgTime = new Date();
MsgTime = Msgs[j].getDate();
MsgTime.getDay();
//Test For Day of Week
//If Sunday (0) or Saturday (5)
if (MsgTime.getDay() == 0 || MsgTime.getDay() == 6)
{
var test ="Weekend";
//Move To Inbox
Threads[i].moveToInbox();
}
//If Monday(1), Tuesday (2), Wednesday (3), Thursday (4), Friday (5)
if (MsgTime.getDay() == 1 || MsgTime.getDay() == 2 || MsgTime.getDay() == 3 || MsgTime.getDay() == 4 || MsgTime.getDay() == 5 )
{
var test ="Weekday";
// Time Interval To Delete Message
var startTime = '8:00 AM';
var endTime = '7:30 PM';
var now = new Date();
var startDate = dateObj(startTime);
var endDate = dateObj(endTime);
var Label = GmailApp.getUserLabelByName("2 - Scout");
var actionToTake = now < endDate && now > startDate ? 'delete' : 'move';
//If Message Time is Between 8am and 6pm Take Action to Move to Trash
if (actionToTake == "delete")
;
//If Message Time is Before 8am or After 6pm Take Action to Move to Inbox
if (actionToTake == "move")
Threads[i].removeLabel(Label);
Threads[i].moveToInbox();
}
}
}
}
//Function To Parse Time from Date for Comparisson using startTime & endTime variables above
function dateObj(d)
{
var parts = d.split(/:|\s/),
date = new Date();
if (parts.pop().toLowerCase() == 'pm') parts[0] = (+parts[0]) + 12;
date.setHours(+parts.shift());
date.setMinutes(+parts.shift());
return date;
}
【问题讨论】:
-
欢迎加入这不是一个我们为您工作的网站,向我们展示您的尝试,我们可以帮助您解决您的问题
-
我希望有人能告诉我如何处理这个问题,或者将我指引到可以要求这种性质的东西的地方?