node.js에서 LINE Notify를 사용해 보았습니다.

5493 단어 LineLineNotifyNode.js

개요



웹 서비스나 배치 처리를 만들고 있다면, 뭔가 액션이 있었던 것을 곧바로 알아차리고 싶은 일이 있을까 생각합니다.
이 알림이 자주 사용하는 앱으로 보내지면 눈치 채기 쉽지요! ?

자주 사용하는 앱은 각 사람이라 생각하지만 LINE은 많은 사람들이 사용하고 있는지 생각합니다.
그리고, LINE에서는 개인으로 간단하게 통지를 던질 수 있는 기능 LINE Notify 를 제공하고 있습니다.

여기서는 LINE Notify의 개인 액세스 토큰에서 node.js를 사용하여 알림을 받을 때까지의 궤적을 요약합니다.

대략 전체 흐름



절차는 대충 이하의 느낌.
  • LINE) 개인 액세스 토큰 얻기
  • 개발) 액세스 토큰을 사용하여 요청을 던지기
  • LINE) 통지가 도착했는지 확인

  • 매우 간단!

    절차



    1. 개인 액세스 토큰 획득



    LINE 계정을 가지고 있으면 쉽게 만들 수 있습니다.

    1-1. LINE Notify 페이지로 전환



    이하 URL에서 LINE Notify의 페이지로 천이합시다.
    htps : // 후 fy 보 t. 네. 메/그럼/

    1-2. LINE 로그인



    LINE에 로그인합니다.
    Mead 또는 비밀번호 등록이 필요합니다.
    또, LINE 앱으로 PC로의 로그인을 허가하지 않는다고 연주되기 때문에, 사전에 제외해 둡시다.

    1-3. 내 페이지로 전환



    오른쪽 상단의 계정 메뉴에서 내 페이지로 전환.

    1-4. 액세스 토큰 발급



    내 페이지의 "액세스 토큰 발급 (개발자 용)"에서 "토큰 발행"을 클릭하고,
    토큰명이나 통지하고 싶은 목적지를 선택하여 발행!

    1-5. 액세스 토큰 메모



    게시하면 액세스 토큰이 표시됩니다.
    이 토큰은 재발행되지 않으므로 확실하게 메모리합시다.
    또, 이 토큰이 유출되면, 제3자가 투고해 무제한이므로 취급 요주의.



    지금까지 LINE Notify 준비가 완료되었습니다!

    2. 액세스 토큰을 사용하여 요청을 던집니다.



    취득한 Token을 이용해 통지해 봅니다.
    어쩌면 POST에서 토큰을 header에 곁들여 메시지 던지면 던질 수 있습니다. 간단!

    자세한 요청 방법은 공식 문서를 봐 주셨으면 합니다.
    LINE Notify API Document
    ("통지계"항목이 본 기사에서 이용하고 있는 퍼스널 액세스 토큰으로의 통지입니다)

    node.js라면 이런 느낌으로 던질 수 있을까 생각합니다.
    (request 모듈이 설치되어 있다고 가정)

    app.js
    const request = require('request');
    
    const message = `これは
    テスト
    ですよ`;
    
    sendRequest(message);
    
    /**
     * LINE Notifyへ送信依頼
     * @param {Object} message - 送信メッセージ
     */
    function sendRequest (message) {
      const options = {
        uri: 'https://notify-api.line.me/api/notify',
        headers: {
          // TOKENを誤ってgitに上げてしまわないように、環境変数から取得するようにした
          'Authorization': `Bearer ${process.env.LINE_TOKEN}`
        },
        form: {
          message
        }
      };
    
      request.post(options, (error, response, body) => {
        if (error) {
          console.error(error);
          return;
        }
    
        console.log(body);
      });
    }
    

    실행
    $ LINE_TOKEN=<取得したTOKEN> node app.js
    {"status":200,"message":"ok"}
    

    LINE의 통지처에 LINE Notify씨가 통지해 오면 성공입니다.
    (어떤 TOKEN으로부터 통지되었는지는 메시지의 선두에 텍스트로 TOKEN명이 쓰여져 있습니다)

    끝에



    이용 준비도 간단하고, 구현도 간단하기 때문에 곧바로 통지를 구현하고 싶을 때라든지 편리한 것이 아닐까요?
    다만, 1시간에 두드리는 API의 상한은 토큰 마다 1000회까지인 것 같으므로 주의해 주세요.
    (1000회/시 LINE API 두드리는 사양 검토하는 편이 좋을 것 같습니다만)

    좋은 웹페이지 즐겨찾기