1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

🤖✨ LINEでサクッとハザードマップGET!ノーコードで爆速Bot作ってみた話(マジで簡単すぎてビビる)

Last updated at Posted at 2025-07-01

もしもし、そこのあなた!突然ですが、こんな経験ありませんか?

「あっ、ヤバい!地震!?ウチのハザードマップってどこだっけ…?」 「スマホでググるのも、ページ開くのも、もうめんどくさい〜!」

…はい、ありますよね!わかります、その気持ち痛いほど!

でもね、もしLINEで「〇〇区」って送るだけで、あなたの区のハザードマップが秒でピロリン♪って出てきたら…?
え、それ、神じゃん!?って思いませんか?

実はこれ、プログラミングの知識が 「ぷ」 の字も分からなくても、魔法のツール Make (旧 Integromat) を使えば、LINEとみんな大好きGoogleスプレッドシートをサクッと繋げて、マジで秒速で実現できちゃうんです!

今回は、そんな「え、嘘でしょ!?こんなに簡単なの!?」って声が聞こえてきそうな、夢のBotの作り方を、誰でも真似できるくらい噛み砕いて、笑いあり(たぶん)、感動あり(希望) でお伝えしちゃいます!✨

💖完成イメージ、見てみよう!(これ、作れちゃうんだぜ!?) 「まず完成形を見せてくれよ!」って思ったそこのアナタ、お待たせしました! このBotが完成したら、あなたのLINEにこんな「賢い友達」が爆誕します!

ユーザーがLINEで「板橋区」って送ると…

ね、便利でしょ!?
もし登録してない「八王子」って送ったら…?

こんな感じで、ちゃんと「ごめんね!」って返してくれる、優しいBotだよ!

このワクワクするBotを、今から一緒に作っていきましょう!


🌟 目次(まずはここを見て、ワクワクしちゃおう!)

  1. さあ、未知の扉を開こう!
  2. この記事を読んだら、こんな「スゴイこと」ができるようになるよ!
  3. ねぇ、これって誰向けの記事なの?
  4. どんなBotを作るの?(完成形をイメージ!)
  5. 今回使う「秘密道具」たち
  6. さあ、Botを「爆誕」させよう!🎉
    6-1 Google Sheetsを「Botの脳みそ」にするぞ!
    6-2 LINE Developersで「Botの戸籍」を作っちゃおう!
    6-3 Makeで「Botの魂」を吹き込もう!
  7. いざ、動作確認!ドキドキの瞬間!
  8. 「あれ?動かない?」そんな時の救世主ヒント集!
  9. まとめと、Botの未来予想図

1. さあ、未知の扉を開こう!

「ノーコード」って聞くと、なんか難しそう…って思いますよね?でも大丈夫!この記事は、そんなあなたの「難しそう」を「え、ちょろいじゃん!」に変えるために書かれました!

Makeを使って、LINEとGoogle Sheetsという、普段使い慣れたツール同士を繋げちゃうんです。するとどうでしょう!LINEでメッセージを受け取って、スプレッドシートから情報を引っ張ってきて、またLINEに返す、っていう一連の流れが、まるで手品のように自動で動いちゃうBotができあがります!今回は東京都のハザードマップ情報を例に、そのとんでもない魔法を体験しちゃいましょう!

2. この記事を読んだら、こんな「スゴイこと」ができるようになるよ!

「Make?なにそれ美味しいの?」状態から、 **「Make、最高かよ!」** ってなるくらい、基本操作がマスターできちゃう!

LINEとAPI連携?「ドラクエの呪文」とか言ってたのに、 「LINE Bot、余裕っしょ!」 ってドヤ顔できちゃう!

Google Sheetsがただの表計算ソフトじゃない! 「Botの最強データベース」 として使いこなせるようになる!

送られてきたメッセージに合わせて、賢く情報を検索して返信する、AIっぽい(?)Botが作れちゃう!

最終的には、LINEで区名を送るだけで、その区のハザードマップURLがピロリンって返ってくる、超便利なマイBotをゲットできる!やったー!🥳

3. ねぇ、これって誰向けの記事なの?(あなたは当てはまる?)

「ノーコードって言葉、最近よく聞くけど、何ができるの?」ってウズウズしてるあなた!

「LINEでなんか面白いことできないかな〜?」って思ってるそこのあなた!

Google Sheetsが大好きで、もっと活用したいと思ってるあなた!

