111 lines
5.6 KiB
Bash
Executable File
111 lines
5.6 KiB
Bash
Executable File
#!/bin/bash
|
|
################################################################################
|
|
# Author: Fred (support@qo-op.com)
|
|
# Version: 0.1
|
|
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
|
|
################################################################################
|
|
MY_PATH="`dirname \"$0\"`" # relative
|
|
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
|
|
cd $MY_PATH
|
|
echo "Reçu sms : STOP GUILDE (phone=$1 guilde=$2) - désinscription -"
|
|
phone="$1"
|
|
guilde="$2"
|
|
########################################################################
|
|
echo "## GET STATION G1PUB"
|
|
########################################################################
|
|
YOU=$(ps auxf --sort=+utime | grep -w ipfs | grep -v -E 'color=auto|grep' | tail -n 1 | cut -d " " -f 1) || er+=" ipfs daemon not running"
|
|
[[ ! -f /home/${YOU}/.zen/secret.dunikey ]] && echo "Crypto is missing... please provide /home/${YOU}/.zen/secret.dunikey by installing 'astrXbian' TestNet" && exit 1
|
|
G1PUB=$(cat /home/${YOU}/.zen/secret.dunikey | grep 'pub:' | cut -d ' ' -f 2)
|
|
|
|
########################################################################
|
|
## TEST PHONE
|
|
########################################################################
|
|
phonehash=$(echo $phone | sha256sum | cut -d ' ' -f1)
|
|
|
|
if [[ -d /home/${YOU}/.zen/SMS/PHONE/${phonehash} ]]; then
|
|
NEW=0
|
|
xzuid=$(cat "/home/${YOU}/.zen/SMS/PHONE/${phonehash}/xzuid.txt" 2>/dev/null)
|
|
[[ ! $xzuid ]] && xzuid=$(cat "/home/${YOU}/.zen/SMS/PHONE/${phonehash}/xzuid")
|
|
echo "OK $phone est inscrit sous le pseudo $xzuid"
|
|
else
|
|
echo "$phone inconnu - EXIT -"
|
|
exit 1
|
|
fi
|
|
|
|
echo "## BACKUP ${xzuid}_${phone}.dunikey"
|
|
mkdir -p /home/${YOU}/.zen/SMS/ERASE/${guilde}
|
|
$MY_PATH/natools.py decrypt -f pubsec -k "/home/${YOU}/.zen/secret.dunikey" -i "/home/${YOU}/.zen/SMS/PHONE/${phonehash}/secret.dunikey.encrypt" -o "/home/${YOU}/.zen/SMS/ERASE/${xzuid}_${phone}.dunikey"
|
|
[[ ! $? == 0 ]] && echo "FAILED" && exit 1
|
|
|
|
########################################################################
|
|
### STOP MIZ GUILDE = TOTAL ERASE
|
|
########################################################################
|
|
if [[ "${guilde}" == "MIZ" ]]; then
|
|
|
|
if [[ -f /var/www/nextcloud/occ ]]; then
|
|
echo "## DELETE NEXTCLOUD : $xzuid"
|
|
sudo su -s /bin/sh www-data -c "export OC_PASS=\"$phone\" && php /var/www/nextcloud/occ user:delete $xzuid"
|
|
[[ ! $? == 0 ]] && echo "FAILED" && exit 1
|
|
rm -f /home/${YOU}/.zen/SMS/PHONE/${phonehash}/GUILDES/NEXTCLOUD
|
|
rm -f /home/${YOU}/.zen/SMS/GUILDES/NEXTCLOUD/MEMBERS/${phone}
|
|
fi
|
|
|
|
echo "## DELETE GCHANGE : $xzuid"
|
|
$MY_PATH/jaklis/jaklis.py -k /home/${YOU}/.zen/SMS/ERASE/${xzuid}_${phone}.dunikey -n "https://data.gchange.fr" erase
|
|
[[ ! $? == 0 ]] && echo "FAILED" && exit 1
|
|
rm -f /home/${YOU}/.zen/SMS/PHONE/${phonehash}/GUILDES/GCHANGE
|
|
rm -f /home/${YOU}/.zen/SMS/GUILDES/GCHANGE/MEMBERS/${phone}
|
|
|
|
echo "## DELETE CESIUM : $xzuid"
|
|
$MY_PATH/jaklis/jaklis.py -k /home/${YOU}/.zen/SMS/ERASE/${xzuid}_${phone}.dunikey -n "https://g1.data.e-is.pro" erase
|
|
[[ ! $? == 0 ]] && echo "FAILED" && exit 1
|
|
rm -f /home/${YOU}/.zen/SMS/PHONE/${phonehash}/GUILDES/CESIUM
|
|
rm -f /home/${YOU}/.zen/SMS/GUILDES/CESIUM/MEMBERS/${phone}
|
|
|
|
fi
|
|
########################################################################
|
|
|
|
########################################################################
|
|
if [[ "${guilde}" == "NEXTCLOUD" ]]; then
|
|
if [[ -f /var/www/nextcloud/occ ]]; then
|
|
sudo su -s /bin/sh www-data -c "export OC_PASS=\"$phone\" && php /var/www/nextcloud/occ user:delete $xzuid"
|
|
[[ ! $? == 0 ]] && echo "FAILED" && exit 1
|
|
rm -f /home/${YOU}/.zen/SMS/PHONE/${phonehash}/GUILDES/NEXTCLOUD
|
|
rm -f /home/${YOU}/.zen/SMS/GUILDES/NEXTCLOUD/MEMBERS/${phone}
|
|
fi
|
|
fi
|
|
########################################################################
|
|
|
|
########################################################################
|
|
if [[ "${guilde}" == "GCHANGE" ]]; then
|
|
$MY_PATH/jaklis/jaklis.py -k /home/${YOU}/.zen/SMS/ERASE/${xzuid}_${phone}.dunikey -n "https://data.gchange.fr" erase
|
|
[[ ! $? == 0 ]] && echo "FAILED" && exit 1
|
|
rm -f /home/${YOU}/.zen/SMS/PHONE/${phonehash}/GUILDES/GCHANGE
|
|
rm -f /home/${YOU}/.zen/SMS/GUILDES/GCHANGE/MEMBERS/${phone}
|
|
fi
|
|
########################################################################
|
|
|
|
########################################################################
|
|
if [[ "${guilde}" == "CESIUM" ]]; then
|
|
$MY_PATH/jaklis/jaklis.py -k /home/${YOU}/.zen/SMS/ERASE/${xzuid}_${phone}.dunikey -n "https://g1.data.e-is.pro" erase
|
|
[[ ! $? == 0 ]] && echo "FAILED" && exit 1
|
|
rm -f /home/${YOU}/.zen/SMS/PHONE/${phonehash}/GUILDES/CESIUM
|
|
rm -f /home/${YOU}/.zen/SMS/GUILDES/CESIUM/MEMBERS/${phone}
|
|
fi
|
|
########################################################################
|
|
|
|
########################################################################
|
|
## REMOVE RELATION PHONE / GUILDE
|
|
########################################################################
|
|
if [[ "${guilde}" != "" ]]; then
|
|
[[ -e /home/${YOU}/.zen/SMS/PHONE/${phonehash}/GUILDES/${guilde} ]] && rm -f /home/${YOU}/.zen/SMS/PHONE/${phonehash}/GUILDES/${guilde}
|
|
[[ -e /home/${YOU}/.zen/SMS/GUILDES/${guilde}/MEMBERS/${phone} ]] && rm -f /home/${YOU}/.zen/SMS/GUILDES/${guilde}/MEMBERS/${phone}
|
|
mv /home/${YOU}/.zen/SMS/GUILDES/${guilde}/INPUT/${phone} /home/${YOU}/.zen/SMS/ERASE/${guilde}/
|
|
fi
|
|
|
|
########################################################################
|
|
## EMPTY GUILDES DIRECTORY? then remove PHONE/${phonehash}
|
|
[ -z "$(ls -A /home/${YOU}/.zen/SMS/PHONE/${phonehash}/GUILDES)" ] && rm -Rf /home/${YOU}/.zen/SMS/PHONE/${phonehash}
|
|
|
|
exit 0
|