【개인 비망록】 GAS에서 Google Spread Sheet의 값을 읽고 LINE Bot에 보낸 이야기

했던 일



· LINE Bot에게 특정 메시지를 보내 Google Drive의 Spread Sheet 셀 값을 읽고 메시지로 반환하는 흐름을 Google Apps Script로 실현했습니다.

사용법



① Google Drive에서 GAS 스크립트 파일을 만듭니다.

② 이하의 스크립트를 copipe. LINE Messaging API의 액세스 토큰과 스프레드 시트의 URL을 입력하십시오.

// LINE Messaging APIのアクセストークン 
var ACCESS_TOKEN = 'hogehoge' 

// ユーザがメッセージ送信したときに動く関数
function doPost(e){
    var replyToken = JSON.parse(e.postData.contents).events[0].replyToken; 
    var userMessage = JSON.parse(e.postData.contents).events[0].message.text; 
    var url = 'https://api.line.me/v2/bot/message/reply'; 
    var headers = { 
      'Content-Type': 'application/json; charset=UTF-8' ,
      'Authorization': 'Bearer ' +ACCESS_TOKEN 
    };

    // Google Spread Sheetを開き,読み込む
    var sheet = SpreadsheetApp.openByUrl("https://hugahuga");
    var val = sheet.getRange("A1").getValue();

    var reply = null;

    if(userMessage === 'A1の値を教えて!'){
     reply = "A1の値は" + val + "です.";
    }else{
     reply='A1の値を教えて!と言うことでA1の値を返します.';
    }

     //送信内容
    var payload = JSON.stringify({
      'replyToken': replyToken ,
      'messages': [{   
         'type': 'text' ,
         'text': reply
        }] 
      } ) 

    var options = { 
      'headers' : headers ,
      'method' : 'post' ,
      'payload' : payload }; 

    // メッセージを応答 
    UrlFetchApp.fetch(url ,options)
}

③ 공개 → 웹 애플리케이션으로 도입으로 진행하고,
프로젝트 버전: New
Execute the app as:Me
Who has access to the app: Anyone
로 설정하여 "업데이트"를 선택하십시오. 웹 앱으로 배포됩니다.

④ 표시되는 URL을 WebhookURL로서 LINE Messaging API에 등록한다.

위의 스크립트는 셀의 A1 값을 읽습니다.
LINE에서 「A1의 값을 가르쳐!」라고 송신하면, A1의 값이 돌아온다.

이상.

좋은 웹페이지 즐겨찾기