Cześć!
Czy ktoś może próbował uruchamiać skrypt .sh po zmianie statusu kontaktronu/przełącznika itp.?
Mam zdefiniowany kontaktron jak na zdjęciu i chciałbym aby po otwarciu kontaktronu został uruchomiony skrypt send.sh, który wyśle mi SMSa z powiadomieniem ( skrypt działa i uruchomiony z konsoli ładnie wysyła SMS, docelowo chciałbym aby wysyłał smsy na kilka numerów a w treści przesyłał nazwę czujnika).
#!/bin/sh
# skrypt w pliku send.sh
# używanie: sh send.sh "+48507123456" "test kolejny :) ąśćź"
if [ $# -lt 2 ]
then
echo "Podałeś za mało paramerów ustawiam domyslne"
number="+48507123456"
content="testowy sms do $number"
echo -e "Numer: $number\ntreść: $content"
else
number="$1"
content="$2"
echo -e "Podałeś numer: $number\ntreść: $content"
fi
length=${#content}
# echo $length
cc=`curl -s -X GET http://192.168.8.1/api/webserver/SesTokInfo`
c=`echo "$cc"| grep SessionID=| cut -b 10-147`
t=`echo "$cc"| grep TokInfo| cut -b 10-41`
date=$(date +"%Y-%m-%d %H:%M:%S")
# echo $date
curl -v http://192.168.8.1/api/sms/send-sms -H "Cookie: $c" -H "__RequestVerificationToken: $t" -H "Content-Type: application/x-www-form-urlencoded; charset=UTF-8" --data "<?xml version="1.0" encoding="UTF-8"?><request><Index>-1</Index><Phones><Phone>$number</Phone></Phones><Sca></Sca><Content>$content</Content><Length>$length</Length><Reserved>1</Reserved><Date>$date</Date></request>"
- użytkownik openhab lub inny na którym działa openhab musi mieć uprawnienia do wykonywania tego skryptu
- w openHab zainstalowany binding exec
- trzeba napisać regułę w OH2, która będzie się uruchamiała przy zmianie stanu czujnika i odpalała ten skrypt
Więcej o Binding Exec i przykład tutaj