From 55a1fea0dc136bb05964b8db2492530cf9aad9b0 Mon Sep 17 00:00:00 2001 From: qo-op Date: Sun, 11 Jul 2021 16:17:25 +0200 Subject: [PATCH] meilleure gestion des erreurs --- sms_send_tosend.sh | 43 ++++++++++++++++++++++++++++++++++++------- 1 file changed, 36 insertions(+), 7 deletions(-) diff --git a/sms_send_tosend.sh b/sms_send_tosend.sh index 6c813e6..67aaed5 100755 --- a/sms_send_tosend.sh +++ b/sms_send_tosend.sh @@ -14,37 +14,66 @@ G1PUB=$(cat /home/${YOU}/.zen/secret.dunikey | grep 'pub:' | cut -d ' ' -f 2) ## STOP GAMMU-SMSD sudo service gammu-smsd stop +######################################################################## echo "SEARCHING FOR SMS TO SEND TO USERS" for tosend in /home/${YOU}/.zen/SMS/PHONE/*/*.tosend.sh; do - phonehash=$(echo "$tosend" | cut -d '/' -f 7) && [[ $phonehash == "*" ]] && continue + phonehash=$(echo "${tosend}" | cut -d '/' -f 7) && [[ $phonehash == "*" ]] && continue xzuid=$(cat "/home/${YOU}/.zen/SMS/PHONE/${phonehash}/xzuid.txt") [[ ! $xzuid ]] && echo "ERROR $tosend" && continue ./sms/natools.py decrypt -f pubsec -k "/home/${YOU}/.zen/secret.dunikey" -i "/home/${YOU}/.zen/SMS/PHONE/${phonehash}/passwd.encrypt" -o "/tmp/${phonehash}.phone" phone=$(cat /tmp/${phonehash}.phone) echo "${phone}" - + ## PREPARE SMS cat "${tosend}" | sed "s/_PHONE_/${phone}/g" | sed "s/_ID_/${xzuid}/g" > /tmp/tosend.sh && chmod +x /tmp/tosend.sh - bash -x /tmp/tosend.sh && mv ${tosend} ${tosend}.txt && rm /tmp/tosend.sh || mv ${tosend} ${tosend}.error.txt + ## SEND SMS & ARCHIVE SMS IN /SMS/PHONE/${phonehash}/ (.txt OR .error.txt) + bash -x /tmp/tosend.sh && mv ${tosend} ${tosend}.txt || mv ${tosend} ${tosend}.error.txt + rm /tmp/tosend.sh sleep 3 done - +######################################################################## echo "SEARCHING FOR GUIDE SMS TO SEND TO GUILDE USERS" for guidesend in /home/${YOU}/.zen/SMS/GUILDES/*/OUTPUT/*.tosend.sh; do guilde=$(echo "$guidesend" | cut -d '/' -f 7) && [[ $guilde == "*" ]] && continue [[ ! -d /home/${YOU}/.zen/SMS/GUILDES/${guilde} ]] && continue + + smsfile=$(echo "$guidesend" | cut -d '/' -f 9) + for phonelink in /home/${YOU}/.zen/SMS/GUILDES/${guilde}/MEMBERS/*; do [[ ! -L $phonelink ]] && continue phone=$(echo "$phonelink" | cut -d '/' -f 9) - + phonehash=$(echo $phone | sha256sum | cut -d ' ' -f1) + xzuid=$(cat "/home/${YOU}/.zen/SMS/PHONE/${phonehash}/xzuid.txt") + [[ ! $xzuid ]] && echo "ERROR $tosend" && continue + ## PREPARE SMS cat "${guidesend}" | sed "s/_PHONE_/${phone}/g" | sed "s/_ID_/${xzuid}/g" > /tmp/guidesend.sh && chmod +x /tmp/guidesend.sh - bash -x /tmp/guidesend.sh + ## SEND SMS & ARCHIVE SMS IN /SMS/PHONE/${phonehash}/ (.txt OR .error.txt) + bash -x /tmp/guidesend.sh && cp ${guidesend} /home/${YOU}/.zen/SMS/PHONE/${phonehash}/${smsfile}_${guilde}.txt || mv ${guidesend} /home/${YOU}/.zen/SMS/PHONE/${phonehash}/${smsfile}_${guilde}.error.txt + rm /tmp/guidesend.sh sleep 3 done - mv ${guidesend} ${guidesend}.txt && rm /tmp/guidesend.sh || mv ${guidesend} ${guidesend}.error.txt + ## REMOVING ${guidesend} from guilde SMS QUEUE + mv ${guidesend} ${guidesend}.txt done +######################################################################## +######################################################################## +echo "RETRY ERROR MESSAGE" +for tosend in /home/${YOU}/.zen/SMS/PHONE/*/*.tosend.sh.error.txt; do + phonehash=$(echo "${tosend}" | cut -d '/' -f 7) && [[ $phonehash == "*" ]] && continue + xzuid=$(cat "/home/${YOU}/.zen/SMS/PHONE/${phonehash}/xzuid.txt") + [[ ! $xzuid ]] && echo "ERROR $tosend" && continue + + ./sms/natools.py decrypt -f pubsec -k "/home/${YOU}/.zen/secret.dunikey" -i "/home/${YOU}/.zen/SMS/PHONE/${phonehash}/passwd.encrypt" -o "/tmp/${phonehash}.phone" + phone=$(cat /tmp/${phonehash}.phone) + echo "SENDING ${phone}" + ## PREPARE SMS + cat "${tosend}" | sed "s/_PHONE_/${phone}/g" | sed "s/_ID_/${xzuid}/g" > /tmp/tosend.sh && chmod +x /tmp/tosend.sh + ## SEND SMS & ARCHIVE RESULT (error?) + bash -x /tmp/tosend.sh && mv ${tosend} ${tosend}.txt && rm /tmp/tosend.sh || mv ${tosend} ${tosend}.error.txt + sleep 3 +done ## REINIT gammu-smsd spool sudo rm /var/spool/gammu/inbox/* 2>/dev/null