Google 폼과 Slack과 메일을 GAS로 연계하기

이 기사는 Google 설문지와 G-메일 연동의 뒤를 따릅니다.
  • 전편: Google 설문지와 G-메일 연동
  • 후편 : 양식에 입력 된 내용을 Incoming Web Hook을 사용하여 Slack으로 통지 (이 기사)

  • 이 기사에서 할 일



    Google 설문지에서 제출한 내용을 GAS를 통해 Incoming Web Hook을 사용하여 Slack으로 보냅니다.

    슬랙



    Incomming Web hook을 앱에 추가

    1. Slack 왼쪽 메뉴 아래에 있는 App+ 를 클릭합니다.





    2. 오른쪽 상단의 App 디렉토리를 클릭합니다.





    3. Incoming Web hook을 찾아 선택





    4. Slack에 추가를 클릭





    5. 채널을 선택하고 Incoming Webhook 통합 추가





    7. 웹 후크 URL 복사





    8. 이름과 아이콘 설정





    GAS



    웹 후크 URL 재작성



    아래 코드를 GmailApp.sendEmail(sendToAddress,mailTitle,mailMessage,option); 아래에 추가하고 YOUR WEB HOOK URL를 방금 복사 한 웹 후크 URL로 변경하십시오.
     // Slackへの通知
     var slackMessage = {
        method: 'post',
        contentType: 'application/json',
        payload: '{"username" : "お問い合わせBOT","text":"'+mailMessage+'"}'
      };
    
      UrlFetchApp.fetch("YOUR WEB HOOK URL", slackMessage);
    
    

    외부 서비스와의 연동 허용



    GAS에서 이메일을 보낼 수 있도록 허용
    의 절차를 참조하여 외부 서비스의 연동을 허용하십시오.

    완성!



    이제 Slack에도 알림이 가게되었습니다!

    코드 전문



    GAS
    FormApp.getActiveForm();
    
    function sendForm(e) {
      var sendToAddress ="あなたのメールアドレス";
      var serviceName = "【すごいアンケート】";
      var mailTitle = serviceName +'に関する新規のお問い合わせがありました';//メールのタイトルを設定
      var mailMessage = serviceName +'に関する新規のお問い合わせがありました。\n\n';
      var option = {};
      option.from = sendToAddress;
    
    
      var list=[];
      var itemResponses = e.response.getItemResponses();
    
      //フォームの項目に記述された内容を取得し、itemResponsesとlist
      itemResponses.forEach(function(itemResponse){
        mailMessage += '' + itemResponse.getItem().getTitle() + '\n'
        mailMessage += itemResponse.getResponse() + '\n\n'
        list.push(itemResponse.getResponse())
      });
    
      //フォームのメールアドレスと名前を取得し、それぞれの変数に格納する
      var userName = list[0]; 
      var userMail = list[1];
    
      // 自動返信メール件名
      var subject = serviceName +'にお問い合わせいただきありがとうございました。';
    
      // 自動返信メール本文
      var body = userName + '\n' +
        '\n' +
        'この度は'+serviceName +'にお問い合わせいただき、誠にありがとうございました。' +
        '\n' +
        '後日、弊社担当よりご連絡させていただきますので\n' +
        'よろしくお願い申し上げます。\n' + 
        '\n' +
        '─────────────────────────\n' +
        '署名をココに\n' +
        '─────────────────────────\n' +
        '\n';
    
      // メール送信
      GmailApp.sendEmail(userMail,subject,body,option);
      GmailApp.sendEmail(sendToAddress,mailTitle,mailMessage,option);
    
     // Slackへの通知
     var slackMessage = {
        method: 'post',
        contentType: 'application/json',
        payload: '{"username" : "お問い合わせBOT","text":"'+mailMessage+'"}'
      };
    
      UrlFetchApp.fetch("YOUR WEB HOOK URL", slackMessage);
    
    
    }
    
    
    

    좋은 웹페이지 즐겨찾기