UPLANET ZONE API

This commit is contained in:
fred 2023-12-04 12:58:28 +01:00
parent f18256ec8b
commit 0a8a1188c6
5 changed files with 46 additions and 38 deletions

View File

@ -58,11 +58,22 @@ LAT=${THIS}
LON=${WHAT}
[[ -z $LON ]] && LON=0.00
echo '{ "gridNumbers": [ {"lat": '${LAT}', "lon": '${LON}', "number": SCAN}] }'
# PREPARE HTTP RESPONSE (application/json)
echo "${HTTPCORS}" > ~/.zen/tmp/${MOATS}.http
sed -i "s~text/html~application/json~g" ~/.zen/tmp/${MOATS}.http
if [[ $DEG == "0.001" ]]; then
echo '{ "gridNumbers": [ {"lat": '${LAT}', "lon": '${LON}', "number": "ENTER UPLANET" } ] }' >> ~/.zen/tmp/${MOATS}.http
cat ~/.zen/tmp/${MOATS}.http | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &
rm -Rf ~/.zen/tmp/${MOATS}/
end=`date +%s`
echo "(ZONE $DEG) Operation time was "`expr $end - $start` seconds.
exit 0
fi
## ALL OTHER DEG : SEARCH FOR UPLANET TW NUMBERS
echo '{ "gridNumbers": [' >> ~/.zen/tmp/${MOATS}.http
for i in $(seq 0 9);
do
ZLAT=$(echo "$LAT + $DEG * $i" | bc -l)
@ -71,9 +82,14 @@ do
ZLON=$(echo "$LON + $DEG * $j" | bc -l)
# [[ ! $(echo $ZLON | grep "\." ) ]] && ZLON="${ZLON}."
## SEARCH HOW MUCH TW
twnum=$(ls -d ~/.zen/tmp/swarm/*/UPLANET/_${ZLAT}*_${ZLON}*/TW/* 2>/dev/null | wc -l )
[[ $twnum -gt 0 ]] && echo '{"lat": '${ZLAT}', "lon": '${ZLON}', "number": '${twnum}'}
,' >> ~/.zen/tmp/${MOATS}.http && echo "$DEG ~/.zen/tmp/swarm/*/UPLANET/_${ZLAT}*_${ZLON}*/TW/* = $twnum"
swarmnum=$(ls -d ~/.zen/tmp/swarm/*/UPLANET/_${ZLAT}*_${ZLON}*/TW/* 2>/dev/null | wc -l )
nodenum=$(ls -d ~/.zen/tmp/${IPFSNODEID}/UPLANET/_${ZLAT}*_${ZLON}*/TW/* 2>/dev/null | wc -l )
totnum=$(( swarmnum + nodenum ))
[[ $totnum -gt 9 ]] && totnum="X"
[[ $totnum != "0" ]] && echo '{"lat": '${ZLAT}', "lon": '${ZLON}', "number": "'${totnum}'" }
,' >> ~/.zen/tmp/${MOATS}.http && echo "$DEG :" '{"lat": '${ZLAT}', "lon": '${ZLON}', "number": "'${totnum}'" }'
done
done
@ -84,19 +100,6 @@ echo ']}' >> ~/.zen/tmp/${MOATS}.http
cat ~/.zen/tmp/${MOATS}.http | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &
# PRODUCE A JSON COUNTING PLAYERS TW IN EACH UMAP
# UPLANET OCCUPANCY LIST
#~ {
#~ "gridNumbers": [
#~ {"lat": 0.05, "lon": 0.05, "number": 1},
#~ {"lat": 0.05, "lon": 0.15, "number": 2},
#~ {"lat": 0.15, "lon": 0.05, "number": 3},
#~ {"lat": 0.15, "lon": 0.15, "number": 4},
#~ // Add more grid cells with their corresponding latitude, longitude, and number
#~ ]
#~ }
rm -Rf ~/.zen/tmp/${MOATS}/
end=`date +%s`
echo "(ZONE) Operation time was "`expr $end - $start` seconds.

View File

@ -43,7 +43,7 @@ SECTORS=($(echo "${MYSECTORS[@]}" | tr ' ' '\n' | sort -u))
[[ ${SECTORS[@]} == "" ]] && echo "> NO SECTOR FOUND" && exit 0
#########################################################""
echo ${SECTORS[@]}
echo "ACTIVATED SECTORS : ${SECTORS[@]}"
for SECTOR in ${SECTORS[@]}; do
@ -84,11 +84,13 @@ for SECTOR in ${SECTORS[@]}; do
ZMOATS_SECONDS=$(${MY_PATH}/../tools/MOATS2seconds.sh ${ZMOATS})
DIFF_SECONDS=$((MOATS_SECONDS - ZMOATS_SECONDS))
echo "SECTOR DATA is about ${DIFF_SECONDS} seconds old" # 5 Heures
if [ ${DIFF_SECONDS} -lt 18000 ]; then
echo "less than 5 hours..."
if [ ${DIFF_SECONDS} -lt $(( 5 * 60 * 60 )) ]; then
echo "GETTING YESTERDAY SECTOR.refresher"
YESTERDAY=$(ipfs cat /ipfs/${ZCHAIN}/CHAIN/SECTOR.refresher | head -n 1)
## GET UMAP.refresher from PREVIOUS _chain ...
ipfs cat /ipfs/${ZCHAIN}/CHAIN/SECTOR.refresher > ~/.zen/tmp/${MOATS}/${SECTOR}/CHAIN/SECTOR.refresher
echo "TODAY : $(cat ~/.zen/tmp/${MOATS}/${SECTOR}/CHAIN/SECTOR.refresher | head -n 1)"
echo "YESTERDAY : ${YESTERDAY}"
continue
fi
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
## CONTROL ACTINGNODE SWAPPING
@ -109,7 +111,7 @@ for SECTOR in ${SECTORS[@]}; do
[[ ! $(echo ${STRAPS[@]} | grep ${ACTINGNODE}) ]] && ACTINGNODE=${STRAPS[0]}
## IF NOT UPDATED FOR TOO LONG
[ ${DIFF_SECONDS} -gt 86400 ] \
[ ${DIFF_SECONDS} -gt $(( 24 * 60 * 60 )) ] \
&& echo "More than 24H update" \
&& ACTINGNODE=${STRAPS[0]}

View File

@ -82,13 +82,16 @@ echo "<meta http-equiv=\"refresh\" content=\"0; url='/ipfs/${ZCHAIN}' />" > ~/.z
MOATS_SECONDS=$(${MY_PATH}/../tools/MOATS2seconds.sh ${MOATS})
ZMOATS_SECONDS=$(${MY_PATH}/../tools/MOATS2seconds.sh ${ZMOATS})
DIFF_SECONDS=$((MOATS_SECONDS - ZMOATS_SECONDS))
echo "UMAP DATA is ${DIFF_SECONDS} seconds "
echo "UMAP DATA is ${DIFF_SECONDS} seconds "
# IF LESS THAN 5 HOURS
if [ ${DIFF_SECONDS} -lt $(( 5 * 60 * 60 )) ]; then
echo "GETTING YESTERDAY UMAP.refresher"
ZCHAIN=$(cat ~/.zen/tmp/${MOATS}/${UMAP}/${G1PUB}/_chain | rev | cut -d ':' -f 1 | rev 2>/dev/null)
YESTERDAY=$(ipfs cat /ipfs/${ZCHAIN}/${LAT}_${LON}/UMAP.refresher | head -n 1)
## GET UMAP.refresher from PREVIOUS _chain ...
ipfs cat /ipfs/${ZCHAIN}/${LAT}_${LON}/UMAP.refresher > ~/.zen/tmp/${MOATS}/${UMAP}/${LAT}_${LON}/UMAP.refresher
echo "TODAY : $(cat ~/.zen/tmp/${MOATS}/${UMAP}/${LAT}_${LON}/UMAP.refresher | head -n 1)"
echo "YESTERDAY : ${YESTERDAY}"
continue
fi
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@ -160,10 +163,10 @@ echo "<meta http-equiv=\"refresh\" content=\"0; url='/ipfs/${ZCHAIN}' />" > ~/.z
echo "<meta http-equiv=\"refresh\" content=\"0; url='${SECTORMAPGEN}'\" />" > ~/.zen/tmp/${MOATS}/${UMAP}/${SLAT}_${SLON}.SECTOR.Map.html
echo "<meta http-equiv=\"refresh\" content=\"0; url='${SECTORSATGEN}'\" />" > ~/.zen/tmp/${MOATS}/${UMAP}/${SLAT}_${SLON}.SECTOR.Sat.html
## REGION LINKING >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ${CLAT}_${CLON}
CLAT=$(echo ${LAT} | cut -d '.' -f 1)
CLON=$(echo ${LON} | cut -d '.' -f 1)
REGION="_${CLAT}_${CLON}"
## REGION LINKING >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ${RLAT}_${RLON}
RLAT=$(echo ${LAT} | cut -d '.' -f 1)
RLON=$(echo ${LON} | cut -d '.' -f 1)
REGION="_${RLAT}_${RLON}"
echo "REGION ${REGION}"
##############################################################
REGIONG1PUB=$(${MY_PATH}/../tools/keygen -t duniter "${UPLANETNAME}${REGION}" "${UPLANETNAME}${REGION}")
@ -176,13 +179,13 @@ echo "<meta http-equiv=\"refresh\" content=\"0; url='/ipfs/${ZCHAIN}' />" > ~/.z
REGIONNS=$(ipfs key import ${REGIONG1PUB} -f pem-pkcs8-cleartext ~/.zen/tmp/${MOATS}/REGION.priv)
ipfs key rm ${REGIONG1PUB}
##############################################################
mkdir -p ~/.zen/tmp/${MOATS}/${UMAP}/${CLAT}_${CLON}
echo "<meta http-equiv=\"refresh\" content=\"0; url='/ipns/${REGIONNS}'\" />" > ~/.zen/tmp/${MOATS}/${UMAP}/${CLAT}_${CLON}/index.html
mkdir -p ~/.zen/tmp/${MOATS}/${UMAP}/${RLAT}_${RLON}
echo "<meta http-equiv=\"refresh\" content=\"0; url='/ipns/${REGIONNS}'\" />" > ~/.zen/tmp/${MOATS}/${UMAP}/${RLAT}_${RLON}/index.html
REGIONMAPGEN="${EARTHCID}/map_render.html?southWestLat=${CLAT}&southWestLon=${CLON}&deg=1&ipns=${REGIONNS}"
REGIONSATGEN="${EARTHCID}/sat_render.html?southWestLat=${CLAT}&southWestLon=${CLON}&deg=1&ipns=${REGIONNS}"
echo "<meta http-equiv=\"refresh\" content=\"0; url='${REGIONMAPGEN}'\" />" > ~/.zen/tmp/${MOATS}/${UMAP}/${CLAT}_${CLON}.REGION.Map.html
echo "<meta http-equiv=\"refresh\" content=\"0; url='${REGIONSATGEN}'\" />" > ~/.zen/tmp/${MOATS}/${UMAP}/${CLAT}_${CLON}.REGION.Sat.html
REGIONMAPGEN="${EARTHCID}/map_render.html?southWestLat=${RLAT}&southWestLon=${RLON}&deg=1&ipns=${REGIONNS}"
REGIONSATGEN="${EARTHCID}/sat_render.html?southWestLat=${RLAT}&southWestLon=${RLON}&deg=1&ipns=${REGIONNS}"
echo "<meta http-equiv=\"refresh\" content=\"0; url='${REGIONMAPGEN}'\" />" > ~/.zen/tmp/${MOATS}/${UMAP}/${RLAT}_${RLON}.REGION.Map.html
echo "<meta http-equiv=\"refresh\" content=\"0; url='${REGIONSATGEN}'\" />" > ~/.zen/tmp/${MOATS}/${UMAP}/${RLAT}_${RLON}.REGION.Sat.html
## COLLECT RSS FROM ALL PLAYERS WITH SAME UMAP IN SWARM MEMORY
cp ~/.zen/tmp/${IPFSNODEID}/UPLANET/_${LAT}_${LON}/RSS/*.rss.json ~/.zen/tmp/${MOATS}/${UMAP}/RSS/ 2>/dev/null

View File

@ -20,7 +20,7 @@ echo "(RE)STARTING 12345.sh"
|| ( killall "12345.sh"; killall "_12345.sh"; killall "nc" )
mkdir -p ~/.zen/tmp
~/.zen/Astroport.ONE/tools/displaytimer.sh 3
sleep 5
~/.zen/Astroport.ONE/12345.sh > ~/.zen/tmp/12345.log &
echo $! > ~/.zen/.pid

View File

@ -467,7 +467,7 @@ if [[ $XDG_SESSION_TYPE == 'x11' ]]; then
###
fi
EARTHCID="/ipfs/QmSQCjnDHqKCGXtFur7MbVQSuyTpjYvQVCmaJHRS3RYd4F"
EARTHCID="/ipfs/QmZCVJVdfvpiy4Qo9mEG9ydCDat2dcXS6T6mVwuWDp8vwc"
FLIPPERCID="${EARTHCID}/coinflip"
myUPLANET="${myIPFS}${EARTHCID}" ## EMAIL LAT LON KEY