diff --git a/RUNTIME/RSS2UPlanetSECTORTW.sh b/RUNTIME/RSS2UPlanetSECTORTW.sh index 74a0a004..3feac280 100755 --- a/RUNTIME/RSS2UPlanetSECTORTW.sh +++ b/RUNTIME/RSS2UPlanetSECTORTW.sh @@ -89,7 +89,7 @@ while read title; do ## SAME TIDDLER echo "TIDDLER WITH TITLE $title and more than 1 signature ALREADY EXISTS..." - cp -f ~/.zen/tmp/${MOATS}/TMP.json ~/.zen/tmp/${MOATS}/INSIDE.json + cat ~/.zen/tmp/${MOATS}/TMP.json | jq .[] > ~/.zen/tmp/${MOATS}/INSIDE.json cat "${RSS}" | jq -rc ".[] | select(.title == \"$title\")" > ~/.zen/tmp/${MOATS}/NEW.json if [[ ! $(diff ~/.zen/tmp/${MOATS}/NEW.json ~/.zen/tmp/${MOATS}/INSIDE.json) ]]; then @@ -114,7 +114,7 @@ while read title; do NSIGN=${#NEMAILS[@]} echo "New Tiddler $NSIGN signatures : ${NEMAILS[*]}" - ITAGS=$(cat ~/.zen/tmp/${MOATS}/INSIDE.json | jq -r .[].tags) + ITAGS=$(cat ~/.zen/tmp/${MOATS}/INSIDE.json | jq -r .tags) IEMAILS=($(echo "$ITAGS" | grep -E -o "\b[a-zA-Z0-9.%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b")) ISIGN=${#IEMAILS[@]} echo "Inside Tiddler $ISIGN signatures : ${IEMAILS[*]}" @@ -195,9 +195,9 @@ To Refuse
DATENEW=$(cat ~/.zen/tmp/${MOATS}/NEW.json | jq -r .modified) TEXTNEW=$(cat ~/.zen/tmp/${MOATS}/NEW.json | jq -r .text) TAGSNEW=$(cat ~/.zen/tmp/${MOATS}/NEW.json | jq -r .tags) - DATEINSIDE=$(cat ~/.zen/tmp/${MOATS}/INSIDE.json | jq -r .[].modified) - TEXTINSIDE=$(cat ~/.zen/tmp/${MOATS}/INSIDE.json | jq -r .[].text) - TAGSINSIDE=$(cat ~/.zen/tmp/${MOATS}/INSIDE.json | jq -r .[].tags) + DATEINSIDE=$(cat ~/.zen/tmp/${MOATS}/INSIDE.json | jq -r .modified) + TEXTINSIDE=$(cat ~/.zen/tmp/${MOATS}/INSIDE.json | jq -r .text) + TAGSINSIDE=$(cat ~/.zen/tmp/${MOATS}/INSIDE.json | jq -r .tags) TIDLEREMAILSNEW=($(echo "$TAGSNEW" | grep -E -o "\b[a-zA-Z0-9.%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b")) ## MUST BE SAME IN BOTH TIDLEREMAILSINSIDE=($(echo "$TAGSINSIDE" | grep -E -o "\b[a-zA-Z0-9.%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b")) ## MUST BE SAME IN BOTH diff --git a/RUNTIME/SECTOR.refresh.sh b/RUNTIME/SECTOR.refresh.sh index 81124107..5251ed0a 100755 --- a/RUNTIME/SECTOR.refresh.sh +++ b/RUNTIME/SECTOR.refresh.sh @@ -67,18 +67,18 @@ for SECTOR in ${SECTORS[@]}; do SLON=$(echo ${SECTOR} | cut -d '_' -f 3) ############################################################## - G1PUB=$(${MY_PATH}/../tools/keygen -t duniter "${UPLANETNAME}${SECTOR}" "${UPLANETNAME}${SECTOR}") + ${MY_PATH}/../tools/keygen -t ipfs -o ~/.zen/tmp/${MOATS}/${SECTOR}.priv "${UPLANETNAME}${SECTOR}" "${UPLANETNAME}${SECTOR}" + G1PUB=$(cat ~/.zen/tmp/${MOATS}/${SECTOR}.priv | grep 'pub:' | cut -d ' ' -f 2) [[ ! ${G1PUB} ]] && echo "ERROR generating SECTOR WALLET" && exit 1 + COINS=$($MY_PATH/../tools/COINScheck.sh ${G1PUB} | tail -n 1) ZEN=$(echo "($COINS - 1) * 10" | bc | cut -d '.' -f 1) - echo "SECTOR : ${SECTOR} (${COINS} G1 <=> ${ZEN} Z) : ${G1PUB}" - ${MY_PATH}/../tools/keygen -t ipfs -o ~/.zen/tmp/${MOATS}/${SECTOR}.priv "${UPLANETNAME}${SECTOR}" "${UPLANETNAME}${SECTOR}" ipfs key rm ${G1PUB} > /dev/null 2>&1 ## AVOID ERROR ON IMPORT SECTORNS=$(ipfs key import ${G1PUB} -f pem-pkcs8-cleartext ~/.zen/tmp/${MOATS}/${SECTOR}.priv) - rm ~/.zen/tmp/${MOATS}/${SECTOR}.priv - echo "ORIGIN : ${myIPFS}/ipns/${SECTORNS}/" + echo "___ ORIGIN ___ ${myIPFS}/ipns/${SECTORNS}/" + echo "SECTOR : ${SECTOR} (${COINS} G1 <=> ${ZEN} ZEN) : ${G1PUB}" ###################### SPATIO TEMPORAL KEYS ## YESTERDATE ############### @@ -118,7 +118,7 @@ for SECTOR in ${SECTORS[@]}; do ZMOATS=$(cat ~/.zen/tmp/${MOATS}/${SECTOR}/CHAIN/_moats 2>/dev/null) [[ ${ZCHAIN} && ${ZMOATS} ]] \ && cp ~/.zen/tmp/${MOATS}/${SECTOR}/CHAIN/_chain ~/.zen/tmp/${MOATS}/${SECTOR}/CHAIN/_chain.${ZMOATS} \ - && echo "UPDATING MOATS" + && echo "UPDATING MOATS ${MOATS}" MOATS_SECONDS=$(${MY_PATH}/../tools/MOATS2seconds.sh ${MOATS}) ZMOATS_SECONDS=$(${MY_PATH}/../tools/MOATS2seconds.sh ${ZMOATS}) @@ -151,9 +151,12 @@ for SECTOR in ${SECTORS[@]}; do && echo "More than 26H update" \ && ACTINGNODE=${STRAPS[0]} + echo "* ACTINGNODE=${ACTINGNODE}" + if [[ "${ACTINGNODE}" != "${IPFSNODEID}" ]]; then - echo ">> ACTINGNODE=${ACTINGNODE} is not ME - CONTINUE -" - ipfs key rm ${TODATE}${G1PUB} ${YESYERDATE}${G1PUB} ${G1PUB} + echo ">> ACTINGNODE NOT ME - CONTINUE -" + ipfs key rm "${TODATE}${G1PUB}" "${YESYERDATE}${G1PUB}" "${G1PUB}" + echo "------8<-------------8<------------------8<-----------------8<-----------------8<" continue fi ### NEXT REFRESHER SHUFFLE @@ -330,7 +333,6 @@ for SECTOR in ${SECTORS[@]}; do echo "---ZZZ-- SECTOR 2 REGION ZEN CHAINING ---ZZZ------ZZZ----" ${MY_PATH}/../tools/keygen -t duniter -o ~/.zen/tmp/${MOATS}/${SECTOR}.dunikey "${UPLANETNAME}${SECTOR}" "${UPLANETNAME}${SECTOR}" ${MY_PATH}/../tools/PAY4SURE.sh ~/.zen/tmp/${MOATS}/${SECTOR}.dunikey "0.1" "${REGIONG1PUB}" "${INTERCOM}" - rm ~/.zen/tmp/${MOATS}/${SECTOR}.dunikey fi ############################################################## ## PUBLISHING ${SECTOR} @@ -341,6 +343,7 @@ for SECTOR in ${SECTORS[@]}; do ipfs key rm ${YESTERDATE}${G1PUB} ${G1PUB} > /dev/null 2>&1 ###################################################### + rm ~/.zen/tmp/${MOATS}/${SECTOR}.dunikey ################################################### ## EXTRACT SECTOR LAST WEEK TIDDLERS TO IPFSNODEID CACHE diff --git a/RUNTIME/UPLANET.refresh.sh b/RUNTIME/UPLANET.refresh.sh index 852142c2..b98546dd 100755 --- a/RUNTIME/UPLANET.refresh.sh +++ b/RUNTIME/UPLANET.refresh.sh @@ -11,10 +11,18 @@ MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized ## SEEK FOR UPLANET KEYS # GET & UPDATE IPNS ############################################ -echo -echo echo "############################################" -echo "## RUNNING UPLANET.refresh" +echo " + _________________________ +< RUNNING UPLANET.refresh > + ------------------------- + \ ^__^ + \ (oo)\_______ + (__)\ )\/\ + ||----w | + || || + +" echo "############################################" echo "############################################" [[ ${IPFSNODEID} == "" ]] && echo "IPFSNODEID is empty - EXIT -" && exit 1 @@ -155,8 +163,9 @@ for UMAP in ${unique_combined[@]}; do echo "* ACTINGNODE=${ACTINGNODE}" if [[ "${ACTINGNODE}" != "${IPFSNODEID}" ]]; then - echo ">> ACTINGNODE=${ACTINGNODE} is not ME - CONTINUE -" + echo ">> ACTINGNODE NOT ME - CONTINUE -" ipfs key rm "${TODATE}${G1PUB}" "${YESTERDATE}${G1PUB}" "${G1PUB}" + echo "------8<-------------8<------------------8<-----------------8<-----------------8<" continue fi ######################################## @@ -422,7 +431,6 @@ for UMAP in ${unique_combined[@]}; do if [[ ${ZEN} -gt 11 ]]; then echo "---ZZZ-- UMAP 2 SECTOR ZEN CHAINING ---ZZZ------ZZZ----" ${MY_PATH}/../tools/PAY4SURE.sh ~/.zen/tmp/${MOATS}/${UMAP}.priv "0.1" "${SECTORG1PUB}" "${INTERCOM}" - rm ~/.zen/tmp/${MOATS}/${UMAP}.priv fi ## MICRO LEDGER CHAIN CHANGED or INIT ? @@ -438,6 +446,7 @@ for UMAP in ${unique_combined[@]}; do echo "(UMAP) ${UMAP} ${TODATE} PUBLISH time was "`expr $end - $start` seconds. ipfs key rm "${TODATE}${G1PUB}" "${YESTERDATE}${G1PUB}" "${G1PUB}" ## REMOVE IPNS KEY + rm ~/.zen/tmp/${MOATS}/${UMAP}.priv done diff --git a/RUNTIME/VOEUX.refresh.sh b/RUNTIME/VOEUX.refresh.sh index 02172092..7ef9db3a 100755 --- a/RUNTIME/VOEUX.refresh.sh +++ b/RUNTIME/VOEUX.refresh.sh @@ -317,7 +317,7 @@ if [[ ${wishnumbers} -gt 0 ]]; then to ${SECTOR} WALLET ${SECTORG1PUB}" echo "************************************************************" MYWISHFLUX=$(ipfs add -qHwr ~/.zen/tmp/${IPFSNODEID}/WISH/${PLAYER}/g1voeu/* | tail -n 1) # ADDING JSONS TO IPFS - ${MY_PATH}/../tools/PAY4SURE.sh "${HOME}/.zen/game/players/${PLAYER}/secret.dunikey" "${G1AMOUNT}" "${SECTORG1PUB}" "UPLANET:WISHES:/ipfs/${MYWISHFLUX}" + ${MY_PATH}/../tools/PAY4SURE.sh "${HOME}/.zen/game/players/${PLAYER}/secret.dunikey" "${G1AMOUNT}" "${SECTORG1PUB}" "UPLANET:TWISH:$TODATE:/ipfs/${MYWISHFLUX}" fi ################################################ ################################################ GRATITUDE SENT TO SECTOR diff --git a/tools/PAY4SURE.sh b/tools/PAY4SURE.sh index 63885dc1..f3b1ae10 100755 --- a/tools/PAY4SURE.sh +++ b/tools/PAY4SURE.sh @@ -29,24 +29,29 @@ COMMENT=${COMMENT}" && MOATS=$(date -u +"%Y%m%d%H%M%S%4N") \ || echo "OLD PAYMENT FAILURE = NEW TRY $MOATS" -## CHECKING PAYOUT WALLET (dunikey file) +## CHECKING ISSUER WALLET (dunikey file) [[ -s ${KEYFILE} ]] \ && ISSUERPUB=$(cat ${KEYFILE} | grep "pub:" | cut -d ' ' -f 2) \ - || { echo "ERROR : MISSING SECRET DUNIKEY FILE" && exit 1; } + || { echo "ERROR : MISSING SECRET DUNIKEY FILE - EXIT -" && exit 1; } + +[[ -z ${ISSUERPUB} ]] && echo "CANNOT EXTRACT ISSUERPUB FROM DUNIKEY - EXIT -" && exit 1 COINS=$($MY_PATH/COINScheck.sh ${ISSUERPUB} | tail -n 1) -[[ -z $COINS ]] && echo "ERROR : ${ISSUERPUB}=$COINS EMPTY WALLET" && exit 1 +[[ -z $COINS ]] && echo "ERROR : ${ISSUERPUB}=$COINS EMPTY WALLET - EXIT -" && exit 1 + ###### TEST INPUT VALUES [[ $AMOUNT == "ALL" ]] && AMOUNT=$COINS ## ALL MEAN EMPTY ORIGIN WALLET -[[ -z $AMOUNT ]] && echo "ERROR : ${ISSUERPUB}=$COINS MISSING AMOUNT" && exit 1 -[[ $AMOUNT =~ ^[0-9]+([.][0-9]+)?$ ]] && echo "Valid AMOUNT=${AMOUNT}" || { echo "ERROR NOT a valid AMOUNT : ${AMOUNT}" && exit 1; } -[[ $(echo "$COINS < $AMOUNT" | bc -l) -eq 1 ]] && echo "ERROR : SOURCE WALLET IS MISSING COINS !!! $AMOUNT > $COINS" && exit 1 -[[ -z $G1PUB ]] && echo "ERROR : ${ISSUERPUB}=$COINS ($AMOUNT) MISSING DESTINATION" && exit 1 +[[ -z $AMOUNT ]] && echo "ERROR : ${ISSUERPUB}=$COINS MISSING AMOUNT - EXIT -" && exit 1 +[[ $AMOUNT =~ ^[0-9]+([.][0-9]+)?$ ]] \ + && echo "Valid AMOUNT=${AMOUNT}" \ + || { echo "ERROR NOT a valid AMOUNT : ${AMOUNT} - EXIT -" && exit 1; } +[[ $(echo "$COINS < $AMOUNT" | bc -l) -eq 1 ]] \ + && echo "ERROR : SOURCE WALLET IS MISSING COINS !!! $AMOUNT > $COINS - EXIT -" && exit 1 +[[ -z $G1PUB ]] && echo "ERROR : ${ISSUERPUB}=$COINS ($AMOUNT) MISSING DESTINATION - EXIT -" && exit 1 +echo echo "PAYMENT PROCESSOR ID ${MOATS}" -echo "KEYFILE: $HOME/.zen/game/pending/${ISSUERPUB}/" echo "${ISSUERPUB} : (${AMOUNT}) -> ${G1PUB}" -echo "COMMENT : ${COMMENT}" [[ -z $COMMENT ]] && COMMENT="ZEN:${MOATS}" @@ -68,6 +73,7 @@ rm -f ${PENDINGDIR}/${MOATS}.result.html ################################################ # MAKE PAYMENT +echo ${MY_PATH}/jaklis/jaklis.py -k ${PENDINGDIR}/${MOATS}.key pay -a ${AMOUNT} -p ${G1PUB} -c "${COMMENT}" -m 2>&1> ${PENDINGDIR}/${MOATS}.result.html CHK1=$(cat ${PENDINGDIR}/${MOATS}.result.html | head -n 1 ) CHK2=$(cat ${PENDINGDIR}/${MOATS}.result.html | head -n 2 ) @@ -97,14 +103,16 @@ if [[ $? == 0 || $(echo "${CHK2}" | grep 'succès') || $(echo "${CHK1}" | grep ZENDES=$(echo "$DES * 10" | bc | cut -d '.' -f 1) ##### MONITORING ######### - echo "

ZEN OPERATION

-

${ISSUERPUB} -
${ZENCUR} - ${ZENAMOUNT}

-

${G1PUB} -
${ZENDES} + ${ZENAMOUNT}

-

OK

" > ${PENDINGDIR}/${MOATS}.result.html + echo "

${ZENAMOUNT} ZEN OPERATION

+ ${COMMENT} +

${ISSUERPUB} + (SCAN) +
//--->> ${G1PUB} + (SCAN) +

+ " > ${PENDINGDIR}/${MOATS}.result.html - $MY_PATH/mailjet.sh "support@qo-op.com" ${PENDINGDIR}/${MOATS}.result.html "${ZENAMOUNT} ZEN : ${ISSUERPUB} > ${G1PUB}" + $MY_PATH/mailjet.sh "support@qo-op.com" ${PENDINGDIR}/${MOATS}.result.html "${ZENAMOUNT} ZEN ${ISSUERPUB}//${COMMENT} TO ${G1PUB}" ## REMOVE IF YOU WANT TO MONITOR "SENT" WINDOW INCERTITUDE rm ${PENDINGDIR}/${MOATS}.key