Botの「箱」(LINE公式アカウント)と「鍵」(チャネルアクセストークン)は準備できました。しかし、このBotはまだただの箱です。
次に必要なのは、「いつ」「何を」通知するかを判断する「脳」です。
この脳の役割を担うのが、私たちズボラ開発者の最強の味方、Google Apps Script (GAS)です!
💡 GASとは? なぜLINE Botと親和性が高いのか
1. GASとは?
Google Apps Script(GAS)とは、Googleが提供する、無料で使えるプログラミング環境のことです。
Gmail、Googleスプレッドシート、Googleカレンダーなど、普段あなたが使っているGoogleのサービスと連携して動く小さなプログラムを簡単に作ることができます。
サーバー代もドメイン代も全て無料。超個人的な自動化に、これ以上のツールはありません。
2. LINE Botとの親和性が最強な理由
GASは、「条件を満たしたら通知を送る」というLINE Botの基本的なロジックを、最も簡単かつ無料で実現できるツールだからです。
GASには、外部のウェブサービスにアクセスするための機能(UrlFetchApp)が標準で備わっています。
これと、先回取得したLINEの「合鍵」(アクセストークン)を組み合わせるだけで、LINE Messaging APIを介してあなたのLINEに通知を送信できるのです。
| GASの機能 | 役割(Bot開発において) |
|---|---|
| Googleサービス連携 | スプレッドシートの残高、カレンダーの予定などをトリガー(きっかけ)にする。 |
| 時間ベースの実行 | 「毎日朝7時に」「毎週月曜日の夜」など、通知のタイミングを自動設定する。 |
| APIアクセス機能 | LINEのMessaging APIに「通知を送れ」という命令を送信する。 |
ステップ3:Google Apps ScriptでBotの「脳」を作る!
それでは、Botの「脳」となるGASのプロジェクトを作成していきましょう。これも非常に簡単です!
3-1. Google Apps Scriptにアクセス
まずはGASの作業画面を開きます。
👉 [Google Apps Scriptの公式ページはこちらから] (https://script.google.com/home)
- Googleアカウント(普段使っているGmailのアカウント)でログインします。
3-2. 新しいプロジェクトを作成
- ログイン後、画面左上にある「新しいプロジェクト」ボタンをクリックします。
- これで、コードを書き込むためのまっさらなエディタ画面が表示されます。

3-3. プロジェクト名の変更
- 画面上部の「無題のプロジェクト」という部分をクリックし、分かりやすい名前に変更しましょう。
- (例:「MyLINE_Bot_Notifier」など)

💡 Messaging APIとの連携方法とロジックの概要
連携方法:合鍵を使ってLINEの門を叩く
連携はシンプルです。GASのコードの中に、以下の2つを記述するだけです。
- ステップ1で取得した「合鍵」(チャネルアクセストークン)
- LINE Messaging APIの「通知を送るためのURL」
GASがこのURLと合鍵を使ってLINEのサーバーにアクセスし、「この内容のメッセージを、じふのLINEに送ってください!」とお願いする、という仕組みです。
使用方法:条件を満たしたら通知を送るロジック
これがBot開発の醍醐味です。GASで実現したいロジックの構造は以下のようになります。
もし(IF)
- スプレッドシートの残高が10万円を下回ったら
- 今日の天気予報で「強風」が含まれていたら
- Googleカレンダーに「ジムの予約」が入っていたら
↓
そのとき(THEN)
- LINE Messaging APIに通知を送信する
- メッセージ内容は「残高がヤバいよ!」
- メッセージ内容は「洗濯物を取り込め!」
- メッセージ内容は「ジムに行く時間ですよ!」
GASに「合鍵」を渡し、感動の初通知(Hello World)を送る!
いよいよクライマックスです!「箱」(Bot)、「鍵」(トークン)、「脳」(GAS)を繋ぎ合わせ、自動化への第一歩となる通知をあなた自身に送ります。
Botが通知を送る「仕組み」と宛先IDの確認
GASにコードを書く前に、2つの重要な情報が必要です。
① 送信先のID(User ID / Group ID)
Botからあなた自身にメッセージを送るには、あなたのLINEアカウントを特定するためのIDが必要です。これがUser IDです。
チャンネル基本設定の下部に書いてあります
【重要】あなたのUser IDを取得する方法(簡易版)

これでBotがあなたを認識し、通知を送る対象を特定できます。
今回は最も簡単な「プッシュ通知」のために、一旦このIDをコードに直接埋め込みます。
② 合鍵(チャネルアクセストークン)
ステップ1で取得し、安全な場所に保存した、あの長い文字列です。
Hello World通知をAIに生成させる!
先ほど作成したGASのプロジェクトを開いてください。最初からある function myFunction() { ... } の中身を、以下のコードにまるっとコピペして上書きしてください。
赤字のところにアクセストークンとIDをコピペ
/**
* じふの超個人的自動化Bot 第1回
* LINE Messaging APIを使って自分宛に「Hello World」を送信するGASコード
* * - この関数を実行すると、設定されたUser ID宛にLINE通知が届きます。
*/
function sendTestNotification() {
// === 1.【設定完了】合鍵(チャネルアクセストークン)をここに貼り付け ===
// ステップ2で発行した、Botの鍵となる長い文字列です。
const CHANNEL_ACCESS_TOKEN = "チャネルアクセストークン";
// === 2.【設定完了】メッセージを届けたい宛先IDをここに貼り付け ===
// Botを友だち追加し、メッセージを一度送ったあなたのUser ID(またはグループID)
// 💡 今回は、あなたのUser IDを一時的に使用します。次回、正式なID取得方法を説明します。
const USER_ID = "User ID";
// LINE Messaging APIのエンドポイント(メッセージ送信先)
// 💡 修正完了: 正しいURL文字列を使用しています。
const LINE_PUSH_URL = "https://api.line.me/v2/bot/message/push";
// 送信するメッセージデータ(JSON形式)
// type: text で、テキストメッセージを指定しています。
const payload = {
"to": USER_ID,
"messages": [
{
"type": "text",
"text": "Hello World! 🎉\n超個人的な自動化Bot、起動成功!\n(じふのブログより)"
}
]
};
// HTTPリクエストのオプション設定
const options = {
"method": "post",
"contentType": "application/json",
// 認証情報(合鍵)をリクエストヘッダーに含めます
"headers": {
"Authorization": "Bearer " + CHANNEL_ACCESS_TOKEN
},
// 送信データ(JSON文字列に変換)
"payload": JSON.stringify(payload)
};
try {
// 外部APIへリクエストを送信!
// UrlFetchApp.fetchは、純粋なURL文字列を引数として受け取ります。
const response = UrlFetchApp.fetch(LINE_PUSH_URL, options);
Logger.log("LINE通知の送信結果: " + response.getContentText());
// 成功メッセージ
if (response.getResponseCode() === 200) {
Logger.log("✅ 通知が成功しました。LINEを確認してください!");
} else {
// 失敗時のエラー内容をログに出力
Logger.log("❌ 通知失敗。エラーコード: " + response.getResponseCode());
}
} catch (e) {
Logger.log("❌ 処理中にエラーが発生しました: " + e.toString());
}
}
このコードは、「LINEの通知URL」と「合鍵」を使って、あなたのLINEに「Hello World」というテキストを送るだけのシンプルな処理です。
初めての実行(権限付与)
さあ、いよいよ実行です!
- GASエディタ上部にある、関数選択ドロップダウンが
sendTestNotificationになっていることを確認します。 - その横にある**「実行」**ボタン(▶マーク)をクリックします。

🚨 権限の確認が必要です
- 初めて実行するときは、Googleアカウントの認証が必要です。「Googleアカウントの権限を確認」というポップアップが出たらクリックし、画面の指示に従ってGASに権限を付与してください。
- 「安全でないページ」と表示されることがありますが、これはあなたが作成したプログラムなので安心して「許可」をクリックして進んでください。
✅ 実行結果の確認
- 実行が完了したら、GAS画面下の「ログ」または「実行ログ」を確認します。
- ログに
✅ 通知が成功しました。LINEを確認してください!と表示されていれば大成功です!

そして、あなたのLINEアプリを開いてみてください...!
あなたのBotから、**「Hello World! 🎉 超個人的な自動化Bot、起動成功!」**という感動のメッセージが届いているはずです。

あなたはもう立派なBot開発者!
おめでとうございます!これであなたは、Botの「箱」「鍵」「脳」を自力で接続し、実際に通知を飛ばすことに成功しました。
🚀 Botを「自動」にする!GASトリガー設定
これまでの手順で手動で「Hello World」通知を送ることに成功しましたね!しかし、Bot開発の真の喜びは、「何もしなくても動き続ける」ところにあります。
今回は、Botの実行に「目覚まし時計」を設定し、あなたが寝ている間にでも自動でLINE通知を送らせる「トリガー設定」を解説します。
トリガーとは? Botの目覚まし時計をセットする
トリガーとは、Google Apps Script(GAS)で**「いつ、どの関数を実行するか」**を設定するための機能です。
今回作った sendTestNotification() 関数を、「毎日朝7時」に実行するように設定すれば、Botが人の手を介さずに毎日決まった時間に動き出します。これが究極のズボラライフの始まりです!
トリGASで設定できるトリガーの種類は様々ですが、今回は**「時間ベースのトリガー」**(Time-driven trigger)を使います。
| トリガーの種類 | 実行されるタイミング |
|---|---|
| 時間ベース | 毎日7時、毎週月曜日、毎月1日など、決まった時刻 |
| スプレッドシートベース | スプレッドシートが編集されたとき、フォームが送信されたとき |
| カレンダーベース | 予定が始まる直前など |
トリガーの作成手順(毎日7時に自動実行)
GASエディタを開き、以下の手順でトリガーを設定します。
1. トリガー設定画面を開く
GASエディタの画面左側にある、時計のアイコン(⏰)をクリックします。これがトリガー設定画面です。

2. 新しいトリガーを追加
画面右下にある**「トリガーを追加」**ボタンをクリックします。設定パネルが表示されます。

3. トリガーの実行条件を設定
表示された設定パネルで、以下のように項目を上から順に選択していきます。
| 項目名 | 設定値 | 意味 |
|---|---|---|
| 実行する関数を選択 | sendTestNotification | どの関数を動かすか(前回作ったHello Worldの関数) |
| 実行するデプロイを選択 | Head | そのままでOK |
| イベントのソースを選択 | 時間ベースのトリガー | 時間で動くように設定 |
| 時間ベースのタイプを選択 | 日付ベースのタイマー | 毎日実行するように設定 |
| 時刻を選択 | 午前7時~8時 | 毎日この時間帯に実行されます(7時ちょうどには実行されない場合があります) |
4. 設定を保存して完了
全ての設定を確認したら、画面右下の**「保存」**ボタンをクリックします。
これで、Botの「目覚まし時計」がセットされました!
🌟 設定完了!感動の瞬間を待とう!
トリガー設定が完了すれば、もうあなたの手を煩わせることはありません。
翌日の午前7時〜8時の間に、あなたのBotが自動で起動し、LINEに「Hello World!」のメッセージが届くはずです。
🚨 もし通知が届かなかったら?
- 時間帯を確認: 設定した時刻の範囲内かを確認しましょう。(例: 7:00〜8:00の設定なら、8:00を過ぎていないか)
- 実行ログを確認: GASエディタの左側にある「実行」アイコン(▶付きのリスト)をクリックし、
sendTestNotificationが実行されているか、エラーが出ていないかを確認してください。 - ユーザーIDの確認: BotがあなたのIDを認識しているか、再度「Messaging API設定」画面で確認し、Botに何かメッセージを送ってみてください。
次回予告:
Botは毎日通知を送ってくれるようになりましたが、メッセージが「Hello World」のままでは少し寂しいですよね?次回は、外部の**「天気予報API」と連携し、「今日の天気」**を通知する、より実用的なBotに進化させます