Astroport.ONE/tools/COINScheck.sh

81 lines
3.0 KiB
Bash
Raw Normal View History

2023-03-13 18:51:36 +01:00
################################################################################
# Author: Fred (support@qo-op.com)
# Version: 0.1
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
################################################################################
#~ COINScheck.sh
#~ Indiquez une clef publique G1.
#~ Il verifie le montant présent dans le cache
#~ ou le raffraichi quand il est plus ancien que 24H
################################################################################
################################################################################
MY_PATH="`dirname \"$0\"`" # relative
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
. "${MY_PATH}/my.sh"
################################################################################
G1PUB="$1"
## TESTING G1PUB VALIDITY
[[ $G1PUB == "" ]] && echo "PLEASE ENTER WALLET G1PUB" && exit 1
echo $(date)
ASTROTOIPFS=$(~/.zen/Astroport.ONE/tools/g1_to_ipfs.py ${G1PUB} 2>/dev/null)
[[ ! ${ASTROTOIPFS} ]] \
&& echo "INVALID G1PUB : ${G1PUB}" \
&& exit 1
echo "COINCHECK ${G1PUB} -> TW : $myIPFS/ipns/${ASTROTOIPFS}"
2023-03-13 18:51:36 +01:00
#######################################################
## CLEANING DAY+1 COINS CACHE FILES
# find ~/.zen/game/players/ -mtime +1 -type f -name "COINS" -exec rm -f '{}' \;
echo "Cleaning ${G1PUB}.COINS"
find ~/.zen/tmp/ -mtime +1 -type f -name "${G1PUB}.COINS" -exec mv '{}' $HOME/.zen/tmp/backup.${G1PUB} \;
echo "Cleaning ${G1PUB}.g1history.json"
2024-03-27 12:11:37 +01:00
find ~/.zen/tmp/coucou/ -mtime +1 -type f -name "${G1PUB}.g1history.json" -exec rm '{}' \;
2023-03-13 18:51:36 +01:00
#######################################################
2024-01-29 16:26:17 +01:00
## IDENTIFY IF "ASTROPORT" PLAYER
# echo "ASTROPATH ? "
2024-02-13 02:31:18 +01:00
ASTROPATH=$(grep $G1PUB ~/.zen/game/players/*/.g1pub 2>/dev/null | cut -d ':' -f 1 | rev | cut -d '/' -f 2- | rev)
2023-03-13 18:51:36 +01:00
echo $ASTROPATH
if [[ -d $ASTROPATH ]]; then
2023-03-28 19:53:57 +02:00
INNERFILE=$ASTROPATH/ipfs/G1SSB/COINS
2023-03-13 18:51:36 +01:00
fi
2023-03-28 19:53:57 +02:00
mkdir -p $HOME/.zen/tmp/coucou/
COINSFILE=$HOME/.zen/tmp/coucou/${G1PUB}.COINS
2024-02-11 01:56:43 +01:00
#######################################################
2024-01-29 16:26:17 +01:00
## GET EXTERNAL G1 DATA
${MY_PATH}/GetGCAttributesFromG1PUB.sh ${G1PUB}
2024-02-11 01:56:43 +01:00
#######################################################
#######################################################
2024-01-29 16:26:17 +01:00
# echo "ACTUAL $COINSFILE CONTAINS"
2023-03-13 18:51:36 +01:00
CURCOINS=$(cat $COINSFILE 2>/dev/null)
echo "SOLDE : $CURCOINS G1"
2023-03-13 18:51:36 +01:00
## NO or NULL RESULT in CACHE : REFRESHING
if [[ $CURCOINS == "" || $CURCOINS == "null" ]]; then
(
2024-02-13 02:31:18 +01:00
CURCOINS=$(${MY_PATH}/timeout.sh -t 10 ${MY_PATH}/jaklis/jaklis.py balance -p ${G1PUB})
2023-11-12 20:12:51 +01:00
2023-03-13 18:51:36 +01:00
echo "$CURCOINS" > "$COINSFILE"
# PREVENT DUNITER DESYNC (KEEPING ASTROPORT LAST KNOWN VALUE)
[[ $CURCOINS == "" || $CURCOINS == "null" ]] \
&& [[ -s $HOME/.zen/tmp/backup.${G1PUB} ]] \
&& WASCOINS=$(cat $HOME/.zen/tmp/backup.${G1PUB}) \
&& [[ ${WASCOINS} != "" && ${WASCOINS} != "null" ]] && echo ${WASCOINS} > "$COINSFILE"
[[ $INNERFILE != "" ]] && cp "$COINSFILE" "$INNERFILE" && echo "LOCAL PLAYER COINS UPDATED"
2023-03-19 15:35:55 +01:00
echo $CURCOINS
2023-03-13 18:51:36 +01:00
) &
fi
#### tail -n 1 FUNCTION RESULT
2023-03-13 18:51:36 +01:00
echo $CURCOINS
exit 0