무료로 Slack(비공개 채널 포함)에 Gmail 알림(slack+mail)

목적은 어쨌든 돈을 쓰고 싶지 않다는 것입니다.

먼저 결론부터 말하면,


  • Gmail (대상 폴더 준비) 수신하고
  • GAS (Google Apps Script)에서 위의 Slack에 게시

  • 이상, 이것뿐입니다.

    구체적으로 하고 싶은 일



    1. 특정의 메일(리포트 메일등)을 gmail로 정기 수신하고(※사용하고 있는 툴의 편리함도 있어 메일 통지 밖에 기능이 없기 때문에 여기는 바꿀 수 없다 )
    2. 상기를 デイリー3. Slack의 특정 채널에 알림

    어떻게 깨달았는지



     
    1. 이것은 Gmail 설정의 이야기이므로 할애(아래 준비)
    2. GAS trigger를 사용하여 정기 실행
    3. Slack의 특정 채널에 알리는 GAS 준비

    1. 아래 준비


  • incoming webhook url 취득
  • 통지하고 싶은 메일 폴더(라벨, 필터의 설정 포함한다)를 준비 ※이쪽은 설명할애

  • 2. GAS trigger를 사용하여 정기 실행





    3. google apps script 준비


    function sendEmailsToSlack() {
        // target_label
        var label = GmailApp.getUserLabelByName('target_label');
        var messages = [];
        var threads = label.getThreads();
    
        for (var i = 0; i < threads.length; i++) {
          messages = messages.concat(threads[i].getMessages())
        }
    
        var message = messages[messages.length - 1];
        Logger.log(message);
    
        var output = '\n' + message.getPlainBody();
        Logger.log(output);
    
        // payload is customizable if u need
        var today = new Date();
        var payload = {
            "username": "hogehoge",
            "attachments": [
              {
                "color": "#36a64f",
                "author_link": "https://author_link",
                "title": "Something like title",
                "title_link": "Something like title_link",
                "fields": [
                  {
                    "value": output,
                    "short": false
                  }
                ],
              }
            ],
            "channel" : "#target_channel", if send public channel
    //            "channel" : "@target_person", if send to person
            "icon_emoji": ":cart:"
        };
    
        var options = {
            'method' : 'post',
            'payload' : Utilities.jsonStringify(payload),
        };
    
        var webhookUrl = 'https://hooks.slack.com/services/xxxx/hogehoge/HOGEhoge';
        UrlFetchApp.fetch(webhookUrl, options);
    }
    

    이상(중복 부분이 있습니다만, 계좌)

    조사담의



    처음 Slack과 메일의 제휴로 조사하면, 나오는 것은,

    에 관한 것만으로, 무료로 사용하고 싶기 때문에 somosomoNG.

    또한,
    htps: //자피에 r. 코m/

    를 이용한 방법도 산견되었지만, 이것이라면 퍼블릭 채널 밖에 통지할 수 없다. . . .
    ※하고 싶은 것은 비공개 채널에 통지

    라고 하는 것으로, 이번의 방법에 착지한 결과입니다.

    좋은 웹페이지 즐겨찾기