From ff57fac1ea8354d0f3ee90b938f125956deb4c2f Mon Sep 17 00:00:00 2001 From: Julian Pawlowski Date: Mon, 17 Sep 2018 10:46:07 +0200 Subject: [PATCH] improved TELNETPORT definition&detection --- src/entry.sh | 3 ++- src/health-check.sh | 12 +++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/entry.sh b/src/entry.sh index bcb04c07..50bf79c0 100755 --- a/src/entry.sh +++ b/src/entry.sh @@ -51,7 +51,8 @@ if [ -d "/fhem" ]; then [ -z "$(cat ${FHEM_DIR}/fhem.cfg | grep 'attr global dnsServer')" ] && echo "attr global dnsServer ${DNS}" >> ${FHEM_DIR}/fhem.cfg [ -z "$(cat ${FHEM_DIR}/fhem.cfg | grep 'attr global mseclog')" ] && echo "attr global mseclog 1" >> ${FHEM_DIR}/fhem.cfg [ -z "$(cat ${FHEM_DIR}/fhem.cfg | grep 'attr global updateInBackground')" ] && echo "attr global updateInBackground 1" >> ${FHEM_DIR}/fhem.cfg - [ -z "$(cat ${FHEM_DIR}/fhem.cfg | grep ' telnet ${TELNETPORT}')" ] && echo "define telnetPort telnet ${TELNETPORT}" >> ${FHEM_DIR}/fhem.cfg + [ -z "$(cat ${FHEM_DIR}/fhem.cfg | grep " telnet ${TELNETPORT}")" ] && [ -z "$(cat ${FHEM_DIR}/fhem.cfg | grep '^define telnetPort telnet ')" ] && echo "define telnetPort telnet ${TELNETPORT}" >> ${FHEM_DIR}/fhem.cfg + fi sed -i "s,attr global updateInBackground.*,attr global updateInBackground 1," ${FHEM_DIR}/fhem.cfg (( i++ )) diff --git a/src/health-check.sh b/src/health-check.sh index c5fa888e..f33f9140 100755 --- a/src/health-check.sh +++ b/src/health-check.sh @@ -1,7 +1,17 @@ #!/bin/bash -STATE=0 +FHEM_DIR="/opt/fhem" TELNETPORT="${TELNETPORT:-7072}" +STATE=0 + +if [ -z "$(cat ${FHEM_DIR}/fhem.cfg | grep " telnet ${TELNETPORT}")" ]; then + TELNETPORT="$(cat ${FHEM_DIR}/fhem.cfg | grep '^define telnetPort telnet ' | cut -d ' ' -f 4)" + + if [ -z "${TELNETPORT}"]; then + echo "Telnet(undefined): FAILED;" + exit 1 + fi +fi FHEMWEB=$( cd /opt/fhem; perl fhem.pl ${TELNETPORT} "jsonlist2 TYPE=FHEMWEB:FILTER=TEMPORARY!=1" 2>/dev/null ) if [ $? -ne 0 ] || [ -z "${FHEMWEB}" ]; then