Qvnstat (Vnstat fronted) -TESTING-

...του ubuntu και έργων ΕΛ/ΛΑΚ (Έργα-Οδηγοί-Προτάσεις)

Συντονιστής: konnn

Qvnstat (Vnstat fronted) -TESTING-

Δημοσίευσηαπό ftso » 27 Ιαν 2009, 16:03

Στα πλαίσια ενός μαθήματος για την σχολή μου έπρεπε να αναπτύξω μια μικρή εφαρμογή...
Οι απαιτήσεις δεν είναι τόσες πολλές από άποψη κώδικα (μέχρι και access είχα την δυνατότητα να κάνω!)
Έτσι είπα να δοκιμάσω κάτι σε python + qt4...
(δεν έχω ξανα ασχοληθεί με τίποτα απο τα δυο στο παρελθόν)

Το αποτέλεσμα απο άποψη δομής κώδικα είναι ολίγον αστείο καθώς δεν ασχολήθηκα να μάθω python και qt και έγραφα λες και ήταν shellscript :mrgreen:
Παρόλα αυτά, απο άποψη λειτουργικότητας (νομίζω) κάνει αυτό που είχα σχεδιάσει...

Τι κάνει και πως δουλεύει:

1)Η εφαρμογή χρησιμοποιεί το vnstat (a console-based network traffic monitor) για να παίρνει τα αποτελέσματα απο την κίνηση σε ένα δικτυακό interface.
2)Χρήσιμο θα φανεί κυρίως σε όσους έχουν mobile internet ή internet με ογκοχρέωση.
3)Η εφαρμογή τρέχει στο system tray και κάνοντάς κλικ στο εικονίδιό της μας εμφανίζει τα αποτελέσματα σε ένα ballon.
Εικόνα
4)Πατώντας δεξί κλικ μας εμφανίζεται το μενού (About,Preferences,Reset Data, Quit).
5)Επιλέγοντας το Preferences μας εμφανίζονται οι ρυθμίσεις:
Εικόνα
πρώτα επιλέγουμε το interface που θα παρακολουθεί.
μετά επιλέγουμε το ελεύθερο όριο κίνησης αν υπάρχει.
μετά επιλέγουμε το ποσό της ογκοχρέωσης και το νόμισμα αν υπάρχει.
τέλος επιλέγουμε τις μέρες μέχρι των μηδενισμό και εκκίνηση απο το μηδέν των μετρητών.
6)Επιλέγοντας το Reset Data μηδενίζονται τα πάντα και πρέπει να κάνουμε ρυθμίσεις απο την αρχή.
7)Για να δουλέψει σωστά η εφαρμογή θα πρέπει να την εκκινήσουμε και να την ρυθμίσουμε την ημέρα που ξεκινάει το πρόγραμμα σύνδεσης.
8)Το tray icon έχει χρώμα πράσινο στην αρχή, μόλις φτάσουμε στο 80%+ του freelimit γίνετε πορτοκαλί.Μόλις φτάσουμε το 100%+ γίνετε κόκκινο.
9)To κόστος αρχίζει να μετράει μόνο αν η κίνηση είναι μεγαλύτερη απο το freelimit.
10)Ακόμα και αν έχουμε κλειστή την εφαρμογή οι μετρήσεις συνεχίζουν να γίνονται.


Προσοχή!
1)Για να είναι σωστά τα αποτελέσματα θα πρέπει να χρησιμοποιούμε την σύνδεση μόνο απο τον χρήστη και το σύστημα στα οποία κάναμε την εγκατάσταση.
2)Η εφαρμογή δεν έχει τεσταριστεί ακόμα πλήρως και ίσως υπάρχουν σημαντικά λογικά λάθη.
3)Η μέτρηση του κόστους δεν είναι 100% αξιόπιστη.
4)Τρέχοντας την εφαρμογή θα σβηστούν όλες οι εώς τώρα βάσεις του vnstat...
5)Θα πρέπει να δοθούν δικαιώματα εκτέλεσής και εγγραφής του vnstat και του καταλόγου όπου μπαίνουν οι βάσεις του απο τους others.