プログラミングはちょっと苦手だけど、「自動化」とか「効率化」って響きに弱くて挑戦したいあなた!

セミナーで「LINE Bot作ってきてね!」って言われて、 「まじかよ!誰か助けて!」 ってなってる、まさに今のあなた!🫵

はい、これ全部当てはまったら、もう運命です!最後までついてきてね!🤝

4. どんなBotを作るの?(完成形をバッチリイメージ!)

ユーザーさんがLINEで「板橋区」って送ると…
Image (7).jfif

こんな感じで、**板橋区のハザードマップのURLが、LINEから自動で返ってくる!**ってBotを作ります。
「え、まじで!?」って思ったでしょ?なるなる、それがノーコードの醍醐味!

5. 今回使う「秘密道具」たち(これらがあれば怖いものなし!)

LINE Messaging API:
みんなが毎日使ってるあのLINE!Botとユーザーがメッセージのやり取りをするための「出入り口」みたいなものだよ!

Make (Integromat):
今回の主役!Google SheetsとLINEを「あっちこっち こっちあっち」って繋いでくれる、まさに魔法のハブ!これを使えば、複雑な流れもブロックを積むように作れちゃうんです。

Google スプレッドシート:
Botが「区名」と「ハザードマップのURL情報」を記憶しておくための最強のメモ帳!ここに情報を入れておけば、Botはいつでも必要な情報をサッと取り出せるんだ。

6. さあ、Botを「爆誕」させよう!🎉(いよいよ本番!)

ここからは、実際にあなたの手でBotを産み出すための、具体的なステップを説明していくよ!頑張ろう!

6.1. Google Sheetsを「Botの脳みそ」にするぞ!

Botが「〇〇区」って言われたときに、「ああ、あの区のマップね!」ってすぐに分かるように、区の情報とハザードマップのURLに必要な情報をまとめておく場所を作ります。これがBotの賢さの源!

①新しいGoogle Sheetsを爆誕!:
 ・Googleドライブにアクセスして、「新規」→「Google スプレッドシート」で新しいシートを作ってね!

②見出しを書こう!:
・1行目に、これからBotが使う情報を入れるための「引き出し」の名前をつけます。これをMakeが読み込んでくれるから、正確にね!
・区名_漢字 (例:千代田区),区名_ひらがな (例:ちよだく),
・municipalityCd (ハザードマップのURLにこっそり隠れてる区ごとの特別な番号だよ!)
・11_param (地図の「真ん中」をどこにするか、緯度経度の情報が入るよ!超大事!)
・z_param (地図を「どれくらい拡大して見せるか」のズームレベル!これも大事!)

{500D052F-650B-43B2-BF93-0DBE658EDEB3}.png

③区の情報を入力しよう!:
・2行目からは、Botに対応させたい東京都の区の情報をどんどん入れていこう!

municipalityCdll_paramz_paramの探し方:

・まずは「東京都防災ホームページ ハザードマップ」で検索して、目的の区のハザードマップを表示してみてね。
・ブラウザのアドレスバーに表示されているURLをよーく見てみて!
 municipalityCd= の後ろの数字がmunicipalityCd!
 11= の後ろから、%2Cも含めて次の&までがll_param!
 z= の後ろの数字がz_param!

例: 千代田区のURLが https://map.bosai.metro.tokyo.lg.jp/?l=...&11=35.687486528333565%2C139.75633108336302&z=14&municipalityCd=131016 だったら…
11_param に 35.687486528333565%2C139.75633108336302
z_param に 14
municipalityCd に 131016
って入れるんだよ!ちょっと手間だけど、ここさえ乗り越えればゴールは近い!
{63366139-18C9-4177-B707-C3FB606ACDBE}.png

頑張って自分で調べて入れてね!)

6.2. LINE Developersで「Botの戸籍」を作っちゃおう!
みんなのLINEに「あなたのBot」として登場させるために、まずはLINE Developersっていう場所で、Botの基本情報を登録します。ここが、あなたのBotの「住民票」みたいなものかな!

① LINE Developersコンソールにログイン!: https://developers.line.biz/console/

まずはここへ!もしブックマークしてなかったら、今しちゃおう!

② プロバイダーを作成:

初めての人は、まず「プロバイダー」っていうBotの「親」みたいなのを作ります。あなたの好きな名前(例:ハザードマップBotカンパニーとか、あなたのニックネームとか!)をつけてね!

③「Messaging API」チャネルを爆誕!:

