Admin/Guide can send messages containing INTR0 and program WELCOME message

This commit is contained in:
qo-op 2021-07-13 14:24:41 +02:00
parent 609033152f
commit f550484979
1 changed files with 43 additions and 18 deletions

View File

@ -14,8 +14,8 @@ guilde="$2"
my_guildes="$guilde"
[[ ! -f /tmp/${phone}_message ]] && echo "NO MESSAGE /tmp/${phone}_message" && exit 1
message="$(cat /tmp/${phone}_message)"
########################################################################
echo "## GET STATION G1PUB"
########################################################################
@ -33,6 +33,7 @@ phonehash=$(echo $phone | sha256sum | cut -d ' ' -f1)
echo "=> ${phonehash}"
########################################################################
## CREATION DU "HOME" /PHONE/${phonehash}
if [[ -d /home/${YOU}/.zen/SMS/PHONE/${phonehash} ]]; then
NEW=0
xzuid=$(cat "/home/${YOU}/.zen/SMS/PHONE/${phonehash}/xzuid.txt")
@ -41,7 +42,8 @@ else
mkdir -p /home/${YOU}/.zen/SMS/PHONE/${phonehash}/
fi
########################################################################
## NOUVEAU /PHONE/${phonehash} : INSCRIPTION AUX GUILDES DE BASE
if [[ ! $xzuid ]]; then
NEW=1
@ -149,7 +151,9 @@ sudo gammu sendsms TEXT \"_PHONE_\" -text \"Heureux de vous accueillir. $xzuid e
fi
echo "=> $xzuid/$phone PASS=$PASS G1=$G1"
########################################################################
## UTILISATEUR DEJA CONNU : RECUPERATION ID ET CLEFS $G1, $PASS
else
$MY_PATH/natools.py decrypt -f pubsec -k "/home/${YOU}/.zen/secret.dunikey" -i "/home/${YOU}/.zen/SMS/PHONE/${phonehash}/pin.encrypt" -o "/tmp/${phonehash}.pin"
@ -161,16 +165,21 @@ else
fi
########################################################################
echo "## INSCRIPTION PHONE / GUILDE : ${phone} / ${guilde}"
########################################################################
## NOUVELLE INSCRIPTION GUILDE (pas encore de lien INPUT/${phone})
# WELCOME MESSAGE is first GUIDE MESSAGE containing INTR0 keyword (INTRn)
AGUIDE=$(ls /home/${YOU}/.zen/SMS/GUILDES/${guilde}/INPUT/*_guide.txt | head -n 1 2>/dev/null)
[[ $AGUIDE ]] \
&& AMESS="$(cat $AGUIDE | grep "INTR0" | sed 's/INTR0//g' )" \
&& WELCOME="$AMESS" \
|| WELCOME="${xzuid} - GUILDE ${guilde} - SMS et Actions - Changez le monde https://oasis.astroport.com"
## Creation du message de bienvenue
[[ ! -L /home/${YOU}/.zen/SMS/PHONE/${phonehash}/GUILDES/${guilde} ]] && echo "#!/bin/bash
sudo gammu sendsms TEXT \"_PHONE_\" -text \"${xzuid} synchronisez vos actions, changez le monde https://oasis.astroport.com - GUILDE ${guilde} -\"" > /home/${YOU}/.zen/SMS/PHONE/${phonehash}/000.${guilde}.tosend.sh
sudo gammu sendsms TEXT \"_PHONE_\" -text \"${WELCOME}\"" > /home/${YOU}/.zen/SMS/PHONE/${phonehash}/INTR0.${guilde}.tosend.sh
########################################################################
## COMBIEN D'ETOILES GCHANGE ?? ADMIN
## SCORE DU GUIDE SUR GCHANGE ?? OU ADMIN = 5
########################################################################
$MY_PATH/timeout.sh -t 10 $MY_PATH/jaklis/jaklis.py -k /tmp/secret.dunikey -n "https://data.gchange.fr" stars -p $G1 > /tmp/$G1.stars
$MY_PATH/timeout.sh -t 10 $MY_PATH/jaklis/jaklis.py -k /tmp/secret.dunikey -n "https://data.gchange.fr" stars -p "$G1" > /tmp/$G1.stars
[ $? -eq 0 ] && XUIDSCORE=$(cat /tmp/$G1.stars | jq .score) || XUIDSCORE=0
## SCORE > 4 DONNE DROIT DE CREER ET DIALOGUER AVEC LES GUILDES.
SCORE=$(echo $XUIDSCORE | cut -d '.' -f 1)
@ -192,13 +201,23 @@ if [[ $SCORE -ge 4 || ${phone} == $SMSADMIN ]]; then
fi
echo "ADMIN GUILDE [${xzuid}/${SCORE}/${guilde}] ${message}"
## LIENS A LA GUILDE
## VERIFICATION DES LIENS AVEC LA GUILDE
[[ ! -d /home/${YOU}/.zen/SMS/PHONE/${phonehash}/GUILDES ]] && mkdir -p /home/${YOU}/.zen/SMS/PHONE/${phonehash}/GUILDES
[[ ! -L /home/${YOU}/.zen/SMS/PHONE/${phonehash}/GUILDES/${guilde} ]] && ln -s /home/${YOU}/.zen/SMS/GUILDES/${guilde} /home/${YOU}/.zen/SMS/PHONE/${phonehash}/GUILDES/${guilde}
[[ ! -L /home/${YOU}/.zen/SMS/GUILDES/${guilde}/MEMBERS/${phone} ]] && ln -s /home/${YOU}/.zen/SMS/PHONE/${phonehash} /home/${YOU}/.zen/SMS/GUILDES/${guilde}/MEMBERS/${phone}
echo "${message}" >> /home/${YOU}/.zen/SMS/GUILDES/${guilde}/INPUT/${SCORE}_${phone}_guide.txt ## LOG GUIDE messages to ${SCORE}_${phone}_guide.txt
## HISTORIQUE MESSAGES du GUIDE avec MAJ SCORE
# récupération anciens historiques du guide
[[ $(ls /home/${YOU}/.zen/SMS/GUILDES/${guilde}/INPUT/*_${phone}_guide.txt 2>/dev/null) ]] \
&& cat /home/${YOU}/.zen/SMS/GUILDES/${guilde}/INPUT/*_${phone}_guide.txt > /tmp/input_${phone}.sms
# effacement historiques
rm -f /home/${YOU}/.zen/SMS/GUILDES/${guilde}/INPUT/*_${phone}_guide.txt
# mise à jour /GUILDES/${guilde}/INPUT/${SCORE}_${phone}_guide.txt
mv /tmp/input_${phone}.sms /home/${YOU}/.zen/SMS/GUILDES/${guilde}/INPUT/${SCORE}_${phone}_guide.txt
echo "${message}" >> /home/${YOU}/.zen/SMS/GUILDES/${guilde}/INPUT/${SCORE}_${phone}_guide.txt
exit 0
## TRAITEMENT SPECIAL GUIDE ADMIN TERMINE
fi
########################################################################
@ -242,7 +261,7 @@ else
## GUILDE INCONNUE REPONSE SMS
echo "#!/bin/bash
sudo gammu sendsms TEXT \"_PHONE_\" -text \"Guilde ${guilde} inconnue. Trouvez ou proposez la votre sur https://oasis.astroport.com\"" > /home/${YOU}/.zen/SMS/PHONE/${phonehash}/$(date -u +%s%N | cut -b1-13).tosend.sh
chmod +x /home/${YOU}/.zen/SMS/GUILDES/${guilde}/OUTPUT/*.tosend.sh
chmod +x /home/${YOU}/.zen/SMS/PHONE/${phonehash}/*.tosend.sh
fi
@ -262,7 +281,7 @@ done
if [[ $NEW == 1 ]]; then
ts=$(date -u +%s%N | cut -b1-13)
# PRINT LOGO
# PRINT MadeInZion_G1_ASTROPORT LOGO
if [[ -e /dev/usb/lp0 ]]; then
brother_ql_create --model QL-700 $MY_PATH/../img/MadeInZion_G1_ASTROPORT.png --label-size 62 > /tmp/LOGO.bin
brother_ql_print /tmp/LOGO.bin /dev/usb/lp0
@ -276,8 +295,9 @@ if [[ $NEW == 1 ]]; then
rm /tmp/${ts}_QR.bin
else
echo "NO PRINTER"
sudo cp /home/${YOU}/.zen/SMS/PHONE/${phonehash}/QR.png /var/www/nextcloud/data/${xzuid}/files/MadeInZion/${G1}_QR.png
fi
sudo cp /home/${YOU}/.zen/SMS/PHONE/${phonehash}/QR.png /var/www/nextcloud/data/${xzuid}/files/MadeInZion/${G1}_QR.png
# PRINT ${xzuid} ${phone}
convert -background White label:"${xzuid} ${phone}" -append /tmp/${ts}_ID.png
@ -285,16 +305,15 @@ if [[ $NEW == 1 ]]; then
brother_ql_create --model QL-700 /tmp/${ts}_ID.png --label-size 62 > /tmp/${ts}_ID.bin
brother_ql_print /tmp/${ts}_ID.bin /dev/usb/lp0
rm /tmp/${ts}_ID.bin /tmp/${ts}_ID.png
else
sudo cp /tmp/${ts}_ID.png /var/www/nextcloud/data/${xzuid}/files/MadeInZion/ID_${G1}.png
fi
sudo cp /tmp/${ts}_ID.png /var/www/nextcloud/data/${xzuid}/files/MadeInZion/ID_${G1}.png
# PRINT QRSEC.png
if [[ -e /dev/usb/lp0 ]]; then
brother_ql_create --model QL-700 /home/${YOU}/.zen/SMS/PHONE/${phonehash}/QRSEC.png --label-size 62 > /tmp/${ts}_QRSEC.bin
brother_ql_print /tmp/${ts}_QRSEC.bin /dev/usb/lp0; rm /tmp/${ts}_QRSEC.bin
sudo cp /home/${YOU}/.zen/SMS/PHONE/${phonehash}/QRSEC.png /var/www/nextcloud/data/${xzuid}/files/MadeInZion/
fi
sudo cp /home/${YOU}/.zen/SMS/PHONE/${phonehash}/QRSEC.png /var/www/nextcloud/data/${xzuid}/files/MadeInZion/
# PRINT $PASS
convert -background White label:"CODE SECRET : ${PASS} " -append /tmp/${ts}_PASS.png
@ -302,9 +321,13 @@ if [[ $NEW == 1 ]]; then
brother_ql_create --model QL-700 /tmp/${ts}_PASS.png --label-size 62 > /tmp/${ts}_PASS.bin
brother_ql_print /tmp/${ts}_PASS.bin /dev/usb/lp0
rm /tmp/${ts}_PASS.bin /tmp/${ts}_PASS.png
else
sudo cp /tmp/${ts}_PASS.png /var/www/nextcloud/data/${xzuid}/files/MadeInZion/PASS.png
fi
sudo cp /tmp/${ts}_PASS.png /var/www/nextcloud/data/${xzuid}/files/MadeInZion/PASS.png
# Change Nextcloud files permission
sudo chmod 775 /var/www/nextcloud/data/${xzuid}/files/MadeInZion 2>/dev/null
sudo chown -R www-data:${YOU} /var/www/nextcloud/data/${xzuid}/files/MadeInZion 2>/dev/null
else
## PUT DATA IN NEXTCLOUD FOLDER ( I dont' care if commands fails 2>/dev/null )
@ -316,6 +339,8 @@ else
sudo cp /tmp/${ts}_ID.png /var/www/nextcloud/data/${xzuid}/files/MadeInZion/ID_${G1}.png 2>/dev/null
convert -background White label:"CODE SECRET : ${PASS} " -append /tmp/${ts}_PASS.png 2>/dev/null
sudo cp /tmp/${ts}_PASS.png /var/www/nextcloud/data/${xzuid}/files/MadeInZion/PASS.png 2>/dev/null
# Change Nextcloud files permission
sudo chmod 775 /var/www/nextcloud/data/${xzuid}/files/MadeInZion 2>/dev/null
sudo chown -R www-data:${YOU} /var/www/nextcloud/data/${xzuid}/files/MadeInZion 2>/dev/null