prevent loop from empty $mediakey
This commit is contained in:
parent
09430a4a5c
commit
9d740d7029
|
@ -27,11 +27,11 @@ IPFSNODEID=$(ipfs --timeout=20s id -f='<id>\n')
|
||||||
G1PUB=$(cat ~/.zen/secret.dunikey | grep 'pub:' | cut -d ' ' -f 2)
|
G1PUB=$(cat ~/.zen/secret.dunikey | grep 'pub:' | cut -d ' ' -f 2)
|
||||||
########################################################################
|
########################################################################
|
||||||
|
|
||||||
echo "## FRIENDS IPFS PINGing"
|
echo "## FRIENDS IPFS PINGing"
|
||||||
for g1pub in $(ls -t ~/.zen/ipfs/.$IPFSNODEID/FRIENDS/); do [[ $g1pub ]] && ipfs ping --timeout=3s -n 3 /ipfs/$(~/.zen/astrXbian/zen/tools/g1_to_ipfs.py $g1pub 2>/dev/null) 2>/dev/null; done
|
for g1pub in $(ls -t ~/.zen/ipfs/.$IPFSNODEID/FRIENDS/); do [[ $g1pub ]] && ipfs ping --timeout=3s -n 3 /ipfs/$(~/.zen/astrXbian/zen/tools/g1_to_ipfs.py $g1pub 2>/dev/null) 2>/dev/null; done
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# ACTIVATE TO CONTROL SWARM STATION SAME CODE VERSION
|
# ACTIVATE TO CONTROL SWARM STATION SAME CODE VERSION
|
||||||
########################################################################
|
########################################################################
|
||||||
## myCODE is a SECURITY about code SIMILARITY
|
## myCODE is a SECURITY about code SIMILARITY
|
||||||
## EACH NODE CAN CHECK IF ANOTHER HAS SAME IPFS CODE HASH
|
## EACH NODE CAN CHECK IF ANOTHER HAS SAME IPFS CODE HASH
|
||||||
|
@ -42,15 +42,15 @@ for g1pub in $(ls -t ~/.zen/ipfs/.$IPFSNODEID/FRIENDS/); do [[ $g1pub ]] && ipfs
|
||||||
# echo "MyCODE = $MyCODE CODE is published
|
# echo "MyCODE = $MyCODE CODE is published
|
||||||
# ipfs ls /ipns/k51qzi5uqu5dk1nt1pfbtgfis4bep8pcip78w30xykhgba7y7wk0xyu8nwci5m"
|
# ipfs ls /ipns/k51qzi5uqu5dk1nt1pfbtgfis4bep8pcip78w30xykhgba7y7wk0xyu8nwci5m"
|
||||||
########################################################################
|
########################################################################
|
||||||
# ACTIVATE TO CONTROL SWARM STATION SAME CODE VERSION
|
# ACTIVATE TO CONTROL SWARM STATION SAME CODE VERSION
|
||||||
########################################################################
|
########################################################################
|
||||||
echo "
|
echo "
|
||||||
_ _ _ _
|
_ _ _ _
|
||||||
/ \ / \ / \ / \
|
/ \ / \ / \ / \
|
||||||
( I | P | N | S )
|
( I | P | N | S )
|
||||||
\_/ \_/ \_/ \_/
|
\_/ \_/ \_/ \_/
|
||||||
|
|
||||||
ZENTAG / MEDIAKEY : IPNS REFRESH
|
ZENTAG / MEDIAKEY : IPNS REFRESH
|
||||||
"
|
"
|
||||||
echo "I am /ipns/$IPFSNODEID controling and refreshing my MEDIAKEY IPNS"
|
echo "I am /ipns/$IPFSNODEID controling and refreshing my MEDIAKEY IPNS"
|
||||||
########################################################################
|
########################################################################
|
||||||
|
@ -65,59 +65,61 @@ count=0
|
||||||
## TAKE CARE OF MY KEY
|
## TAKE CARE OF MY KEY
|
||||||
for mediakey in $(ls ~/.zen/ipfs/.${IPFSNODEID}/KEY/); # Alternative search
|
for mediakey in $(ls ~/.zen/ipfs/.${IPFSNODEID}/KEY/); # Alternative search
|
||||||
do
|
do
|
||||||
|
[[ "${mediakey}" == "" ]] && continue ## prevent empty mediakey
|
||||||
|
IPNSLINK=$(ipfs key list -l | grep ${mediakey} | cut -d ' ' -f 1)
|
||||||
|
[[ "${IPNSLINK}" == "" ]] && continue ## prevent empty IPNSLINK
|
||||||
count=$((count+1)) && echo "$count) "
|
count=$((count+1)) && echo "$count) "
|
||||||
IPNSLINK=$(ipfs key list -l | grep ${mediakey} | cut -d ' ' -f 1)
|
FILE_NAME=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.ipfs.filename)
|
||||||
FILE_NAME=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.ipfs.filename)
|
TITLE=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.title)
|
||||||
TITLE=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.title)
|
|
||||||
|
|
||||||
source=$(echo $mediakey | cut -d '_' -f 1)
|
source=$(echo $mediakey | cut -d '_' -f 1)
|
||||||
|
|
||||||
ANNONCE=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.gchange.ad)
|
ANNONCE=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.gchange.ad)
|
||||||
|
|
||||||
## Use natools to decrypt "/tmp/${mediakey}_filelink.txt
|
## Use natools to decrypt "/tmp/${mediakey}_filelink.txt
|
||||||
[[ -f ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.ipfs.filelink.natools.encrypt ]] && $MY_PATH/tools/natools.py decrypt -f pubsec -k "$HOME/.zen/secret.dunikey" -i "$HOME/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.ipfs.filelink.natools.encrypt" -o "/tmp/${mediakey}_filelink.txt"
|
[[ -f ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.ipfs.filelink.natools.encrypt ]] && $MY_PATH/tools/natools.py decrypt -f pubsec -k "$HOME/.zen/secret.dunikey" -i "$HOME/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.ipfs.filelink.natools.encrypt" -o "/tmp/${mediakey}_filelink.txt"
|
||||||
# file=$(cat /tmp/${mediakey}_filelink.txt | rev | cut -d '/' -f 1 | rev)
|
# file=$(cat /tmp/${mediakey}_filelink.txt | rev | cut -d '/' -f 1 | rev)
|
||||||
|
|
||||||
## TREAT OLD DATA from new_file_in_astroport.sh (LATER can be removed)
|
## TREAT OLD DATA from new_file_in_astroport.sh (LATER can be removed)
|
||||||
if [[ ! -f $HOME/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/MEDIAPUBKEY ]]; then
|
if [[ ! -f $HOME/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/MEDIAPUBKEY ]]; then
|
||||||
mediakeyfile=$($MY_PATH/tools/give_me_keystore_filename.py $mediakey)
|
mediakeyfile=$($MY_PATH/tools/give_me_keystore_filename.py $mediakey)
|
||||||
$MY_PATH/tools/natools.py privkey -f ipfs-keystore -k $HOME/.ipfs/keystore/$mediakeyfile -F pubsec -o /tmp/${mediakey}.dunikey
|
$MY_PATH/tools/natools.py privkey -f ipfs-keystore -k $HOME/.ipfs/keystore/$mediakeyfile -F pubsec -o /tmp/${mediakey}.dunikey
|
||||||
# PubFromDunikey=$(cat /tmp/${mediakey}.dunikey | grep "sec" | cut -d ' ' -f2 | base58 -d | tail -c+33 | base58)
|
# PubFromDunikey=$(cat /tmp/${mediakey}.dunikey | grep "sec" | cut -d ' ' -f2 | base58 -d | tail -c+33 | base58)
|
||||||
PubFromDunikey=$(cat /tmp/${mediakey}.dunikey | grep "pub" | cut -d ' ' -f2)
|
PubFromDunikey=$(cat /tmp/${mediakey}.dunikey | grep "pub" | cut -d ' ' -f2)
|
||||||
echo "$PubFromDunikey" > $HOME/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/MEDIAPUBKEY
|
echo "$PubFromDunikey" > $HOME/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/MEDIAPUBKEY
|
||||||
fi
|
fi
|
||||||
MEDIAPUBKEY=$(cat $HOME/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/MEDIAPUBKEY)
|
MEDIAPUBKEY=$(cat $HOME/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/MEDIAPUBKEY)
|
||||||
echo "MEDIA G1 WALLET = $MEDIAPUBKEY"
|
echo "MEDIA G1 WALLET = $MEDIAPUBKEY"
|
||||||
BALANCE=$(~/.zen/astrXbian/zen/jaklis/jaklis.py balance -p ${MEDIAPUBKEY}) && [[ $BALANCE == null || "$BALANCE" == "" ]] && BALANCE=0
|
BALANCE=$(~/.zen/astrXbian/zen/jaklis/jaklis.py balance -p ${MEDIAPUBKEY}) && [[ $BALANCE == null || "$BALANCE" == "" ]] && BALANCE=0
|
||||||
ZENBALANCE=$(echo "100 * $BALANCE" | bc -l | cut -d '.' -f 1)
|
ZENBALANCE=$(echo "100 * $BALANCE" | bc -l | cut -d '.' -f 1)
|
||||||
|
|
||||||
TUBELINK="https://tube.copylaradio.com$(cat /tmp/${mediakey}_filelink.txt)"
|
TUBELINK="https://tube.copylaradio.com$(cat /tmp/${mediakey}_filelink.txt)"
|
||||||
LOCALTUBELINK="http://127.0.0.1:8181$(cat /tmp/${mediakey}_filelink.txt)"
|
LOCALTUBELINK="http://127.0.0.1:8181$(cat /tmp/${mediakey}_filelink.txt)"
|
||||||
|
|
||||||
### IPNS LINK CAN EVOLVE (REFRESH EVERY 12 H TO MAINTAIN ALIVE IN THE SWARM) # TODO : Use templating
|
### IPNS LINK CAN EVOLVE (REFRESH EVERY 12 H TO MAINTAIN ALIVE IN THE SWARM) # TODO : Use templating
|
||||||
### This index.html is ipns link root, 1st welcome page for MEDIAKEY -> *** Redirect to CONTRACTS processing HERE ***
|
### This index.html is ipns link root, 1st welcome page for MEDIAKEY -> *** Redirect to CONTRACTS processing HERE ***
|
||||||
echo "<!DOCTYPE html>
|
echo "<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>$TITLE in Astroport</title>
|
<title>$TITLE in Astroport</title>
|
||||||
<meta charset=\"UTF-8\">
|
<meta charset=\"UTF-8\">
|
||||||
<meta http-equiv=\"Refresh\" content=\"10;URL=https://tube.copylaradio.com/ipns/$IPNSLINK/${G1PUB}/\">
|
<meta http-equiv=\"Refresh\" content=\"10;URL=https://tube.copylaradio.com/ipns/$IPNSLINK/${G1PUB}/\">
|
||||||
<link rel='stylesheet' href='/crowdbunker.css' type='text/css' />
|
<link rel='stylesheet' href='/crowdbunker.css' type='text/css' />
|
||||||
<link rel='icon' type='image/png' href='/astrocrowdbunker.png' />
|
<link rel='icon' type='image/png' href='/astrocrowdbunker.png' />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<header>
|
<header>
|
||||||
<h5>
|
<h5>
|
||||||
<a href=\"$LOCALTUBELINK\"><span>Accelérez le réseau... Lancez la lecture depuis votre Station Astroport</span></a>!
|
<a href=\"$LOCALTUBELINK\"><span>Accelérez le réseau... Lancez la lecture depuis votre Station Astroport</span></a>!
|
||||||
</h5>
|
</h5>
|
||||||
<h6>
|
<h6>
|
||||||
<a href='https://astroport.com'><span>ASTROPORT</span> × <span> DEMO</span></a>
|
<a href='https://astroport.com'><span>ASTROPORT</span> × <span> DEMO</span></a>
|
||||||
</h6>
|
</h6>
|
||||||
</header>
|
</header>
|
||||||
<main>
|
<main>
|
||||||
<article><h2>$TITLE</h2>
|
<article><h2>$TITLE</h2>
|
||||||
<br>Demonstration streaming video dans 10 secondes ...<br>
|
<br>Demonstration streaming video dans 10 secondes ...<br>
|
||||||
<h1 class='video-title'>Vous essayez <a href='https://copylaradio.com'>astrXbian</a> et son BETA Live TEstNET</h1>
|
<h1 class='video-title'>Vous essayez <a href='https://copylaradio.com'>astrXbian</a> et son BETA Live TEstNET</h1>
|
||||||
</article>
|
</article>
|
||||||
</main>
|
</main>
|
||||||
<center><br>Service Video Club / Datacenter P2P Libre et Légal.<br>
|
<center><br>Service Video Club / Datacenter P2P Libre et Légal.<br>
|
||||||
|
@ -133,45 +135,45 @@ do
|
||||||
# ~/.zen/ipfs/.${IPFSNODEID}/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/index.html
|
# ~/.zen/ipfs/.${IPFSNODEID}/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/index.html
|
||||||
########################################################################
|
########################################################################
|
||||||
|
|
||||||
## Write KEY id (provide verification)
|
## Write KEY id (provide verification)
|
||||||
[[ ! -f ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.id ]] && echo ${mediakey} > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.id
|
[[ ! -f ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.id ]] && echo ${mediakey} > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.id
|
||||||
|
|
||||||
## THIS MAKES FRENCH COPY RIGHT LAW RESPECT
|
## THIS MAKES FRENCH COPY RIGHT LAW RESPECT
|
||||||
## LOCALHOST REDIRECT FOR INTERNAL KODI DEFCON 3 (swarm.key) ASTROPORT STATION MODE
|
## LOCALHOST REDIRECT FOR INTERNAL KODI DEFCON 3 (swarm.key) ASTROPORT STATION MODE
|
||||||
# echo "<meta charset=\"UTF-8\"><meta http-equiv=\"Refresh\" content=\"0;URL=http://127.0.0.1:8181$(cat /tmp/${mediakey}_filelink.txt)\">" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/index.html
|
# echo "<meta charset=\"UTF-8\"><meta http-equiv=\"Refresh\" content=\"0;URL=http://127.0.0.1:8181$(cat /tmp/${mediakey}_filelink.txt)\">" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/index.html
|
||||||
# echo "<meta charset=\"UTF-8\"><meta http-equiv=\"Refresh\" content=\"0;URL=https://tube.copylaradio.com$(cat /tmp/${mediakey}_filelink.txt)\">" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/index.html
|
# echo "<meta charset=\"UTF-8\"><meta http-equiv=\"Refresh\" content=\"0;URL=https://tube.copylaradio.com$(cat /tmp/${mediakey}_filelink.txt)\">" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/index.html
|
||||||
|
|
||||||
## DEMO PERIOD
|
## DEMO PERIOD
|
||||||
## NICE FINAL STREAMING PAGE # TODO ACTIVATE DOWNLOAD FOR AVI or MKV
|
## NICE FINAL STREAMING PAGE # TODO ACTIVATE DOWNLOAD FOR AVI or MKV
|
||||||
FILETYPE="${LOCALTUBELINK##*.}"
|
FILETYPE="${LOCALTUBELINK##*.}"
|
||||||
MIMETYPE="video/$FILETYPE" && HTMLTAG="video"
|
MIMETYPE="video/$FILETYPE" && HTMLTAG="video"
|
||||||
[[ "$FILETYPE" == "avi" ]] && MIMETYPE="video/x-msvideo"
|
[[ "$FILETYPE" == "avi" ]] && MIMETYPE="video/x-msvideo"
|
||||||
[[ "$FILETYPE" == "mkv" ]] && MIMETYPE="video/x-matroska"
|
[[ "$FILETYPE" == "mkv" ]] && MIMETYPE="video/x-matroska"
|
||||||
[[ "$FILETYPE" == "mp3" ]] && MIMETYPE="audio/mpeg" && HTMLTAG="audio"
|
[[ "$FILETYPE" == "mp3" ]] && MIMETYPE="audio/mpeg" && HTMLTAG="audio"
|
||||||
|
|
||||||
echo "<!DOCTYPE html>
|
echo "<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>$TITLE in Astroport</title>
|
<title>$TITLE in Astroport</title>
|
||||||
<meta charset=\"UTF-8\">
|
<meta charset=\"UTF-8\">
|
||||||
<link rel='stylesheet' href='/crowdbunker.css' type='text/css' />
|
<link rel='stylesheet' href='/crowdbunker.css' type='text/css' />
|
||||||
<link rel='icon' type='image/png' href='/astrocrowdbunker.png' />
|
<link rel='icon' type='image/png' href='/astrocrowdbunker.png' />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<header>
|
<header>
|
||||||
<h5>
|
<h5>
|
||||||
<a href=\"https://copylaradio.com\"><span>CopyLaRadio : Retrouvez les %MAKER de Stations Astroport</span></a>
|
<a href=\"https://copylaradio.com\"><span>CopyLaRadio : Retrouvez les %MAKER de Stations Astroport</span></a>
|
||||||
</h5>
|
</h5>
|
||||||
<h6>
|
<h6>
|
||||||
<a href='https://www.gchange.fr/#/app/market/lg?q=astroport'><span>astrXbian</span> × <span> en DEMO sur Gchange</span></a>
|
<a href='https://www.gchange.fr/#/app/market/lg?q=astroport'><span>astrXbian</span> × <span> en DEMO sur Gchange</span></a>
|
||||||
</h6>
|
</h6>
|
||||||
</header>
|
</header>
|
||||||
<main>
|
<main>
|
||||||
<article>
|
<article>
|
||||||
<$HTMLTAG controls>
|
<$HTMLTAG controls>
|
||||||
<source src=\"$TUBELINK\" type=\"$MIMETYPE\">
|
<source src=\"$TUBELINK\" type=\"$MIMETYPE\">
|
||||||
</$HTMLTAG>
|
</$HTMLTAG>
|
||||||
<h1 class='video-title'>$TITLE (lien station <a href=\"$LOCALTUBELINK\">$MIMETYPE)</a></h1>
|
<h1 class='video-title'>$TITLE (lien station <a href=\"$LOCALTUBELINK\">$MIMETYPE)</a></h1>
|
||||||
</article>
|
</article>
|
||||||
</main>
|
</main>
|
||||||
<center><br>Ce media possède un G1 portefeuille avec lequel il paye son hébergement.
|
<center><br>Ce media possède un G1 portefeuille avec lequel il paye son hébergement.
|
||||||
|
@ -183,53 +185,53 @@ do
|
||||||
</body>
|
</body>
|
||||||
</html>" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/index.html
|
</html>" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/index.html
|
||||||
|
|
||||||
if [[ "$source" == "YOUTUBE" ]]
|
if [[ "$source" == "YOUTUBE" ]]
|
||||||
then
|
then
|
||||||
echo "$source"
|
echo "$source"
|
||||||
# mutiTUBE - activate .views.counter
|
# mutiTUBE - activate .views.counter
|
||||||
# echo "<meta http-equiv=\"Refresh\" content=\"0;URL=https://tube.copylaradio.com/ipns/$IPNSLINK/${G1PUB}/go\">" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/index.html
|
# echo "<meta http-equiv=\"Refresh\" content=\"0;URL=https://tube.copylaradio.com/ipns/$IPNSLINK/${G1PUB}/go\">" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/index.html
|
||||||
# TODO go/index.php from nginx proxy acting act as gateway (= Easy Round robin DNS tube.copylaradio.com is dynamic IP swap swarm nodes from node performance...)
|
# TODO go/index.php from nginx proxy acting act as gateway (= Easy Round robin DNS tube.copylaradio.com is dynamic IP swap swarm nodes from node performance...)
|
||||||
fi
|
fi
|
||||||
# ln -s /$HOME/.zen/astrXbian/www /var/www/astrxbian
|
# ln -s /$HOME/.zen/astrXbian/www /var/www/astrxbian
|
||||||
# Testez vos application à même la blockchain en la copiant dans ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/go/
|
# Testez vos application à même la blockchain en la copiant dans ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/go/
|
||||||
# Proposez de l'ajouter au dépot des applications web2.0 dans ../www/
|
# Proposez de l'ajouter au dépot des applications web2.0 dans ../www/
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# EXAMPLE TO ACTIVATE SECURITY : FORCE SIGNATURE VERIFICATION for each sensible file
|
# EXAMPLE TO ACTIVATE SECURITY : FORCE SIGNATURE VERIFICATION for each sensible file
|
||||||
########################################################################
|
########################################################################
|
||||||
echo "~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.views.counter"
|
echo "~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.views.counter"
|
||||||
if [[ ! -f ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.views.counter.sign ]]; then
|
if [[ ! -f ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.views.counter.sign ]]; then
|
||||||
echo "0" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.views.counter
|
echo "0" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.views.counter
|
||||||
$MY_PATH/tools/natools.py sign -f pubsec -k "$HOME/.zen/secret.dunikey" -i ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.views.counter -o ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.views.counter.sign
|
$MY_PATH/tools/natools.py sign -f pubsec -k "$HOME/.zen/secret.dunikey" -i ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.views.counter -o ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.views.counter.sign
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$MY_PATH/tools/natools.py verify -p "${G1PUB}" -i "$HOME/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.views.counter.sign" -o "/tmp/verified_msg" && echo "c'est bon" || echo "c'est pas bon"
|
$MY_PATH/tools/natools.py verify -p "${G1PUB}" -i "$HOME/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/${G1PUB}/.views.counter.sign" -o "/tmp/verified_msg" && echo "c'est bon" || echo "c'est pas bon"
|
||||||
# Each time a station modify .views.counter it signs, log and timestamp then publish new IPNS to swarm.
|
# Each time a station modify .views.counter it signs, log and timestamp then publish new IPNS to swarm.
|
||||||
# If a "faulty" blockchain appears (Mediakey collision)...
|
# If a "faulty" blockchain appears (Mediakey collision)...
|
||||||
# Message are sent to warn friends they have to manualy validate data conflict and merge back their mutual chain.
|
# Message are sent to warn friends they have to manualy validate data conflict and merge back their mutual chain.
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
## CHAIN & IPNS REFRESH
|
## CHAIN & IPNS REFRESH
|
||||||
########################################################################
|
########################################################################
|
||||||
# ipfs nanochain progression
|
# ipfs nanochain progression
|
||||||
I=$(ipfs add -qrH ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/ | tail -n 1)
|
I=$(ipfs add -qrH ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/ | tail -n 1)
|
||||||
echo "CHAIN: $I"
|
echo "CHAIN: $I"
|
||||||
OLDCHAIN=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/.chain)
|
OLDCHAIN=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/.chain)
|
||||||
echo "OLDCHAIN: $OLDCHAIN"
|
echo "OLDCHAIN: $OLDCHAIN"
|
||||||
if [[ "$OLDCHAIN" != "$I" ]] # MODIFY CHAIN only if something was changed
|
if [[ "$OLDCHAIN" != "$I" ]] # MODIFY CHAIN only if something was changed
|
||||||
then
|
then
|
||||||
echo "UPDATING CHAIN"
|
echo "UPDATING CHAIN"
|
||||||
echo "$(date -u +%s%N | cut -b1-13)" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/.timestamp
|
echo "$(date -u +%s%N | cut -b1-13)" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/.timestamp
|
||||||
echo $I > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/.chain
|
echo $I > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${mediakey}/.chain
|
||||||
fi
|
fi
|
||||||
echo "${mediakey} NAME PUBLISHING "
|
echo "${mediakey} NAME PUBLISHING "
|
||||||
# KEY ZenTag IPNS name publish
|
# KEY ZenTag IPNS name publish
|
||||||
J=$(ipfs name publish --quieter -k ${mediakey} /ipfs/${I})
|
J=$(ipfs name publish --quieter -k ${mediakey} /ipfs/${I})
|
||||||
|
|
||||||
echo "$id REFRESHED https://tube.copylaradio.com/ipns/$J"
|
echo "$id REFRESHED https://tube.copylaradio.com/ipns/$J"
|
||||||
########################################################################
|
########################################################################
|
||||||
########################################################################
|
########################################################################
|
||||||
|
|
||||||
done
|
done
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
|
@ -242,7 +244,7 @@ for ipnslink in $(ls ~/.zen/PIN/*/IPNSLINK); do
|
||||||
ipnsid=$(cat $ipnslink)
|
ipnsid=$(cat $ipnslink)
|
||||||
ipfsid=$(echo $ipnslink | cut -d '/' -f 6)
|
ipfsid=$(echo $ipnslink | cut -d '/' -f 6)
|
||||||
mediakey=$(cat ~/.zen/PIN/${ipfsid}/MEDIAKEY)
|
mediakey=$(cat ~/.zen/PIN/${ipfsid}/MEDIAKEY)
|
||||||
|
|
||||||
[[ ! $(ipfs key list | grep ${mediakey}) ]] && echo "ERROR MISSING MEDIAKEY" && continue
|
[[ ! $(ipfs key list | grep ${mediakey}) ]] && echo "ERROR MISSING MEDIAKEY" && continue
|
||||||
|
|
||||||
## GET ACTUAL IPNS .chain VALUE
|
## GET ACTUAL IPNS .chain VALUE
|
||||||
|
|
Loading…
Reference in New Issue