「新規チャネル作成」をクリックして、「Messaging API」を選んでください。
Botの名前(例: 「東京ハザードマップBot」)、アイコン、説明などをモリモリ入力して、作成を完了させちゃおう!

④ チャネルアクセストークンをゲット!:

作ったチャネルの「Messaging API設定」タブを開いてみて!
「チャネルアクセストークン」っていう、なんか魔法の呪文みたいな文字列があるはず!その横にある「発行」ボタンをポチッとして、出てきた呪文を速攻でコピーしておいてね!これはMakeでLINEとBotを繋ぐための、超〜大事な鍵だからね!🔑

⑤ Webhook設定:

「Webhookの利用」はスイッチをオンにしておいてね!

「Webhook URL」は、この時点ではまだ空欄でOK!Makeでシナリオを作った後で、ここにMakeから発行されるURLをコピペすることになります。

⑥ 応答設定を調整!:

「応答メッセージ」はオフに設定してね!これは、Make側でBotの返信を全部コントロールするため。ここがオンだと、LINEくんが勝手に返信しちゃって、Makeが頑張って作った返信が無駄になっちゃうから、気をつけて!

「あいさつメッセージ」もオフにしておくと、Botがスッキリするよ!

⑦ Botと友達になろう!:

「Messaging API設定」タブにある「友だち追加QRコード」をスマホでピッと読み込んで、自分のLINEアカウントでBotを友だち追加しておきましょう!これで、テストがめちゃくちゃはかどりますよ!👍

6.3. Makeで「Botの魂」を吹き込もう!
さあ、いよいよMakeでの本番作業です!ここが一番ワクワクするよ!GoogleスプレッドシートとLINEを、まるで磁石みたいに引き合わせて繋げちゃいます!

イメージとしては、添付してくれたこの画像みたいに、ブロックを繋いでいく感じだよ!

① 新しいシナリオをスタート!:

Makeにログインして、「Create a new scenario」をクリック!新しい真っ白なキャンバスが現れるはず!

② モジュール1: LINE - Watch Events(LINEからのメッセージをキャッチ!)

・真ん中にある大きな「+」を押して、「LINE (LINE)」を選び、「Watch Events」をポチッと選択!これが、LINEから送られてくるメッセージをキャッチしてくれる「耳」の役割だよ。

・設定:
「Add a hook」をクリックして、新しい接続を作ろう。ステップ6.2でコピーしておいたチャネルアクセストークンをペーストして、接続設定を保存!

接続が成功すると、MakeがWebhook URLっていう、謎の長いURLを発行してくれるはず!これをコピーして、**ステップ6.2のLINE Developersの「Messaging API設定」に戻って、「Webhook URL」の空欄に貼り付けて「更新」**してくださいね。これでLINEとMakeの連携がガッチリ確立!

③ モジュール2: Google Sheets - Search Rows(Botの脳みそ検索!)

LINEモジュールの右にある丸い「+」をクリックして、「Google Sheets」から「Search Rows」を選択!これが、さっき作った「Botの脳みそ(スプレッドシート)」の中から、ユーザーが欲しい情報を探し出してくる「目」の役割だよ。

・設定:
・Connection: あなたのGoogleアカウントを繋いでね。これでMakeがスプレッドシートを見れるようになるよ。

・Spreadsheet: ステップ6.1で作成した「TokyoHazardMap_Data」を選ぼう。

・Sheet: データが入っているシート(だいたい「Sheet1」って名前かな?)を選んでね。

・Table Contains Headers: 「Yes」にしておこう。(1行目が見出しだよ、って教えてあげる感じ)

・Filter: ここが一番頭を使うけど、超重要!ユーザーが送ってきたメッセージ(LINEモジュールから来たmessage.text)が、シートの「区名_漢字」か「区名_ひらがな」に含まれてるかをチェックする条件を設定するよ!

・[項目名] 区名_漢字 (スプレッドシートの列名だね!)

・[演算子] Contains (case-insensitive) (「大文字小文字区別しないで、これを含んでるか?」って意味だよ)

・[値] {{1.message.text}} (左側のLINEモジュールからmessage.textをドラッグ&ドロップするか、入力欄の右の緑の吹き出しアイコンから選んでマッピング!これがスマートなやり方だよ!)

・「Add OR rule」 ボタンをクリックして、もう一つOR条件を追加!これで「漢字かひらがな、どっちでもOK!」になるよ。

・[項目名] 区名_ひらがな

・[演算子] Contains (case-insensitive)

