【영업용】고객에게의 협의 일시에 관한 리마인드 메일을 자동 생성한다

17828 단어 GoogleAppsScriptgas

하고 싶은 것 & 그 이유



인사이드 세일즈에서 약속을 취득할 수 있었던 고객에게 당일 아침에 리마인드 메일을 보내도록 하고 있다. 매일 아침 같은 메일을 보내고 있으므로 메일을 작성하는 시간이 있으면 1건이라도 많이 전화를 하거나 잠재고객 목록을 추출하는 시간에 맞추고 싶기 때문에 자동화하기로 했다.

아래의 기사로 쓰고 있던 스크립트를 약간 리팩토링하면서, 고객에게의 리마인드 메일을 생성해 본다.

【영업용】인사이드 세일즈로 아포 취득할 수 있었을 때의 손님에게의 메일을 자동 생성한다

구현 방법



1:당일의 예정을 배열로 취득
2 : 배열 중에서 고객과의 상담 예정만 취득
3 : 2에서 취득한 정보를 이용하여 리마인드 메일 초안 작성

완성 시스템 (gas 스크립트)



다음이 완성형

gas.js
const calendarId = "[email protected]";

function createRemindMailForToday() {
  const calendar = CalendarApp.getCalendarById(calendarId);
  var events = calendar.getEventsForDay(new Date());

  events.map(function(event){
    if(event.getTitle().match(/【確定】/) && event.getTitle().match(/WEBお打合せ/) && event.isOwnedByMe()){
      var emailInformation = getInformationForEmail(event);
      createEmailDraft(emailInformation,"faceToFaceMtg");
    }else if(event.getTitle().match(/【確定】/) && event.getTitle().match(/往訪/) && event.isOwnedByMe()){
      var emailInformation = getInformationForEmail(event);
      createEmailDraft(emailInformation,"webMtg");
    }
  });
}




function getInformationForEmail(event){
  var dayOfWeekStr = ["日曜日", "月曜日", "火曜日", "水曜日", "木曜日", "金曜日", "土曜日"];

  var titleWithArr    = event.getTitle().split(" ");
  var companyName     = titleWithArr[1];
  var name            = titleWithArr[2];
  var mtgMonth        = event.getStartTime().getMonth();
  var mtgDate         = event.getStartTime().getDate();
  var mtgHour         = event.getStartTime().getHours();
  var mtgMinutes      = event.getStartTime().getMinutes();
  if(mtgMinutes == 0){
    mtgMinutes = "00";
  }
  var mtgDay          = dayOfWeekStr[event.getStartTime().getDay()];
  var toEmail         = event.getGuestList()[0].getEmail();
  var ccEmail         = '[email protected]';
  var subject         = name + ':本日のお打合せ日時に関しまして/WealthPark奥野';
  var mtgUrl          = event.getLocation();
  return {
    "companyName": companyName,
    "name": name,
    "mtgMonth": mtgMonth,
    "mtgDate": mtgDate,
    "mtgHour": mtgHour,
    "mtgMinutes": mtgMinutes,
    "mtgDay": mtgDay,
    "toEmail": toEmail,
    "ccEmail": ccEmail,
    "subject": subject,
    "mtgUrl": mtgUrl
  };
}

function createEmailDraft(emailInformation,mtgType){
  var template_index = HtmlService.createTemplateFromFile(mtgType);
  template_index.arr = [emailInformation.companyName,
                       emailInformation.name,
                       emailInformation.mtgMonth + 1,
                       emailInformation.mtgDate,
                       emailInformation.mtgDay,
                       emailInformation.mtgHour,
                       emailInformation.mtgMinutes,
                       emailInformation.mtgUrl];
  var html = template_index.evaluate().getContent();
  GmailApp.createDraft(emailInformation.toEmail, emailInformation.subject, html,{cc: emailInformation.ccEmail, htmlBody: html});
}

완성계(고객 선왕방시의 메일문)



왕방의 경우와, 웹 회의의 경우와, 이용하는 Email을 따로 하고 싶기 때문에 2 종류의 HTML을 준비

faceToFaceMtg.html
<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body>
<br>
<?= arr[0] ?><br>
<?= arr[1] ?><br>
<br>
いつも大変お世話になっております。<br>
わたしでございます。<br>
<br>
先日はお電話でのご対応、<br>
誠にありがとうございました。<br>
<br>
改めまして、本日、<br>
以下のお時間でお打合せの時間をいただければと存じます。<br>
<br>
日程:<br>
<?= arr[2] ?><?= arr[3] ?>日(<?= arr[4] ?>) <?= arr[5] ?>:<?= arr[6] ?><br>
<br>
お打合せ方式:<br>
貴社へお伺いいたします<br>
<br>
お打合せ場所:<br>
<?= arr[7] ?><br>
<br>

<br>
それでは以上となりますが、 <br>
今後とも何卒よろしくお願いいたします。<br>
<br>
  </body>
</html>

완성계(WEB 회의시의 메일 문면)



webMtg.html
<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body>
<br>
<?= arr[0] ?><br>
<?= arr[1] ?><br>
<br>
いつも大変お世話になっております。<br>
わたしでございます。<br>
<br>
先日はお電話でのご対応、<br>
誠にありがとうございました。<br>
<br>
改めまして、本日、<br>
以下のお時間でお打合せの時間をいただければと存じます。<br>
<br>
日程:<br>
<?= arr[2] ?><?= arr[3] ?>日(<?= arr[4] ?>) <?= arr[5] ?>:<?= arr[6] ?><br>
<br>
会議URL:<br>
<a href = "<?= arr[7] ?>"><?= arr[7] ?></a><br>
<br>
それでは以上となりますが、 <br>
今後とも何卒よろしくお願いいたします。<br>
  </body>
</html>

트리거 설정



마지막으로 이하의 캡쳐와 같이 트리거를 하면, 종료.



이것으로 매일 아침 리마인드 메일이 자동으로 생성되기 때문에, 월간의 콜수가 10은 증가했을까.

좋은 웹페이지 즐겨찾기