넷슈퍼 배달 예정일시를 캘린더에 자동 등록
소개
무거운 것 (쌀이나 물 등)을 살 때는 넷슈퍼를 이용하고 있습니다.
제대로 받기 위해서는 배달 예정 시간에 외출하지 않도록 조심해야 합니다.
그래서, 주문시에 송신되는 메일을 해석해 배달 예정 일시를 캘린더에 등록하는 스크립트를 작성했습니다.
이미지
처리
GoogleAppsScript에서 만들었습니다.
처리
GoogleAppsScript에서 만들었습니다.
function main() {
var predicate = function(thread) {
return thread.getFirstMessageSubject() == "[ご注文確認]SEIYUドットコム";
}
var regex = new RegExp(/・お届け日時:([0-9]+\/[0-9]+\/[0-9]+) ([0-9]+)時([0-9]+)分~([0-9]+)時([0-9]+)分/);
// カレンダーを取得
var calendar = CalendarApp.getCalendarById('[email protected]');
// スレッドを取得
var threads = GmailApp.getInboxThreads().filter(predicate);
threads.forEach(function(thread) {
// メッセージを取得
var messages = thread.getMessages();
messages.forEach(function(message) {
// 本文を取得
var body = message.getPlainBody();
// お届け日時を取得
var match = body.match(regex);
var date = match[1];
var fromHour = match[2];
var fromMinute = match[3];
var toHour = match[4];
var toMinute = match[5];
// カレンダーに予定追加
calendar.createEvent("[SEIYU]ネットスーパー",
new Date(date + " " + fromHour + ":" + fromMinute + ":00"),
new Date(date + " " + toHour + ":" + toMinute + ":00"));
// メールを既読にする
message.markRead();
});
// スレッドをアーカイブ
thread.moveToArchive();
});
}
동작 확인
Google 캘린더를 확인합니다.
Gmail의 수신 BOX도 확인하여 처리 중임을 확인했습니다.
감상
통신판매 서비스는 거의 반드시 주문 확인 메일을 보내 주기 때문에, 응용하면 다른 통신판매도 할 수 있을 것 같습니다.
Reference
이 문제에 관하여(넷슈퍼 배달 예정일시를 캘린더에 자동 등록), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ushibutatory/items/96841f9751a99483731e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
통신판매 서비스는 거의 반드시 주문 확인 메일을 보내 주기 때문에, 응용하면 다른 통신판매도 할 수 있을 것 같습니다.
Reference
이 문제에 관하여(넷슈퍼 배달 예정일시를 캘린더에 자동 등록), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ushibutatory/items/96841f9751a99483731e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)