Εγκατάσταση-Απεγκατάσταση
ΠΡΟΣΟΧΗ: Τα παρακάτω δουλεύουν μόνο σε ubuntu (και debian υποθέτω)
Μέσα στο αρχείο που θα κατεβάσουμε υπάρχουν τα install.sh και unistall.sh που κάνουν εγκατάσταση-απεγκατάσταση.
Θα πρέπει να τα εκτελέσουμε με sudo μπροστά στο τερματικό , αφού πλοηγηθούμε στον κατάλογο που αποσυμπιέσαμε.
Μόλις εκτελέσουμε το install.sh θα γίνουν τα παρακάτω:
-Εγκατάσταση εξαρτήσεων (θα πρέπει να έχουμε internet εκείνη την ώρα)
-Δικαιώματα χρήσης του vnstat απο τους othres
-Εγκατάσταση εφαρμογής
Μόλις εκτελέσουμε το uninstall.sh θα γίνουν τα παρακάτω:
-Αφαίρεση των αρχείων της εφαρμογής!
Προσοχή: Οι εξαρτήσεις, τα δικαιώματα και το βοηθητικό αρχείο .qvnstat μέσα στο home θα παραμείνουν και πρέπει να τα αφαιρέσουμε χειροκίνητα.

Εκτέλεση
Η εφαρμογή ανοίγει απο το το μενού->εφαρμογές internet

Κατέβασμα
Κατεβάστε την απο

Τέλος
Η εφαρμογή είναι ακόμη σε BETA TESTING στάδιο.
Όταν και αν γίνει πλήρως λειτουργική και σταθερή θα δοκιμάσω να βγάλω και deb πακέτα...
Δεν έχει προστεθεί ακόμα η βοήθεια και μερικές ακόμη δυνατότητες που έχω στο μυαλό μου...
Επίσης, τα αγγλικά κείμενα είναι λίγο ότι να ναι καθώς δεν την κατέχω και τόσο την αγγλική :mrgreen:
Παρακαλώ όποιος μπορεί να κάνει δοκιμές και να αναφέρει εδώ ότι πρόβλημα εντόπισε ώστε να διορθωθεί.
Επίσης θα χαρώ πολύ να ακούσω προτάσεις, διορθώσεις και παρατηρήσεις...

Αυτά :D
Άβαταρ μέλους
ftso
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 6409
Εγγραφή: 12 Μάιος 2008, 13:40
Τοποθεσία: Αθήνα
IRC: ftso
Εκτύπωση

Re: Qvnstat (Vnstat fronted) -TESTING-

Δημοσίευσηαπό zeusgrs » 27 Ιαν 2009, 16:09

Φαίνεται πάρα πολύ ενδιαφέρων ιδικά για άτομα όπως και εσύ ανέφερες με mobile internet που χρεώνονται με όγκο χρέωση.

Όσο μικρό ή μεγάλο είναι το software που δημιουργεί κάποιος είναι σωτήριο για κάποιον χρήστη που θα το χρειαστεί.

Συγχαρητήρια από την πλευρά μου .
Γνώσεις ⇛ Linux: Καλό ┃ Προγραμματισμός: Ναι PHP, MySQL, Mono, Lazarus ┃ Αγγλικά: Μέτρια
Αδέλφια Linuxades Πολεμήστε για την απελευθέρωση όλων τον PC που βρίσκονται κάτω από Παραθυρική Κατοχή :P
WebBlog: http://www.greeklinux.com
zeusgrs
babeTUX
babeTUX
 
Δημοσιεύσεις: 35
Εγγραφή: 21 Ιαν 2009, 13:57
Εκτύπωση

Re: Qvnstat (Vnstat fronted) -TESTING-

Δημοσίευσηαπό ftso » 27 Ιαν 2009, 16:16

Ευχαριστώ @zeusgrs :)

Δεν χρησιμοποιώ mobile internet όμως :mrgreen:
Το έκανα καθώς έμαθα ότι δεν υπάρχει κάτι αντίστοιχό*

