mirror of
https://github.com/octoleo/telegram-bot-bash.git
synced 2024-12-31 22:01:46 +00:00
retry now working
This commit is contained in:
parent
aec4e71dc8
commit
769d07d151
14
bashbot.sh
14
bashbot.sh
@ -11,7 +11,7 @@
|
|||||||
# This file is public domain in the USA and all free countries.
|
# This file is public domain in the USA and all free countries.
|
||||||
# Elsewhere, consider it to be WTFPLv2. (wtfpl.net/txt/copying)
|
# Elsewhere, consider it to be WTFPLv2. (wtfpl.net/txt/copying)
|
||||||
#
|
#
|
||||||
#### $$VERSION$$ v0.96-pre-28-gc2f4753
|
#### $$VERSION$$ v0.96-pre-29-gaec4e71
|
||||||
#
|
#
|
||||||
# Exit Codes:
|
# Exit Codes:
|
||||||
# - 0 sucess (hopefully)
|
# - 0 sucess (hopefully)
|
||||||
@ -363,18 +363,22 @@ fi
|
|||||||
sendJsonRetry(){
|
sendJsonRetry(){
|
||||||
local retry="${1}"; shift
|
local retry="${1}"; shift
|
||||||
[[ "${1}" =~ ^\ *[0-9.]+\ *$ ]] && sleep "${1}"; shift
|
[[ "${1}" =~ ^\ *[0-9.]+\ *$ ]] && sleep "${1}"; shift
|
||||||
|
printf "%s: RETRY %s %s %s\n" "$(date)" "${retry}" "${1}" "${2/[$'\n\r']*}"
|
||||||
case "${retry}" in
|
case "${retry}" in
|
||||||
'sendJson'*)
|
'sendJson'*)
|
||||||
sendJson "$@"
|
sendJson "$@"
|
||||||
|
|
||||||
;;
|
;;
|
||||||
'sendUpload'*)
|
'sendUpload'*)
|
||||||
sendUpload "$@"
|
sendUpload "$@"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
printf "%s: SendJsonRetry: unknown, cannot retry %s\n" "$(date)" "${retry}" >>"${ERRORLOG}"
|
printf "%s: Error: unknown function %s, cannot retry\n" "$(date)" "${retry}"
|
||||||
|
return
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
[ "${BOTSENT[OK]}" = "true" ] && printf "%s: Retry OK: %s %s\n" "$(date)" "${retry}" "${1}"
|
||||||
|
} >>"${ERRORLOG}"
|
||||||
|
|
||||||
# process sendJson result
|
# process sendJson result
|
||||||
# stdout is written to ERROR.log
|
# stdout is written to ERROR.log
|
||||||
@ -406,7 +410,7 @@ sendJsonResult(){
|
|||||||
# OK, we can retry sendJson, let's see what's failed
|
# OK, we can retry sendJson, let's see what's failed
|
||||||
# throttled, telegram say we send to much messages
|
# throttled, telegram say we send to much messages
|
||||||
if [ -n "${BOTSENT[RETRY]}" ]; then
|
if [ -n "${BOTSENT[RETRY]}" ]; then
|
||||||
BOTSEND_RETRY="$(( BOTSENT[RETRY] * 15/10 ))"
|
BOTSEND_RETRY="$(( BOTSENT[RETRY]++ ))"
|
||||||
printf "Retry %s in %s seconds ...\n" "${2}" "${BOTSEND_RETRY}"
|
printf "Retry %s in %s seconds ...\n" "${2}" "${BOTSEND_RETRY}"
|
||||||
sendJsonRetry "${2}" "${BOTSEND_RETRY}" "${@:2}"
|
sendJsonRetry "${2}" "${BOTSEND_RETRY}" "${@:2}"
|
||||||
unset BOTSEND_RETRY
|
unset BOTSEND_RETRY
|
||||||
@ -811,7 +815,7 @@ start_bot() {
|
|||||||
# bot is ready, start processing updates ...
|
# bot is ready, start processing updates ...
|
||||||
while true; do
|
while true; do
|
||||||
# adaptive sleep in ms rounded to next 0.1 s
|
# adaptive sleep in ms rounded to next 0.1 s
|
||||||
sleep "$(_round_float "$((nextsleep))e-3")"
|
sleep "$(_round_float "${nextsleep}e-3" "1")"
|
||||||
((nextsleep+= stepsleep , nextsleep= nextsleep>maxsleep ?maxsleep:nextsleep))
|
((nextsleep+= stepsleep , nextsleep= nextsleep>maxsleep ?maxsleep:nextsleep))
|
||||||
# get next update
|
# get next update
|
||||||
UPDATE="$(getJson "$UPD_URL$OFFSET" 2>/dev/null | "${JSONSHFILE}" -s -b -n | iconv -f utf-8 -t utf-8 -c)"
|
UPDATE="$(getJson "$UPD_URL$OFFSET" 2>/dev/null | "${JSONSHFILE}" -s -b -n | iconv -f utf-8 -t utf-8 -c)"
|
||||||
|
Loading…
Reference in New Issue
Block a user