Astroport.ONE/ASTROBOT/VOEUX.refresh.sh

115 lines
5.6 KiB
Bash
Raw Normal View History

2022-08-23 13:38:37 +02:00
#!/bin/bash
################################################################################
# Author: Fred (support@qo-op.com)
# Version: 0.1
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
################################################################################
MY_PATH="`dirname \"$0\"`" # relative
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
ME="${0##*/}"
################################################################################
# Inspect game wishes, refresh latest IPNS version
2022-10-10 00:39:07 +02:00
# SubProcess Backup and chain
INDEX="$1"
2022-10-24 14:59:14 +02:00
[[ ! $INDEX ]] && echo "Please provide path to source TW index.html - EXIT -" && exit 1
[[ ! -f $INDEX ]] && echo "Fichier TW absent. $INDEX - EXIT -" && exit 1
2022-08-23 13:38:37 +02:00
PLAYER="$2" ## IPNS KEY NAME - G1PUB - PLAYER ...
[[ ! $PLAYER ]] && echo "Please provide IPFS publish key" && exit 1
ASTRONAUTENS=$(ipfs key list -l | grep -w $PLAYER | cut -d ' ' -f1)
2022-08-23 19:27:38 +02:00
2022-10-24 14:59:14 +02:00
[[ ! $ASTRONAUTENS ]] && echo "$PLAYER CLEF IPNS INTROUVABLE - EXIT -" && exit 1
2022-08-25 17:21:39 +02:00
MOATS=$(date -u +"%Y%m%d%H%M%S%4N")
IPFSNODEID=$(cat ~/.ipfs/config | jq -r .Identity.PeerID)
myIP=$(hostname -I | awk '{print $1}' | head -n 1)
mkdir -p ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}
2022-10-24 14:59:14 +02:00
echo "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"
###############################
## EXTRACT G1Voeu from PLAYER TW
echo "Exporting $PLAYER TW [tag[G1Voeu]]"
rm -f ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/g1voeu.json
tiddlywiki --load ${INDEX} --output ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS} --render '.' 'g1voeu.json' 'text/plain' '$:/core/templates/exporters/JsonFile' 'exportFilter' '[tag[G1Voeu]]'
[[ ! -s ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/g1voeu.json ]] && echo "AUCUN G1VOEU - EXIT -" && exit 1
cat ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/g1voeu.json | jq -r '.[].wish' > ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/g1wishes
echo "NB DE VOEUX : "$(cat ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/g1wishes | wc -l)
2022-10-16 02:57:29 +02:00
2022-10-24 14:59:14 +02:00
echo "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"
## GET VoeuTitle LIST
2022-10-16 02:57:29 +02:00
while read WISH
2022-08-23 13:38:37 +02:00
do
2022-10-28 02:01:23 +02:00
[[ ${WISH} = "" ]] && continue
2022-10-24 14:59:14 +02:00
echo "==============================="
2022-10-28 02:01:23 +02:00
echo "G1Voeu ${WISH}"
## Get ${WISHNAME} TW
WISHNAME=$(cat ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/g1voeu.json | jq .[] | jq -r 'select(.wish=="'${WISH}'") | .title')
[[ ! ${WISHNAME} ]] && echo "WISH sans NOM - CONTINUE -" && continue
VOEUNS=$(cat ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/g1voeu.json | jq .[] | jq -r 'select(.wish=="'${WISH}'") | .ipns')
2022-10-28 02:01:23 +02:00
mkdir -p ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${WISHNAME}/${WISH}
## RUN SPECIFIC G1Voeu Treatment (G1CopierYoutube.sh)
2022-10-28 02:01:23 +02:00
if [[ -s $MY_PATH/G1${WISHNAME}.sh ]]; then
echo "........................ Astrobot G1${WISHNAME}.sh program found !"
echo "________________________________ Running it *****"
${MY_PATH}/G1${WISHNAME}.sh "$INDEX" "$PLAYER"
echo "________________________________ Finished ******"
2022-10-24 14:59:14 +02:00
else
2022-10-28 02:01:23 +02:00
echo "......................... G1${WISHNAME} No special program found !"
fi
## RUN TW search & copy treatment
2022-10-24 14:59:14 +02:00
echo "*********************************"
##################################
2022-10-28 02:01:23 +02:00
## Search for [tag[G1${WISHNAME}]] in all Friends TW.
## Copy tiddlers ...
##################################
2022-10-28 02:01:23 +02:00
echo "NOW SEARCH Ŋ1 FRIENDS TW's FOR tag=${WISHNAME}"
echo "ls ~/.zen/game/players/$PLAYER/FRIENDS/*/index.html"
echo "*********************************"
## Search in Local World (NB! G1Voeu TW copied by Connect_PLAYER_To_Gchange.sh)
FINDEX=($( ls $HOME/.zen/game/players/$PLAYER/FRIENDS/*/index.html))
2022-09-27 00:09:24 +02:00
for FRIENDTW in ${FINDEX[@]};
do
2022-10-27 20:36:25 +02:00
[[ ! -s $FRIENDTW ]] && echo "$FRIENDTW VIDE (AMI SANS TW)" && continue
2022-10-28 02:01:23 +02:00
rm -f ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${WISHNAME}/g1wishtiddlers.json
echo "TRY EXPORT [tag[G1${WISHNAME}]] FROM $FINDEX"
tiddlywiki --load $FRIENDTW \
2022-10-28 02:01:23 +02:00
--output ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${WISHNAME} --render '.' 'g1wishtiddlers.json' 'text/plain' '$:/core/templates/exporters/JsonFile' 'exportFilter' '[tag[G1'${WISHNAME}']]'
[[ ! -s ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${WISHNAME}/g1wishtiddlers.json ]] && echo "NO ${WISHNAME} - CONTINUE -" && continue
[[ $(cat ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${WISHNAME}/g1wishtiddlers.json) == "[]" ]] && echo "EMPTY ${WISHNAME} - CONTINUE -" && continue
echo "## WISHES FOUND ;) MIAM "
## TODO ADD EXTRA TAG ?
2022-10-28 02:01:23 +02:00
echo ">>> Importing ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${WISHNAME}/g1wishtiddlers.json"
tiddlywiki --load $INDEX \
2022-10-28 02:15:39 +02:00
--import "$HOME/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${WISHNAME}/g1wishtiddlers.json" "application/json" \
2022-10-28 02:01:23 +02:00
--output ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${WISHNAME}/${WISH} --render "$:/core/save/all" "newindex.html" "text/plain"
2022-10-28 02:01:23 +02:00
if [[ -s ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${WISHNAME}/${WISH}/newindex.html ]]; then
echo "Updating $INDEX"
2022-10-28 02:01:23 +02:00
cp ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${WISHNAME}/${WISH}/newindex.html $INDEX
else
2022-10-28 02:01:23 +02:00
echo "Problem with tiddlywiki command. Missing ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${WISHNAME}/${WISH}/newindex.html"
echo "XXXXXXXXXXXXXXXXXXXXXXX"
fi
2022-08-28 19:18:46 +02:00
done
done < ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/g1wishes
2022-10-28 02:01:23 +02:00
echo "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"
echo "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"
############################################
2022-08-23 19:27:38 +02:00
exit 0