*Σε 8.04 και πιο πριν, όσοι χρησιμοποιούσαν το modem, τους drivers και το πρόγραμμα της vodaphone καλύπτονταν.
Σε 8.10, το mobile Internet modem που δίνει η vodaphone υποστηρίζεται outofbox, έτσι δεν μπορείς να βάλεις το πρόγραμμα και οδηγούς της vodaphone.
Άβαταρ μέλους
ftso
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 6409
Εγγραφή: 12 Μάιος 2008, 13:40
Τοποθεσία: Αθήνα
IRC: ftso
Εκτύπωση

Re: Qvnstat (Vnstat fronted) -TESTING-

Δημοσίευσηαπό Dimitris » 27 Ιαν 2009, 16:18

Συγχαρητήρια και από μένα.

Όταν πάτησα το "εδω" για κατέβασμα το attriderects dε λειτουργησε. Επρεπε να σβήσω ό,τι υπήρχε μετα το .gz
Άβαταρ μέλους
Dimitris
saintTUX
saintTUX
 
Δημοσιεύσεις: 1357
Εγγραφή: 13 Μάιος 2008, 13:57
Τοποθεσία: Θεσσαλονίκη
Εκτύπωση

Re: Qvnstat (Vnstat fronted) -TESTING-

Δημοσίευσηαπό ftso » 27 Ιαν 2009, 16:23

Dimitris έγραψε:Συγχαρητήρια και από μένα.

Ευχαριστώ :)
Dimitris έγραψε:Όταν πάτησα το "εδω" για κατέβασμα το attriderects dε λειτουργησε. Επρεπε να σβήσω ό,τι υπήρχε μετα το .gz

Το έσβησα και άφησα σκέτο το:
http://sites.google.com/site/greekubunt ... tat.tar.gz
Άβαταρ μέλους
ftso
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 6409
Εγγραφή: 12 Μάιος 2008, 13:40
Τοποθεσία: Αθήνα
IRC: ftso
Εκτύπωση

Re: Qvnstat (Vnstat fronted) -TESTING-

Δημοσίευσηαπό dimisKJ » 27 Ιαν 2009, 16:58

Μπραβο ftso, πολυ καλη κινηση... :D

Νομιζω το επομενο βημα θα ειναι να ανανεωνεται σε προγματικο χρονο και να δειχνει τα τρεχοντα download και upload που δινει το

Κώδικας: Επιλογή όλων
vnstat -l


Δωσε μας λιγες πληροφοριες πως εγινε το development. Ποια εργαλεια χρησιμοποιησες, αν και ποια tutorials διαβασες... Ειμαι σιγουρος οτι υπαρχουν πολλοι που εχουν βασεις πανω σε αντικειμενοστραφη προγραμματισμο (πχ Java), αλλά δεν κατεχουν python κ qt4, και θα τα βρουν χρησιμα.
Επίπεδο Γνώσεων Linux: Μέτριο - Προγραμματισμός: Ναί - Αγγλικά: Καλά
Ubuntu 10.10 (32bit)
Acer Aspire 1692: Intel M740 (1.73GHz) / ATI Mobility Radeon X600 (M24 3150)/ 2GB DDR /Intel AC'97 Audio/
Intel PRO/Wireless 2200BG / 15.4" WXGA
Άβαταρ μέλους
dimisKJ
babeTUX
babeTUX
 
Δημοσιεύσεις: 94
Εγγραφή: 26 Σεπ 2008, 01:59
Τοποθεσία: Σερρες
Εκτύπωση

Re: Qvnstat (Vnstat fronted) -TESTING-

Δημοσίευσηαπό ftso » 27 Ιαν 2009, 17:16

@dimisKJ, αν κάνεις κλικ στο κουμπί, το ballon θα βγάλει τα τελευταία αποτελέσματα.
Αλλιώς η εφαρμογή ανανεώνεται κάθε 10 λεπτά (ανανεώνοντας ταυτόχρονα και τις βάσεις του vnstat).
To vnstat ανανεώνει τις βάσεις του νομίζω κάθε 5 λεπτά.

Ως τώρα οι μόνες γλώσσες που είχα προγραμματίσει ήταν η java (+ swing), bash script και kommander script.

Java και bash script γράφω πάντα με τον kate (κειμενογράφος του kde).
kommander γράφω με τον kommander-editor.
Για το swing χρησιμοποιώ netbeans και μετά πέρνω τον κώδικα και τον προσαρμόζω στο kate.

