PDA

Επιστροφή στο Forum : Script για μέτρηση χρόνου σε υπηρεσίες όπως, internetcalls, sipdiscount, voipbuster



123456789
24-05-06, 12:43
Δεν μπόρεσα να το βρω αλλού στο forum, δουλεύει πάντως.
Έχει και άλλες χρήσιμες πληροφορίες για το group FINAREA + VoIP

http://www.voip-info.org/wiki/view/Finarea+SA



#!/bin/sh
OP="$1"
SERVICE="$2"
USERNAME="$3"
PASSWORD="$4"
MONTHSAGO="$5"
# uncomment the following line if usage is accounted for on "per minute or part thereof" basis
TOTALIZER='{totalsecs +=(3600 * $1 + 60 * ($2 + int(($3 + 59)/60)))} END {print totalsecs/60}'
# uncomment the following line if usage is accounted for on per second basis
#TOTALIZER='{totalsecs += (3600 * $1 + 60 * $2 + $3)} END {print int((totalsecs+59)/60)}'
usage() {
echo >&2 "usage: $(basename $0) [creditcents|usedminutes] service username password [monthsago]"
exit 255
}

Curl() {
curl $@
local STATUS="$?"
if [ ! $STATUS ]; then rm -f ${COOKIEJAR}; exit $STATUS; fi
}

case _"$OP" in
_creditcents)
;;
_usedminutes)
;;
*)
usage
;;
esac

case _"$PASSWORD" in
_)
usage
;;
esac

BASEURL="https://myaccount.${SERVICE}.com/clx"
COOKIEJAR="/tmp/cj.$$"
umask 077 # protect cookie jar from indiscreet eyes
LOGGEDIN=$(Curl -s -k -c ${COOKIEJAR} -d username="${USERNAME}" -d password="${PASSWORD}" ${BASEURL}/ | grep -i 'Refresh')
if [ _"$LOGGEDIN" = "_" ]; then exit 254; fi
Curl -o /dev/null -s -k -b ${COOKIEJAR} "${BASEURL}"'/index.php?part=menu&justloggedin=true'

case _"$OP" in
_creditcents)
Curl -s -k -b ${COOKIEJAR} "${BASEURL}/index.php" \
| sed -n -e 's|.*Remaining credit[^0-9]\+\([0-9.]\+\).*|\1|p' \
| awk '{print 100 * $1}'
;;
_usedminutes)
CURYEAR=$(date +%Y)
CURMONTH=$(date +%m | sed 's/^0//')
if [ _"$MONTHSAGO" != _ ]; then
CURABSMONTH=$((12 * CURYEAR + CURMONTH - 1))
THENABSMONTH=$((CURABSMONTH - MONTHSAGO))
CURYEAR=$((THENABSMONTH / 12))
CURMONTH=$(((THENABSMONTH % 12) + 1))
fi
Curl -s -k -b ${COOKIEJAR} "${BASEURL}/calls.php?month=${CURMONTH}&year=${CURYEAR}" \
| sed -n -e \
's|[[:space:]]*<tr>.*\([0-9][0-9]\):\([0-9][0-9]\):\([0-9][0-9]\).*FREE.*|\1 \2 \3|p' \
| awk "$TOTALIZER"
;;
esac

rm ${COOKIEJAR}

Spiros_k
26-05-06, 23:13
Καλά που ανέφερες το script...Το έχω δει εδώ και καιρό αλλά δεν δίνονται σαφείς οδηγίες για το πως δουλεύει. Το θέμα είναι να μας πεις και πως το ενεργοποιούμε. Π.χ. εγώ έχω το EYEBEAM. Μπορώ να το χρησιμοποιήσω να μου δείχνει τη χρέωση όταν μιλάω; Αν όχι πως δουλεύει; Συμβουλές please γιατί το συγκεκριμένο προγραμματάκι είναι a must!

123456789
27-05-06, 09:24
Καλημέρα,
το script τρέχει από τερματικό unix/linux σε περιβάλλον κελύφους (shell, πχ bash).
Ισχύει μόνο για τις εταιρίες του FINAREA http://www.voip-info.org/wiki/view/Finarea+SA (δηλ., voipbuster, voipdiscount, sipdiscount, internetcalls, voipcheap).

Παράδειγμα χρήσης:

root:pc-434:~:501>fincheck.sh usedminutes voipdiscount <username> <password>


στην περίπτωση αυτή μου έδωσε αποτέλεσμα "110" (τόσα λεπτά έχω μιλήσει το μήνα που διανύουμε), μπορείς να του ζητήσεις για όσους μήνες θέλεις πριν από σήμερα.

Eκτός από το usedminutes δέχεται και άλλη μία παράμετρο αν θέλεις:


root:pc-434:~:503>fincheck.sh creditcents voipdiscount <username> <password>


Στην περίπτωση αυτή μου έδωσε "1000" (=10 ΕΥΡΩ, δεν έχω χαλάσει cent ακόμα).

weakwire
27-05-06, 18:16
στο cygwin δεν υπάρχει βιβλιοθήκη για το curl.Κατεβάζω ξανά τη όλες τησ libs μπας και λυθει το πρόβλημα

Spiros_k
30-05-06, 22:23
Καλημέρα,
το script τρέχει από τερματικό unix/linux σε περιβάλλον κελύφους (shell, πχ bash).
Ισχύει μόνο για τις εταιρίες του FINAREA http://www.voip-info.org/wiki/view/Finarea+SA (δηλ., voipbuster, voipdiscount, sipdiscount, internetcalls, voipcheap).

Παράδειγμα χρήσης:

root:pc-434:~:501>fincheck.sh usedminutes voipdiscount <username> <password>


στην περίπτωση αυτή μου έδωσε αποτέλεσμα "110" (τόσα λεπτά έχω μιλήσει το μήνα που διανύουμε), μπορείς να του ζητήσεις για όσους μήνες θέλεις πριν από σήμερα.

Eκτός από το usedminutes δέχεται και άλλη μία παράμετρο αν θέλεις:


root:pc-434:~:503>fincheck.sh creditcents voipdiscount <username> <password>


Στην περίπτωση αυτή μου έδωσε "1000" (=10 ΕΥΡΩ, δεν έχω χαλάσει cent ακόμα).

Δηλαδή όσοι έχουμε windows xp δεν υπάρχει τρόπος να το χρησιμοποιήσουμε; Μήπως κάποια άλλη λύση;

weakwire
30-05-06, 22:49
μπορείς να κατεβάσεις το cygwin.

123456789
31-05-06, 11:57
Επίσης, ένας άλλος τρόπος είναι να βάλεις microsoft virtual pc στον Η/Υ σου και να στήσεις εκεί "στα γρήγορα" μια διανομή Linux, ή ακόμα και ένα linux livecd και να το τρέξεις από εκεί...

@ ADSLgr.com All rights reserved.