no more official login. USER is becoming a PLAYER, seeding it's own IPFS, using a Docker on an Astroport NODE run by another PLAYER. So FRIENDS can invite other FRIENDS
This commit is contained in:
parent
cbc1b24f74
commit
9194845c8d
119
12345.sh
119
12345.sh
|
@ -441,125 +441,6 @@ echo "" > ~/.zen/tmp/.ipfsgw.bad.twt # TODO move in 20h12.sh
|
|||
fi
|
||||
|
||||
|
||||
##############################################
|
||||
# DEFAULT (NO REDIRECT DONE YET) CHECK OFFICIAL GATEWAY
|
||||
##############################################
|
||||
# OFFICIAL Gateway ( increase waiting time ) - MORE SECURE
|
||||
if [[ $APPNAME == "official" ]]; then
|
||||
|
||||
echo "SEARCHING FOR OFFICIAL TW GW... $LIBRA/ipns/${ASTRONAUTENS} ($YOU)"
|
||||
|
||||
## GETTING LAST TW via IPFS or HTTP GW
|
||||
[[ $YOU ]] && echo "ipfs --timeout 12s cat /ipns/${ASTRONAUTENS} ($YOU)" && ipfs --timeout 12s cat /ipns/${ASTRONAUTENS} > ~/.zen/tmp/coucou/${MOATS}.astroindex.html
|
||||
[[ ! -s ~/.zen/tmp/coucou/${MOATS}.astroindex.html ]] && echo "$HOST/ipns/${ASTRONAUTENS}" && curl -m 12 -so ~/.zen/tmp/coucou/${MOATS}.astroindex.html "$HOST/ipns/${ASTRONAUTENS}"
|
||||
|
||||
# DEBUG
|
||||
# echo "tiddlywiki --load ~/.zen/tmp/coucou/${MOATS}.astroindex.html --output ~/.zen/tmp --render '.' 'MadeInZion.json' 'text/plain' '$:/core/templates/exporters/JsonFile' 'exportFilter' 'MadeInZion'"
|
||||
# echo "cat ~/.zen/tmp/MadeInZion.json | jq -r .[].secret"
|
||||
|
||||
if [[ -s ~/.zen/tmp/coucou/${MOATS}.astroindex.html ]]; then
|
||||
echo "GOT TW CACHE !!"
|
||||
tiddlywiki --load ~/.zen/tmp/coucou/${MOATS}.astroindex.html --output ~/.zen/tmp --render '.' 'MadeInZion.json' 'text/plain' '$:/core/templates/exporters/JsonFile' 'exportFilter' 'MadeInZion'
|
||||
[[ ! -s ~/.zen/tmp/MadeInZion.json ]] && (echo "$HTTPCORS MadeInZion ERROR - SORRY - CANNOT CONTINUE " | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &) && echo "BAD MadeInZion.json (☓‿‿☓) Execution time was "`expr $(date +%s) - $start` seconds. && continue
|
||||
SECRET=$(cat ~/.zen/tmp/MadeInZion.json | jq -r .[].secret)
|
||||
PLAYER=$(cat ~/.zen/tmp/MadeInZion.json | jq -r .[].player)
|
||||
[[ ! $PLAYER ]] \
|
||||
&& (echo "$HTTPCORS ERROR - BAD MadeInZion PLAYER in /ipns/${ASTRONAUTENS} - CONTINUE " | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &) && echo "BAD MadeInZion PLAYER (☓‿‿☓) Execution time was "`expr $(date +%s) - $start` seconds. && continue
|
||||
|
||||
#
|
||||
# CRYPTO DECODING CRYPTIP -> myHOST
|
||||
cat ~/.zen/tmp/MadeInZion.json | jq -r .[].secret | base16 -d > ~/.zen/tmp/myHOST.$G1PUB.enc.2
|
||||
$MY_PATH/tools/natools.py decrypt -f pubsec -k ~/.zen/tmp/coucou/${MOATS}.secret.key -i ~/.zen/tmp/myHOST.$G1PUB.enc.2 -o ~/.zen/tmp/myHOST.$G1PUB > /dev/null 2>&1
|
||||
GWIP=$(cat ~/.zen/tmp/myHOST.$G1PUB > /dev/null 2>&1)
|
||||
|
||||
[[ ! $GWIP ]] && GWIP=${myHOST} ## CLEAR
|
||||
#
|
||||
echo "TW is on ${myHTTP}$GWIP"
|
||||
echo "BECOMING TW GATEWAY : ${myHOST}" ## BECOMING OFFICIAL BECOME R/W TW
|
||||
|
||||
####################
|
||||
echo $GWIP > ~/.zen/tmp/GWIP
|
||||
$MY_PATH/tools/natools.py encrypt -p $G1PUB -i $HOME/.zen/tmp/GWIP -o $HOME/.zen/tmp/myHOST.$G1PUB.enc
|
||||
CRYPTIP=$(cat ~/.zen/tmp/myHOST.$G1PUB.enc | base16)
|
||||
## WRITE CRYPTIP into MadeInZion tiddler
|
||||
echo "# CRYPTO ENCODING $GWIP -> $CRYPTIP"
|
||||
sed -i "s~$SECRET~$CRYPTIP~g" ~/.zen/tmp/MadeInZion.json
|
||||
|
||||
###########################
|
||||
# Modification Tiddlers de contrôle de GW & API
|
||||
[[ $isLAN ]] \
|
||||
&& echo '[{"title":"$:/ipfs/saver/api/http/localhost/5001","tags":"$:/ipfs/core $:/ipfs/saver/api","text":"'${myHTTP}${myHOST}':5001"}]' > ~/.zen/tmp/5001.json \
|
||||
&& echo '[{"title":"$:/ipfs/saver/gateway/http/localhost","tags":"$:/ipfs/core $:/ipfs/saver/gateway","text":"'${myHTTP}${myHOST}':8080"}]' > ~/.zen/tmp/8080.json
|
||||
|
||||
[[ ! $isLAN ]] \
|
||||
&& echo '[{"title":"$:/ipfs/saver/api/http/localhost/5001","tags":"$:/ipfs/core $:/ipfs/saver/api","text":"'${myHTTP}${myHOST}'/api"}]' > ~/.zen/tmp/5001.json \
|
||||
&& echo '[{"title":"$:/ipfs/saver/gateway/http/localhost","tags":"$:/ipfs/core $:/ipfs/saver/gateway","text":"'${myHTTP}${myHOST}'"}]' > ~/.zen/tmp/8080.json
|
||||
|
||||
tiddlywiki --load ~/.zen/tmp/coucou/${MOATS}.astroindex.html \
|
||||
--import "$HOME/.zen/tmp/MadeInZion.json" "application/json" \
|
||||
--import "$HOME/.zen/tmp/5001.json" "application/json" \
|
||||
--import "$HOME/.zen/tmp/8080.json" "application/json" \
|
||||
--output ~/.zen/tmp/coucou --render "$:/core/save/all" "${MOATS}.newindex.html" "text/plain"
|
||||
|
||||
[[ -s ~/.zen/tmp/coucou/${MOATS}.newindex.html ]] \
|
||||
&& cp ~/.zen/tmp/coucou/${MOATS}.newindex.html ~/.zen/tmp/coucou/${MOATS}.astroindex.html \
|
||||
&& rm ~/.zen/tmp/coucou/${MOATS}.newindex.html
|
||||
###########################
|
||||
|
||||
|
||||
if [[ "${PLAYER}" =~ ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$ ]]; then
|
||||
echo "VALID PLAYER OK"
|
||||
else
|
||||
echo "BAD EMAIL"
|
||||
(echo "$HTTPCORS KO ${PLAYER} : BAD EMAIL" | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &) && continue
|
||||
fi
|
||||
|
||||
## CREATE $PLAYER IPNS KEY (for next 20h12)
|
||||
ipfs key rm ${PLAYER}
|
||||
ipfs key import ${PLAYER} -f pem-pkcs8-cleartext ~/.zen/tmp/coucou/${MOATS}.${G1PUB}.ipns.key
|
||||
[[ ! -d ~/.zen/game/players/$PLAYER/ipfs/moa ]] && mkdir -p ~/.zen/game/players/$PLAYER/ipfs/moa/
|
||||
cp ~/.zen/tmp/coucou/${MOATS}.astroindex.html ~/.zen/game/players/$PLAYER/ipfs/moa/index.html
|
||||
|
||||
echo "## PUBLISHING ${PLAYER} /ipns/$ASTRONAUTENS/ &"
|
||||
(
|
||||
startipfs=`date +%s`
|
||||
IPUSH=$(ipfs add -Hq ~/.zen/tmp/coucou/${MOATS}.astroindex.html | tail -n 1)
|
||||
[[ $IPUSH ]] && ipfs name publish --key=${PLAYER} /ipfs/$IPUSH 2>/dev/null
|
||||
echo "## PUBLISHING ${PLAYER} /ipns/$ASTRONAUTENS/ END"
|
||||
end=`date +%s`
|
||||
dur=`expr $end - $start`
|
||||
echo ${MOATS}:${G1PUB}:${PLAYER}:TWUPDATE:$dur >> ~/.zen/tmp/${IPFSNODEID}/_timings
|
||||
cat ~/.zen/tmp/${IPFSNODEID}/_timings | tail -n 1
|
||||
) & # ~~bbbzzzzzz~~&
|
||||
|
||||
## MEMORISE PLAYER Ŋ1 ZONE (TODO compare with VISA.new.sh)
|
||||
echo "$PLAYER" > ~/.zen/game/players/$PLAYER/.player
|
||||
echo "$G1PUB" > ~/.zen/game/players/$PLAYER/.g1pub
|
||||
echo "${ASTRONAUTENS}" > ~/.zen/game/players/$PLAYER/.playerns
|
||||
GWIP=${myHOST}
|
||||
TWIP=${myHOST}
|
||||
echo "*********** OFFICIAL LOGIN GOES TO $TWIP"
|
||||
|
||||
else
|
||||
echo "NO TW FOUND - LAUNCHING CENTRAL"
|
||||
## 302 REDIRECT CENTRAL GW
|
||||
TWIP=${TUBE}
|
||||
fi
|
||||
|
||||
## 302 REDIRECT $TWIP
|
||||
cat ~/.zen/Astroport.ONE/templates/index.302 >> ~/.zen/tmp/coucou/${MOATS}.index.redirect
|
||||
sed -i "s~_TWLINK_~${myHTTP}$TWIP:8080/ipns/${ASTRONAUTENS}~g" ~/.zen/tmp/coucou/${MOATS}.index.redirect
|
||||
cat ~/.zen/tmp/coucou/${MOATS}.index.redirect | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &
|
||||
|
||||
end=`date +%s`
|
||||
dur=`expr $end - $start`
|
||||
echo ${MOATS}:${G1PUB}:${PLAYER}:${APPNAME}:$dur >> ~/.zen/tmp/${IPFSNODEID}/_timings
|
||||
cat ~/.zen/tmp/${IPFSNODEID}/_timings | tail -n 1
|
||||
|
||||
continue
|
||||
fi ## official
|
||||
|
||||
|
||||
###################################################################################################
|
||||
###################################################################################################
|
||||
# API ONE : ?salt=PHRASE%20UNE&pepper=PHRASE%20DEUX&g1pub=on&email/elastic=ELASTICID&pseudo=PROFILENAME
|
||||
|
|
Loading…
Reference in New Issue