Teachable Machine + LINE Developers + enebular を使ったカード利用判定ツールを作成してみた。

# 決済時にこのカード使えるのかな？？？
スーパー、コンビニ、家電量販店等で買い物をする際、このカードで決済できるかな？と
確認することがよくある。その際、POPや定員の方に確認したりと買い物する際にひと手間かかってしまう。また、お会計時に使えないことを知り、買い物をキャンセルするすることも。
そんな経験ありませんか？？

# カード利用有無を確認できる方法とは
現在は先に述べた通りカードの利用有無を確認するには、

* お店のPOP等を探す。
* 定員の方に確認する。
* WEBサイトで確認する。

などが該当しそう。
　
これを解消する為、自身で簡単に確認できて、且つ、よく使うスマホアプリで作成できないか考えてみた。
結果・・・

よく使うアプリといえば**LINE**！！
利用率を調べてみたが約80%と、その他アプリに比べて圧倒的に多い。且つ、利用者年齢層も幅広い。
じゃーLINEを使ったアプリが一番よいなと。使い慣れたアプリでできることで、抵抗感なくすぐに使えるし。
記事：[LINE利用率が8割超える、ドコモのモバイル社会研究所調査](https://k-tai.watch.impress.co.jp/docs/news/1409693.html#:~:text=LINE%E3%80%81Twitter%E3%80%81%E3%82%A4%E3%83%B3%E3%82%B9%E3%82%BF%E3%82%B0%E3%83%A9%E3%83%A0%E3%80%81,%E5%88%A9%E7%94%A8%E7%8E%87%E3%81%A8%E3%81%AA%E3%81%A3%E3%81%9F%E3%80%82)


# 作成してみよう！

## 使用ツール
　・[Line Developers](https://developers.line.biz/ja/)
　　LINE APIの仕様や、開発手順を解説したドキュメントを開発者向けに提供
　　利用プロダクト：Messaging API
　　　　　　　　　　サービスとLINEユーザーの双方向コミュニケーションを可能にする機能を提供
　・[Teachable Machine](https://teachablemachine.withgoogle.com/)
　　機械学習モデルを作成できる、ウェブベースのツール
　・[enebular](https://www.enebular.com/ja/)
　　IoT製品・サービスづくりを包括的に支援する開発・運用サービス
　※全て無料で使用可能。

## 作成

　1. 事前準備
　　1-1. アカウントを新規に作成
　 　・Line Developers（Messaging API）
　 　・Teachable Machine
　　 ・enebular
　　1-2. 参考資料
　　https://atlabo-handson-08.netlify.app/#2

　2. 実装
　　2-1. 機械学習のモデルを作成
　　 利用可能なカードを機械学習させる。
　　 使用ツール：Teachable Machine
　　 ![Teachable Machine4.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2697311/84d62769-7f87-29e7-3c1d-0d92bea53049.jpeg)
　　 ※参考資料は[こちら](https://atlabo-handson-08.netlify.app/#2)を参照
　　　
　　2-2. LINEから他のツールへ連携するための紐づけ情報の作成
　　 LINEのトーク画面の情報を別のツールに連携可能とするためのチャネルを作成
　　 使用ツール：Line Developers（Messaging API）
　　 ![LINE Developers2.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2697311/28abe603-b5a3-d54f-96fd-9a6a7e7b423f.jpeg)
　　 ※参考資料は[こちら](https://atlabo-handson-08.netlify.app/#2)を参照

　　2-3. 2-1,2-2で作成したツールを紐づける（LINE ⇔ Teachable Machine 連携）
　　 「フロー」を使って機能間連携フローを作成
　　 使用ツール：enebular

　　 「フロー」の作成イメージはこんな感じ
　　　　① LINEのトークの情報（画像）をTeachable Machineで作成したモデルに連携
　　　　② Teachable Machineで作成したモデルで画像解析
　　　　③ ②で解析した結果を元に利用有無を判定し、結果をLINEにメッセージとして返す。
　　 ![enebular2.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2697311/2701ad44-922a-2763-f706-52375a9c3d10.jpeg)
　　 ※参考資料は[こちら](https://atlabo-handson-08.netlify.app/#2)

# 完成品
出来上がりはこんな感じ
判定結果以外にアプリ等のダウンロードURLなど販促等にも利用可能と感じ、試しにダウンロード先のURL（ダミー）も情報として出してみました。
　　　　![ダウンロード (2).gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2697311/145a0284-4a38-b25b-50b8-1bf43d60fa2a.gif)　
# 作成してみての感想
初めて使用するツールだったが、ノーコードということもあり、プログラムを書けない私でも比較的容易に作成することが出来ました！
　
私は小売業で働いていますが、お客様が「このカード決済に使えるのかな？」など耳にすることがありました。これがあればお客様も手間を省いて、直ぐに結果がわかるので利用してくれるのではないかなと。且つ、LINEで使用可能であれば、抵抗感なく利用してもらえそう。また、カード利用判定にプラスしてQRコード決済されるお客様もいらっしゃるので、その判定が付加することでさらに便利になると感じた。
（今度かんがえてみよーっと。）

「Teachable Machine」といった機械学習モデルが容易に作成できるといったツールが無料で提供されていることを知りました。今は画像判定の他に音声判定等ができるようですが、今後新しい判定機能や応用したものが、どんどん公開されていくだろーなと感じた。しかも無償で。
ITは進歩が速い！常にアンテナはっていないとダメですね。

深くまでイメージがわいていないんですが、お客様が買い物したものを機械学習して、食に偏りがないか？などを分析できるものがあるとよいと感じた。それをさらに発展させることで、推奨食材からその食材を使用したレシピまで提案できるような、そんなアプリ・ツールがあるといいかも。

# memo
* Teachable Machine、Line Developersは参考資料が多く容易に利用可能
* Line Developersは聞きなれない用語（チャネル、トークン、Webhook等）がでてくる。
（意味が分からなくても作成できましたｗ）
* enebular利用時にタイムアウト？が発生し、再度アクセスすると作成したののが消えるときがあるので、定期的に保存するとよい。
* enebularでフロー作成中に画面を再表示するとフローへのアクセス用のURLが更新されてしまう。
* LINEとの連携で使用するURLの為、更新されてしまった場合、Line Developersの設定変更が都度必要
* enebularでフロー作成時は以下ユーザガイド参照
https://nodered.jp/docs/user-guide/