AWS Lambda에서 퇴근 시간을 알리고 타각을 촉구

8948 단어 슬랙람다botAWS

개요



AWS Lambda를 사용하여 월 ~ 금 19:00에 Slack에 퇴근 시간을 알리고 타각을 촉구하는 메시지를 게시합니다.

AWS Lambda에서 정기 실행



자습서: 예약된 이벤트에서 AWS Lambda 사용 을 참고로 하면 실현할 수 있을 것 같으므로, 이 튜토리얼을 참고로 진행합니다.

Lambda 함수 만들기


  • Select blueprint에서 lambda-canary를 선택합니다.



  • Configure triggers의 각 항목을 작성합니다.
  • Schedule expression의 기입 방법에 대해서는 여기 를 참고로 지정.




  • Lambda function handler and role에서는 Role* , Policy templates 등은 튜토리얼을 따라 입력합니다.



  • 다음을 클릭하고 Review에서 설정을 확인한 다음 Create function을 클릭하여 Lambda 함수를 만듭니다.

  • Lambda 함수 테스트


  • 만든 함수를 선택하고 Test를 선택합니다.
  • 대화 상자가 표시되므로 Sample event template에서 Scheduled Event를 선택하고 Save and test를 클릭합니다.

  • Execution result 섹션에서 성공 여부를 확인합니다.



  • Slack에 알리는 코드 작성



    Environment variables에 Slack의 API token을 SLACK_API_TOKEN로 등록하고 process.env.SLACK_API_TOKEN에서 참조하십시오.
    var https = require('https');
    var qs = require('querystring');
    
    exports.handler = (event, context, callback) => {
    
        var query = qs.stringify({
            'token': process.env.SLACK_API_TOKEN,
            'channel': "CHANNEL_NAME",
            'text': "@horie 退勤しましょう!\nhttps://hoge.html",
            'mrkdwn': true,
            'link_names': 1
          });
    
        var options = {
            host: 'slack.com',
            port: '443',
            path: '/api/chat.postMessage?' + query,
            method: 'POST',
            headers: {
                'Content-Type': 'application/json; charset=utf-8"'
            }
        };
    
        var req = https.request(options, function(res) {
            res.setEncoding('utf8');
            res.on('data', function(res) {
                callback(null, res);
            });
        });
        req.on('error', (e) => {
            callback(null, 'error' + e.message);
        });
        req.write('');
        req.end();
    };
    

    Test에서 함수를 실행하면 다음과 같이 Slack에 통지됩니다.



    문제가 없으면 CloudWatch Events - Schedule을 Enable로 하여 완료됩니다.



    요약


  • AWS Lambda를 이용하여 서버리스에서 퇴근 시간의 통지와 타각을 촉구해 보았습니다.
  • 타각을 잊지 않도록 합시다!

  • 참고


  • htps : // / cs. 아 ws. 아마존. 이 m/그럼 _jp/ぁmb다/ぁ해서 st/dg/우우 th-s ぇづぇ로 ゔぇ ts-에ぁ mpぇ. HTML
  • htp : //에서 v.ぁsss d. jp / c ぉ d / 아 ws / 아 ws - ぁ MB 다 - v v
  • 좋은 웹페이지 즐겨찾기