この記事では、Google Apps Script (GAS) を使って、LINE BOTで「動画メッセージ」を送信する方法を解説します。
動画メッセージは、ユーザーの注目を引きやすく、情報を効果的に伝えることができるメッセージ形式です。
公式ドキュメント:動画メッセージ | LINE Developers


事前準備
メッセージを送信するには、以下の2つの情報が必要です。
1. チャンネルアクセストークンの取得
LINE Developersコンソールから、利用するBOTのチャンネルアクセストークンを取得してください。詳しい手順は以下の記事で解説しています。
LINE BOT開発に不可欠なMessaging APIのチャンネルアクセストークンを取得する手順を、実際の画面キャリプチャを交えて詳しく解説します。LINE Developersへの登録からプロバイダー、チャンネル作成、トークン発行までを網羅。
2. ユーザーIDの取得
メッセージの送信先となるLINEユーザーのIDが必要です。取得方法は以下の記事を参考にしてください。
Google Apps Script(GAS)を使って、LINE BOTと友だちになっているユーザーのIDを取得する方法を解説します。Webhook経由で送信されるイベント情報から、特定のユーザーを識別するための`userId`を抜き出すサンプルコードを紹介します。
GASで動画メッセージを送信するサンプルコード
以下のサンプルコードは、GASで動画メッセージを送信する例です。動画(MP4)のURLと、トークルームに表示されるプレビュー画像のURLを指定します。
コード内の TOKEN と DEBUGID は、ご自身の環境に合わせて書き換えてください。
const TOKEN = 'LINEのトークンを指定(取得方法:https://arukayies.com/gas/line_bot/gettoken)';
const DEBUGID = 'LINEのユーザIDを指定(取得方法:https://arukayies.com/gas/line_bot/get-userid)';
//LINEBOTで動画メッセージを送るサンプル
function pushmessage_video() {
//動画メッセージを送る
UrlFetchApp.fetch('https://api.line.me/v2/bot/message/push', {
'headers': {
'Content-Type': 'application/json',
'Authorization': 'Bearer ' + TOKEN, //LINEのトークンを指定
},
'method': 'POST',
'payload': JSON.stringify({
'to': DEBUGID, //LINEのユーザIDを指定
'messages': [{
'type': 'video',
'originalContentUrl': 'https://www9.nhk.or.jp/das/movie/D0002160/D0002160266_00000_V_000.mp4', //映像:NHKクリエイティブ・ライブラリー
'previewImageUrl': 'https://placehold.jp/240x240.jpg?text=test'
}],
'notificationDisabled': false // trueだとユーザーに通知されない
}),
});
}
originalContentUrl: 再生する動画ファイル(mp4)のURLを指定します。URLはHTTPSである必要があります。previewImageUrl: トーク画面に表示されるプレビュー画像のURLを指定します。URLはHTTPSである必要があります。
送信結果
上記のGAS関数 pushmessage_video を実行すると、指定したユーザーに動画メッセージが送信されます。

動画メッセージ受信画面
ユーザーはトーク画面上で動画を再生できます。
*映像素材:[NHKクリエイティブ・ライブラリー](https://www.nhk.or.jp/archives/creative/)*
まとめ
今回は、GASを利用してLINE BOTから動画メッセージを送信する方法を紹介しました。動画のURLとプレビュー画像のURLを指定するだけで簡単に実装できるため、ぜひ活用してみてください。
その他のメッセージタイプやアクションについては、以下の記事で紹介しています。
LINE BOT開発で必須のアクションオブジェクト7種類(ポストバック、メッセージ、URI、日時選択、カメラ、カメラロール、位置情報)の機能と使い方をGoogle Apps Script (GAS) のサンプルを交えて徹底解説。それぞれの違いや最適な使い分けがわかります。

