GASで始める!LINE BOTで手軽に画像送信する方法

LINE BOTを使って画像を送信したいんだけど、GASでどうやって設定するのかな?まだよくわからないんだ…
猫男
猫男
catman
catman
よし、catmanが「GASでLINE BOTを使って画像送信する方法」を教えてやろう!

 

GASでLINE BOTの基本を理解する

GASを使ってLINE BOTを動かすには、まずLINE Developersのアカウントを作成してBOTを設定する必要があります。そしてGASでスクリプトを書き、画像送信機能を実装していきます。

LINE Developersに登録する

LINE Developersに登録し、Channelを作成して、必要なAPIの設定を行います。これにより、LINE BOTが発言したり、ユーザーに画像を送信することができます。

まずはLINE Developersで新しくChannelを作成します。それからMessaging APIを有効にし、Channel SecretやAccess Tokenを取得します。

GASでプロジェクトを作成する

GASのプロジェクトを作成し、LINEので使用するスクリプトを書いていきます。

Googleドライブにアクセスし、新しいスクリプトを作成します。次に、必要なURLやトークンをコードに設定していきます。

 

GASでLINE BOTを使って画像を送信する方法

LINE BOTを動かすための基盤が整ったら、GASを使って実際に画像を送信できるようにスクリプトを書いてみましょう。

GASのスクリプトを記述する

以下は、GASを使ってLINE BOTで画像を送信する基本的なスクリプト例です。


 function sendImage() {
   var url = "https://api.line.me/v2/bot/message/push";
   var token = "YOUR_ACCESS_TOKEN";

   var headers = {
     "Content-Type": "application/json",
     "Authorization": "Bearer " + token
   };

   var postData = {
     "to": "USER_ID",
     "messages": [{
       "type": "image",
       "originalContentUrl": "IMAGE_URL",
       "previewImageUrl": "IMAGE_URL"
     }]
   };

   var options = {
     "method": "post",
     "headers": headers,
     "payload": JSON.stringify(postData)
   };

   UrlFetchApp.fetch(url, options);
 }

このスクリプトは、LINE APIを呼び出して特定のユーザーに画像を送信します。

  • 「YOUR_ACCESS_TOKEN」: LINE Developersで発行されたアクセストークンを設定します。
  • 「USER_ID」: 画像を送信する対象のユーザーIDを設定します。
  • 「IMAGE_URL」: 送信する画像のURLを指定します。

画像送信を実行する

GASでスクリプトを保存し、メニューの「スクリプトを実行」をクリックします。これで設定されたユーザーに画像が送信されます。

 

GASでLINE BOTを使って画像が送れるようになったよ!これで何か面白いことができそう!
猫男
猫男
catman
catman
その意気だ!どんどん試して、便利なBOTを作っていくといいさ。

 

練習問題

GASを使って、特定のメッセージをLINE BOTから送信するスクリプトを書いてください。

以下の項目を満たすコードを書いてみましょう。

  • テキストメッセージを送信する
  • 送信先のユーザーIDを指定する
  • アクセストークンを使用する

 
 

解答・解説

以下が解答例のコードとその解説です。


function sendTextMessage() {
  var url = "https://api.line.me/v2/bot/message/push";
  var token = "YOUR_ACCESS_TOKEN";

  var headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer " + token
  };

  var postData = {
    "to": "USER_ID", 
    "messages": [{
      "type": "text",
      "text": "こんにちは!"
    }]
  };

  var options = {
    "method": "post",
    "headers": headers,
    "payload": JSON.stringify(postData)
  };

  UrlFetchApp.fetch(url, options);
}

このスクリプトでは、LINE APIを使って指定されたテキストメッセージをユーザーに送信します。

  • 「YOUR_ACCESS_TOKEN」: アクセストークンは、LINE Developersで発行されたものを使います。
  • 「USER_ID」: メッセージを送りたいユーザーのIDを入れます。
  • “type”: “text”: メッセージの種類としてテキストを指定します。

EARTHPG 自動化研究所

「その作業、仕組みにできます。」

Google Apps Script、Python、スプレッドシート自動化、WordPress開発、 API連携、AI活用まで対応。 小さな自動化から業務全体の設計まで、研究所が支援します。