ハピタス登録で1,000円分になるURL
LINE Notifyで画像を送りたい
サーバ(raspberrypiほか)から定期的にLINE NotifyのAPIを叩いて自分のLINEにテキストメッセージを送っている。例えばテレビの録画の完了メッセージとか、サーバの今日の空き容量通知とか。超便利。
テキストだけじゃなくて画像も送りたいと前から思ってた。APIにはとっくに機能実装されてるらしい。
まずはメッセージ飛ばすテスト
$ vim doLINEnotify4.sh
#!/bin/bash
myTOKEN='dumyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy'
myMESS='テストですよ'
curl -X POST https://notify-api.line.me/api/notify -H 'Authorization: Bearer '"$myTOKEN" -F 'message='"$myMESS" -F 'stickerPackageId=1' -F 'stickerId=113'
画像も飛ばす
#!/bin/bash
myTOKEN='dumyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy'
myMESS='テストですよ'
myJPG='dummy.jpg'
# curl -X POST https://notify-api.line.me/api/notify \
# # -H 'Authorization: Bearer YOUR_PERSONAL_ACCESS_TOKEN' \
# #-F 'message=test' \
# #-F 'imageFile=@/PATH/TO/IMAGE/cony.jpg'
#
# -H 'Authorization: Bearer '"$myTOKEN" \
# -F 'message='"$myMESS" \
# -F 'imageFile=@'"$myJPG"
curl -X POST https://notify-api.line.me/api/notify -H 'Authorization: Bearer '"$myTOKEN" -F 'message='"$myMESS" -F 'imageFile=@'"$myJPG"
引数にLINEメッセージと画像を取る
$ vim doLINEnotify6.sh
#!/bin/bash
shopt -s expand_aliases
source ~/.bashrc
# 異常時にちゃんと止まるスクリプト
# http://fj.hatenablog.jp/entry/2017/05/20/192431
set -eu -o pipefail
trap 'echo "ERROR: line no = $LINENO, exit status = $? > &2; exit 1' ERR
mydate=`date +"%Y%m%d_%H%M%S"`
mypath=`pwd`
echo $mydate
# http://d.hatena.ne.jp/nattou_curry_2/20091103/1257262803
# Bashを使うなら理解しておきたいアルゴリズム - 抽出・ソート・結合・集計
# 関数
# function multi() { echo "数値を入力"; read ans; for i in $(seq 1 10); do echo "$i"; echo $*1; done; }
if [ $# -lt 2 ]
then
echo '引数足りない'
echo "$0"' LINE送る文字 画像.jpg'
echo "$0"' this-is-test dummy.jpg'
exit
fi
echo '---------------------'
#path="$1"
path="$0"
echo "path: $path"
basename=${path##*/}
echo "basename: $basename"
filename=${basename%.*}
echo "filename: $filename"
extension=${basename##*.}
echo "extension: $extension"
echo '---------------------'
myLOG="$filename"'.log'
echo 'ログ:'"$myLOG"
echo '---------------------'
myTOKEN='dumyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy'
#myMESS='テストですよ'
myMESS="$1"
#myJPG='dummy.jpg'
myJPG="$2"
# curl -X POST https://notify-api.line.me/api/notify \
# # -H 'Authorization: Bearer YOUR_PERSONAL_ACCESS_TOKEN' \
# #-F 'message=test' \
# #-F 'imageFile=@/PATH/TO/IMAGE/cony.jpg'
# -H 'Authorization: Bearer '"$myTOKEN" \
# -F 'message='"$myMESS" \
# -F 'imageFile=@'"$myJPG"
#curl -X POST https://notify-api.line.me/api/notify -H 'Authorization: Bearer '"$myTOKEN" -F 'message='"$myMESS" -F 'imageFile=@'"$myJPG"
curl -X POST https://notify-api.line.me/api/notify -H 'Authorization: Bearer '"$myTOKEN" -F 'message='"$myMESS" -F 'imageFile=@'"$myJPG"
echo "$mydate" | tee -a "$myLOG"
echo "$myMESS" | tee -a "$myLOG"
echo "$myJPG" | tee -a "$myLOG"
echo '----------------'>> "$myLOG"
*1:ans*i