이를 수행하는 Apps Script는 다음과 같습니다. 이 스크립팅 시작 링크를 클릭하여 Google 드라이브에서 스크립트 편집기를 열 수 있습니다 . 그때:
- 편집기의 자리 표시자를 아래에 제공된 스크립트로 바꿉니다.
- "리소스>이 프로젝트의 트리거"로 이동하여 5 분마다 자동 회신을 실행하도록 트리거를 설정하십시오.
스크립트의 논리는 아래에 설명되어 있습니다.
function autoReply() {
var interval = 5; // if the script runs every 5 minutes; change otherwise
var date = new Date();
var day = date.getDay();
var hour = date.getHours();
if ([5,6,0].indexOf(day) > -1 || (day == 1 && hour < 8) || (day == 4 && hour >= 17)) {
var timeFrom = Math.floor(date.valueOf()/1000) - 60 * interval;
var threads = GmailApp.search('is:inbox after:' + timeFrom);
for (var i = 0; i < threads.length; i++) {
threads[i].reply("I am out of office. Your email will not seen until Monday morning.");
}
}
}
스크립트는 현재 현지 날짜 / 시간이
- 금요일, 토요일, 일요일 (일부 5,6,0 일
[5,6,0].indexOf(day)
) 또는
- 월요일 오전 8시 이전 (1 일, 시간 <8)
- 오후 5시 이후 (4 일, 시간> = 17)
그것이하는 것은 지난 5 분 동안 ( interval
스크립트에서) 받은 모든 메시지를 확인 하고 통조림 텍스트로 각 메시지에 회신하는 것입니다.
트리거가 설정되는 간격과 스크립트에 설정된 간격이 두 시간 간격과 일치해야합니다. 그렇지 않으면 스크립트가 일부 메시지에 응답하지 않거나 여러 번 응답합니다.
비고
5 분이 아닌 1 분마다이 작업을 실행할 수 있습니다. 그러나 이것이 하루 동안 스크립트에 허용되는 최대 실행 시간 (1 시간 총 실행 시간)을 초과하는지 확신 할 수 없었습니다.
레이블 "auto-reply"를 추가하거나 ScriptProperties 에서 마지막으로 실행 한 시간을 저장하는 등의보다 복잡한 형식을 고려했습니다 . 그러나 위의 작업이 완료되고 단순성이 승리합니다.