「検索って地味に辛い」と思うこと、ありませんか?
私はクレジットカード会社で働いています。
仕事で他部署から
「xxのクレジットカードは何のキャンペーン企画を実施していますか?」
「このクレジットカードはxxというキャンペーン企画の対象ですか?」
というような問い合わせが来たりします。
ひとつひとつのカードの種類に対してキャンペーンの企画が色々行われていて
その為の情報がフォルダやデータやシステムに散らばっていて
探すのが大変です。
そこで、
知りたいことを聞いたら
知りたいことを返して欲しい!
そんな「キャンペーン企画を検索するLINEBot」を作ろうと思います!
<使用ツール>
- LINE Developers
- Make
- SSSAPI
- Google スプレッドシート
完全に初心者のため、ゆっくり一歩づつ行こうと思います。。。
・LINE Developersのアカウントを作成しログイン
プロバイダを作成する
・Messaging APIでチャネルの名前など登録
→ これがLINEBotの名前になります
準備
・Google スプレッドシートでキャンペーン企画をまとめた一覧表を作成して
SSSAPIというものでAPI連携できるものにします
※調べたいクレジットカード名は、ここでは 1〜26 の数字を名称とさせていただきます。
・Google スプレッドシートは、データ内容を変更しても更新が反映してくれます
(すごい!感動!)
SSSAPIのサイトで簡単に作成ができました!
API URL を、2:青いHTTPモジュールと、3:JSONモジュールのところで使います
Makeシナリオ
Makeにログインし新しくシナリオを作成します
1:まず左のLINEを作る
・出現したアイコンをクリック
サービスの中から
LINEを選択 → Watch Event
Webhookを作成
(LINEとMakeを繋ぐもの)
・コネクションを作成
チャネルアクセストークンの部分にLINE Developersで発行したアクセス情報を入力
・Messaging API → LINE Developers → Messaging API設定
画面下のチャネルアクセストークンを発行し貼り付ける
・LINE Webhook アドレスを今度はLINE DevelopersのWebhook設定に貼り付ける
・Webhookの利用をON
2:青いHTTPモジュール
準備で作成したSSSAPIのURLをここで使います
・URLのところに先ほどSSSAPIで作成した企画一覧のAPI URLを貼り付け
/で繋いでLINEからのメッセージを入れます
3:紫のJSONモジュール
・準備で作成した企画一覧APIデータのE列のカード名を打ち込まれたら
該当行の内容を返信します
準備で作成したSSSAPIのURLをここで使います
・SSSAPIのURLに繋いで
filter__カード名__exact=(ここにLINEに送られてきたメッセージ)
4:最後!右のLINEモジュール
・Messages > Item1 > Textの欄に、返して欲しい項目を選択します
これでできました!
やっとできた!
カード名称「3」を打つと、そのカードが対象の企画情報を返してくれます!
感想
すこしうまくできかけた状態のコードを崩すのは
とても怖くて触れない
そして何も進まない(焦る・凹む・涙)
でもなぜ触れないか
今以上に未完成となって
今の出来以下になることが怖いから
それでも没頭していくと
楽しいという感覚が灯ってきた
できたこともあるが、実際の仕事で活かすには足りないことがあり
結果的にやりたいことまで道半ばという結果にはなったが
何かを作るという心構えを鍛えられたように思う。
スタート地点にすら立てていなかったことにも気づくことができて、
次回に向けて気を引き締めていきたい。