forked from STI/Astroport.ONE
First ♥ UPlanet . Zen Fork private
This commit is contained in:
parent
b89bc01ada
commit
9b1549f689
@ -94,7 +94,7 @@ if [[ ${QRCODE} == "station" ]]; then
|
||||
if [[ $carouselrunning ]]; then
|
||||
ISTATION="/ipfs/QmVTHH8sTXEqRBsvcKo5jDo16rvp7Q7ERyHZP5vmWUxeS6" ## G1WorldCrafting.jpg
|
||||
else
|
||||
## GENERATE PLAYER G1 TO ZEN ACCOUNTING
|
||||
## GENERATE PLAYER G1 TO ♥ ACCOUNTING
|
||||
ISTATION=$($MY_PATH/../tools/make_image_ipfs_index_carousel.sh | tail -n 1)
|
||||
echo $ISTATION > ~/.zen/tmp/ISTATION ## STATION G1WALLET CAROUSEL
|
||||
fi
|
||||
@ -272,7 +272,7 @@ if [[ ${QRCODE:0:5} == "~~~~~" ]]; then
|
||||
if [[ ! ${ISTHERE} ]]; then
|
||||
(
|
||||
echo "$HTTPCORS
|
||||
<h1>LOGOUT ERROR</h1><h2>${PLAYER} keys not found on ZEN Station</h2>" | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 \
|
||||
<h1>LOGOUT ERROR</h1><h2>${PLAYER} keys not found on ♥ Station</h2>" | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 \
|
||||
&& echo "SLURP PLAYER ERROR ${player}"
|
||||
) &
|
||||
exit 0
|
||||
@ -690,9 +690,9 @@ echo ">>> ${QRCODE} g1_to_ipfs $ASTROTOIPNS"
|
||||
if [[ $VISITORCOINS == "null" || ${ZEN} -lt 10 ]]; then
|
||||
|
||||
DISPLAY="$DISPLAY
|
||||
<h2>!! LOW ZEN WALLET ZEN=${ZEN}<h2>"
|
||||
<h2>!! LOW ♥ WALLET ZEN=${ZEN}<h2>"
|
||||
|
||||
DISPLAY="$DISPLAY<h3>LOW ZEN WARNING</h3>
|
||||
DISPLAY="$DISPLAY<h3>LOW ♥ WARNING</h3>
|
||||
PLEASE CHARGE... ${ZEN} ZEN"
|
||||
|
||||
fi
|
||||
|
112
ASTROBOT/G1ForkUplanet.sh
Normal file
112
ASTROBOT/G1ForkUplanet.sh
Normal file
@ -0,0 +1,112 @@
|
||||
#!/bin/bash
|
||||
########################################################################
|
||||
# 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##*/}"
|
||||
|
||||
. "${MY_PATH}/../tools/my.sh"
|
||||
|
||||
## IT MAKES WISH WALLET MASTER OF NEW UPLANET
|
||||
## IT MAKES swarm.key as UPLANETNAME
|
||||
## SAME WISH BE CONNECTED TO THE PRIVATE IPFS MADE FIRST
|
||||
|
||||
echo "(✜‿‿✜) Fork UPlanet
|
||||
This wish makes Player generate or join a private IPFS swarm
|
||||
It can be use to populate UPlanet ZERO (or not)
|
||||
All friends with the same wish will share the SECRET
|
||||
then any can activate a new ipfs daemon connected to that private ZONE
|
||||
Planet shape could be define from text found in command tiddler
|
||||
and initiale new euclidian geokeys...
|
||||
Default :
|
||||
flaoting points"
|
||||
|
||||
echo "$ME RUNNING"
|
||||
|
||||
########################################################################
|
||||
INDEX="$1"
|
||||
[[ ! ${INDEX} ]] && INDEX="$HOME/.zen/game/players/.current/ipfs/moa/index.html"
|
||||
[[ ! -s ${INDEX} ]] && echo "ERROR - Please provide path to source TW index.html" && exit 1
|
||||
[[ ! -s ${INDEX} ]] && echo "ERROR - Fichier TW absent. ${INDEX}" && exit 1
|
||||
ORIGININDEX=${INDEX}
|
||||
|
||||
PLAYER="$2"
|
||||
[[ ! ${PLAYER} ]] && PLAYER="$(cat ~/.zen/game/players/.current/.player 2>/dev/null)"
|
||||
[[ ! ${PLAYER} ]] && echo "ERROR - Please provide PLAYER" && exit 1
|
||||
|
||||
ASTRONAUTENS=$(ipfs key list -l | grep -w ${PLAYER} | cut -d ' ' -f1)
|
||||
[[ ! ${ASTRONAUTENS} ]] && echo "ERROR - Clef IPNS ${PLAYER} introuvable!" && exit 1
|
||||
|
||||
G1PUB=$(cat ~/.zen/game/players/${PLAYER}/.g1pub)
|
||||
[[ ! $G1PUB ]] && echo "ERROR - G1PUB ${PLAYER} VIDE" && exit 1
|
||||
|
||||
MOATS="$3"
|
||||
[[ ! ${MOATS} ]] && MOATS=$(date -u +"%Y%m%d%H%M%S%4N")
|
||||
|
||||
echo "${PLAYER} ${INDEX} ${ASTRONAUTENS} ${G1PUB} "
|
||||
mkdir -p $HOME/.zen/tmp/${MOATS}
|
||||
echo "~/.zen/tmp/${MOATS}/swarm.key"
|
||||
JSONWISH="$4"
|
||||
## SHOW WISH CONTAINS SELF CRYPTED SWARMKEY (+ SIGNERS)
|
||||
cat ${JSONWISH} | jq -r
|
||||
|
||||
PLAYERPUB=$(cat $HOME/.zen/game/${PLAYER}/secret.dunikey | grep pub | cut -d ' ' -f 2)
|
||||
[[ "${PLAYERPUB}" == "" ]] && echo "FATAL ERROR PLAYER KEY MISSING" && exit 1
|
||||
WISHNAME=$(cat ${JSONWISH} | jq .title) # ForkUPlanet !
|
||||
UPNAME=$(cat ${JSONWISH} | jq -r ".name") ## What name is given ?
|
||||
CONTRACT=$(cat ${JSONWISH} | jq -r ".text") ## What contract is applying ?
|
||||
|
||||
## CHECK EXISTING ${WISHNAME}.${UPNAME}.swarm.key
|
||||
[[ ! -s $HOME/.zen/game/${PLAYER}/${WISHNAME}.${UPNAME}.swarm.key ]] \
|
||||
&& MSG=$MSG" ${PLAYER}/${WISHNAME}.${UPNAME}.swarm.key NOT FOUND" && ERR="NO LOCAL KEY"
|
||||
|
||||
## CREATE 64 bit swarm.key ( maximum individual Fork 1,844674407×10¹⁹ )
|
||||
echo -e '/key/swarm/psk/1.0.0/\n/base16/' > $HOME/.zen/tmp/${MOATS}/swarm.key
|
||||
head -c 64 /dev/urandom | od -t x1 -A none - | tr -d '\n ' >> $HOME/.zen/tmp/${MOATS}/swarm.key
|
||||
echo '' >> $HOME/.zen/tmp/${MOATS}/swarm.key
|
||||
|
||||
## EXTRACT SECRET FROM JSONWISH
|
||||
###############################
|
||||
OLD16=$(cat ${JSONWISH} | jq -r ".secret")
|
||||
[[ ${OLD16} == "" || ${OLD16} == "null" ]] \
|
||||
&& echo "NO SECRET FOUND" \
|
||||
&& echo "NEW SECRET SWARM.KEY GENERATION" \
|
||||
&& cat $HOME/.zen/tmp/${MOATS}/swarm.key \
|
||||
&& cp $HOME/.zen/tmp/${MOATS}/swarm.key $HOME/.zen/game/${PLAYER}/${WISHNAME}.${UPNAME}.swarm.key \
|
||||
&& echo "------- NEW ------ ${PLAYER}/${WISHNAME}.${UPNAME}.swarm.key"
|
||||
|
||||
## DEBASE16
|
||||
echo "${OLD16}" | base16 -d \
|
||||
> ~/.zen/tmp/${MOATS}/swarmkey.crypted
|
||||
|
||||
## TRY TO DECODE with PLAYER secret.dunikey
|
||||
${MY_PATH}/../tools/natools.py decrypt \
|
||||
-f pubsec \
|
||||
-k $HOME/.zen/game/${PLAYER}/secret.dunikey \
|
||||
-i ~/.zen/tmp/${MOATS}/swarmkey.crypted \
|
||||
-o ~/.zen/tmp/${MOATS}/swarmkey.decrypted
|
||||
|
||||
[[ $(diff ~/.zen/tmp/${MOATS}/swarmkey.decrypted $HOME/.zen/game/${PLAYER}/${WISHNAME}.${UPNAME}.swarm.key) ]] \\
|
||||
&& echo " SWARM AND LOCAL KEY ARE DIFFERENT " && ERR="TW SWARM CHANGED"
|
||||
|
||||
## ALWAYS UPDATE PLAYER LOCAL ?!
|
||||
cp ~/.zen/tmp/${MOATS}/swarmkey.decrypted \
|
||||
$HOME/.zen/game/${PLAYER}/${WISHNAME}.${UPNAME}.swarm.key
|
||||
|
||||
if [[ "$ERR" == "" ]] ; then
|
||||
#~ echo "# CRYPTO ENCODING PLAYER KEY WITH PLAYERPUB
|
||||
${MY_PATH}/../tools/natools.py encrypt \
|
||||
-p ${PLAYERPUB} \
|
||||
-i $HOME/.zen/game/${PLAYER}/${WISHNAME}.${UPNAME}.swarm.key \
|
||||
-o $HOME/.zen/game/${PLAYER}/${WISHNAME}.${UPNAME}.swarm.key.enc
|
||||
ENCODING=$(cat $HOME/.zen/game/${PLAYER}/${WISHNAME}.${UPNAME}.swarm.key.enc | base16)
|
||||
sed -i "s~${OLD16}~${ENCODING}~g" ${JSONWISH}
|
||||
echo "ENCODING: ${ENCODING}"
|
||||
|
||||
fi
|
||||
|
||||
|
||||
|
||||
exit 0
|
@ -251,12 +251,12 @@ while read LINE; do
|
||||
## Count emails found
|
||||
emails=($(echo "$TTAGS" | grep -E -o "\b[a-zA-Z0-9.%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b"))
|
||||
nb=${#emails[@]}
|
||||
zen=$(echo "scale=2; $nb / 10" | bc) ## / divide by 10 = 1 Zen each
|
||||
zen=$(echo "scale=2; $nb / 10" | bc) ## / divide by 10 = 1 ♥ each
|
||||
|
||||
## Get first zmail
|
||||
ZMAIL="${emails}"
|
||||
|
||||
MSG="SEND + $zen ZEN TO BROs : ${emails[@]}"
|
||||
MSG="SEND + $zen ♥ TO BROs : ${emails[@]}"
|
||||
echo $MSG
|
||||
|
||||
ASTROTW="" STAMP="" ASTROG1="" ASTROIPFS="" ASTROFEED=""
|
||||
@ -267,7 +267,7 @@ while read LINE; do
|
||||
|
||||
if [[ ${ASTROG1} && ${ASTROG1} != ${G1PUB} ]]; then
|
||||
|
||||
## SEND zen ZEN (G1 dice JUNE) TO ALL ## MAKE ONE EACH AFTER ALL EMAIL CONSUMED ##
|
||||
## SEND zen ♥ (G1 dice JUNE) TO ALL ## MAKE ONE EACH AFTER ALL EMAIL CONSUMED ##
|
||||
#~ ~/.zen/Astroport.ONE/tools/timeout.sh -t 12 \
|
||||
#~ ${MY_PATH}/../tools/PAY4SURE.py -k ~/.zen/game/players/${PLAYER}/secret.dunikey pay -a ${zen} -p ${ASTROG1} -c "${emails[@]} $TTITLE" -m > /dev/null 2>&1
|
||||
## Filling comment with email list will make players resend to all ## MAY BE A BAD IDEA ###
|
||||
|
@ -58,9 +58,9 @@ for PLAYER in ${PLAYERONE[@]}; do
|
||||
cat ~/.zen/tmp/${MOATS}/${PLAYER}.COINScheck ###DEBUG MODE
|
||||
COINS=$(cat ~/.zen/tmp/${MOATS}/${PLAYER}.COINScheck | tail -n 1)
|
||||
ZEN=$(echo "($COINS - 1) * 10" | bc | cut -d '.' -f 1)
|
||||
echo "+++ WALLET BALANCE _ $COINS (G1) _ / $ZEN ZEN /"
|
||||
echo "+++ WALLET BALANCE _ $COINS (G1) _ / $ZEN ♥ /"
|
||||
|
||||
#~ ## ZENCARD ARE ACTIVATED WITH 1 G1 + 10 ZEN (= 10 €/OC) ?
|
||||
#~ ## ZENCARD ARE ACTIVATED WITH 1 G1 + 10 ♥ (= 10 €/OC) ?
|
||||
echo "## >>>>>>>>>>>>>>>> REFRESH ASTRONAUTE TW"
|
||||
## REFRESH ASTRONAUTE TW
|
||||
ASTRONAUTENS=$(ipfs key list -l | grep -w ${G1PUB} | cut -d ' ' -f1)
|
||||
@ -502,7 +502,7 @@ for PLAYER in ${PLAYERONE[@]}; do
|
||||
## DEAD PLAYER ??
|
||||
if [[ ${DIFF_SECONDS} -eq $(( 27 * 24 * 60 * 60 )) ]]; then
|
||||
echo "<html><body><h1>WARNING.</h1> Your TW will be UNPLUGGED and stop being published..." > ~/.zen/tmp/alert
|
||||
echo "<br><h3>TW : <a href=$(myIpfsGw)/ipfs/${CURCHAIN}> ${PLAYER}</a></h3> ADD MORE ZEN ($ZEN) </body></html>" >> ~/.zen/tmp/alert
|
||||
echo "<br><h3>TW : <a href=$(myIpfsGw)/ipfs/${CURCHAIN}> ${PLAYER}</a></h3> ADD MORE ♥ ($ZEN) </body></html>" >> ~/.zen/tmp/alert
|
||||
|
||||
${MY_PATH}/../tools/mailjet.sh "${PLAYER}" ~/.zen/tmp/alert "TW ALERT"
|
||||
echo "<<<< PLAYER TW WARNING <<<< ${DIFF_SECONDS} > ${days} days"
|
||||
@ -514,7 +514,7 @@ for PLAYER in ${PLAYERONE[@]}; do
|
||||
continue
|
||||
fi
|
||||
|
||||
## PAY 1 ZEN TO UMAPG1PUB
|
||||
## PAY 1 ♥ TO UMAPG1PUB
|
||||
[[ "${UMAPG1PUB}" != "" ]] \
|
||||
&& ${MY_PATH}/../tools/PAY4SURE.sh "${HOME}/.zen/game/players/${PLAYER}/secret.dunikey" "0.1" "${UMAPG1PUB}" "UPLANET:TW:${YOUSER}:/ipfs/${TW}"
|
||||
|
||||
|
@ -51,7 +51,7 @@ mkdir -p ~/.zen/tmp/${MOATS}
|
||||
COINS=$($MY_PATH/../tools/COINScheck.sh ${SECTORG1PUB} | tail -n 1)
|
||||
echo "SECTOR WALLET = ${COINS} G1 : ${SECTORG1PUB}"
|
||||
|
||||
## UNPLUG => SEND 10 Zen to SECTORG1PUB
|
||||
## UNPLUG => SEND 10 ♥ to SECTORG1PUB
|
||||
## ALL => SEND ALL to $WORLDG1PUB
|
||||
|
||||
ALL="ALL"
|
||||
|
@ -71,7 +71,7 @@ for REGION in ${REGIONS[@]}; do
|
||||
|
||||
################################## TODO : make sharing key protocol evolve
|
||||
## FOR NOW ONLY 1ST BOOSTRAP PUBLISH REGION KEYS
|
||||
# with bigger planetary swam will be closest "IA Station", or it could be choosen according to ZEN value...
|
||||
# with bigger planetary swam will be closest "IA Station", or it could be choosen according to ♥ value...
|
||||
STRAPS=($(cat ~/.zen/Astroport.ONE/A_boostrap_nodes.txt | grep -Ev "#" | rev | cut -d '/' -f 1 | rev | grep -v '^[[:space:]]*$')) ## ${STRAPS[@]}
|
||||
ACTINGNODE=${STRAPS[0]} ## FIST NODE IN STRAPS
|
||||
if [[ "${ACTINGNODE}" != "${IPFSNODEID}" ]]; then
|
||||
@ -101,7 +101,7 @@ for REGION in ${REGIONS[@]}; do
|
||||
ipfs --timeout 240s get --progress=false -o ~/.zen/tmp/${MOATS}/${REGION}/ /ipns/${YESTERDATEREGIONNS}/
|
||||
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
||||
## SHOULD NEED 12 SIGNATURES
|
||||
## FULL REFRESH DEMO... ZEN CHAINING COMING LATER
|
||||
## FULL REFRESH DEMO... ♥ CHAINING COMING LATER
|
||||
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
||||
mkdir -p ~/.zen/tmp/${MOATS}/${REGION}/RSS
|
||||
rm -f ~/.zen/tmp/${MOATS}/${REGION}/RSS/_${RLAT}_${RLON}.week.rss.json
|
||||
|
@ -7,7 +7,7 @@
|
||||
# DETECTING CONFLICT WITH SAME TITLE
|
||||
# ASKING TO EXISTING SIGNATURES TO UPDATE THEIR TW OR FORK TITLE
|
||||
# CALLED BY "SECTOR.refresh.sh"
|
||||
# SEND 10 ZEN TO EACH SIGNATURE
|
||||
# SEND 10 ♥ TO EACH SIGNATURE
|
||||
########################################################################
|
||||
MY_PATH="`dirname \"$0\"`" # relative
|
||||
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
|
||||
@ -193,7 +193,7 @@ Tiddler appears in <b>${unique_combined[*]}</b> TW(s)
|
||||
|
||||
done
|
||||
|
||||
## SEND ZEN G1PalPay Signal
|
||||
## SEND ♥ G1PalPay Signal
|
||||
|
||||
#~ ##############################################################
|
||||
#~ G1AMOUNT=$(echo "$NSIGN / 10" | bc -l | xargs printf "%.2f" | sed "s~,~.~g" )
|
||||
@ -271,7 +271,7 @@ done < ~/.zen/tmp/${MOATS}/${SECTOR}/tiddlers.list
|
||||
#~ GRATITUDE=$($MY_PATH/../tools/getcoins_from_gratitude_box.sh)
|
||||
#~ G1AMOUNT=$(echo "$GRATITUDE / 10" | bc -l | xargs printf "%.2f" | sed "s~,~.~g" )
|
||||
#~ echo "***** SECTOR $SECTOR REWARD *****************"
|
||||
#~ echo "GRATITUDE ${GRATITUDE} ZEN = ${G1AMOUNT} G1
|
||||
#~ echo "GRATITUDE ${GRATITUDE} ♥ = ${G1AMOUNT} G1
|
||||
#~ to ${PLAYER} WALLET ${ASTROG1} (${gloops} Tiddlers)"
|
||||
#~ echo "************************************************************"
|
||||
#~ ${MY_PATH}/../tools/PAY4SURE.sh ~/.zen/tmp/${MOATS}/sector.dunikey "${G1AMOUNT}" "${ASTROG1}" "THANKS ${gloops} GLOOPS"
|
||||
|
@ -102,9 +102,9 @@ for SECTOR in ${SECTORS[@]}; do
|
||||
ipfs --timeout 180s get --progress=false -o ~/.zen/tmp/${MOATS}/${SECTOR}/ /ipns/${YESTERDATENS}/
|
||||
if [[ $? != 0 ]]; then
|
||||
echo "(╥☁╥ ) swarm memory empty (╥☁╥ )"
|
||||
# Try retieve memory from UPlanet Zen Memory
|
||||
# Try retieve memory from UPlanet ♥ Memory
|
||||
[[ ${ZEN} -gt 0 ]] \
|
||||
&& echo "INTERCOM Refreshing from ZEN MEMORY" \
|
||||
&& echo "INTERCOM Refreshing from ♥ MEMORY" \
|
||||
&& ${MY_PATH}/../RUNTIME/ZEN.SECTOR.memory.sh "${SECTOR}" "${MOATS}" "${G1PUB}"
|
||||
fi
|
||||
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
||||
@ -171,7 +171,7 @@ for SECTOR in ${SECTORS[@]}; do
|
||||
echo "SETTING NEXT REFRESHER : $(cat ${UREFRESH} | head -n 1)"
|
||||
|
||||
|
||||
############ 101 ZEN REFILL ?!
|
||||
############ 101 ♥ REFILL ?!
|
||||
CURRENT=$(readlink ~/.zen/game/players/.current | rev | cut -d '/' -f 1 | rev)
|
||||
[[ ${COINS} == "" || ${COINS} == "null" ]] \
|
||||
&& [[ ${ZEN} -lt 100 && ${CURRENT} != "" ]] \
|
||||
@ -230,7 +230,7 @@ for SECTOR in ${SECTORS[@]}; do
|
||||
TOTL=$((${NL}+${NS}))
|
||||
##############################################################
|
||||
|
||||
# Update COIN & ZEN value
|
||||
# Update COIN & ♥ value
|
||||
echo ${COINS} > ~/.zen/tmp/${MOATS}/${SECTOR}/COINS
|
||||
echo ${ZEN} > ~/.zen/tmp/${MOATS}/${SECTOR}/ZEN
|
||||
|
||||
@ -343,12 +343,12 @@ for SECTOR in ${SECTORS[@]}; do
|
||||
&& echo "${MOATS}" > ~/.zen/tmp/${MOATS}/${SECTOR}/CHAIN/_moats \
|
||||
&& IPFSPOP=$(ipfs add -rwq ~/.zen/tmp/${MOATS}/${SECTOR}/* | tail -n 1) && echo "ROOT was ${ZCHAIN}"
|
||||
######################################################
|
||||
## ZEN CHAINING
|
||||
# Send 1 Zen to UPlanet REGIONG1PUB Wallet containing REGION TW HASH
|
||||
## ♥ CHAINING
|
||||
# Send 1 ♥ to UPlanet REGIONG1PUB Wallet containing REGION TW HASH
|
||||
INTERCOM="UPLANET:${SECTOR}:${TODATE}:/ipfs/${IPFSPOP}"
|
||||
echo "> INTERCOM ${INTERCOM} (${ZEN} ZEN)"
|
||||
if [[ ${ZEN} -gt 11 ]]; then
|
||||
echo "---ZZZ-- SECTOR 2 REGION ZEN CHAINING ---ZZZ------ZZZ----"
|
||||
echo "---ZZZ-- SECTOR 2 REGION ♥ CHAINING ---ZZZ------ZZZ----"
|
||||
${MY_PATH}/../tools/PAY4SURE.sh ~/.zen/tmp/${MOATS}/${SECTOR}.dunikey "0.1" "${REGIONG1PUB}" "${INTERCOM}"
|
||||
fi
|
||||
##############################################################
|
||||
|
@ -74,7 +74,7 @@ for UMAP in ${unique_combined[@]}; do
|
||||
COINS=$($MY_PATH/../tools/COINScheck.sh ${G1PUB} | tail -n 1)
|
||||
ZEN=$(echo "($COINS - 1) * 10" | bc | cut -d '.' -f 1)
|
||||
|
||||
echo "UMAP (${COINS} G1) ${ZEN} ZEN : ${G1PUB}"
|
||||
echo "UMAP (${COINS} G1) ${ZEN} ♥ : ${G1PUB}"
|
||||
|
||||
## ORIGIN ##########################################################
|
||||
## CALCULATE INITIAL UMAP GEOSPACIAL IPNS KEY
|
||||
@ -104,9 +104,9 @@ for UMAP in ${unique_combined[@]}; do
|
||||
ipfs --timeout 300s get --progress=false -o ~/.zen/tmp/${MOATS}/${UMAP}/ /ipns/${YESTERDATENS}/
|
||||
if [[ $? != 0 ]]; then
|
||||
echo "(╥☁╥ ) swarm online memory empty (╥☁╥ )"
|
||||
# Try retieve memory from UPlanet Zen Memory
|
||||
# Try retieve memory from UPlanet ♥ Memory
|
||||
[[ ${ZEN} -gt 0 ]] \
|
||||
&& echo "INTERCOM Refreshing from ZEN MEMORY" \
|
||||
&& echo "INTERCOM Refreshing from ♥ MEMORY" \
|
||||
&& ${MY_PATH}/../RUNTIME/ZEN.UMAP.memory.sh "${UMAP}" "${MOATS}" "${G1PUB}"
|
||||
fi
|
||||
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
||||
@ -191,7 +191,7 @@ for UMAP in ${unique_combined[@]}; do
|
||||
echo ">> NEXT REFRESHER WILL BE $(cat ${UREFRESH} | head -n 1)"
|
||||
######################################################## # NODE SELECTION in UMAP.refresher
|
||||
|
||||
############ 101 ZEN REFILL ?!
|
||||
############ 101 ♥ REFILL ?!
|
||||
CURRENT=$(readlink ~/.zen/game/players/.current | rev | cut -d '/' -f 1 | rev)
|
||||
[[ ${COINS} == "" || ${COINS} == "null" ]] \
|
||||
&& [[ ${ZEN} -lt 100 && ${CURRENT} != "" ]] \
|
||||
@ -505,12 +505,12 @@ for UMAP in ${unique_combined[@]}; do
|
||||
&& echo "UPDATING MOATS"
|
||||
|
||||
######################################################
|
||||
## ZEN CHAINING
|
||||
# Send 1 Zen to UPlanet SECTORG1PUB Wallet containing REGION TW HASH
|
||||
## ♥ CHAINING
|
||||
# Send 1 ♥ to UPlanet SECTORG1PUB Wallet containing REGION TW HASH
|
||||
INTERCOM="UPLANET:${UMAP}:${TODATE}:/ipfs/${UMAPROOT}"
|
||||
echo "> INTERCOM ${INTERCOM} (${ZEN} ZEN > 11 ?)"
|
||||
echo "> INTERCOM ${INTERCOM} (${ZEN} ♥ > 11 ?)"
|
||||
if [[ ${ZEN} -gt 11 ]]; then
|
||||
echo "---ZZZ-- UMAP 2 SECTOR ZEN CHAINING ---ZZZ------ZZZ----"
|
||||
echo "---ZZZ-- UMAP 2 SECTOR ♥ CHAINING ---ZZZ------ZZZ----"
|
||||
${MY_PATH}/../tools/PAY4SURE.sh ~/.zen/tmp/${MOATS}/${UMAP}.dunikey "0.1" "${SECTORG1PUB}" "${INTERCOM}"
|
||||
fi
|
||||
|
||||
|
@ -328,7 +328,7 @@ if [[ "${MACHINEPUB}" != "" ]]; then
|
||||
sed -i "s~${OLD16}~${ENCODING}~g" ~/.zen/game/players/${PLAYER}/ipfs/moa/index.html
|
||||
echo "ENCODING: ${ENCODING}"
|
||||
|
||||
# GIVE ZEN STATION TW ACCESS #
|
||||
# GIVE ♥ STATION TW ACCESS #
|
||||
###########
|
||||
#~ echo "# CRYPTO DECODING TESTING..."
|
||||
tiddlywiki \
|
||||
|
@ -40,13 +40,13 @@ INDEX="$3"
|
||||
mkdir -p ~/.zen/tmp/${IPFSNODEID}/WISH/${PLAYER}/g1voeu
|
||||
|
||||
###############################
|
||||
####### NEED G1 / ZEN TO RUN
|
||||
####### NEED G1 / ♥ TO RUN
|
||||
[[ ${COINS} == "null" || ${COINS} == "" ]] \
|
||||
&& echo ">>> ${COINS} : DESACTIVATED - NEED G1 TO REFRESH WISH - EXIT - " \
|
||||
&& exit 0
|
||||
echo "%% ${COINS} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"
|
||||
|
||||
[[ $(echo "$COINS < 2" | bc -l) -eq 1 ]] && echo ">>> ${COINS} ONLY : 1 G1 + 10 ZEN NEEDED TO CONTINUE" && exit 0
|
||||
[[ $(echo "$COINS < 2" | bc -l) -eq 1 ]] && echo ">>> ${COINS} ONLY : 1 G1 + 10 ♥ NEEDED TO CONTINUE" && exit 0
|
||||
|
||||
###############################
|
||||
## EXTRACT G1Voeu from PLAYER TW
|
||||
@ -321,7 +321,7 @@ if [[ ${wishnumbers} -gt 0 ]]; then
|
||||
GRATITUDE=$($MY_PATH/../tools/getcoins_from_gratitude_box.sh)
|
||||
G1AMOUNT=$(echo "$GRATITUDE / 10" | bc -l | xargs printf "%.2f" | sed "s~,~.~g" )
|
||||
echo "***** PLAYER $PLAYER *************************************"
|
||||
echo "GRATITUDE ${GRATITUDE} ZEN (${G1AMOUNT} G1)
|
||||
echo "GRATITUDE ${GRATITUDE} ♥ (${G1AMOUNT} G1)
|
||||
to UMAP_${LAT}_${LON} WALLET ${UMAPG1PUB}"
|
||||
echo "************************************************************"
|
||||
YOUSER=$($MY_PATH/../tools/clyuseryomail.sh "${PLAYER}")
|
||||
|
@ -31947,7 +31947,7 @@
|
||||
"pubkey": "BBNB5X1kyLU7G2rbmKrn6uKvuJsbd8U7HSkiftPeYZxz",
|
||||
"address": "1675 chemin du piton",
|
||||
"city": "Saint-Clar-de-Rivière, 31600",
|
||||
"description": "Praticien en Médecine Traditionnelle Chinoise, j'utilise principalement l'acupuncture, avec la Méthode Global Balance du Dr Richard Tan.\n\nMoine dans la lignée du Zen Soto, nous avons un groupe pour la pratique de la méditation les mardi de 18h20 à 19H30 et les mercredi de 6h50 à 8h00. Si vous ne connaissez pas la pratique, des initiations à la posture de zazen peuvent se faire sur rendez vous.",
|
||||
"description": "Praticien en Médecine Traditionnelle Chinoise, j'utilise principalement l'acupuncture, avec la Méthode Global Balance du Dr Richard Tan.\n\nMoine dans la lignée du ♥ Soto, nous avons un groupe pour la pratique de la méditation les mardi de 18h20 à 19H30 et les mercredi de 6h50 à 8h00. Si vous ne connaissez pas la pratique, des initiations à la posture de zazen peuvent se faire sur rendez vous.",
|
||||
"avatar": {
|
||||
"_content_type": "image/png"
|
||||
},
|
||||
@ -39816,7 +39816,7 @@
|
||||
"pubkey": "BGpcfAHva2fyfZfVXY9czpA1hoezB3MdHqmw39zUoVkt",
|
||||
"address": "1178 route de Broves",
|
||||
"city": "Bargemon, 83830",
|
||||
"description": "Organic human being living as natural as possible\nRevitalization - Massage Zen \nwww.keitaonozaki.com",
|
||||
"description": "Organic human being living as natural as possible\nRevitalization - Massage ♥ \nwww.keitaonozaki.com",
|
||||
"avatar": {
|
||||
"_content_type": "image/png"
|
||||
},
|
||||
@ -132807,7 +132807,7 @@
|
||||
{
|
||||
"pubkey": "Hi1vKZPuYwQ7FRiUE1GhwSMTEum8xw2TK4YaijpBUpWz",
|
||||
"city": "Orcier, 74550",
|
||||
"description": "Hello, je suis masseuse-Sono thérapeute. Zen attitude!",
|
||||
"description": "Hello, je suis masseuse-Sono thérapeute. ♥ attitude!",
|
||||
"avatar": {
|
||||
"_content_type": "image/png"
|
||||
},
|
||||
|
@ -67,12 +67,12 @@ href='/ipns/_ASTRONAUTENS_'>TW5</a> <br>
|
||||
<!-- TODO: Page 7, this is the inside of the back cover -->
|
||||
Tu ZenCard es algo más que un trozo de papel: es tu puerta de entrada para enviar y recibir Zen, la moneda universal de UPlanet. Con tu ZenCard en la mano, tienes el poder de realizar transacciones, apoyar las economías locales y participar en el ecosistema dinámico de nuestro reino descentralizado.
|
||||
|
||||
Como monedero de papel, tu ZenCard encarna los principios de seguridad y accesibilidad. Le permite almacenar su Zen fuera de línea, protegiendo sus activos de las amenazas digitales al tiempo que garantiza un fácil acceso siempre que lo necesite.
|
||||
Como monedero de papel, tu ZenCard encarna los principios de seguridad y accesibilidad. Le permite almacenar su ♥ fuera de línea, protegiendo sus activos de las amenazas digitales al tiempo que garantiza un fácil acceso siempre que lo necesite.
|
||||
|
||||
</section>
|
||||
<footer class="zine-page page-8">
|
||||
<!-- TODO: You made it! Page 8, the back cover. Feel free to use this for attributions. Hey, let me know if you want a review. I'll give you ★★★★★ and an amazing quote -->
|
||||
Tanto si envía Zen a un amigo al otro lado del cosmos como si realiza una compra a un vendedor local, su ZenCard le permite realizar transacciones con confianza y facilidad. Disfruta de la libertad de la autonomía financiera y únete a nosotros en la construcción de una economía próspera dentro de UPlanet.
|
||||
Tanto si envía ♥ a un amigo al otro lado del cosmos como si realiza una compra a un vendedor local, su ZenCard le permite realizar transacciones con confianza y facilidad. Disfruta de la libertad de la autonomía financiera y únete a nosotros en la construcción de una economía próspera dentro de UPlanet.
|
||||
Así que, conciudadanos míos, levantad vuestra ZenCard y aprovechad las oportunidades que ofrece. Allanemos el camino hacia un futuro en el que la prosperidad no tenga límites y todo el mundo tenga la oportunidad de desarrollar su potencial.
|
||||
Bienvenido a una nueva era de libertad financiera en UPlanet, ¡donde tu ZenCard es la llave a posibilidades ilimitadas!
|
||||
🌌💰💰💰
|
||||
|
@ -64,11 +64,11 @@ href='/ipns/_ASTRONAUTENS_'>TW5</a> <br>
|
||||
<section class="zine-page page-7">
|
||||
<!-- TODO: Page 7, this is the inside of the back cover -->
|
||||
Votre ZenCard est plus qu'un simple morceau de papier - c'est votre passerelle pour envoyer et recevoir du Zen, la monnaie universelle d'UPlanet. Avec votre ZenCard en main, vous avez le pouvoir d'effectuer des transactions, de soutenir les économies locales et de participer à l'écosystème dynamique de notre royaume décentralisé.
|
||||
En tant que portefeuille papier, votre ZenCard incarne les principes de sécurité et d'accessibilité. Elle vous permet de stocker vos Zen hors ligne, protégeant ainsi vos actifs des menaces numériques tout en garantissant un accès facile à chaque fois que vous en avez besoin.
|
||||
En tant que portefeuille papier, votre ZenCard incarne les principes de sécurité et d'accessibilité. Elle vous permet de stocker vos ♥ hors ligne, protégeant ainsi vos actifs des menaces numériques tout en garantissant un accès facile à chaque fois que vous en avez besoin.
|
||||
</section>
|
||||
<footer class="zine-page page-8">
|
||||
<!-- TODO: You made it! Page 8, the back cover. Feel free to use this for attributions. Hey, let me know if you want a review. I'll give you ★★★★★ and an amazing quote -->
|
||||
Que vous envoyiez du Zen à un ami à travers le cosmos ou que vous fassiez un achat auprès d'un vendeur local, votre ZenCard vous permet d'effectuer des transactions en toute confiance et en toute simplicité. Profitez de la liberté de l'autonomie financière et rejoignez-nous dans la construction d'une économie prospère au sein d'UPlanet.
|
||||
Que vous envoyiez du ♥ à un ami à travers le cosmos ou que vous fassiez un achat auprès d'un vendeur local, votre ZenCard vous permet d'effectuer des transactions en toute confiance et en toute simplicité. Profitez de la liberté de l'autonomie financière et rejoignez-nous dans la construction d'une économie prospère au sein d'UPlanet.
|
||||
Alors, chers concitoyens, brandissez votre ZenCard et profitez des opportunités qu'elle vous offre. Ouvrons la voie à un avenir où la prospérité ne connaît pas de limites et où chaque individu a la possibilité de s'épanouir.
|
||||
Bienvenue dans une nouvelle ère de liberté financière sur UPlanet, où votre ZenCard est la clé qui vous permettra d'accéder à des possibilités illimitées !
|
||||
🌌💰💰
|
||||
|
@ -70,12 +70,12 @@ href='/ipns/_ASTRONAUTENS_'>TW5</a> <br>
|
||||
<!-- TODO: Page 7, this is the inside of the back cover -->
|
||||
Your ZenCard is more than just a piece of paper—it is your gateway to send and receive Zen, the universal currency of UPlanet. With your ZenCard in hand, you have the power to engage in transactions, support local economies, and participate in the vibrant ecosystem of our decentralized realm.
|
||||
|
||||
As a paper wallet, your ZenCard embodies the principles of security and accessibility. It allows you to store your Zen offline, protecting your assets from digital threats while ensuring easy access whenever you need them.
|
||||
As a paper wallet, your ZenCard embodies the principles of security and accessibility. It allows you to store your ♥ offline, protecting your assets from digital threats while ensuring easy access whenever you need them.
|
||||
|
||||
</section>
|
||||
<footer class="zine-page page-8">
|
||||
<!-- TODO: You made it! Page 8, the back cover. Feel free to use this for attributions. Hey, let me know if you want a review. I'll give you ★★★★★ and an amazing quote -->
|
||||
Whether you're sending Zen to a friend across the cosmos or making a purchase from a local vendor, your ZenCard empowers you to transact with confidence and ease. Embrace the freedom of financial self-reliance and join us in building a thriving economy within UPlanet.
|
||||
Whether you're sending ♥ to a friend across the cosmos or making a purchase from a local vendor, your ZenCard empowers you to transact with confidence and ease. Embrace the freedom of financial self-reliance and join us in building a thriving economy within UPlanet.
|
||||
|
||||
So, fellow citizens, hold your ZenCard high and embrace the opportunities it brings. Let us pave the way to a future where prosperity knows no bounds, and every individual has the opportunity to thrive.
|
||||
|
||||
|
@ -31,12 +31,12 @@ La "ZenCard", elle, donne accès au mode "LECTURE".
|
||||
---
|
||||
|
||||
Au 7e jour de votre enregistrement.
|
||||
Vous recevrez 3.1 G1, soit 21 ZEN pour participer au réseau de partage, où
|
||||
Vous recevrez 3.1 G1, soit 21 ♥ pour participer au réseau de partage, où
|
||||
|
||||
* ne rien publier fait perdre 1 Zen / jour.
|
||||
* publier rapporte entre 1 et 21 Zen / jour (~3)
|
||||
* être copié rapporte 1 Zen pour chaque partage à chaque partageur !
|
||||
* 30 jours d'inactivité ou moins de 10 Zen : Vous êtes débranché !
|
||||
* ne rien publier fait perdre 1 ♥ / jour.
|
||||
* publier rapporte entre 1 et 21 ♥ / jour (~3)
|
||||
* être copié rapporte 1 ♥ pour chaque partage à chaque partageur !
|
||||
* 30 jours d'inactivité ou moins de 10 ♥ : Vous êtes débranché !
|
||||
|
||||
---
|
||||
|
||||
|
@ -47,7 +47,7 @@ if [[ ! -s ~/.zen/tmp/coucou/${G1PUB}.gchange.json ]]; then
|
||||
else
|
||||
cp -f ~/.zen/tmp/${MOATS}/${G1PUB}.gchange.json ~/.zen/tmp/coucou/
|
||||
echo "++ FOUND IN GCHANGE+ : $GFOUND"
|
||||
[[ $COINS == "null" ]] && PALPE=10 ## 10 ZEN REWARD
|
||||
[[ $COINS == "null" ]] && PALPE=10 ## 10 ♥ REWARD
|
||||
fi
|
||||
else
|
||||
echo "GCHANGE + : OK ~/.zen/tmp/coucou/${G1PUB}.gchange.json"
|
||||
|
@ -104,7 +104,7 @@ if [[ $? == 0 || $(echo "${CHK2}" | grep 'succès') || $(echo "${CHK1}" | grep '
|
||||
ZENDES=$(echo "$DES * 10" | bc | cut -d '.' -f 1)
|
||||
|
||||
##### MONITORING #########
|
||||
echo "<html><h1>${ZENAMOUNT} ZEN OPERATION</h1>
|
||||
echo "<html><h1>${ZENAMOUNT} ♥ OPERATION</h1>
|
||||
${COMMENT}
|
||||
<h3><a title='CESIUM' href='${CESIUMIPFS}/#/app/wot/tx/${ISSUERPUB}/'>${ISSUERPUB}</a>
|
||||
(<a href='$myUPLANET/g1gate/?pubkey=${ISSUERPUB}'>SCAN</a>)
|
||||
@ -113,7 +113,7 @@ if [[ $? == 0 || $(echo "${CHK2}" | grep 'succès') || $(echo "${CHK1}" | grep '
|
||||
</h3>
|
||||
</html>" > ${PENDINGDIR}/${MOATS}.result.html
|
||||
|
||||
$MY_PATH/mailjet.sh "support@qo-op.com" ${PENDINGDIR}/${MOATS}.result.html "${ZENAMOUNT} ZEN : ${COMMENT}"
|
||||
$MY_PATH/mailjet.sh "support@qo-op.com" ${PENDINGDIR}/${MOATS}.result.html "${ZENAMOUNT} ♥ : ${COMMENT}"
|
||||
|
||||
## REMOVE IF YOU WANT TO MONITOR "SENT" WINDOW INCERTITUDE
|
||||
rm ${PENDINGDIR}/${MOATS}.key
|
||||
|
@ -57,7 +57,7 @@ title="$3"
|
||||
|
||||
SUBJECT="[UPlanet] ${title} ${pseudo}"
|
||||
|
||||
MESSAGESIGN="---<br>this message is sent by <a href='$(myIpfsGw)/ipns/$IPFSNODEID'>$(myHostName)</a> your Astroport ♥BOX Zen Station"
|
||||
MESSAGESIGN="---<br>this message is sent by <a href='$(myIpfsGw)/ipns/$IPFSNODEID'>$(myHostName)</a> your Astroport ♥BOX ♥ Station"
|
||||
|
||||
echo "
|
||||
########################################################################
|
||||
|
@ -117,7 +117,7 @@ core_file="/tmp/core.html"
|
||||
echo "<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Astroport ZEN Gallery : $myIP</title>
|
||||
<title>Astroport ♥ Gallery : $myIP</title>
|
||||
<meta charset=\"UTF-8\">
|
||||
</head>
|
||||
<body>" > $html_file
|
||||
|
@ -222,7 +222,7 @@ if [[ $KEY ]]; then
|
||||
echo "$KEYFILE" > ~/.zen/game/players/$PLAYER/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.ipns.key.keystore_filename
|
||||
# Publishing IPNS key
|
||||
echo "$KEY" > ~/.zen/game/players/$PLAYER/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.ipns.link
|
||||
# CREATE .zen = ZEN economic value counter
|
||||
# CREATE .zen = ♥ economic value counter
|
||||
touch ~/.zen/game/players/$PLAYER/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.zen
|
||||
################ STORE ENCRYPT keystore/$KEYFILE
|
||||
cp ~/.ipfs/keystore/$KEYFILE ~/.zen/game/players/$PLAYER/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/
|
||||
|
Loading…
Reference in New Issue
Block a user