2023-11-20 22:03:23 +01:00
#!/bin/bash
########################################################################
2024-04-22 19:45:26 +02:00
# Version: 1.0
2023-11-20 22:03:23 +01:00
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
########################################################################
# PAD COCODING : https://pad.p2p.legal/s/G1PalPay
2023-11-23 12:31:25 +01:00
# This script monitors G1 Blockchain
2023-11-20 22:03:23 +01:00
########################################################################
2024-03-24 08:22:11 +01:00
# TODO : CHECK RX coming from UPlanet Wallet
## meaning an initial 3.1G1 from a ZenStation admin wallet
## if not relay payment to ZenStation admin
########################################################################
2023-11-20 22:03:23 +01:00
MY_PATH = " `dirname \" $0 \"` " # relative
MY_PATH = " `( cd \" $MY_PATH \" && pwd )` " # absolutized and normalized
ME = " ${ 0 ##*/ } "
. " ${ MY_PATH } /../tools/my.sh "
2024-02-14 18:51:39 +01:00
CESIUM = ${ myCESIUM }
GCHANGE = ${ myGCHANGE }
2023-11-20 22:03:23 +01:00
2024-04-01 02:36:46 +02:00
echo " $ME RUNNING (•‿‿•) "
2023-11-20 22:03:23 +01:00
########################################################################
2024-02-14 18:51:39 +01:00
# PALPAY SERVICE : MONITOR INCOMING TX & NEW TIDDLERS
2023-11-20 22:03:23 +01:00
########################################################################
########################################################################
2024-02-14 18:51:39 +01:00
INDEX = " $1 " ## TW file
2023-11-20 22:03:23 +01:00
[ [ ! ${ 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
2024-02-14 18:51:39 +01:00
PLAYER = " $2 " ## PLAYER
2023-11-20 22:03:23 +01:00
[ [ ! ${ PLAYER } ] ] && PLAYER = " $( cat ~/.zen/game/players/.current/.player 2>/dev/null) "
[ [ ! ${ PLAYER } ] ] && echo "ERROR - Please provide PLAYER" && exit 1
2024-02-14 18:51:39 +01:00
ASTRONAUTENS = $( ipfs key list -l | grep -w ${ PLAYER } | cut -d ' ' -f1) ## TW /ipns/
2023-11-20 22:03:23 +01:00
[ [ ! ${ ASTRONAUTENS } ] ] && echo " ERROR - Clef IPNS ${ PLAYER } introuvable! " && exit 1
2024-02-14 18:51:39 +01:00
G1PUB = $( cat ~/.zen/game/players/${ PLAYER } /.g1pub) ## PLAYER WALLET
2023-11-20 22:03:23 +01:00
[ [ ! $G1PUB ] ] && echo " ERROR - G1PUB ${ PLAYER } VIDE " && exit 1
# Extract tag=tube from TW
MOATS = " $3 "
[ [ ! ${ MOATS } ] ] && MOATS = $( date -u +"%Y%m%d%H%M%S%4N" )
###################################################################
## CREATE APP NODE PLAYER PUBLICATION DIRECTORY
###################################################################
mkdir -p $HOME /.zen/game/players/${ PLAYER } /G1PalPay/
mkdir -p $HOME /.zen/tmp/${ MOATS }
2024-04-01 02:36:46 +02:00
echo " =====(•‿‿•)====== ( ◕‿◕) (◕‿◕ ) =======(•‿‿•)======= ${ PLAYER }
2024-02-14 19:00:02 +01:00
${ INDEX } "
2024-05-03 12:37:42 +02:00
echo "(✜‿‿✜) G1PalPay : CHECK LAST 30 TX comment"
2023-11-20 22:03:23 +01:00
2024-05-03 12:37:42 +02:00
# CHECK LAST 30 INCOMING PAYMENTS
2023-11-20 22:03:23 +01:00
~/.zen/Astroport.ONE/tools/timeout.sh -t 12 \
2024-05-03 12:37:42 +02:00
${ MY_PATH } /../tools/jaklis/jaklis.py -k ~/.zen/game/players/${ PLAYER } /secret.dunikey history -n 30 -j \
> $HOME /.zen/game/players/${ PLAYER } /G1PalPay/${ PLAYER } .duniter.history.json
2023-11-20 22:03:23 +01:00
2024-01-03 21:29:37 +01:00
[ [ ! -s $HOME /.zen/game/players/${ PLAYER } /G1PalPay/${ PLAYER } .duniter.history.json ] ] \
2024-04-22 19:17:32 +02:00
&& echo "NO PAYMENT HISTORY.........................."
2023-11-23 12:31:25 +01:00
##############################
2024-05-09 18:05:21 +02:00
## CONTROL WALLET
########################################################################################
if [ [ ${ UPLANETNAME } != "" ] ] ; then
echo "UPLANET ORIGIN CONTROL"
while read LINE; do
echo " ${ LINE } "
JSON = ${ LINE }
TXIDATE = $( echo $JSON | jq -r .date)
TXIPUBKEY = $( echo $JSON | jq -r .pubkey)
TXIAMOUNT = $( echo $JSON | jq -r .amount)
COMMENT = $( echo $JSON | jq -r .comment)
lastTXdate = $( cat ~/.zen/game/players/${ PLAYER } /.uplanet.check)
[ [ -z lastTXdate ] ] && lastTXdate = 0
[ [ $( cat ~/.zen/game/players/${ PLAYER } /.uplanet.check) -ge $TXIDATE ] ] \
&& continue
[ [ $( echo " $TXIAMOUNT < 0 " | bc) -eq 1 ] ] \
&& echo " $TXIDATE " > ~/.zen/game/players/${ PLAYER } /.uplanet.check \
&& continue
echo "# CHECK FOR PRIMAL REGULAR TX in INCOMING PAYMENTS"
# silkaj money history DsEx1pS33vzYZg4MroyBV9hCw98j1gtHEhwiZ5tK7ech | tail -n 3 | head -n 1
# │ 2017-11-25 │ 5nk2qdh1…:GWD │ 200 │ 18.332 │ │
line = $( silkaj money history $TXIPUBKEY | tail -n 3 | head -n 1)
pub8 = $( echo $line | awk -F'│' '{gsub(/[[:space:]]*/, "", $3); split($3, a, ":"); print substr(a[1], 1, 8)}' )
# pub8=$(echo $line | cut -d '│' -f 3 | cut -c 1-8)
# PUB8= UPLANET WALLET
done < $HOME /.zen/game/players/${ PLAYER } /G1PalPay/${ PLAYER } .duniter.history.json
fi
2023-11-23 12:31:25 +01:00
##########################################################
2023-11-20 22:03:23 +01:00
############# CHECK FOR N1COMMANDs IN PAYMENT COMMENT
#################################################################
2024-03-23 01:27:49 +01:00
# LOG / cat $HOME/.zen/game/players/${PLAYER}/G1PalPay/${PLAYER}.duniter.history.json | jq -rc .[]
2024-04-01 02:36:46 +02:00
## TREAT ANY COMMENT STARTING WITH N1: exemple : N1Kodi.sh
2024-02-14 19:00:02 +01:00
## EXTRACT /ASTROBOT/N1ProgramNames
2024-02-14 18:51:39 +01:00
ls ${ MY_PATH } /../ASTROBOT/ | grep "N1" | cut -d "." -f 1 > ~/.zen/tmp/${ MOATS } /N1PROG
while read prog; do
2024-04-01 02:36:46 +02:00
echo " # SCAN FOR N1 COMMAND : $prog "
2024-02-14 18:51:39 +01:00
cat $HOME /.zen/game/players/${ PLAYER } /G1PalPay/${ PLAYER } .duniter.history.json | jq -rc .[ ] | grep " $prog " >> ~/.zen/tmp/${ MOATS } /myN1.json
done < ~/.zen/tmp/${ MOATS } /N1PROG
# got N1 incoming TX
2023-11-20 22:03:23 +01:00
while read NLINE; do
## COMMENT FORMAT = N1$CMD:$TH:$TRAIL
2024-01-03 21:29:37 +01:00
TXIDATE = $( echo ${ NLINE } | jq -r .date)
TXIPUBKEY = $( echo ${ NLINE } | jq -r .pubkey)
2024-05-26 00:52:17 +02:00
TXIAMOUNT = $( echo $NLINE | jq -r .amount)
2023-11-20 22:03:23 +01:00
COMMENT = $( echo ${ NLINE } | jq -r .comment)
CMD = $( echo ${ COMMENT } | cut -d ':' -f 1 | cut -c -12 ) # Maximum 12 characters CMD
2024-02-14 18:51:39 +01:00
# Verify last recorded acting date (avoid running twice)
[ [ $( cat ~/.zen/game/players/${ PLAYER } /.ndate) -ge $TXIDATE ] ] \
&& echo " $CMD $TXIDATE from $TXIPUBKEY ALREADY TREATED - continue " \
&& continue
2023-11-20 22:03:23 +01:00
TH = $( echo ${ COMMENT } | cut -d ':' -f 2)
TRAIL = $( echo ${ COMMENT } | cut -d ':' -f 3-)
2023-11-20 22:31:11 +01:00
if [ [ -s ${ MY_PATH } /../ASTROBOT/${ CMD } .sh ] ] ; then
2023-11-20 22:03:23 +01:00
2024-01-03 21:29:37 +01:00
echo " RECEIVED CMD= ${ CMD } from ${ TXIPUBKEY } "
2024-05-26 00:52:17 +02:00
${ MY_PATH } /../ASTROBOT/${ CMD } .sh ${ INDEX } ${ PLAYER } ${ MOATS } ${ TXIPUBKEY } ${ TH } ${ TRAIL } ${ TXIAMOUNT }
2023-11-20 22:03:23 +01:00
## WELL DONE .
2024-05-26 00:52:17 +02:00
[ [ $? = = 0 ] ] \
&& echo " ${ CMD } DONE " \
&& echo " $TXIDATE " > ~/.zen/game/players/${ PLAYER } /.ndate ## MEMORIZE LAST TXIDATE
2023-11-20 22:03:23 +01:00
else
echo " NOT A N1 COMMAND ${ COMMENT } "
fi
done < ~/.zen/tmp/${ MOATS } /myN1.json
2024-04-16 04:14:17 +02:00
########################################################################################
2024-04-01 02:36:46 +02:00
echo "# CHECK FOR EMAILs IN PAYMENT COMMENT"
2024-01-03 21:29:37 +01:00
## DEBUG ## cat $HOME/.zen/game/players/${PLAYER}/G1PalPay/${PLAYER}.duniter.history.json | jq -r
2023-11-20 22:03:23 +01:00
#################################################################
2024-05-03 12:37:42 +02:00
cat $HOME /.zen/game/players/${ PLAYER } /G1PalPay/${ PLAYER } .duniter.history.json | jq -rc .[ ] | grep '@' \
> ~/.zen/tmp/${ MOATS } /myPalPay.json
2023-11-20 22:03:23 +01:00
# IF COMMENT CONTAINS EMAIL ADDRESSES
2024-04-01 02:36:46 +02:00
# SPREAD & TRANSFER AMOUNT TO NEXT (REMOVING IT FROM LIST)...
## Other G1PalPay will continue the transmission...
2023-11-20 22:03:23 +01:00
########################################################################
## GET @ in JSON INLINE
while read LINE; do
echo " ${ LINE } "
JSON = ${ LINE }
2024-01-03 21:29:37 +01:00
TXIDATE = $( echo $JSON | jq -r .date)
TXIPUBKEY = $( echo $JSON | jq -r .pubkey)
TXIAMOUNT = $( echo $JSON | jq -r .amount)
TXIAMOUNTUD = $( echo $JSON | jq -r .amountUD)
2023-11-20 22:03:23 +01:00
COMMENT = $( echo $JSON | jq -r .comment)
2024-05-03 15:05:37 +02:00
lastTXdate = $( cat ~/.zen/game/players/${ PLAYER } /.atdate)
[ [ -z lastTXdate ] ] && lastTXdate = 0
2024-02-14 18:51:39 +01:00
[ [ $( cat ~/.zen/game/players/${ PLAYER } /.atdate) -ge $TXIDATE ] ] \
&& echo " PalPay $TXIDATE from $TXIPUBKEY ALREADY TREATED - continue " \
&& continue
2023-11-20 22:03:23 +01:00
## GET EMAILS FROM COMMENT
2024-01-03 21:29:37 +01:00
TXIMAILS = ( $( echo " $COMMENT " | grep -E -o "\b[a-zA-Z0-9.%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b" ) )
2023-11-20 22:03:23 +01:00
2024-05-03 15:05:37 +02:00
[ [ $( echo " $TXIAMOUNT < 0 " | bc) -eq 1 ] ] \
2024-05-03 15:39:25 +02:00
&& echo " TX-OUT :: ${ LINE } " \
2024-03-15 23:03:51 +01:00
&& echo " $TXIDATE " > ~/.zen/game/players/${ PLAYER } /.atdate \
&& continue
2023-11-20 22:03:23 +01:00
## DIVIDE INCOMING AMOUNT TO SHARE
2024-01-03 21:29:37 +01:00
echo " N= ${# TXIMAILS [@] } "
N = ${# TXIMAILS [@] }
2024-04-01 02:36:46 +02:00
2024-03-15 22:32:13 +01:00
SHAREE = $( echo " scale=2; $TXIAMOUNT / $N " | bc)
SHARE = $( makecoord ${ SHAREE } )
2024-02-14 18:51:39 +01:00
## SHARE is received AMOUT divided by numbers of EMAILS in comment
2024-04-01 02:36:46 +02:00
echo " % ${# TXIMAILS [@] } % $SHARE % $TXIDATE $TXIPUBKEY $TXIAMOUNT [ $TXIAMOUNTUD ] $TXIMAILS "
2023-11-20 22:03:23 +01:00
2024-02-14 18:51:39 +01:00
# let's loop over TXIMAILS
2024-01-03 21:29:37 +01:00
for EMAIL in " ${ TXIMAILS [@] } " ; do
2023-11-20 22:03:23 +01:00
2024-03-15 22:32:13 +01:00
[ [ ${ EMAIL } = = $PLAYER ] ] \
&& echo "ME MYSELF" \
&& echo " $TXIDATE " > ~/.zen/game/players/${ PLAYER } /.atdate \
&& continue
2023-11-20 22:03:23 +01:00
echo " EMAIL : ${ EMAIL } "
2024-04-01 02:36:46 +02:00
2023-11-23 12:31:25 +01:00
ASTROTW = "" STAMP = "" ASTROG1 = "" ASTROIPFS = "" ASTROFEED = "" # RESET VAR
2023-11-20 22:03:23 +01:00
$( $MY_PATH /../tools/search_for_this_email_in_players.sh ${ EMAIL } ) ## export ASTROTW and more
[ [ ${ ASTROTW } = = "" ] ] && ASTROTW = ${ ASTRONAUTENS }
2024-05-03 15:39:25 +02:00
echo " export ASTROPORT= ${ ASTROPORT } ASTROTW= ${ ASTROTW } ASTROG1= ${ ASTROG1 } ASTROMAIL= ${ EMAIL } ASTROFEED= ${ FEEDNS } "
2023-11-20 22:03:23 +01:00
if [ [ ! ${ ASTROTW } ] ] ; then
2024-05-03 15:39:25 +02:00
echo " # PLAYER ${ EMAIL } INCONNU $( date) "
continue
2023-11-20 22:03:23 +01:00
fi
2024-04-22 19:43:11 +02:00
if [ [ ! ${ ASTROG1 } ] ] ; then
echo " <html><head><meta charset='UTF-8'>
<style>
body {
font-family: 'Courier New' , monospace;
}
pre {
white-space: pre-wrap;
}
</style></head><body>" > ~/.zen/tmp/palpay.bro
echo " <h1>BRO.<h1>
2024-05-03 15:46:24 +02:00
$PLAYER wants to send you ${ SHARE } G1...<br>
<br>( ♥‿‿♥) ... on <a href = 'https://qo-op.com' >UPlanet</a>
2024-04-22 19:43:11 +02:00
</body></html>" >> ~/.zen/tmp/palpay.bro
${ MY_PATH } /../tools/mailjet.sh " ${ EMAIL } " ~/.zen/tmp/palpay.bro " BRO. $PLAYER INVITATION "
continue
fi
2023-11-20 22:03:23 +01:00
2024-05-03 15:39:25 +02:00
sleep 3
## SEND G1
echo " PalPay____________
SEND ${ SHARE } G1 to $ASTROMAIL
2023-11-20 22:03:23 +01:00
TW : $ASTROTW
2024-05-03 15:39:25 +02:00
G1 : ${ ASTROG1 } "
2023-11-20 22:03:23 +01:00
2024-05-03 15:39:25 +02:00
echo PAY4SURE.sh " ${ HOME } /.zen/game/players/ ${ PLAYER } /secret.dunikey " " ${ SHARE } " " ${ ASTROG1 } " "UPLANET:PALPAY"
${ MY_PATH } /../tools/PAY4SURE.sh " ${ HOME } /.zen/game/players/ ${ PLAYER } /secret.dunikey " " ${ SHARE } " " ${ ASTROG1 } " "UPLANET:PALPAY"
STAMP = $?
## DONE STAMP IT
[ [ $STAMP = = 0 ] ] \
&& echo "REDISTRIBUTION DONE" \
&& echo " $TXIDATE " > ~/.zen/game/players/${ PLAYER } /.atdate
2023-11-20 22:03:23 +01:00
2024-05-03 15:39:25 +02:00
done
2024-04-01 02:36:46 +02:00
2024-04-16 03:54:56 +02:00
2023-11-20 22:03:23 +01:00
done < ~/.zen/tmp/${ MOATS } /myPalPay.json
2024-04-01 02:36:46 +02:00
echo "====(•‿‿•)======= %%%%% (°▃▃°) %%%%%%% ======(•‿‿•)========"
2023-11-20 22:03:23 +01:00
########################################################################################
## SEARCH FOR TODAY MODIFIED TIDDLERS WITH MULTIPLE EMAILS IN TAG
2024-01-03 20:39:39 +01:00
# This can could happen in case Tiddler is copied OR PLAYER manualy adds an email tag to Tiddler to share with someone...
2023-11-20 22:03:23 +01:00
#################################################################
2024-04-01 22:50:41 +02:00
echo "# EXTRACT [days[-1]] DAYS TIDDLERS"
2023-11-20 22:03:23 +01:00
tiddlywiki --load ${ INDEX } \
2024-03-30 00:32:09 +01:00
--output ~/.zen/tmp/${ MOATS } \
2024-04-01 22:50:41 +02:00
--render '.' " today. ${ PLAYER } .tiddlers.json " 'text/plain' '$:/core/templates/exporters/JsonFile' 'exportFilter' '[days[-1]]'
2023-11-20 22:03:23 +01:00
2024-03-30 00:32:09 +01:00
# cat ~/.zen/tmp/${MOATS}/today.${PLAYER}.tiddlers.json | jq -rc # LOG
2023-11-20 22:03:23 +01:00
2024-04-01 01:27:41 +02:00
## FILTER MY OWN EMAIL
2024-03-30 00:32:09 +01:00
cat ~/.zen/tmp/${ MOATS } /today.${ PLAYER } .tiddlers.json \
2024-02-14 18:51:39 +01:00
| sed " s~ ${ PLAYER } ~ ~g " | jq -rc '.[] | select(.tags | contains("@"))' \
> ~/.zen/tmp/${ MOATS } /@tags.json 2>/dev/null ## Get tiddlers with not my email in it
2023-11-20 22:03:23 +01:00
2024-02-14 18:51:39 +01:00
[ [ ! -s ~/.zen/tmp/${ MOATS } /@tags.json ] ] \
2024-04-22 19:17:32 +02:00
&& echo "NO EXTRA @tags.json TIDDLERS TODAY"
2023-11-20 22:03:23 +01:00
# LOG
cat ~/.zen/tmp/${ MOATS } /@tags.json
2024-02-14 18:51:39 +01:00
echo "******************TIDDLERS with new EMAIL in TAGS treatment"
2023-11-20 22:03:23 +01:00
2024-02-14 18:51:39 +01:00
################################
## detect NOT MY EMAIL in TODAY TIDDLERS
################################
2023-11-20 22:03:23 +01:00
while read LINE; do
2024-01-03 20:39:39 +01:00
echo "---------------------------------- Sava PalPé mec"
2023-11-20 22:03:23 +01:00
echo " ${ LINE } "
echo "---------------------------------- PalPAY for Tiddler"
TCREATED = $( echo ${ LINE } | jq -r .created)
TTITLE = $( echo ${ LINE } | jq -r .title)
2024-04-22 19:17:32 +02:00
TTEXT = $( echo ${ LINE } | jq -r '.text | match("/ipfs/[^\"\\s]+") | .string | first' )
2023-11-20 22:03:23 +01:00
TTAGS = $( echo ${ LINE } | jq -r .tags)
2024-01-03 20:39:39 +01:00
2024-04-22 19:17:32 +02:00
## Extract "/ipfs/CID" from Tiddler - to pin TOPIN -
2023-11-24 19:01:00 +01:00
TOPIN = $( echo ${ LINE } | jq -r .ipfs) ## Tiddler produced by "Astroport Desktop"
2024-04-22 19:17:32 +02:00
[ [ ! $( echo ${ TOPIN } | grep '/ipfs' ) ] ] && TOPIN = $( echo ${ LINE } | jq -r ._canonical_uri) ## Tiddler is exported to IPFS
[ [ ! $( echo ${ TOPIN } | grep '/ipfs' ) ] ] && TOPIN = $( echo ${ LINE } | jq -r '.text | match("/ipfs/[^\"\\s]+") | .string | first' ) ## Ket first /ipfs/ link from text field
[ [ ! $( echo ${ TOPIN } | grep '/ipfs' ) ] ] && echo " NOT COMPATIBLE ${ TOPIN } " && TOPIN = ""
2023-11-20 22:03:23 +01:00
echo " $TTITLE "
2024-04-22 19:17:32 +02:00
## Count extra emails found
emails = ( $( echo " $TTAGS " | sed " s~ ${ PLAYER } ~ ~g " | grep -E -o "\b[a-zA-Z0-9.%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b" ) )
2023-11-20 22:03:23 +01:00
nb = ${# emails [@] }
2024-04-06 16:14:19 +02:00
#~ zen=$(echo "scale=2; $nb / 10" | bc) ## / divide by 10 = 1 ZEN each
2023-11-20 22:03:23 +01:00
## Get first zmail
ZMAIL = " ${ emails } "
2024-04-01 02:36:46 +02:00
MSG = " SEND + $nb JUNE TO BROs : ${ emails [@] } "
2023-11-20 22:03:23 +01:00
echo $MSG
ASTROTW = "" STAMP = "" ASTROG1 = "" ASTROIPFS = "" ASTROFEED = ""
2023-11-23 12:31:25 +01:00
#### SEARCH FOR PALPAY ACOUNTS : USING PALPAY RELAY - COULD BE DONE BY A LOOP ?? §§§
2023-11-20 22:03:23 +01:00
$( $MY_PATH /../tools/search_for_this_email_in_players.sh ${ ZMAIL } ) ## export ASTROTW and more
echo " export ASTROPORT= ${ ASTROPORT } ASTROTW= ${ ASTROTW } ASTROG1= ${ ASTROG1 } ASTROMAIL= ${ EMAIL } ASTROFEED= ${ FEEDNS } "
[ [ ${ ASTROTW } = = "" ] ] && ASTROTW = ${ ASTRONAUTENS }
2024-04-22 19:17:32 +02:00
echo " TOPIN= ${ TOPIN } "
2024-04-01 02:36:46 +02:00
if [ [ ${ TOPIN } && ${ ASTROG1 } && ${ ASTROG1 } != ${ G1PUB } ] ] ; then
2024-04-01 01:27:41 +02:00
##############################
### GET PAID & GET PINNED !!
##############################
2024-04-01 02:36:46 +02:00
${ MY_PATH } /../tools/PAY4SURE.sh " ${ HOME } /.zen/game/players/ ${ PLAYER } /secret.dunikey " " ${ nb } " " ${ ASTROG1 } " " ${ emails [@] } /ipfs/ ${ TOPIN } "
2023-12-30 02:37:54 +01:00
2024-04-22 19:43:11 +02:00
echo " <html><head><meta charset='UTF-8'>
<style>
body {
font-family: 'Courier New' , monospace;
}
pre {
white-space: pre-wrap;
}
</style></head><body><h1>BRO ${ PLAYER } </h1> : $MSG " > ~/.zen/tmp/ ${ MOATS } /g1message
2023-11-23 12:31:25 +01:00
## PINNING IPFS MEDIA - PROOF OF COPY SYSTEM -
2023-12-30 02:37:54 +01:00
[ [ ! -z $TOPIN ] ] \
&& ipfs pin add $TOPIN \
2024-08-25 14:21:49 +02:00
&& echo " <br> <a href=' ${ myIPFSGW } ' ${ ASTROTW } # ${ TTITLE } > ${ TTITLE } </a>
2024-04-22 19:43:11 +02:00
<br>( ${ emails [@] } ) <br>
<h2>PIN: <a href = '${myIPFSGW}' $TOPIN >$TOPIN </a></h2>( ☼‿‿☼) " >> ~/.zen/tmp/ ${ MOATS } /g1message
2024-01-04 00:11:50 +01:00
## lazy mode... NOT FINISHING HTML TAGGING... browser shoud display html page ;)
2023-11-23 12:31:25 +01:00
2024-04-22 19:43:11 +02:00
${ MY_PATH } /../tools/mailjet.sh " ${ PLAYER } " ~/.zen/tmp/${ MOATS } /g1message " BRO. ${ ZMAIL } TW5 PIN "
2023-11-20 22:03:23 +01:00
else
2024-04-22 19:43:11 +02:00
## ${ZMAIL} NOT A PLAYER YET
2024-01-03 20:39:39 +01:00
## SEND MESSAGE TO INFORM ${ZMAIL} OF THIS EXISTING TIDDLER
2024-04-22 19:43:11 +02:00
echo " <html><head><meta charset='UTF-8'>
<style>
body {
font-family: 'Courier New' , monospace;
}
pre {
white-space: pre-wrap;
}
</style></head><body>
2024-01-03 20:39:39 +01:00
<h1>BRO. </h1>
2024-08-25 14:21:49 +02:00
<br> <a href = '${myIPFSGW}' ${ ASTROTW } #${TTITLE}>${TTITLE}</a>
2024-04-22 19:43:11 +02:00
<br>( ${ emails [@] } ) <br>
2024-01-04 00:11:50 +01:00
<br><b>${ TTITLE } </b><br>( ✜‿‿✜)
2024-04-22 19:43:11 +02:00
... Join <a href = 'https://qo-op.com' >UPlanet</a>
2024-01-03 20:39:39 +01:00
</body></html>" > ~/.zen/tmp/palpay.bro
2024-04-22 19:43:11 +02:00
${ MY_PATH } /../tools/mailjet.sh " ${ ZMAIL } " ~/.zen/tmp/palpay.bro " BRO. ${ PLAYER } TW5 link "
2023-11-20 22:03:23 +01:00
fi
done < ~/.zen/tmp/${ MOATS } /@tags.json
2024-04-01 02:36:46 +02:00
echo "=====(•‿‿•)====== ( ◕‿◕) (◕‿◕ ) =======(•‿‿•)======="
2023-11-20 22:03:23 +01:00
2024-05-03 12:37:42 +02:00
# rm -Rf $HOME/.zen/tmp/${MOATS}
ls $HOME /.zen/tmp/${ MOATS }
2023-11-20 22:03:23 +01:00
exit 0