・[値] {{1.message.text}}

・Limit: 1 (もし同じ名前の区があっても、最初の1件だけ探してね、って意味だよ!)

④ モジュール3: Router(Botの判断力!)

・Google Sheetsモジュールの右にある「+」をクリックして、「Tools」から「Router」を選択!これが、Botが「うん、わかった!」って時と、「え〜、ごめん、わかんない!」って時で、返信する内容を変えるための「判断力」の役割だよ。

⑤ ルート1: 検索結果が見つかった場合(ハザードマップURLを元気よく返信!)

・ルーターから伸びる最初の分岐の先に、またLINEモジュールを引っ張ってきて「Send a Reply Message」を選ぼう。

・ルートにフィルターを設定:

・ルーターから伸びるこのルートの線の上にある「漏斗(じょうご)」アイコンをクリックして、条件を設定するよ!

・[Condition] Google Sheets - Search Rows の出力にある _totalNumberOfBundles を選択。

・[演算子] Numeric operators: Greater than or equal to を選択。

・[値] 1 (「Google Sheetsで検索結果が1件以上見つかったら、このルートを通ってね!」ってことね!)

・LINE - Send a Reply Message の設定:

・Connection: 既存のLINE接続を選んでね。

・Reply Token: LINE - Watch Events モジュールから replyToken をマッピング!これで「誰に返信するの?」がわかるよ。

・Message: ここが一番ワクワクする瞬間!ユーザーに返すメッセージと、ハザードマップのURLを組み立てるよ!

・【超絶・重要ポイント!】: {{2.ll_param}}とか{{2.z_param}}{{2.municipalityCd}}っていう緑色の文字のところは、絶対にキーボードで手打ちしないこと! 入力欄の右にある緑色の吹き出しアイコンをクリックして、表示されるリストの中から**「Google Sheets - Search Rows」モジュールの出力にある、対応する項目(例:11_param)を直接ポチッと選択**して挿入してくださいね。これを間違えると、URLの中に「{{11_param}}」という文字がそのまま入っちゃって、地図が表示されない悲劇が起きちゃうからね!気をつけて!⚠️

⑥ ルート2: 検索結果が見つからなかった場合(「ごめんね」メッセージで優しく返信)

・ルーターのもう一方の分岐の先に、またLINEモジュールを引っ張ってきて「Send a Reply Message」を選ぼう。

・ルートにフィルターを設定:

・このルートの:線の上にある「漏斗(じょうご)」アイコンをクリックして、条件を設定するよ!

・[Condition] Google Sheets - Search Rows の出力にある _totalNumberOfBundles を選択。

