Hi,
ich habe mir speedtest-cli auf dem pi geladen:
wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest_cli.py
chmod +x speedtest-cli
sudo mv speedtest-cli /usr/local/bin
und das in fhem konfigutiert:
#Speedtest
define speedtest speedtest 1800 3313
attr speedtest path /usr/local/bin
attr speedtest room Speedtest
attr speedtest verbose 5
Führe ich es im Terminal aus, klappt es wunderbar. Leider nicht über fhem. Beim statusRequest steht dann immer folgendes im Log:
2015.10.04 23:35:21 5: starting speedtest
Traceback (most recent call last):
File "/opt/fhem/speedtest-cli", line 796, in <module>
main()
File "/opt/fhem/speedtest-cli", line 790, in main
speedtest()
File "/opt/fhem/speedtest-cli", line 610, in speedtest
build_user_agent()
File "/opt/fhem/speedtest-cli", line 197, in build_user_agent
'(%s; U; %s; en-us)' % (platform.system(), platform.architecture()[0]),
File "/usr/lib/python2.7/platform.py", line 1333, in system
return uname()[0]
File "/usr/lib/python2.7/platform.py", line 1300, in uname
processor = _syscmd_uname('-p','')
File "/usr/lib/python2.7/platform.py", line 1035, in _syscmd_uname
rc = f.close()
IOError: [Errno 10] No child processes
Könnt ihr mir da helfen?
VG
Malmor
Servus,
konntest du das Problem beheben? Ich habe meinen raspberryPi neu aufgesetzt und habe nun das gleiche Problem..
Beste Grüße
Andy
Hallo,
ich hatte das gleiche Problem. Bei mir auf dem BananaPi ist Python 2.7.3 installiert. Nach etwas suchen ist mir aufgefallen das Python 3 auch noch mit installiert ist.
Also hab ich kurzerhand die speedtest-cli geändert.
Erste Zeile
#!/usr/bin/env python
zu
#!/usr/bin/env python3
geändert.
Und siehe da, es läuft ohne Probleme.
Grüße
Marcel
super! Der Hinweis hat bei mir funtioniert.
Danke für die Hilfe ramirez :) :) :)
Beste Grüße
Andy
Moin zusammen,
ich stehe vor dem gleichen Problem:
python -V => Python 2.7.9
define LTE_speedtest speedtest 1800
attr LTE_speedtest group Internet
attr LTE_speedtest path /usr/local/bin
attr LTE_speedtest room Schnittstellen
über Konsole:
osmc@fhemServer:/usr/local/bin$ speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Deutsche Telekom AG (xx.yyy.xx.yyy)...
Selecting best server based on latency...
Hosted by SoftLayer Technologies, Inc. (Frankfurt) [100.73 km]: 50.697 ms
Testing download speed........................................
Download: 14.53 Mbit/s
Testing upload speed..................................................
Upload: 9.81 Mbit/s
in FhemLog:
2015.11.25 09:24:43 5: starting speedtest
Traceback (most recent call last):
File "/opt/fhem/speedtest/speedtest-cli", line 796, in <module>
main()
File "/opt/fhem/speedtest/speedtest-cli", line 790, in main
speedtest()
File "/opt/fhem/speedtest/speedtest-cli", line 610, in speedtest
build_user_agent()
File "/opt/fhem/speedtest/speedtest-cli", line 197, in build_user_agent
'(%s; U; %s; en-us)' % (platform.system(), platform.architecture()[0]),
File "/usr/lib/python2.7/platform.py", line 1333, in system
return uname()[0]
File "/usr/lib/python2.7/platform.py", line 1300, in uname
processor = _syscmd_uname('-p','')
File "/usr/lib/python2.7/platform.py", line 1035, in _syscmd_uname
rc = f.close()
IOError: [Errno 10] No child processes
2015.11.25 09:24:43 5: speedtest done
2015.11.25 09:24:43 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_speedtest.pm line 140.
2015.11.25 09:24:43 5: speedtest_SpeedtestDone: LTE_speedtest|||
Hat jemand eine Idee?
EDIT:
-rwxr-xr-x 1 root staff 24994 Nov 25 08:36 speedtest-cli
greetz RockSteadyBeat
Hallo RockSteadyBeat,
schon mal meinen Lösungsvorschlag von weiter oben ausprobiert?
Gruß
Marcel
Gesendet von meinem Nexus 6 mit Tapatalk
Hallo ramirez,
wie stelle ich denn fest ob neben python 2.7.9
python -V
noch eine zweite python Version vorhanden ist?
greetz RockSteadyBeat
Einfach mal python3 -V eingeben.
-bash: python3: Kommando nicht gefunden
;D
Also, kein python3...
greetz RockSteadyBeat
Soooooo,
eben mal schnell sudo apt-get install build-essential && sudo apt-get install python-software-properties
somit python3.4.2 nachinstalliert und man glaubt es kaum, es funktioniert...
Danke bis dahin ramirez... ;D
Hallo,
habe auch Probleme mit dem speedtest-cli Programm.
Wenn ich das in der shell aufrufe:
sudo speedtest-cli
bekomme ich eine Meldung: ...failed to parse...
Wenn ich dann die erste Zeile vom speedtest-cli von
#!/usr/bin/env python
auf
#!/usr/bin/env python3
ändere und auch
sudo apt-get install build-essential && sudo apt-get install python-software-properties
ausführe,
sagt er dann, das alles up-to-date sei. Die python-Version ist 3.4.
Nun bekomme ich bei: dudo speedtest-cli
folgende Meldung:
Traceback (most recent call last):
File "/usr/bin/speedtest-cli", line 5, in <module>
from pkg_resources import load_entry_point
ImportError: No module named 'pkg_resources'
Was und wie muss ich da nachinstallieren?
Elektrolurch
wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py -O - | python
(If you have any version of distribute, or any setuptools below 0.6, you will have to uninstall it first.)
Quelle: http://stackoverflow.com/questions/7446187/no-module-named-pkg-resources
Ungestestet.
Ok. Danke. Werde ich ausprobieren. Frage mich nur, warum das Paket nicht in der Standard-Debian-Installation mitgekommen ist.... Da schweben Fragezeichen über meinem Hirn :-)
Hallo..
Hat jemand einen Tipp für mich?
Aus der Komandozeile funktioniert bei mir der speedtest..
in FHEM kommt zwar zunächst "Initialized"... wenn ich aber set speedtest Statusrequest auslöse kommt zunächst "running", kurz darauf "failed".
Ich habe schon die hier im Forum beschriebenen Änderungen an "sudo speedtest-cli" in Bezug auf Python versucht.. ohne Erfolg.
Wie komme ich an ein Logfile oder "Monitor" der mir den Grund zeigt? Bin leider nicht so der Linux-Spezialist..
Config:
# Speedtest
define speedtest speedtest
attr speedtest path /usr/local/bin
define FileLog_speedtest FileLog ./log/speedtest-%Y.log speedtest:.*
attr FileLog_speedtest logtype text
define wl_speedtest SVG FileLog_speedtest:speedtest3:CURRENT
Derzeit in speedtest-cli:
#!/usr/bin/env python
im Bash:
XXX@pi /usr/local/bin $ /usr/local/bin/speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Deutsche Telekom AG (87.135.86.65)...
Selecting best server based on latency...
Hosted by Vodafone DE (Frankfurt) [100.73 km]: 50.651 ms
Testing download speed........................................
Download: 20.60 Mbit/s
Testing upload speed..................................................
Upload: 7.15 Mbit/s
Kann mir jemand helfen?
Hallo,
bei mir geht es trotz der Ergänzungen von python auch in der shell nicht mehr.
Elektrolurch
auf meinem system musste ich nach dem letzten spendetest update in speedtest-cli die zeile '(%s; U; %s; en-us)' % (platform.system(), platform.architecture()[0]),
auskommentieren damit es wieder geht.
gruss
andre
Auf der Kommandozeile klappt der Aufruf - siehe Screenshot1.
Aus FHEM kommt folgende Medlung im Logfile:
Zitaturllib2.HTTPError: HTTP Error 302: The HTTP server returned a redirect error that would lead to an infinite loop.
Letzter Abruf in FHEM war heute um 12:55:45 lt. Readings.
@andre
Die Zeile gibt es in meiner speedtest-cli nicht :o
dann hast du keine aktuelle version
Das glaub ich dir aufs Wort ;D
Dennoch wurden bis 12:55:45 durch FHEM die Werte korrekt abgerufen und über die Kommandozeile klappt es ja immer noch.
schau mal ob die aktuelle version besser geht. ich musste anfang januar aktualisieren weil es plötzlich nicht mehr ging.
Mach ich - muss ich jetzt auch.
Eben nochmal über die Kommandozeile versucht und - Aus und vorbei.
Gleiche Fehlermeldung wie im FHEM-Logfile.
und nimm mal auf der kommandozeile die gleichen option die das FHEM modul verwendet.
So, eben die aktuelle speedtest-cli eingespielt und die Änderung eingepflegt und --- läuft wieder.
Ich hab in FHEM nur das nackte define ohne irgendwas und das einzige Attribut ist der Pfad nach /usr/local/bin
Edith: Danke für das Schubsen 8)
na also.
FHEM verwenden auf jeden fall immer --simple
... jetzt hab ich endlich mal mein Logfile gefunden ;-)
Ich habe speedtest-cli nochmal neu installiert.. Gleiches Ergebnis.. im der Commandline läuft es, in FHEM nicht.
Log:
Traceback (most recent call last):
File "/usr/local/bin/speedtest-cli", line 796, in <module>
main()
File "/usr/local/bin/speedtest-cli", line 790, in main
speedtest()
File "/usr/local/bin/speedtest-cli", line 610, in speedtest
build_user_agent()
File "/usr/local/bin/speedtest-cli", line 197, in build_user_agent
'(%s; U; %s; en-us)' % (platform.system(), platform.architecture()[0]),
File "/usr/lib/python2.7/platform.py", line 1306, in system
return uname()[0]
File "/usr/lib/python2.7/platform.py", line 1273, in uname
processor = _syscmd_uname('-p','')
File "/usr/lib/python2.7/platform.py", line 1030, in _syscmd_uname
rc = f.close()
IOError: [Errno 10] No child processes
2016.01.12 17:23:57 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_speedtest.pm line 140.
2016.01.12 17:23:57 1: PERL WARNING: Use of uninitialized value $a[1] in string eq at ./FHEM/32_speedtest.pm line 158.
Jemand ein Tipp?
Ja, andre.
http://forum.fhem.de/index.php/topic,41804.msg390094.html#msg390094 (http://forum.fhem.de/index.php/topic,41804.msg390094.html#msg390094)
speedtest-cli mit nano (oder vi) öffnen, Zeile suchen, # davor, abspeichern und nochmal probieren.
Super! Das war´s..
Jetzt läuft alles! Vielen Dank!!!
Wieso ist diese Zeile dann überhaupt vorhanden? Wird sie für andere Hardware benötigt?
Sagt mal...
Kann es sein, dass mein Raspi (Modell 2) nicht in der Lage ist, mehr als 20 MBit/s zu ziehen?
Mein DSL gibt 100Mbit/s her und der Speedtest kommt nicht über 20...
Andere Geräte schon...
???
Hallo,
in meiner 32_speedtest habe ich folgendes gefunden. Ich hatte mich gewundert, dass auf der shell "speedtest" funktioniert, aber in fhem in den readings nur "-" stehen.
Nach dem ich unten die eine Zeile auskommentiert habe, geht es nun auch in fhem:
sub
speedtest_DoSpeedtest($)
{
my ($string) = @_;
my ($name, $server) = split("\\|", $string);
my $cmd = AttrVal($name, "path", "/usr/bin" );
$cmd .= "/speedtest --simple";
$cmd .= " --server $server" if( $server );
Log3 $name, 5, "starting speedtest";
my $speedstr = qx($cmd);
Log3 $name, 5, "speedtest done: $speedstr";
my @speedarr = split(/\n/, $speedstr);
for( my $i = 0; $i < 3; ++$i )
{
# das hier habe ich auskommentiert.
# $speedarr[$i] = '-';
$speedarr[$i] = $1 if( $speedarr[$i] && $speedarr[$i] =~ m/^\w+: (.*)/i );
}
return "$name|$speedarr[0]|$speedarr[1]|$speedarr[2]";
Zuerst den Inhalt mit "-" überschreiben und danach nach Inhalt suchen, geht doch so nicht?
Elektrolurch
die zeile die du auskommentierst hat gibt es bei mir nicht und auch im cvs ist sie nicht vorhanden.
ich habe keine idee wo die bei dir her kommt. mach mal ein update 32_speedtest.pm
gruss
andre
@Hitcher
Auf meinem RasPi meldet speedtest 52.5 MBit/sec.
Zitat von: justme1968 am 12 Januar 2016, 15:01:04
auf meinem system musste ich nach dem letzten spendetest update in speedtest-cli die zeile '(%s; U; %s; en-us)' % (platform.system(), platform.architecture()[0]),
auskommentieren damit es wieder geht.
gruss
andre
Genau so geht's ::)
Danke!
Hi,
habe den eigentlichen Grund gefunden: in der fhem.pl wird das Signal SIGCHLD auf Ignore gesetzt. Das wird dann an speedtest-cli vererbt. Python braucht das aber, um bestimmte Subprozesse sinnvoll zu behandeln. In unserem Problem wird "uname -p" aufgerufen und ist schneller beendet, als python die drei Zeilen abarbeitet. Und dann bei f.close() geht es schief, weil das Signal "uname -p ist gestorben" nicht angekommen war.
Klar, der Workaround oben klappt. Ich würde hier aber vielleicht statt auskommentieren, es einfach fix setzen. Also z.B.:
# speedtest-cli um zeile 1035
ua_tuple = (
'Mozilla/5.0',
'(Linux; U; 64Bit; en-us)', # <- das hier passt zu meinem system
'Python/%s' % platform.python_version(),
'(KHTML, like Gecko)',
Etwas universeller: ganz oben in der Datei die Signalbehandlung für speedtest-cli und alle Subprozesse wieder auf normal setzen:
import threading
__version__ = '0.3.4'
signal.signal(signal.SIGCHLD, signal.SIG_DFL)
# Some global variables we use
user_agent = None
Die Lösung hat den Vorteil, dass sie auch klappt, wenn bei speedtest-cli in zukünftigen Versionen noch weitere Aufrufe dazukämen, die am gleichen Grund scheitern.
Gruß
Axel
klasse. sehr gut.
ich würde es aber ganz anders lösen und auf FHEM seite den signal handler nach dem fork und vor dem exec wieder auf default setzen.
es könnte noch andere stellen geben bei denen das dann hilft.
gruss
andre
Dem einen sein Python ist dem anderen sein Perl. Da ich innerhalb FHEM so noch gar nix gemacht habe, waren mir eventuelle Nebenwirkungen nicht überschaubar. Aber im Grunde hatte ich vor meinem Fix auch danach gesucht, weil das wäre natürlich noch besser.
Gruß
Axel
es auf fhem seite zu lösen hat halt auch den vorteil das es ein für alle mal und für alle module repariert ist. ausserdem ist es nur eine zeile: https://forum.fhem.de/index.php/topic,50898.0.html (https://forum.fhem.de/index.php/topic,50898.0.html).
gruss
andre
rudi hat den fix eingecheckt. ab morgen müsste es also auch ohne änderungen an speedtest gehen.
gruss
andre
Hallo zusammen,
ich komme leider nicht weiter. Achtung: Newbie-Gefahr
Auf meinem Raspberry läuft Jessie und Python 2.7. Also habe ich in der ersten Zeile vom Skript, wie im Wiki beschrieben, "Python" durch "Python3" ersetzt. Auch die hier im Thread genannte Zeile habe ich auskommentiert. In Fhem tut sich weiterhin nichts. Über den Shell Zugriff funktioniert es ohne Probleme. In Fhem bekomme ich lediglich folgende Meldung im Logfile, nachdem ich Verbose auf 5 gesetzt habe:
016.08.07 01:50:03 5: starting speedtest
2016.08.07 01:50:05 5: speedtest done
2016.08.07 01:50:05 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_speedtest.pm line 140.
2016.08.07 01:50:05 5: speedtest_SpeedtestDone: Speedtest|Invalid server ID||
Ich habe keine Ahnung, was ich damit nun anfangen soll bzw. wo es nun noch hakt. Ich hoffe ihr könnte mir helfen. Vielen Dank.
Zitat von: GrandJury am 07 August 2016, 02:08:01
Hallo zusammen,
ich komme leider nicht weiter. Achtung: Newbie-Gefahr
Auf meinem Raspberry läuft Jessie und Python 2.7. Also habe ich in der ersten Zeile vom Skript, wie im Wiki beschrieben, "Python" durch "Python3" ersetzt. Auch die hier im Thread genannte Zeile habe ich auskommentiert. In Fhem tut sich weiterhin nichts. Über den Shell Zugriff funktioniert es ohne Probleme. In Fhem bekomme ich lediglich folgende Meldung im Logfile, nachdem ich Verbose auf 5 gesetzt habe:
016.08.07 01:50:03 5: starting speedtest
2016.08.07 01:50:05 5: speedtest done
2016.08.07 01:50:05 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_speedtest.pm line 140.
2016.08.07 01:50:05 5: speedtest_SpeedtestDone: Speedtest|Invalid server ID||
Ich habe keine Ahnung, was ich damit nun anfangen soll bzw. wo es nun noch hakt. Ich hoffe ihr könnte mir helfen. Vielen Dank.
Hast du denn eine valide Server ID mit definiert? Sieht nämlich nicht so aus.
Gruß
Dan
Zitat von: DeeSPe am 07 August 2016, 04:08:29
Hast du denn eine valide Server ID mit definiert? Sieht nämlich nicht so aus.
Gruß
Dan
Hi Dan,
wie und wo muss ich denn das durchführen? Sorry wenn ich da jetzt vielleicht blöd argumentiere, aber via Shell läuft ja scheinbar alles ohne Probleme. Muss ich beim Modul noch was anpassen?
Zitat von: GrandJury am 07 August 2016, 15:18:25
Hi Dan,
wie und wo muss ich denn das durchführen? Sorry wenn ich da jetzt vielleicht blöd argumentiere, aber via Shell läuft ja scheinbar alles ohne Probleme. Muss ich beim Modul noch was anpassen?
Ich benutze das Modul nicht und kenne es auch nicht. Schaue ich aber kurz in die commandref, so denke ich ist dort alles wunderbar beschrieben. Hast Du den Server auf der Shell ermittelt und dann beim define mit angegeben (so habe ich es verstanden)?
Gruß
Dan
Zitat von: DeeSPe am 07 August 2016, 15:21:54
Schaue ich aber kurz in die commandref, so denke ich ist dort alles wunderbar beschrieben. Hast Du den Server auf der Shell ermittelt und dann beim define mit angegeben (so habe ich es verstanden)?
Gruß
Dan
Danke dir. Ich hatte gedacht, ich hänge an einer komplizierten Geschichte fest. Habe nun den richtigen Server gesetzt und es funktioniert sowohl mit als auch ohne den optionalen Werten. Das Problem saß also mal wieder vor dem PC ;)
Danke Dan. :)
Typischer Fall von PEBKAC (https://de.wiktionary.org/wiki/PEBKAC). ;)
Gruß
Dan
Hallo,
seit dem gestrigen update von speedtest bekomme ich folgende Fehlermeldung im Log:
Traceback (most recent call last):
File "/usr/local/speedtest-cli/speedtest-cli", line 5, in <module>
from pkg_resources import load_entry_point
File "<frozen importlib._bootstrap>", line 2237, in _find_and_load
File "<frozen importlib._bootstrap>", line 2226, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 1191, in _load_unlocked
File "<frozen importlib._bootstrap>", line 1161, in _load_backward_compatible
File "/usr/local/lib/python3.4/dist-packages/setuptools-19.1.1-py3.4.egg/pkg_resources/__init__.py", line 3138, in <module>
File "/usr/local/lib/python3.4/dist-packages/setuptools-19.1.1-py3.4.egg/pkg_resources/__init__.py", line 3124, in _call_aside
File "/usr/local/lib/python3.4/dist-packages/setuptools-19.1.1-py3.4.egg/pkg_resources/__init__.py", line 3151, in _initialize_master_working_set
File "/usr/local/lib/python3.4/dist-packages/setuptools-19.1.1-py3.4.egg/pkg_resources/__init__.py", line 661, in _build_master
File "/usr/local/lib/python3.4/dist-packages/setuptools-19.1.1-py3.4.egg/pkg_resources/__init__.py", line 962, in require
File "/usr/local/lib/python3.4/dist-packages/setuptools-19.1.1-py3.4.egg/pkg_resources/__init__.py", line 849, in resolve
pkg_resources.DistributionNotFound: The 'speedtest-cli==0.3.1' distribution was not found and is required by the application
2016.08.23 15:17:51 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_speedtest.pm line 140.
Offensichtlich wird da wohl eine lib gesucht, die es nicht mehr gibt.
sudo apt-get install speedtest-cli
sagt aber, dass speedtest-cli uptodate ist.
Was muss da und wie aktualisiert werden, damit speedtest wieder funktioniert?
Habe jetzt erst mal die Vorgängerversion wieder zurückgespielt, die funktioniert wieder.
Elektrolurch
(Ergänzung ein halbes Jahr später)
Ich hatte auch Probleme mit dem Speedtest. Log Eintrag war:
PERL WARNING: Can't exec "/usr/local/speedtest-cli/speedtest-cli": Datei oder Verzeichnis nicht gefunden at ./FHEM/32_speedtest.pm line 131
Ich habe einfach eine Verknüpfung erstellt, von /usr/local/speedtest-cli auf /usr/local/bin
danach lief es einwandfrei.
Ich hatte die gleiche Perl Warning: Can't exec "/usr/local/speedtest-cli/speedtest-cli"
Habe mir wie folgt geholfen:
attr st_Internet path /usr/local/bin
Gruß Harry
Moin,
mein Speedtest funktioniert nun auch nicht mehr.
Gestern hatte ich plötzlich kein Internet mehr, habe das viel zu spät bemerkt und dann den Speedtest disable=1 gesetzt.
Heute den disable=1 gelöscht und nun failed er dauernd.
2021.04.08 13:25:03 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_speedtest.pm line 164.
Traceback (most recent call last):
File "/usr/local/bin/speedtest-cli", line 2000, in <module>
main()
File "/usr/local/bin/speedtest-cli", line 1986, in main
shell()
File "/usr/local/bin/speedtest-cli", line 1875, in shell
secure=args.secure
File "/usr/local/bin/speedtest-cli", line 1091, in __init__
self.get_config()
File "/usr/local/bin/speedtest-cli", line 1174, in get_config
map(int, server_config['ignoreids'].split(','))
ValueError: invalid literal for int() with base 10: ''
2021.04.08 13:27:40 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_speedtest.pm line 164.
List vom SpeedtestInternals:
DEF 7200
FUUID 5fca818a-f33f-a76b-8869-a6a754e240f3bece
INTERVAL 7200
LOCAL 0
NAME o2
NR 627
STATE failed
TYPE speedtest
READINGS:
2021-04-07 17:27:53 MBit-s ; 24.6 Down; 9.7 Up; Ping 48.0 ms; CELL-ID 18096129; dBs -91; -12; -62
2021-04-07 17:27:53 download 24.56
2021-04-08 13:27:40 dummy -91,-11,-62,47130,416,18096129,6200,0,0,0,0,0,0,0
2021-04-07 17:27:53 ping 47.987
2021-04-08 13:50:52 state failed
2021-04-07 17:27:53 upload 9.74
helper:
Attributes:
disable 0
path /usr/local/bin
room Internet
webCmd statusRequest
und das oben fehlende und vorher funktionierende Userreading ist
dummy {my $count=0;;
my $str = (GetHttpFile("o2.spot", "/cgi-bin/mycgi?ACT=GetLTECellinfo"));;
if ( $str ne "" ) {my @val = split(/,/,$str);;
foreach('RSRP' , 'RSRQ' , 'RSSI', 'TAC' , 'PCI' , 'CELL-ID' , 'EARFCN'){
fhem("setreading o2spot $_ $val[$count]");;
$count++;;}
} else {fhem("setreading o2spot CELL-ID 0");;}
},
MBit-s:download.* {if ( (ReadingsNum("o2spot","CELL-ID","0")) > 0 )
{"; ".sprintf("%.1f", ReadingsNum($name,"download","0"))." Down; ".sprintf("%.1f", ReadingsNum($name,"upload","0"))." Up; Ping ".sprintf("%.1f", ReadingsNum($name,"ping","0"))." ms; CELL-ID ".ReadingsNum("o2spot","CELL-ID","0")."; dBs ".ReadingsNum("o2spot","RSRP","0")."; ".ReadingsNum("o2spot","RSRQ","0")."; ".ReadingsNum("o2spot","RSSI","0")
} else {fhem("set Y_LED blink 30 0.3");;fhem "set o2spot_Rel off" ;;}
}
Bevor ich was verpfusche möchte ich hier lieber erstmal im Hilfe bitten.
Ich habe exakt die gleiche Fehlermeldung im Log. Auch auf der cmd-line im Raspberry erhalten ich diesen Fehler.
Ich nutze ja ookla und da habe ich kein Problem.
Habe eben mal ein speedtest-cli eingerichtet: jep, selbiges problem.
Und nachdem es auf der cmdline schon schief geht kann fhem (erst mal) nix dafür...
Habe auch geschaut, ob es ein Update der speedtest-cli gibt: nö, zumindest nicht von da wo ich meine "damals" her habe/hatte... (also laut "git-Protokoll")...
EDIT: ich habe aktuell folgende Version:
Zitat von: speedtest-cli --version
speedtest-cli 2.1.2
Python 2.7.16 (default, Oct 10 2019, 22:02:15) [GCC 8.3.0]
Habe es aber "damals" nicht per apt installiert sondern eben aus git geladen.
Wenn ich per apt installieren würde, könnte/hätte ich folgende Version:
Zitat von: sudo apt -s install speedtest-cli
Inst speedtest-cli (2.0.2-1+deb10u1 Raspbian:stable [all])
also eigentlich älter...
Würde daher wohl auch nicht helfen.
Gruß, Joachim
Versionsbashing :-)
Habe mal Upgedated und und neu gestartet
pi@raspb:~ $ speedtest-cli --list | grep Germany
Traceback (most recent call last):
File "/usr/local/bin/speedtest-cli", line 2000, in <module>
main()
File "/usr/local/bin/speedtest-cli", line 1986, in main
shell()
File "/usr/local/bin/speedtest-cli", line 1875, in shell
secure=args.secure
File "/usr/local/bin/speedtest-cli", line 1091, in __init__
self.get_config()
File "/usr/local/bin/speedtest-cli", line 1174, in get_config
map(int, server_config['ignoreids'].split(','))
ValueError: invalid literal for int() with base 10: ''
pi@raspb:~ $ speedtest-cli --version
speedtest-cli 2.1.2
Python 2.7.13 (default, Aug 22 2020, 10:03:02) [GCC 6.3.0 20170516]
Zitat von: Ralph am 08 April 2021, 14:47:31
Versionsbashing :-)
Habe mal Upgedated und und neu gestartet
pi@raspb:~ $ speedtest-cli --list | grep Germany
Traceback (most recent call last):
File "/usr/local/bin/speedtest-cli", line 2000, in <module>
main()
File "/usr/local/bin/speedtest-cli", line 1986, in main
shell()
File "/usr/local/bin/speedtest-cli", line 1875, in shell
secure=args.secure
File "/usr/local/bin/speedtest-cli", line 1091, in __init__
self.get_config()
File "/usr/local/bin/speedtest-cli", line 1174, in get_config
map(int, server_config['ignoreids'].split(','))
ValueError: invalid literal for int() with base 10: ''
pi@raspb:~ $ speedtest-cli --version
speedtest-cli 2.1.2
Python 2.7.13 (default, Aug 22 2020, 10:03:02) [GCC 6.3.0 20170516]
upgedated: wie? zu was?
Du hast ja jetzt dieselbe Version wie ich (gut Python: 2.7.13 vs. 2.7.16 ;) )...
...ohne irgendwas update meinerseits (ich wollte nur sehen, ob es per apt eben was Neueres gibt: nö / weil eben dort wo ich meine ursprüngliche speedtest-cli her hab es auch nix Neueres gibt)...
...und meine 2.1.2 geht/ging ja (auch) nicht...
EDIT: alternativ kann nat. auch auf der "Gegenseite" grad was "schief" hängen, was sich evtl. wieder "einrenkt"...
Gruß, Joachim
Das war quasi parallel, sorry.
Gebe Dir recht, wenns schon unter Linux nicht geht, dann hängts nich an FHEM.
Aber wie kommt eine (Ver-)Änderung ohne unser Zutun ins System. Das verblüfft mich.
Zitat von: Ralph am 08 April 2021, 14:58:08
Das war quasi parallel, sorry.
Gebe Dir recht, wenns schon unter Linux nicht geht, dann hängts nich an FHEM.
Aber wie kommt eine (Ver-)Änderung ohne unser Zutun ins System. Das verblüfft mich.
Naja speedtest funktioniert ja nicht NUR LOKAL, sondern braucht (immer) eine "Gegenstelle"...
Ändert sich dort was, dann funktioniert das lokale Script halt nicht mehr.
Entweder soll das so auf der Gegenstelle, dann muss eben das Script angepasst werden (daher ja die Suche nach einem Update)...
...oder irgendwas auf der/den Gegenseite(n) ist (grad) schief und gibt sich wieder, also Fehler, dann muss man eben warten...
Was es nun ist: keine Ahnung.
Gruß, Joachim
Offensichtlich gibt es einen Patch für Speedtest:
https://github.com/ligrevx/speedtest-cli/blob/patch-1/speedtest.py (https://github.com/ligrevx/speedtest-cli/blob/patch-1/speedtest.py)
Zitat von: Caesareus am 08 April 2021, 15:11:21
Offensichtlich gibt es einen Patch für Speedtest:
https://github.com/ligrevx/speedtest-cli/blob/patch-1/speedtest.py (https://github.com/ligrevx/speedtest-cli/blob/patch-1/speedtest.py)
Vielen Dank!
Jep, geht wieder...
(wobei für mich ja nicht wirklich relevant ;) )
Gruß, Joachim
Zitat von: Caesareus am 08 April 2021, 15:11:21
Offensichtlich gibt es einen Patch für Speedtest:
https://github.com/ligrevx/speedtest-cli/blob/patch-1/speedtest.py (https://github.com/ligrevx/speedtest-cli/blob/patch-1/speedtest.py)
Hallo Caesareus,
was muss ich konkret tun (step by step), damit es bei mir auch wieder funktioniert?
Viele Grüße Gisbert
sudo wget -O /usr/local/bin/speedtest-cli https://github.com/ligrevx/speedtest-cli/raw/patch-1/speedtest.py
EDIT: das 'O' ist der Buchstabe O und keine "Null" ;) Alternativ einfach mit wget oder curl holen und halt "verschieben"... (evtl. noch: sudo chmod +x speedtest-cli / sollte aber nicht nötig sein, wenn die bereits existierende speedtest-cli "überkopiert" wird/wurde)
Wenn dein jetziges speedtest unter /usr/local/bin als "speedtest-cli" liegt.
Ansonsten eben anpassen...
Gruß, Joachim
Habe den Thread per Zufall gesehen.
Diese hier (Version 2.1.3):
https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
läuft fehlerfrei.
Gruß,
JudgeDredd
Zitat von: JudgeDredd am 08 April 2021, 20:56:03
Habe den Thread per Zufall gesehen.
Diese hier (Version 2.1.3):
https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
läuft fehlerfrei.
Gruß,
JudgeDredd
Hallo JudgeDredd,
läuft wieder, vielen Dank.
Viele Grüße Gisbert