From a6b706e0a3ec9ea02aa28da7e5e1bdb9029728fc Mon Sep 17 00:00:00 2001 From: qo-op Date: Mon, 11 May 2020 06:44:21 +0200 Subject: [PATCH] silkaj_balance --- g1sms/functions.sh | 68 +++++++++++++++++++++++----------------------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/g1sms/functions.sh b/g1sms/functions.sh index 0547b75..6ffa4e3 100755 --- a/g1sms/functions.sh +++ b/g1sms/functions.sh @@ -210,6 +210,28 @@ function sms_uid2key (){ echo "$DESTRIB" } +################################################################################################################################# +function silkaj_balance () { +pubkey="$1" +silkajQuantitativeAmountPattern='Total\sQuantitative\s+=\s+(.*)\s+Ğ1' +silkajExitCode=1 +while [ $silkajExitCode -ne 0 ] +do + duniter_server=$(./tools/duniter_getnode.sh) + silkajOutput=$(silkaj -p "${duniter_server}" balance $pubkey 2>/dev/null) + silkajExitCode=$? + + ((i++)) + [ $i -gt 6 ] && continue +done + +if [[ $silkajOutput =~ $silkajQuantitativeAmountPattern ]] +then + echo "${BASH_REMATCH[1]}" +else + echo "0" +fi +} ################################################################################################################################# function sms_INIT_ACCOUNT () { @@ -222,7 +244,7 @@ log "__SUB:sms_INIT_ACCOUNT: ($1=phone, $2=NOSMS)" SMSNODE="/home/$YOU/.zen/g1sms_wallets/$PHONE/MASTERPHONE.sms" # Contains G1sms+ SMS phone number PINFILE="/home/$YOU/.zen/g1sms_wallets/$PHONE/_pin" # Contains phone wallet diceware password GPGPINFILE="/home/$YOU/.zen/g1sms_wallets/$PHONE/_pin.gpg" # Contains g1smsnode cypher phone wallet diceware password - AUTHCRYPTFILE="/home/$YOU/.zen/g1sms_wallets/$PHONE/_authfile.crypt" # Crypt with $NODE_G1PUBKEY + DUNIKEYFILE="/home/$YOU/.zen/g1sms_wallets/$PHONE/secret.dunikey" # secret.dunikey PUBKEYFILE="/home/$YOU/.zen/g1sms_wallets/$PHONE/_pub" # Contains phone wallet public key (RIB) UNITFILE="/home/$YOU/.zen/g1sms_wallets/$PHONE/_unit" # Contains phone wallet prefered unit (LOVE,G1,DU) @@ -266,9 +288,8 @@ log "__SUB:sms_INIT_ACCOUNT: ($1=phone, $2=NOSMS)" python3 ./tools/key_create_dunikey.py "$UIDNA" "$PIN" ## Copy PubSec file to /tmp/secret.dunikey mv /tmp/secret.dunikey /home/$YOU/.zen/g1sms_wallets/$PHONE/ - PUBKEY=$(cat /home/$YOU/.zen/g1sms_wallets/$PHONE/secret.dunikey | grep 'pub:' | cut -d ' ' -f 2) + PUBKEY=$(cat $DUNIKEYFILE | grep 'pub:' | cut -d ' ' -f 2) log "__SUB:sms_INIT_ACCOUNT: !! G1 Wallet CREATED: $PHONE = $UIDNA $PIN : $PUBKEY" - read ####################### # ACTIVATE G1SMS WALLET @@ -313,15 +334,15 @@ log "__SUB:sms_INIT_ACCOUNT: ($1=phone, $2=NOSMS)" [[ "$PIN" == "" ]] && [[ -f "${PINFILE}.crypt" ]] && ./natools.py decrypt --pubsec -k "$NODE_PUBSECFILE" -i "${PINFILE}.crypt" -o "$PINFILE" && PIN=$(cat "$PINFILE"); [[ "$PIN" != "" ]] && echo "" > "$PINFILE" || log "SYSTEM ERROR :: PIN EMPTY !!! GPG???" - # HIDE EMAIL FILE - if [[ -f "$GPGMAILFILE" ]]; then - log "__SUB:sms_INIT_ACCOUNT: DECODING EMAIL .gpg... " - echo "${IPFSPrivKey}" | gpg -d -q --output "$MAILFILE" --yes --pinentry-mode loopback --passphrase-fd 0 "$GPGMAILFILE" - MAIL=$(cat "$MAILFILE"); - [[ $MAIL == "" ]] && [[ -f "$MAILFILE.crypt" ]] && ./natools.py decrypt --pubsec -k "$NODE_PUBSECFILE" -i "$MAILFILE.crypt" -o "$MAILFILE" && MAIL=$(cat "$MAILFILE"); - # EMPTY CLEAR EMAIL FILE - [[ $MAIL != "" ]] && echo "" > "$MAILFILE" || log "SYSTEM ERROR :: MAIL EMPTY !!! GPG???" - fi + # TODO ./natools.py encrypt -p $NODE_G1PUBKEY -i "$DUNIKEYFILE" -o "$DUNIKEYFILE.crypt" + # ./natools.py decrypt --pubsec -k "$NODE_PUBSECFILE" -i "$DUNIKEYFILE.crypt" -o "$DUNIKEYFILE" + + # EMAIL + [[ $MAIL == "" ]] && [[ -f "$GPGMAILFILE" ]] && echo "${IPFSPrivKey}" | gpg -d -q --output "$MAILFILE" --yes --pinentry-mode loopback --passphrase-fd 0 "$GPGMAILFILE" && MAIL=$(cat "$MAILFILE") + [[ $MAIL == "" ]] && [[ -f "$MAILFILE.crypt" ]] && ./natools.py decrypt --pubsec -k "$NODE_PUBSECFILE" -i "$MAILFILE.crypt" -o "$MAILFILE" && MAIL=$(cat "$MAILFILE") + log "__SUB:sms_INIT_ACCOUNT: DECODING EMAIL $MAIL" + # EMPTY CLEAR EMAIL FILE + [[ $MAIL != "" ]] && echo "" > "$MAILFILE" || log "SYSTEM ERROR :: $MAILFILE problem" # PUBLISH GLOBAL VARS FROM ACCOUNT FILES @@ -333,7 +354,7 @@ log "__SUB:sms_INIT_ACCOUNT: ($1=phone, $2=NOSMS)" if [ -f "$UIDNAFILE" ]; then UIDNA=$(cat "$UIDNAFILE"); else UIDNA=""; fi if [ -f "$DABUIDF" ]; then DABID=$(cat "$DABUIDF"); else DABID="$NODEUIDNA"; fi - + AMOUNTG1=$(silkaj_balance $PUBKEY) AMOUNTDU=$(bc <<< "scale=2; $AMOUNTG1 / $DUFACTOR") AMOUNTLOVE=$(bc <<< "$AMOUNTG1 * 100 / $DUFACTOR") @@ -368,27 +389,6 @@ log "__SUB:sms_INIT_ACCOUNT: ($1=phone, $2=NOSMS)" log "__SUB:sms_INIT_ACCOUNT: END" } -function silkaj_balance () { -pubkey="$1" -silkajQuantitativeAmountPattern='Total\sQuantitative\s+=\s+(.*)\s+Ğ1' -silkajExitCode=1 -while [ $silkajExitCode -ne 0 ] -do - duniter_server=$(./tools/duniter_getnode.sh) - silkajOutput=$(silkaj -p "${duniter_server}" balance $pubkey 2>/dev/null) - silkajExitCode=$? - - ((i++)) -done - -if [[ $silkajOutput =~ $silkajQuantitativeAmountPattern ]] -then - echo "${BASH_REMATCH[1]}" -else - echo "" -fi -} - ################################################################################################################################# function check_account (){