astroport/g1sms/sms_AUTH.sh

64 lines
2.2 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/)
########################################################################
# CHECK ACCOUNT if enough for G1BILLETS CREATION
########################################################################
# zen_sms.php write "NUMBER" "AMOUNT" into /tmp/sms.commands
# sms_AUTH_command.sh (cron) IS GETTING then CALL this script.
# OK: RETURN PIN and RECORD "/tmp/$PHONE.PIN.auth" for Double AUTH
########################################################################
MY_PATH="`dirname \"$0\"`" # relative
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
source $MY_PATH/init.sh
source $MY_PATH/functions.sh
PHONE=$1
NBLOVE=$2
TODAY=$(date '+%Y%m%d')
log "__SUB:sms_AUTH.sh ($PHONE, $PARRAIN) $TODAY"
[[ $PHONE != "" ]] && $MY_PATH/sms_INIT_ACCOUNT "$PHONE" "NOSMS" || exit 1 # VERIFICATION ALREADY DONE BY CALLING bash ?
[[ $UNKNOWN == "unknown" ]] && sms_SEND "$PHONE" "Portefeuille $PHONE inconnu! Envoyer N au $MASTERPHONE" && exit 1
# Get AMOUNTG1, AMOUNTLOVE, AMOUNTDU
AMOUNTG1=$(silkaj_balance $PUBKEY)
AMOUNTDU=$(bc -l <<< "scale=2; $AMOUNTG1 / $DUFACTOR")
AMOUNTLOVE=$(bc -l <<< "scale=0; $AMOUNTG1 * 100 / $DUFACTOR")
# Convert amount to G1 unit
VIR=$(bc -l <<< "scale=2; $NBLOVE * $DUFACTOR / 100")
# Need at least $MIN G1 available!
MIN=$(bc -l <<< "$AMOUNTG1 - $LIMIT")
testmin=$( echo "${VIR} < ${MIN}" | bc -l )
SMSPIN=$((1000 + RANDOM % 9999))
log "__SUB:sms_AUTH.sh: CODE $SMSPIN : $VIR < $MIN ? $testmin"
if [[ "$testmin" -eq "1" ]]
then
mess="CODE: $SMSPIN
A saisir pour vous authentifier...
[G1sms] Astroport Station $NODE_UIDNA"
# Send response SMS
sms_SEND "$PHONE" "$mess"
echo $SMSPIN > /tmp/$PHONE.PIN.auth
echo $SMSPIN
else
text="Solde: $AMOUNTLOVE LOVE ($AMOUNTG1 G1 = $AMOUNTDU DU)
Insuffisant (minimum $VIR G1 + $LIMIT G1)"
sms_ERROR "$PHONE" "$text"
echo "Minimum $VIR G1 + $LIMIT G1"
fi
[[ -d /home/$YOU/.zen/g1sms/$PHONE ]] && [[ $(whoami) == "root" ]] && chown -R $YOU /home/$YOU/.zen/g1sms/$PHONE
log "__SUB:sms_AUTH.sh: END sms_AUTH.sh "
log "~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
exit 0