- 投稿日:2021-01-14T23:29:32+09:00
LINEBotで画像、動画、位置情報を受けとったら処理を実行する@Go
以前作ったオウム返しするLINEBotをいじくり回しました。
https://qiita.com/endo-yuki/items/1a0ddfe857674be6044b
ドキュメントを参考にして、画像、動画、位置情報を受けっとったとき、メッセージを返す処理を追加しました。
https://pkg.go.dev/github.com/line/line-bot-sdk-go/linebot#TemplateActionサンプルソースコード
main.go~~~~~~~~~~~~~~(省略)~~~~~~~~~~~~~~~~~~~~~~ case *linebot.ImageMessage: if _, err = bot.ReplyMessage(event.ReplyToken, linebot.NewTextMessage("画像ですね")).Do(); err != nil { log.Print(err) } case *linebot.VideoMessage: if _, err = bot.ReplyMessage(event.ReplyToken, linebot.NewTextMessage("動画ですね")).Do(); err != nil { log.Print(err) } case *linebot.LocationMessage: if _, err = bot.ReplyMessage(event.ReplyToken, linebot.NewTextMessage("位置情報ですね")).Do(); err != nil { log.Print(err) } ~~~~~~~~~~~~~~(省略)~~~~~~~~~~~~~~~~~~~~~~感想
最近投稿をさぼっていたら、奥さんに三日坊主と罵られました。
将来的にはBotに送信された画像をオンラインストレージに保存したいと思ってます。
- 投稿日:2021-01-14T21:36:01+09:00
Go + Air でホットリロード
はじめに
Goでファイル変更したときにホットリロードさせるツールとして、
cosmtrek/airを使ってみたいと思います。環境
go: v1.15.3
プロジェクト作成
% mkdir sample && cd sample % go mod init % go mod init sample特にここはなんでも良いですが、フレームワークとしてginを使います。
% go get -u github.com/gin-gonic/gin % vi main.go
package main import "github.com/gin-gonic/gin" func main() { r := gin.Default() r.GET("/", func(c *gin.Context) { c.JSON(200, gin.H{ "message": "レスポンス", }) }) r.Run() }go run
go runで起動してみます。
% go run main.go立ち上がったら別のウィンドウで、
% curl http://localhost:8080 {"message":"レスポンス"}airで動かす
導入
go get -u github.com/cosmtrek/air
% which air <GOPATH>/go/bin/air % air -v __ _ ___ / /\ | | | |_) /_/--\ |_| |_| \_ v1.12.1 // live reload for Go apps, with Go1.14.0airが入ったら、go runのかわりにairコマンドで動かします。
$ air
起動したところでmain.goを書き換えます。
package main import "github.com/gin-gonic/gin" func main() { r := gin.Default() r.GET("/", func(c *gin.Context) { c.JSON(200, gin.H{ "message": "レスポンスだよ", }) }) r.Run() }% curl http://localhost:8080 {"message":"レスポンスだよ"}ホットリロードできていました。
- 投稿日:2021-01-14T12:41:56+09:00
自宅内の見守りカメラをアップデートした:サマリー
はじめに
この記事は、私の以前の投稿「自宅内見守りカメラをOpenCV+HTML+JavaScriptで簡易に構成!」の続編です。
- RasberryPiでシステムを実働させた際の不具合修正のため、プログラム構成を変更
- 試用してみて必要と感じた機能の追加(キャリブレーション機能など)
- UIの変更
内容が多岐にわたるため、下記の通り分割して記事にしていきたいと思います。
Index
項目 内容 ハードウェア準備編 RasberryPiのカメラモジュールを使うまで お試し動作で課題にぶつかった編 パフォーマンスの課題にぶつかりました 構成を変更しよう編 自分の勉強も兼ねてGo言語を用いて作り直しをします 動作確認および機能追加編 明るさ調整機能など、必要と感じた機能を追加します