Όπως έκανα με την java+swing έκανα και για την εφαρμογή εδώ.

Γράφω python κώδικα σε kate.
Για qt χρησιμοποίησα τον Qt 4 Designer. Αυτός φτιάχνει ένα xml αρχείο.
Βάζω το αρχείο αυτό στο pyuic4 (command απο το πακέτο python-qt4) και μου βγάζει κώδικα python, τον οποίο μετά βάζω στο kate και τον προσαρμόζω.

Για python υπάρχουν αρκετά εγχειρίδια στο google.
Για pyQt δεν υπάρχει σχεδόν τίποτα! Κοιτάς το documentation της Qt εδώ (http://doc.trolltech.com/4.0/classes.html) και το προσαρμόζεις σε python.

Αυτά :D
Άβαταρ μέλους
ftso
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 6409
Εγγραφή: 12 Μάιος 2008, 13:40
Τοποθεσία: Αθήνα
IRC: ftso
Εκτύπωση

Re: Qvnstat (Vnstat fronted) -TESTING-

Δημοσίευσηαπό ftso » 28 Ιαν 2009, 03:29

Ενημέρωση 1
Έκανα κάποιες διορθώσεις.
Όσοι δοκιμάζουν την εφαρμογή θα πρέπει να ξανά κατεβάσουν το αρχείο και να ξανά εκτελέσουν το install.sh (το unistall.sh δεν χρειάζεται)
έχοντας την εφαρμογή κλειστή.

Μετά μπορούν να την ξανα ανοίξουν και να συνεχίσουν απο εκεί που την σταμάτησαν.
Τίποτα δεν θα χαθεί απο τα ως τώρα δεδομένα και ρυθμίσεις.
Άβαταρ μέλους
ftso
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 6409
Εγγραφή: 12 Μάιος 2008, 13:40
Τοποθεσία: Αθήνα
IRC: ftso
Εκτύπωση

Re: Qvnstat (Vnstat fronted) -TESTING-

Δημοσίευσηαπό ktogias » 02 Φεβ 2009, 00:06

Συγχαρητήρια για την ftso! Είναι μια εφαρμογή που πραγματικά χρειάζεται. Καλό θα ήταν να δημιουργήσεις ένα project στο sourceforge και να συνεχίσουμε εκεί μαζί με την κοινότητα την εξέλιξη της, με svn και όλα τα απαραίτητα εργαλεία.
ktogias
dudeTUX
dudeTUX
 
Δημοσιεύσεις: 305
Εγγραφή: 10 Μάιος 2008, 22:52
IRC: ktogias
Εκτύπωση

Re: Qvnstat (Vnstat fronted) -TESTING-

Δημοσίευσηαπό simosx » 02 Φεβ 2009, 00:19

Πολύ όμορφη δουλειά.

Μπορείς να επιλέξεις να βάλεις τα αρχεία στο github.com (επιτρέπει δωρεάν 100ΜΒ χώρο), και οι υπόλοιποι μπορούν να βοηθήσουν στην ανάπτυξη μέσα από το «social development».
προσωπικό ιστολόγιο ϗ πλανήτης Ubuntu-gr
Συμβάλετε και εσείς στο ελληνικό βιβλίο Ubuntu!
1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 13.10 saucy 3.11.0-031100rc1-generic 64bit (el_GR.UTF-8, Unity ubuntu)
3 AMD E-450 APU with Radeon HD Graphics ‖ RAM 3555 MiB ‖ Sony Corporation VAIO
4 AMD nee ATI Wrestler [Radeon HD 6320] [1002:9806] {fglrx_pci}
5 eth0: Atheros Inc. AR8151 v2.0 Gigabit Ethernet [1969:1083] (rev c0) ⋮ wlan0: Atheros Inc. AR9285 [168c:002b] (rev 01)
Φτιάξτε και εσείς τη δική σας υπογραφή (παραπάνω κείμενο) αυτόματα με κλικ εδώ!
simosx
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 10334
Εγγραφή: 11 Μάιος 2008, 18:52
Launchpad: simosx
IRC: simosx
Εκτύπωση

Επόμενο

Επιστροφή στο Ανάπτυξη Λογισμικού / Αλγόριθμοι