2.4 KiB
$:/moa
Les tiddlers tagués avec $:/moa
dans le script PLAYER.refresh.sh
sont utilisés pour gérer les amis du joueur et leurs tiddlers associés. Voici une analyse détaillée de ce processus :
Fonctionnement des Tiddlers Tagués avec $:/moa
- Extraction des Tiddlers :
-
Le script utilise la commande
tiddlywiki
pour charger le TiddlyWiki (TW) du joueur et extraire les tiddlers tagués avec$:/moa
. Cette extraction est effectuée avec la commande suivante :tiddlywiki --load ~/.zen/tmp/${IPFSNODEID}/TW/${PLAYER}/index.html \ --output ~/.zen/tmp/${MOATS} \ --render '.' 'FRIENDS.json' 'text/plain' '$:/core/templates/exporters/JsonFile' 'exportFilter' '[tag[$:/moa]]'
-
- Analyse des Tiddlers :
-
Les tiddlers extraits sont ensuite analysés pour identifier les amis du joueur. Le script lit les titres des tiddlers et vérifie s'ils correspondent à des adresses email valides :
fplayers=($(cat ~/.zen/tmp/${MOATS}/FRIENDS.json | jq -rc .[].title))
-
- Gestion des Amis :
- Pour chaque ami identifié, le script effectue plusieurs vérifications et actions :
- Vérifie le format de l'adresse email.
- Vérifie si l'ami est déjà présent dans le système.
- Extrait les informations supplémentaires comme le pseudo (
player
), l'adresse IPFS (tw
), et la clé publique Ğ1 (g1pub
).
- Pour chaque ami identifié, le script effectue plusieurs vérifications et actions :
- Mise à Jour des Tiddlers des Amis :
-
Si des tiddlers associés à des amis sont trouvés, ils sont importés dans le TW du joueur. Cela permet de maintenir les informations à jour et de synchroniser les données entre les amis :
tiddlywiki --load ~/.zen/tmp/${IPFSNODEID}/TW/${PLAYER}/index.html \ --import ~/.zen/tmp/${MOATS}/${FPLAYER^^}.json 'application/json' \ --output ~/.zen/tmp/${IPFSNODEID}/TW/${PLAYER} \ --render "$:/core/save/all" "newindex.html" "text/plain"
-
- Création de Tiddlers Signés :
-
Les tiddlers des amis sont signés et ajoutés au TW du joueur. Cela permet de garantir l'authenticité des informations partagées :
cat ~/.zen/tmp/${IPFSNODEID}/WISH/${PLAYER}/g1voeu/${WISHNAME}/_${APLAYER}.tiddlers.rss.json \ | sed "s~${PLAYER}~~g" \ | sed "s~${APLAYER}~${APLAYER} ${PLAYER}~g" \ > ~/.zen/tmp/${IPFSNODEID}/WISH/${PLAYER}/g1voeu/${WISHNAME}/_${APLAYER}.tiddlers.signed.json
-