################################################################################ # Author: Fred (support@qo-op.com) # Version: 0.1 # License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/) ################################################################################ ################################################################################ ## API: UPLANET ## Dedicated to OSM2IPFS & UPlanet Client App # ?uplanet=EMAIL&zlat=LAT&zlon=LON&g1pub=PASS ## https://git.p2p.legal/qo-op/OSM2IPFS ################################################################################ MY_PATH="`dirname \"$0\"`" # relative MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized . "${MY_PATH}/../tools/my.sh" start=`date +%s` echo "PORT=$1 THAT=$2 AND=$3 THIS=$4 APPNAME=$5 WHAT=$6 OBJ=$7 VAL=$8 MOATS=$9 COOKIE=$10" PORT="$1" THAT="$2" AND="$3" THIS="$4" APPNAME="$5" WHAT="$6" OBJ="$7" VAL="$8" MOATS="$9" COOKIE="$10" ### transfer variables according to script HTTPCORS="HTTP/1.1 200 OK Access-Control-Allow-Origin: ${myASTROPORT} Access-Control-Allow-Credentials: true Access-Control-Allow-Methods: GET Server: Astroport.ONE Content-Type: text/html; charset=UTF-8 " function urldecode() { : "${*//+/ }"; echo -e "${_//%/\\x}"; } ## CHECK FOR NOT PUBLISHING ALREADY (AVOID IPNS CRUSH) alreadypublishing=$(ps axf --sort=+utime | grep -w 'ipfs name publish --key=' | grep -v -E 'color=auto|grep' | tail -n 1 | xargs | cut -d " " -f 1) if [[ ${alreadypublishing} ]]; then echo "$HTTPCORS ERROR - (╥☁╥ ) - IPFS ALREADY PUBLISHING RETRY LATER" | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 & exit 1 fi ## START MANAGING UPLANET LAT/LON & PLAYER mkdir -p ~/.zen/tmp/${MOATS}/ ## GET & VERIFY PARAM PLAYER=${THAT} [[ ${PLAYER} == "zlat" ]] && PLAYER="@" [[ ${AND} != "zlat" ]] \ && (echo "$HTTPCORS ERROR - BAD PARAMS" | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &) && echo "(☓‿‿☓) Execution time was "`expr $(date +%s) - $start` seconds. && exit 0 [[ ${APPNAME} != "zlon" ]] \ && (echo "$HTTPCORS ERROR - BAD PARAMS" | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &) && echo "(☓‿‿☓) Execution time was "`expr $(date +%s) - $start` seconds. && exit 0 ZLAT=${THIS} ZLON=${WHAT} LAT=$(makecoord ${ZLAT}) LON=$(makecoord ${ZLON}) #~ ## RECEIVED VAL ## CAN BE USED TO SELECT TW TEMPLATE VAL="$(echo ${VAL} | detox --inline)" ## DETOX VAL ############################################ #### TODO USE THIS PARAMETER TO SELECT TW TEMPLATE ### CHECK PLAYER EMAIL EMAIL="${PLAYER,,}" # lowercase [[ ! ${EMAIL} ]] \ && (echo "$HTTPCORS ERROR - MISSING ${EMAIL} FOR UPLANET LANDING" | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &) \ && echo "(☓‿‿☓) Execution time was "`expr $(date +%s) - $start` seconds. \ && exit 0 ## CHECK WHAT IS EMAIL if [[ "${EMAIL}" =~ ^[a-zA-Z0-9.%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$ ]]; then echo "VALID ${EMAIL} EMAIL OK" ## CHECK if PLAYER exists in SWARM $($MY_PATH/../tools/search_for_this_email_in_players.sh ${EMAIL}) ## export ASTROTW and more echo "export ASTROPORT=${ASTROPORT} ASTROTW=${ASTROTW} ASTROG1=${ASTROG1} ASTROMAIL=${EMAIL} ASTROFEED=${FEEDNS}" ## YES = OPEN TW [[ ${ASTROTW} ]] \ && (echo "$HTTPCORS " | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &) \ && exit 0 else echo "BAD EMAIL $EMAIL $LAT $LON" ### GET ENV FOR "$LAT" "$LON" $(${MY_PATH}/../tools/getUMAP_ENV.sh "${LAT}" "${LON}" | tail -n 1) REDIR="${myIPFS}${UMAPIPNS}" echo "Umap : $REDIR" if [[ ${UMAPIPNS} != "/ipns/" ]]; then echo "$HTTPCORS BAD EMAIL $EMAIL $LAT $LON - OPEN UMAP LINK - " | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 & else echo "$HTTPCORS BAD EMAIL $EMAIL ($LAT $LON)" | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 & fi exit 0 fi # UPLANET ############################################# ## OCCUPY COMMON CRYPTO KEY CYBERSPACE ## LAT="$LAT" LON="$LON" ###################################################### echo "UMAP = $LAT:$LON" echo "# GET UMAP ENV" ${MY_PATH}/../tools/getUMAP_ENV.sh "${LAT}" "${LON}" ## ALL TEST PASSED -> CREATE ZENCARD + ASTROID #~ choose salt pepper with variable words count PPASS=$(${MY_PATH}/../tools/diceware.sh $(( $(${MY_PATH}/../tools/getcoins_from_gratitude_box.sh) + 3 )) | xargs) NPASS=$(${MY_PATH}/../tools/diceware.sh $(( $(${MY_PATH}/../tools/getcoins_from_gratitude_box.sh) + 3 )) | xargs) ## CREATE ASTRONAUTE TW ON CURRENT ASTROPORT ( echo VISA.new.sh "${PPASS}" "${NPASS}" "${EMAIL}" "UPlanet" "${VAL}" "${LAT}" "${LON}" ##### (☉_☉ ) ####### ${MY_PATH}/../RUNTIME/VISA.new.sh "${PPASS}" "${NPASS}" "${EMAIL}" "UPlanet" "${VAL}" "${LAT}" "${LON}" >> ~/.zen/tmp/email.${EMAIL}.${MOATS}.txt end=`date +%s` echo "(TW REGISTRATION) Operation time was "`expr $end - $start` seconds. ) & ######################################## ## Calculating TW IPNS ADDRESS TWADD=$(${MY_PATH}/../tools/keygen -t ipfs "${PPASS}" "${NPASS}") IMGTW=$(${MY_PATH}/../API/AMZQR.sh '0' "${myIPFS}/ipns/${TWADD}" 'et' 'TV' | tail -n 1) ## HTTP nc ON PORT RESPONSE echo "$HTTPCORS [Astroport] $LAT $LON + ${EMAIL}

UPlanet Registration

${EMAIL} (⌐■_■)

Check your mailbox ! Relevez votre boite mail !

TW5

---
( ⚆_⚆) TW5 MOBILE APP

CONSOLE
$(cat ~/.zen/tmp/email.${EMAIL}.${MOATS}.txt 2>/dev/null)
(☉_☉ ) use above credentials... utilisez les identiants ci-dessus


${EMAIL} REGISTERED on UPlanet UMAP($LAT/$LON) : ${MOATS} : $(date) " > ~/.zen/tmp/${MOATS}/http.rep ( cat ~/.zen/tmp/${MOATS}/http.rep | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 end=`date +%s` echo "(UPLANET) Operation time was "`expr $end - $start` seconds. ) & exit 0