dovecotDev Δημοσ. 22 Ιουλίου 2021 Δημοσ. 22 Ιουλίου 2021 (επεξεργασμένο) _ _ _ _ __ __ _ ___| |_ __| |___| (_)_ __ / _| ___ / _` |/ _ \ __/ _` / __| | | '_ \| |_ / _ \ | (_| | __/ || (_| \__ \ | | | | | _| (_) | \__, |\___|\__\__,_|___/_|_|_| |_|_| \___/ |___/ Καλησπέρα, Το getdslinfo είναι ένα scriptάκι που εμφανίζει την κατάσταση της xDSL γραμμής. Καλεί την IP διεύθυνση του modem, παίρνει τις πληροφορίες σε μορφή XML και δημιουργεί ένα ascii πινακάκι με την ταχύτητα. Υποστηρίζει μόνο το Speedport Entry 2i. Είναι ένα απλό και βρώμικο bash scriptάκι, που έφτιαξα για να βλέπω την τραγική σύνδεση μου στο internet. Μπορεί να φανεί χρήσιμο και σε κάποιον άλλο ταλαίπωρο άνθρωπο. Ευχαριστώ. ΥΓ: Άλλα βρώμικα scriptάκια: BGchaos - Χαοτική φωτογραφία φόντου Κατέβασμα επεισοδίων από το tvopen.gr (Open TV) gnomid - Κατεβαστίρι αποφθεγμάτων και γνωμικών WCD - Κατεβαστίρι φόντου SamCleaner - Η καθαρίστρια του android Κατέβασμα επεισοδίων από το skaitv.gr getdslinfo.zip Επεξ/σία 22 Ιουλίου 2021 από dovecotDev 4
dovecotDev Δημοσ. 22 Ιουλίου 2021 Μέλος Δημοσ. 22 Ιουλίου 2021 Αποφεύγω τα Microsoft προϊόντα. Για δουλειά προτιμώ το gitlab, και για τα βρώμικα scriptάκια μου προτιμώ το insomnia. 1
jim_p Δημοσ. 23 Ιουλίου 2021 Δημοσ. 23 Ιουλίου 2021 Πριν 3-4 μηνες ανακαλυψα το xml του 2i και προσπαθουσα να δειξω κατι απο τα οσα λεει στο conky μου, αλλα δεν καταφερα τιποτα. Ειναι ευκολο να προστεθουν και αλλα στοιχεια εκει, πχ τα attenuation και snr?
jemadux Δημοσ. 23 Ιουλίου 2021 Δημοσ. 23 Ιουλίου 2021 18 ώρες πριν, dovecotDev είπε Αποφεύγω τα Microsoft προϊόντα. Για δουλειά προτιμώ το gitlab, και για τα βρώμικα scriptάκια μου προτιμώ το insomnia. δεν αντιλέγω αλλά καπου πρέπει να βαλουμε τον κωδικα μας ... ο καθενας βαζει το κωδικα του εκει που θελει ... γενικα θα πρέπει ενα αποθετήριο πιστεύω 1
dovecotDev Δημοσ. 23 Ιουλίου 2021 Μέλος Δημοσ. 23 Ιουλίου 2021 Ναι είναι πολύ εύκολο, παίρνοντας το ParaName σαν κλειδί στο dictionary STATUSDIC, π.χ. το Upstream_current_rate από το XML είναι το variable: ${STATUSDIC["Upstream_current_rate"]} Εδώ είναι το XML που παρέχει το modem: <ajax_response_xml_root> <IF_ERRORPARAM>SUCC</IF_ERRORPARAM> <IF_ERRORTYPE>SUCC</IF_ERRORTYPE> <IF_ERRORSTR>SUCC</IF_ERRORSTR> <IF_ERRORID>0</IF_ERRORID> <OBJ_DSLINTERFACE_ID> <Instance> <ParaName>_InstID</ParaName> <ParaValue>IGD.WD1.WDCfg</ParaValue> <ParaName>Upstream_noise_margin</ParaName> <ParaValue>120</ParaValue> <ParaName>Upstream_current_rate</ParaName> <ParaValue>738</ParaValue> <ParaName>Downstream_noise_margin</ParaName> <ParaValue>112</ParaValue> <ParaName>Downstream_current_rate</ParaName> <ParaValue>11904</ParaValue> <ParaName>UpCrc_errors</ParaName> <ParaValue>63</ParaValue> <ParaName>Downstream_attenuation</ParaName> <ParaValue>304</ParaValue> <ParaName>Fec_errors</ParaName> <ParaValue>8136</ParaValue> <ParaName>Status</ParaName> <ParaValue>Up</ParaValue> <ParaName>DownCrc_errors</ParaName> <ParaValue>259</ParaValue> <ParaName>Atuc_fec_errors</ParaName> <ParaValue>26</ParaValue> <ParaName>Upstream_attenuation</ParaName> <ParaValue>191</ParaValue> <ParaName>Module_type</ParaName> <ParaValue>VDSL2</ParaValue> </Instance> </OBJ_DSLINTERFACE_ID> <OBJ_DEVINFO_ID> <Instance> <ParaName>_InstID</ParaName> <ParaValue>IGD</ParaValue> <ParaName>SoftwareVer</ParaName> <ParaValue>V1.0.0_OTET14MAPEA</ParaValue> <ParaName>SerialNumber</ParaName> <ParaValue>111111111111111</ParaValue> </Instance> </OBJ_DEVINFO_ID> <OBJ_LEDSTATUS_ID> <Instance> <ParaName>LEDStatus</ParaName> <ParaValue>Up</ParaValue> </Instance> </OBJ_LEDSTATUS_ID> </ajax_response_xml_root> 6 ώρες πριν, jim_p είπε Πριν 3-4 μηνες ανακαλυψα το xml του 2i και προσπαθουσα να δειξω κατι απο τα οσα λεει στο conky μου, αλλα δεν καταφερα τιποτα. Ειναι ευκολο να προστεθουν και αλλα στοιχεια εκει, πχ τα attenuation και snr?
elvizakos Δημοσ. 26 Ιουλίου 2021 Δημοσ. 26 Ιουλίου 2021 Στις 23/7/2021 στις 12:03 ΜΜ, jim_p είπε Πριν 3-4 μηνες ανακαλυψα το xml του 2i και προσπαθουσα να δειξω κατι απο τα οσα λεει στο conky μου, αλλα δεν καταφερα τιποτα. Ειναι ευκολο να προστεθουν και αλλα στοιχεια εκει, πχ τα attenuation και snr? Μπορείς να πάρεις μεμονωμένες τιμές με το xmlstarlet και xpath κάπως έτσι: #!/bin/bash # Τιμή του Downstream_attenuation curl --silent http://192.168.1.1/common_page/status_info_lua.lua | xmlstarlet sel -t -c "//*/ParaName[text() = 'Downstream_attenuation']/following-sibling::ParaValue[1]/text()" # Τιμή του Upstream_attenuation curl --silent http://192.168.1.1/common_page/status_info_lua.lua | xmlstarlet sel -t -c "//*/ParaName[text() = 'Upstream_attenuation']/following-sibling::ParaValue[1]/text()" # Τιμή του Downstream_current_rate, μετατροπή σε mbps echo "$(echo "scale=3;$(curl --silent http://192.168.1.1/common_page/status_info_lua.lua | xmlstarlet sel -t -c "//*/ParaName[text() = 'Downstream_current_rate']/following-sibling::ParaValue[1]/text()") / 1000" | bc -l) mbps" # Τιμή του Upstream_current_rate, μετατροπή σε mbps echo "$(echo "scale=3;$(curl --silent http://192.168.1.1/common_page/status_info_lua.lua | xmlstarlet sel -t -c "//*/ParaName[text() = 'Upstream_current_rate']/following-sibling::ParaValue[1]/text()") / 1000" | bc -l) mbps" # SNR downstream db echo "$(echo "scale=1;$(curl --silent http://192.168.1.1/common_page/status_info_lua.lua | xmlstarlet sel -t -c "//*/ParaName[text() = 'Downstream_noise_margin']/following-sibling::ParaValue[1]/text()") / 10" | bc -l) snr" # SNR upstream db echo "$(echo "scale=1;$(curl --silent http://192.168.1.1/common_page/status_info_lua.lua | xmlstarlet sel -t -c "//*/ParaName[text() = 'Upstream_noise_margin']/following-sibling::ParaValue[1]/text()") / 10" | bc -l) snr"
PC_MAGAS Δημοσ. 27 Ιουλίου 2021 Δημοσ. 27 Ιουλίου 2021 Στις 22/7/2021 στις 8:52 ΜΜ, dovecotDev είπε Αποφεύγω τα Microsoft προϊόντα. Για δουλειά προτιμώ το gitlab, και για τα βρώμικα scriptάκια μου προτιμώ το insomnia. Μπορείς για τα βρώμικα να έχει μόνο και μόνο 1 gitlab repository. Σε τι router είναι δεδοκιμασμένο; Σκεύτομουν αν μπορούσα να το έκανα systemd service και να καταγράφει ιστορικά στοιχεία σε sqlite ώστε όταν έρχετε τεχνικός να έχω κάτι να δείξω ;). 1
elvizakos Δημοσ. 27 Ιουλίου 2021 Δημοσ. 27 Ιουλίου 2021 59 λεπτά πριν, PC_MAGAS είπε Σε τι router είναι δεδοκιμασμένο Αυτό το URL νομίζω δουλεύει μόνο στο speedport entry 2i. Με μια αναζήτηση στο νετ, σε νεότερα δουλεύει το http://<ROUTER_IP>/data/Status.json (με τα δεδομένα σε μορφή JSON προφανώς). Μια πρόταση για το script: αν δεν έχει δοθεί ως παράμετρος, μπορείς να βρεις την IP του router έτσι ip r | sed -n 1p | cut -d' ' -f3
dovecotDev Δημοσ. 27 Ιουλίου 2021 Μέλος Δημοσ. 27 Ιουλίου 2021 Είναι μόνο για το Speedport Entry 2i. Δεν γνωρίζω αν άλλα modemάκια έχουν την δυνατότητα να παρέχουν δεδομένα γραμμής χωρίς login. Ωραίο θα ήταν να υπήρχε αυτή η δυνατότητα και στα Oxygen που είναι αρκετά διαδεδομένα. Με λίγες γραμμές bash, το scriptάκι μπορεί να καταχωρεί και σε sqlite ή σε ένα απλό CSV. Ωραία ιδέα αλλά ελπίζω να έχω σύντομα starlink, γιατί δεν αντέχω άλλο με πOTE, μέχρι να γράψω αυτό το κείμενο το internet έπεσε 3 φορές.... 1 ώρα πριν, PC_MAGAS είπε Μπορείς για τα βρώμικα να έχει μόνο και μόνο 1 gitlab repository. Σε τι router είναι δεδοκιμασμένο; Σκεύτομουν αν μπορούσα να το έκανα systemd service και να καταγράφει ιστορικά στοιχεία σε sqlite ώστε όταν έρχετε τεχνικός να έχω κάτι να δείξω ;).
jim_p Δημοσ. 27 Ιουλίου 2021 Δημοσ. 27 Ιουλίου 2021 Για το speedport plus, το αρχειο ειναι το http://192.168.1.1/data/Status.json Περισσοτερες πληροφοριες εδω https://github.com/nikolas-n/Speedport-Plus-Cosmote-Router-hacks
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα