皆さんこんにちは~!スーパーマーケットの従業員によるゼロからのプロトタイピングチャレンジ第二弾です~
今回は・・・
在庫はどのくらい残ってる??をLINEBotで通知!
在庫率の画像判定!
— yuichi_e (@yuuuuuichi69) July 30, 2022
今はLINEBotに画像を送信してるけど、ウェブカメラ繋げてやりたいなー#protoout #teachablemachine #nodered #LINEBot pic.twitter.com/ymkC0HXHAJ
スーパーマーケットの一番の肝!在庫がどのくらいある?? 品出しが必要??
を教えてくれるというのは昔から欲しいと思われてます。
今回はそんな 在庫が少ないよ~ をLINEの通知で教えてくれるようなものを作成します!!
Let's チャレンジ!!
使用するもの
Teachable Machine
Node-RED
LINEDevelopers
Teachable Machineを使って在庫状況を学習させる
在庫判定を行うことが目的のため、在庫状況を学習させます。
在庫が100% 80% 50% 30% 10% なし
の6通りで学習させます。
きちんと反応するかも確認!
Node-REDを使ってLINEと繋げる
全体はこんな感じ
コードの中身は下記を参照ください。④と⑤はコードの追加から追加必須です
①ネットワークカテゴリhttp in
②機能カテゴリfunction
③ネットワークカテゴリhttp request
④分析カテゴリteachable machine
追加の際は node-red-contrib-teachable-machine
⑤機能カテゴリfunction
⑥LINEカテゴリReplayMessage
追加の際はline-messaging-api
それぞれの設定
②のコードは下記をそのまま貼り付けてます
const messageID = msg.payload.events[0].message.id;
const replyToken = msg.payload.events[0].replyToken;
msg.messageID = messageID;
msg.replyToken = replyToken;
return msg;
③の内容は
URL
https://api-data.line.me/v2/bot/message/{{{messageID}}}/content
認証を使用
チェック入れる
種別
Bearer認証
トークン
LINEのアクセストークンを貼り付ける
出力形式
バイナリバッファ
続いて④⑤は
⑤のコードは下記を貼付け
const className = msg.payload[0].class;
msg.payload = {};
msg.payload.events = [
{
"type": "message",
"replyToken": msg.replyToken,
"message": {
"type": "text",
"text": `これは、「${className}」かな?`
}
}
];
return msg;
最後に⑥は
以上で設定は完了。
最後にデプロイを忘れずに!!
実装してみます
写真をLINEに送信すると現在の在庫状況を返してくれるようになっております。
在庫率の画像判定!
— yuichi_e (@yuuuuuichi69) July 30, 2022
今はLINEBotに画像を送信してるけど、ウェブカメラ繋げてやりたいなー#protoout #teachablemachine #nodered #LINEBot pic.twitter.com/ymkC0HXHAJ
しかし写真送るなら撮った時点で人間が判断できるだろうよ!!!
という、突っ込みはやめてください・・・・
まだまだ進化を見据えてます!!!
今後の展望
実は今回の作成したものが全くゴールではなく、今の技術と時間ではここまでになっております。
本当は・・・
某無人店舗の赤枠内のお弁当コーナーの売れ行きを把握したいと思っております。
上記画像は15分おきの写真画像とリアルタイム映像をWebカメラで監視できるサービスになっております。
このサービスと連携し自動的にLINEBotに画像が送信されてAIが判断し、お弁当の在庫が50%以下になったらLINEで通知が来るような仕組みを構築したいと考えております。
今回参考にした記事はこちらです。
すごくわかりやすく記載されているので是非。
日々、楽しみながら成長できれば良いなぁと思ってます!
以上、最後までお読みいただきありがとうございます。