List visited UPlanet ZONE

This commit is contained in:
fred 2024-02-15 14:53:26 +01:00
parent 03ec5b072c
commit 49fa403354
3 changed files with 44 additions and 34 deletions

View File

@ -26,7 +26,10 @@ while [[ ! $(netstat -tan | grep 5001 | grep LISTEN) ]]; do
done
# espeak "CODE git pull" > /dev/null 2>&1
## REMOVE TMP BUT KEEP SWARM
# show ZONE.sh cache of the day
ls ~/.zen/tmp/ZONE_*
## REMOVE TMP BUT KEEP SWARM and coucou
mv ~/.zen/tmp/swarm ~/.zen/swarm
mv ~/.zen/tmp/coucou ~/.zen/coucou
rm -Rf ~/.zen/tmp/*

View File

@ -7,8 +7,7 @@
## API: ZONE
## Used by OSM2IPFS map_render.html & other UPlanet Client App
# ?zone=DEG&ulat=LAT&ulon=LON
## Search for TW numbers in received zone
# = json
## Search for TW numbers in received zone # >> return json
################################################################################
MY_PATH="`dirname \"$0\"`" # relative
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
@ -42,10 +41,13 @@ function urldecode() { : "${*//+/ }"; echo -e "${_//%/\\x}"; }
## RUNNING UPLANET LAT/LON TW DETECTION
mkdir -p ~/.zen/tmp/${MOATS}/
# GET RECEPTION : zone=0.001&ulat=0.02&ulon=0.01
# ------------------------------------------------------------------- #
# GET/?zone=0.001&ulat=0.02&ulon=0.01
# ------------------------------------------------------------------- #
DEG=${THAT}
[[ -z $DEG ]] && DEG=1
# DEG=$(echo "$DEG * 10" | bc -l )
LAT=${THIS}
[[ -z $LAT ]] && LAT=0.00
LON=${WHAT}
@ -57,37 +59,15 @@ sed -i "s~text/html~application/json~g" ~/.zen/tmp/${MOATS}.http
LAT=$(makecoord $LAT)
LON=$(makecoord $LON)
JSON="ZONE_$LAT_$LON_$DEG.json"
[[ $(date +"%H%M") -gt 2012 ]] \
&& THEDATE=${TODATE} \
|| THEDATE=${YESTERDATE}
echo "${THEDATE}"
echo "REQUEST $LAT / $LON / $DEG"
if [[ ! -s ~/.zen/tmp/ZONE_$LAT_$LON_$DEG.json ]]; then
## REGION & ABOVE LEVEL
if [[ $DEG == "0.1" || $DEG == "1" ]]; then
LAT=$(echo ${LAT} | cut -d '.' -f 1)
LON=$(echo ${LON} | cut -d '.' -f 1)
ZONE="_${LAT}_${LON}"
echo "ZONE = ${ZONE}"
ZONEG1PUB=$(${MY_PATH}/../tools/keygen -t duniter "${UPLANETNAME}${ZONE}" "${UPLANETNAME}${ZONE}")
ZONEINDEX="/ipns/"$(${MY_PATH}/../tools/keygen -t ipfs "${THEDATE}${UPLANETNAME}${ZONE}" "${THEDATE}${UPLANETNAME}${ZONE}")
fi
## SECTOR LEVEL
if [[ $DEG == "0.01" ]]; then
SECLAT="${LAT::-1}"
SECLON="${LON::-1}"
SECTOR="_${SECLAT}_${SECLON}"
echo "SECTOR = ${SECTOR}"
ZONEG1PUB=$(${MY_PATH}/../tools/keygen -t duniter "${UPLANETNAME}${SECTOR}" "${UPLANETNAME}${SECTOR}")
ZONEINDEX="/ipns/"$(${MY_PATH}/../tools/keygen -t ipfs "${THEDATE}${UPLANETNAME}${SECTOR}" "${THEDATE}${UPLANETNAME}${SECTOR}")"/_index.html"
fi
## UMAP LEVEL
if [[ $DEG == "0.001" ]]; then
@ -102,8 +82,8 @@ if [[ ! -s ~/.zen/tmp/ZONE_$LAT_$LON_$DEG.json ]]; then
UMAPNS=$(ipfs key import ${G1PUB} -f pem-pkcs8-cleartext ~/.zen/tmp/${MOATS}/${UMAP}.priv)
echo '{ "gridNumbers": [ {"lat": '${LAT}', "lon": '${LON}', "number": "(_'${LAT}'_'${LON}') = '${totnum}'", "ipns": "'${myIPFS}/ipns/${UMAPNS}/_index.html'" } ] }' > ~/.zen/tmp/${MOATS}.http.grid
cp ~/.zen/tmp/${MOATS}.http.grid ~/.zen/tmp/ZONE_$LAT_$LON_$DEG.json
cat ~/.zen/tmp/ZONE_$LAT_$LON_$DEG.json >> ~/.zen/tmp/${MOATS}.http
cp ~/.zen/tmp/${MOATS}.http.grid ~/.zen/tmp/${JSON}
cat ~/.zen/tmp/${JSON} >> ~/.zen/tmp/${MOATS}.http
cat ~/.zen/tmp/${MOATS}.http | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &
@ -114,6 +94,30 @@ if [[ ! -s ~/.zen/tmp/ZONE_$LAT_$LON_$DEG.json ]]; then
fi
## SECTOR LEVEL
if [[ $DEG == "0.01" ]]; then
SECLAT="${LAT::-1}"
SECLON="${LON::-1}"
SECTOR="_${SECLAT}_${SECLON}"
echo "SECTOR = ${SECTOR}"
ZONEG1PUB=$(${MY_PATH}/../tools/keygen -t duniter "${UPLANETNAME}${SECTOR}" "${UPLANETNAME}${SECTOR}")
ZONEINDEX="/ipns/"$(${MY_PATH}/../tools/keygen -t ipfs "${THEDATE}${UPLANETNAME}${SECTOR}" "${THEDATE}${UPLANETNAME}${SECTOR}")"/_index.html"
JSON="ZONE${SECTOR}_$DEG.json"
fi
## REGION & ABOVE LEVEL
if [[ $DEG == "0.1" || $DEG == "1" ]]; then
LAT=$(echo ${LAT} | cut -d '.' -f 1)
LON=$(echo ${LON} | cut -d '.' -f 1)
ZONE="_${LAT}_${LON}"
echo "ZONE = ${ZONE}"
ZONEG1PUB=$(${MY_PATH}/../tools/keygen -t duniter "${UPLANETNAME}${ZONE}" "${UPLANETNAME}${ZONE}")
ZONEINDEX="/ipns/"$(${MY_PATH}/../tools/keygen -t ipfs "${THEDATE}${UPLANETNAME}${ZONE}" "${THEDATE}${UPLANETNAME}${ZONE}")
JSON="ZONE${ZONE}_$DEG.json"
fi
## ALL OTHER DEG : SEARCH FOR UPLANET TW NUMBERS
echo '{ "gridNumbers": [' >> ~/.zen/tmp/${MOATS}.http.grid
@ -145,17 +149,18 @@ if [[ ! -s ~/.zen/tmp/ZONE_$LAT_$LON_$DEG.json ]]; then
echo ']}' >> ~/.zen/tmp/${MOATS}.http.grid
## ADD TO CACHE
cp ~/.zen/tmp/${MOATS}.http.grid ~/.zen/tmp/ZONE_$LAT_$LON_$DEG.json
cp ~/.zen/tmp/${MOATS}.http.grid ~/.zen/tmp/${JSON}
fi
### SEND RESPONSE ON PORT
cat ~/.zen/tmp/ZONE_$LAT_$LON_$DEG.json >> ~/.zen/tmp/${MOATS}.http
cat ~/.zen/tmp/${MOATS}.http | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &
cat ~/.zen/tmp/${JSON} >> ~/.zen/tmp/${MOATS}.http
(
cat ~/.zen/tmp/${MOATS}.http | nc -l -p ${PORT} -q 1 > /dev/null 2>&1
rm ~/.zen/tmp/${MOATS}.http && echo "BLURP ${JSON}"
) &
## CLEANING
rm -Rf ~/.zen/tmp/${MOATS}/
## TIMING
end=`date +%s`
echo "(ZONE) Operation time was "`expr $end - $start` seconds.

View File

@ -162,7 +162,9 @@ iframe {
<a href="/ipfs/QmXex8PTnQehx4dELrDYuZ2t5ag85crYCBxm3fcTjVWo2k/#/app/wot/tx/_SECTORG1PUB_/" target="aframe" title="SECTOR WALLET"><img width=20 src="http://127.0.0.1:8080/ipfs/QmQd7rNi13eHHWaEfqKLHxmY6V5HWakGsXNZH8QVoGQvNt" ></a> |
<a href="/ipfs/_ZONEIPFS_/TW" target="aframe" title="_ZONE_ TW NEWS"> _<img width=20 src="http://127.0.0.1:8080/ipfs/QmZX2Titv5L488iNVHwbRNeuZh2PJULSCfxoSgF4Qzv547" ></a> |
<a href="https://minetest.dustlabs.io/?launch" target="aframe" title="- Minetest - Building Blocks on UPlanet - DEV -"><img width=20 src="http://127.0.0.1:8080/ipfs/Qmeaaee1gojMHkos4Quqqw8dwmF4SDP8kTCgAdnJiTeVgJ" ></a> |
<!--
<a href="https://groceliande.com/" target="aframe" title="© Groceliande 2023"> ( <img width=20 src="http://127.0.0.1:8080/ipfs/QmTPYJqxmsZkNzjEQv1BZ4VWBwNvXLc8MdHwZEvhKrdaJQ" > ) </a>
-->
<a href="_IPFSNINJA_/?room=_PHONEBOOTH_" target="aframe" title="_SECTOR_ VISIO 📺"> ( ° - °)📺<img width=20 src="http://127.0.0.1:8080/ipfs/QmU3JKMFDnRUWv1juLcA4YEPxHLcXrgrn9FdbXaPgZgwbT" ></a> |
&nbsp;&nbsp;&nbsp;<button id="fullscreenButton" onclick="toggleConsoleFullScreen()"> ^^ </button>&nbsp;&nbsp;&nbsp;<button onclick="hideConsole()"> X </button>
<iframe name="aframe" id="aframe" src="INFO.png" width="100%" height="100%"></iframe>