forked from axiom-team/astrXbian
isREFERENCEinINDEX
This commit is contained in:
parent
461e350f97
commit
3c4b866aa6
|
@ -24,31 +24,29 @@ G1PUB=$(cat ~/.zen/secret.dunikey | grep 'pub:' | cut -d ' ' -f 2)
|
|||
# mkdir -p ~/astroport/mp3
|
||||
########################################################################
|
||||
path="$1"
|
||||
# Add trailing / if needed
|
||||
length=${#path}
|
||||
last_char=${path:length-1:1}
|
||||
[[ $last_char != "/" ]] && path="$path/"; :
|
||||
|
||||
file="$2"
|
||||
ipns="$3"
|
||||
|
||||
echo "~/.zen/astrXbian/zen/new_file_in_astroport.sh PATH/ \"$path\" FILE \"$file\" IPNS \"$ipns\""
|
||||
|
||||
extension="${file##*.}"
|
||||
TITLE="${file%.*}"
|
||||
# .part file false flag correcting
|
||||
|
||||
# .part file false flag correcting (inotify mode)
|
||||
[[ ! -f "${path}${file}" ]] && file="${TITLE%.*}" && extension="${TITLE##*.}" && [[ ! -f "${path}${file}" ]] && echo "NO FILE" && exit 1
|
||||
|
||||
# GET XZUID
|
||||
[[ -f ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange_title ]] && XZUID=$(cat ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange_title) || XZUID=$(hostname)
|
||||
[[ -f ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange_title ]] && XZUID=$(cat ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange_title) || XZUID=$(cat /etc/hostname)
|
||||
[[ ! $(echo "$path" | cut -d '/' -f 4 | grep 'astroport') ]] && echo "Les fichiers sont à placer dans ~/astroport/ MERCI" && exit 1
|
||||
TYPE=$(echo "$path" | cut -d '/' -f 5 ) # ex: /home/$YOU/astroport/... film, youtube, mp3
|
||||
TYPE=$(echo "$path" | cut -d '/' -f 5 ) # ex: /home/$YOU/astroport/... TYPE(film, youtube, mp3)/ REFERENCE /
|
||||
CAT=$(echo "$TYPE" | awk '{ print tolower($0) }')
|
||||
[[ ! $CAT ]] && echo "CAT est le 5e sous-répertoire de $path" && exit 1
|
||||
|
||||
PREFIX=$(echo "$TYPE" | head -c 1 | awk '{ print toupper($0) }' ) # ex: F, Y, M ou Y
|
||||
if [[ "$PREFIX" == "Y" || "$PREFIX" == "M" ]]; then
|
||||
INDEXPREFIX="YOUTUBE_"
|
||||
REFERENCE=$(echo "$file" | cut -d "_" -f 1) # Youtube filename starts with ID_
|
||||
else
|
||||
INDEXPREFIX="TMDB_"
|
||||
REFERENCE=$(echo "$path" | cut -d '/' -f 6 ) # Contains TMDB id
|
||||
[ "${REFERENCE}" -ne "${REFERENCE}" ] && echo "ERROR: $path BAD TMDB code. Get it from https://www.themoviedb.org/ " && exit 1 # ${REFERENCE} NOT A NUMBER
|
||||
fi
|
||||
|
||||
# File is placed in ROOT ~/astroport ?
|
||||
if [[ $PREFIX == "" ]]
|
||||
then
|
||||
|
@ -56,6 +54,56 @@ then
|
|||
echo "WARNING. $TYPE is root file UNTREATED" && exit 1
|
||||
fi
|
||||
|
||||
########################################################################
|
||||
# EXTRACT INDEX REFERENCE : TMDB or YOUTUBE (can be extended with new )
|
||||
########################################################################
|
||||
case ${PREFIX} in
|
||||
Y)
|
||||
INDEXPREFIX="YOUTUBE_"
|
||||
REFERENCE=$(echo "$file" | cut -d "_" -f 1) # Youtube filename starts with ID_
|
||||
;;
|
||||
M)
|
||||
INDEXPREFIX="MP3TUBE_"
|
||||
REFERENCE=$(echo "$file" | cut -d "_" -f 1) # Youtube filename starts with ID_
|
||||
;;
|
||||
F | S | A)
|
||||
INDEXPREFIX="TMDB_"
|
||||
REFERENCE=$(echo "$path" | cut -d '/' -f 6 ) # Path contains TMDB id
|
||||
[ "${REFERENCE}" -ne "${REFERENCE}" ] && echo "ERROR: $path BAD TMDB code. Get it from https://www.themoviedb.org/ " && exit 1 # ${REFERENCE} NOT A NUMBER
|
||||
;;
|
||||
*)
|
||||
echo "$PREFIX inconnu" && exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
########################################################################
|
||||
## CHECK if ${INDEXPREFIX}${REFERENCE} KEY exists
|
||||
########################################################################
|
||||
isREFERENCEinINDEX=$(grep ";$REFERENCE;" ~/.zen/ipfs_swarm/.*/astroport/kodi/vstream/${PREFIX}ASTRXBIAN)
|
||||
if [[ ${isREFERENCEinINDEX} ]]
|
||||
then
|
||||
if [[ -d ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB} ]]
|
||||
then
|
||||
# FILE IS MINE, replacing it in INDEX
|
||||
ipnslink=$(cat ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.ipns.link)
|
||||
echo "CLEF IPNS ${INDEXPREFIX}${REFERENCE} = $ipnslink"
|
||||
|
||||
# DELETING GCHANGE AD
|
||||
gchangeAD=$(cat ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.gchange.ad)
|
||||
~/.zen/astrXbian/zen/jaklis/jaklis.py deleteoffer -i $gchangeAD
|
||||
rm ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.gchange.ad
|
||||
|
||||
# DELETING OLD LINE FROM INDEX
|
||||
sed -i "/;$REFERENCE;/d" ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN
|
||||
|
||||
else
|
||||
echo "FILE IS FROM ANOTHER"
|
||||
echo ${isREFERENCEinINDEX}
|
||||
# I could send message to my friend, PIN, exchange contract... TODO
|
||||
fi
|
||||
fi
|
||||
|
||||
########################################################################
|
||||
echo "ADDING ${path}${file} to IPFS and create ${PREFIX}ASTRXBIAN INDEX"
|
||||
echo "~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN"
|
||||
echo "-----------------------------------------------------------------"
|
||||
|
@ -83,16 +131,21 @@ if [[ $KEY ]]; then
|
|||
echo "$KEY" > ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.ipns.link
|
||||
# .zen could contain ZEN for economic value
|
||||
touch ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.zen
|
||||
# CLEAR ipfs link (is then cyphered to manage exchange regulation)
|
||||
echo "/ipfs/$IPFSREPFILEID/${file}" > ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.ipfs.filelink
|
||||
echo "${file}" > ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.ipfs.filename
|
||||
# TRANSFERT from ajouter_video.sh "ajouter_video.txt" later used line 118
|
||||
[[ -f ~/astroport/${CAT}/${TMDB}/ajouter_video.txt ]] && mv ~/astroport/${CAT}/${TMDB}/ajouter_video.txt ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/
|
||||
################ ENCRYPT SENSIBLE DATA
|
||||
################ ENCRYPT keystore/$KEYFILE
|
||||
$MY_PATH/tools/natools.py encrypt -p $G1PUB -i ~/.ipfs/keystore/$KEYFILE -o ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.ipns.key.natools.encrypt
|
||||
$MY_PATH/tools/natools.py encrypt -p $G1PUB -i ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.ipfs.filelink -o ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.ipfs.filelink.natools.encrypt
|
||||
rm ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.ipfs.filelink
|
||||
fi
|
||||
|
||||
# CLEAR ipfs link (is then cyphered to manage exchange regulation)
|
||||
echo "/ipfs/$IPFSREPFILEID/${file}" > ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.ipfs.filelink
|
||||
################ ENCRYPT .ipfs.filelink
|
||||
$MY_PATH/tools/natools.py encrypt -p $G1PUB -i ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.ipfs.filelink -o ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.ipfs.filelink.natools.encrypt
|
||||
rm ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.ipfs.filelink
|
||||
|
||||
echo "${file}" > ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.ipfs.filename
|
||||
|
||||
# TRANSFERT from ajouter_video.sh "ajouter_video.txt" later used
|
||||
[[ -f ~/astroport/${CAT}/${TMDB}/ajouter_video.txt ]] && mv ~/astroport/${CAT}/${TMDB}/ajouter_video.txt ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/
|
||||
|
||||
# IPNS index.html Redirect to ipfs streaming link (could be contract or anything !!)
|
||||
echo "<meta http-equiv=\"Refresh\" content=\"0;URL=http://localhost:8181/ipfs/$IPFSREPFILEID/$URLENCODE_FILE_NAME\">" > ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/index.html
|
||||
echo "<meta http-equiv=\"Refresh\" content=\"10;URL=https://aries.copylaradio.com/ipns/$IPNSLINK/${G1PUB}/\">
|
||||
|
@ -104,11 +157,13 @@ IPNS=$(ipfs name publish --quieter --key="${INDEXPREFIX}${REFERENCE}" $NEWIPFS)
|
|||
########################################################################
|
||||
# PUBLISH GCHANGE AD
|
||||
########################################################################
|
||||
GOFFER=$(~/.zen/astrXbian/zen/jaklis/jaklis.py setoffer -t "#kodi / ${file}" -d "${INDEXPREFIX}${REFERENCE} https://aries.copylaradio.com/ipns/$IPNS/" -p ~/.zen/astrXbian/disk.png)
|
||||
echo $GOFFER > ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.gchange.ad
|
||||
NEWIPFS=$(ipfs add -rHq ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/ | tail -n 1 )
|
||||
IPNS=$(ipfs name publish --quieter --key="${INDEXPREFIX}${REFERENCE}" $NEWIPFS)
|
||||
|
||||
if [[ ! -f ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.gchange.ad ]]
|
||||
then
|
||||
GOFFER=$(~/.zen/astrXbian/zen/jaklis/jaklis.py setoffer -t "#astroport ${INDEXPREFIX}${REFERENCE} ${TITLE}" -d "https://aries.copylaradio.com/ipns/$IPNS/" -p ~/.zen/astrXbian/disk.png)
|
||||
echo $GOFFER > ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/.gchange.ad
|
||||
NEWIPFS=$(ipfs add -rHq ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/ | tail -n 1 )
|
||||
IPNS=$(ipfs name publish --key="${INDEXPREFIX}${REFERENCE}" $NEWIPFS)
|
||||
fi
|
||||
########################################################################
|
||||
# FIRST ${PREFIX}ASTRXBIAN header
|
||||
[[ ! -f ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN ]] && echo "CAT;TMDB;YEAR;TITLE;SAISON;GENRES;GROUPES;RES;URLS=http://127.0.0.1:8181" > ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN
|
||||
|
@ -126,7 +181,12 @@ if [[ ! $isFILEinINDEX && ! $isLINKinINDEX ]]; then
|
|||
touch ~/.zen/ipfs/.${IPFSNODEID}/PIN/${IPFSREPFILEID}/$G1PUB
|
||||
# SIMILAR with "ipfs ls /ipns/${IPFSNODEID}/.${IPFSNODEID}/PIN/ (...)"
|
||||
# TODO: switch case $PREFIX
|
||||
[[ -f ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/ajouter_video.txt ]] && line=$(cat ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/ajouter_video.txt | sed "s/_IPFSREPFILEID_/$IPFSREPFILEID/g") || line="$CAT;${REFERENCE};$YEAR;$TITLE;$SAISON;;${XZUID};$RES;/ipfs/$IPFSREPFILEID/$URLENCODE_FILE_NAME"
|
||||
if [[ -f ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/ajouter_video.txt ]]
|
||||
then
|
||||
line=$(cat ~/.zen/KEY/${INDEXPREFIX}${REFERENCE}/${G1PUB}/ajouter_video.txt | sed "s/_IPFSREPFILEID_/$IPFSREPFILEID/g")
|
||||
else
|
||||
line="$CAT;${REFERENCE};$YEAR;$TITLE;$SAISON;;${XZUID};$RES;/ipfs/$IPFSREPFILEID/$URLENCODE_FILE_NAME"
|
||||
fi
|
||||
echo "$line" >> ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN
|
||||
else
|
||||
if [[ $isFILEinMYINDEX ]]; then
|
||||
|
|
Loading…
Reference in New Issue