mirror of
https://github.com/aljazceru/cyphernode.git
synced 2026-01-04 21:45:33 +01:00
Better error handling for the notify function
This commit is contained in:
@@ -13,6 +13,7 @@ notify_web() {
|
||||
local returncode
|
||||
local response
|
||||
local http_code
|
||||
local curl_code
|
||||
|
||||
# We use the pid as the response-topic, so there's no conflict in responses.
|
||||
trace "[notify_web] mosquitto_rr -h broker -W 21 -t notifier -e \"response/$$\" -m \"{\"response-topic\":\"response/$$\",\"cmd\":\"web\",\"url\":\"${url}\",\"body\":\"${body}\"}\""
|
||||
@@ -23,17 +24,19 @@ notify_web() {
|
||||
# The response looks like this: {"curl_code":0,"http_code":200,"body":"..."} where the body
|
||||
# is the base64(response body) but we don't need the response content here.
|
||||
trace "[notify_web] response=${response}"
|
||||
curl_code=$(echo "${response}" | jq ".curl_code" | tr -d '"')
|
||||
trace "[notify_web] curl_code=${curl_code}"
|
||||
http_code=$(echo "${response}" | jq ".http_code" | tr -d '"')
|
||||
trace "[notify_web] http_code=${http_code}"
|
||||
|
||||
if [ "${returncode}" -eq "0" ]; then
|
||||
if [ "${curl_code}" -eq "0" ] && [ "${returncode}" -eq "0" ]; then
|
||||
if [ "${http_code}" -lt "400" ]; then
|
||||
return 0
|
||||
else
|
||||
return ${http_code}
|
||||
fi
|
||||
else
|
||||
return ${returncode}
|
||||
return ${curl_code} || ${returncode}
|
||||
fi
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user