・[演算子] Numeric operators: Equal to を選択。(ここが前回「テキスト比較」でミスしやすいとこだったよ!今回は「数値比較」のEqual toを選んでね!

・[値] 0 (「Google Sheetsで検索結果が0件だったら、こっちのルートを通ってね!」ってことね!)

・LINE - Send a Reply Message の設定:

・Connection: 既存のLINE接続を選んでね。

・Reply Token: LINE - Watch Events モジュールから replyToken をマッピング!

・Message:

🤔 うーん、ごめんなさい!🙇‍♀️
ご指定の区のハザードマップ情報は、まだ僕(Bot)のデータベースにないみたいです…!
それか、もしかしたら入力がちょっと違ったかも?
対応している区名(例:板橋区、練馬区、千代田区など)で、もう一度試してみてくれると嬉しいな!✨

⑦.シナリオの保存とON化:

画面下部にある「Save」ボタン(フロッピーディスクのアイコンだよ!)をクリックして、作ったシナリオを保存!これで安心だね。

シナリオが完成したら、画面下部のスイッチをONにします。これで、あなたのBotがインターネットの海で稼働開始!🎉

7. いざ、動作確認!ドキドキの瞬間!(Botがちゃんと動くかチェック!)

さあ、いよいよクライマックス!あなたが作ったBotがちゃんと動くか、実際にLINEで試してみよう!ドキドキするね!

① 自分のLINEで、 Botに「板橋区」と入力して送信してみよう!

・ねぇ、見て見て!板橋区のハザードマップURLがちゃんと返ってきたでしょ!?クリックして、正しく板橋区の地図が出てくるか確認してね!

② 次に「練馬」と「ひらがな」で入力して送信してみよう!

・ひらがなでもちゃんと動くか、確認してみてね!賢いBotだから大丈夫なはず!

③ Google Sheetsに登録していない区名(例: 「豊島区」とか、テキトーな「あいうえお」とか)を入力して送信してみよう! 「ごめんなさい…」っていう、対象外メッセージが返ってくるかな?ちゃんとBotがお利口さんに答えてくれたら成功だよ!

{01A22889-1680-4419-95C0-8DE4776DD130}.png

ここまで完璧に動けば、あなたのBotはもうプロトタイプとしては大成功!パチパチパチ👏

シナリオの全体像はこれだ!!
これだけ語っといてこれだけかい:scream:
{25A9AB4A-D3F1-4C9E-BCCA-D9DA54F4A123}.png

8. 「あれ?動かない?」そんな時の救世主ヒント集!(困った時はここ!)

Botが動かない…「え、なんで!?」ってなりますよね。大丈夫!よくある落とし穴と解決策を教えちゃう!

RuntimeError: [400] Invalid reply token エラーが出る場合:

・LINE Developersの応答設定、マジ確認!:「応答メッセージ」と「あいさつメッセージ」がオフになってるか、もう一度だけ確認して!ここがオンだとLINEが先に動いちゃって、MakeのReply Tokenが無効になっちゃう悲劇が起こるよ。

・LINEモジュール、増えすぎてない?: Makeのシナリオの中に、同じ「Send a Reply Message」モジュールが複数あったりしない?LINEのReply Tokenは、一度しか使えないから、複数回返信しようとするとエラーになるよ。

・Makeの処理、遅すぎない?: Makeのシナリオが動くのが遅すぎて、LINEのReply Tokenの有効期限(たったの30秒!)を超えちゃってる可能性も!Makeのシナリオ実行履歴(History)で、処理に時間がかかりすぎてないかチェックしてみよう。

・URL内の{{シート 1 ...}} がそのまま表示されちゃう!または地図が正しく絞り込まれない!:

・Makeでの変数マッピング、やり方合ってる?: 「LINE - Send a Reply Message」モジュールの「Message」フィールドで、11_paramz_parammunicipalityCdなどの変数を、緑色の吹き出しアイコンからGoogle Sheetsモジュールの出力を直接選んで挿入した?手打ちすると、ただの文字になっちゃうから気をつけてね!

・Google Sheetsの列名、間違ってない?: スプレッドシートの列名(例: 区名_漢字)と、Makeでマッピングしようとしてる変数名が、一字一句完全に一致してるか確認して!半角スペースとかも要注意だよ。

・ルーターの分岐がうまく動かない!:

・フィルターの演算子、ちゃんと「数値」にしてる?: ルーターのフィルター条件で、Google Sheets - Search Rows の出力_totalNumberOfBundlesの比較に 「Numeric operators」 を使ってるか、もう一度見てみて!「Text operators」を使っちゃうと、数値の比較が正しくできないんだ。これ、よくある間違いだから気をつけて!

9. まとめと今後の展望(あなたのBotは、もっとスゴくなる!)

どうでしたか?Make、LINE Messaging API、Google Sheetsを組み合わせることで、プログラミングの知識がなくても、こんなに賢くて便利なBotを構築できるなんて、ちょっと感動しませんか!? あなたもこれで、立派なノーコード開発者の仲間入りです!

今回のハザードマップ検索Botをベースに、あなたのBotは、まだまだ進化の可能性を秘めています!例えば…

・気象情報調査機能の追加:
「〇〇区の天気は?」って聞いたら、その日の天気や気温を教えてくれるお天気お兄さん/お姉さんBotに変身!

・道路交通量調査機能の追加:
「〇〇道の交通量教えて!」って聞いたら、リアルタイムの混雑状況を教えてくれる交通情報Botに!これで通勤・通学もスムーズに!?

・リッチメニューで楽々操作!:
LINEのトーク画面下に出る、あのオシャレなボタン(リッチメニュー)を使って、文字を入力しなくてもサッと操作できるように改良!

・Flex Messageで見やすい情報表示!:
ただのテキストじゃなくて、画像やボタン、カルーセル形式など、もっとリッチで視覚的にわかりやすいメッセージで情報を届けるBotに!「え、これLINE Botなの!?」って驚かれるかも!

ぜひこのガイドを参考に、あなただけのオリジナルBotをどんどん作ってみてくださいね!そして、さらなる機能拡張にもチャレンジして、ノーコードの可能性を最大限に引き出しましょう!無限の可能性が、あなたを待っています!🚀✨

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?