FHEM Forum

FHEM => Codeschnipsel => Thema gestartet von: bismosa am 06 August 2018, 15:21:12

Titel: Blitzer anzeigen
Beitrag von: bismosa am 06 August 2018, 15:21:12
HINWEIS: Es gibt jetzt neu auch eine Modulversion von diesem Codeschnipsel. Das ist wesentlich einfacher einzurichten und viel besser zu bedienen.
Siehe https://forum.fhem.de/index.php/topic,99070.0.html

Hallo,

mal wieder etwas gebasteltes von mir:
Nach der Idee von https://forum.fhem.de/index.php/topic,85941.msg783376.html#msg783376 Blitzer von FHEM automatisch zu melden, möchte ich die Blitzer gerne auf meiner Anzeige darstellen.
Da ich auf dem Land wohne und die vorgegebenen Bereiche (Große Städte bzw. Bundesländer) nicht wirklich passen habe ich geschaut, wie die Abfrage für den angezeigten Kartenausschnitt auf der Webseite von www.verkehrslage.de ist.
Es wird glücklicherweise nur recht simpel eine php-Abfrage gemacht. Beispiel:
https://cdn2.atudo.net/api/1.0/vl.php?type=0,1,2,3,4,5,6&box=52.36176390234046,10.588760375976562,52.466468685912744,11.159706115722656

Somit können auch die Blitzer aus der Umgebung gefischt werden.

Features:
- Dummy mit den Home-Koordinaten um eine (Luftlinien)Entfernung zum nächsten Blitzer zu berechnen (Reihenfolge nach Abstand)
- Angabe maxkm -> Alle anderen Blitzer ignorieren, da der Kartenausschnitt nicht immer gut passt
- Blitzerdaten von www.verkehrslage.de und zusätzliche Ortsangaben aus der Openstreetmap
- Möglichst wenig Netzwerkverkehr

So kann es dann z.B. aussehen (waren gerade keine näheren in der Testumgebung...)
00 Gliesmarode Berliner Straße Max 50 km/h (26.2km) !!
01 Östliches Ringgebiet Georg-Westermann-Allee Max 30 km/h (28.6km) !!
02 Königslutter am Elm Wolfsburger Straße Max 50 km/h (29.5km) !!
03 Peine Kernstadt K75 Max 70 km/h (34.2km) !!
04 Südstadt Am Stahldorf Max 20 km/h (37.1km) !!

Einrichtung:
Dummy für die Anzeige mit Daten von der Heimatadresse. Hier bitte die Koordinaten und den maximalen Abstand eintragen.

defmod blitzer dummy
attr blitzer userattr lat lng maxkm
attr blitzer lat 52.xxxxxx
attr blitzer lng 8.xxxxxx
attr blitzer maxkm 18
attr blitzer stateFormat Text


Für die Abfrage der Blitzer ein HTTPMOD.
Hier kann man entweder in den Entwicklertools und "Network" nach dem Zoomen auf den entsprechenden Kartenausschnitt nach der Adresse schauen, oder über Google Maps die Koordinaten (von links unten nach rechts oben) ermitteln und die Werte ergänzen.
Wichtig ist die "0" am Ende. Wir rufen das nur manuell auf!

defmod httpmod_blitzer HTTPMOD https://cdn2.atudo.net/api/1.0/vl.php?type=0,1,2,3,4,5,6&box=52.xxxxxx,8.xxxxxx,53.xxxxxx,9.xxxxxx 0
attr httpmod_blitzer userattr getData getHeader1 getHeader2 getURL reading01DeleteIfUnmatched reading01JSON reading01Name reading01Regex reading02Name reading02RegOpt reading02Regex reading03JSON reading03Name readingEncode requestHeader1 requestHeader2 setParseResponse:0,1
attr httpmod_blitzer enableControlSet 1
attr httpmod_blitzer extractAllJSON 1
attr httpmod_blitzer getHeader1 Content-Type: application/json
attr httpmod_blitzer getHeader2 Accept: */*
attr httpmod_blitzer readingEncode utf8


Nun noch etwas Code für die myutils:
[EDIT!]
Die Zeile

url        => "https://nominatim.openstreetmap.org/search/".$Poi_lat."%20".$Poi_lng."?format=json&addressdetails=1",

wurde zu

url        => "https://nominatim.openstreetmap.org/reverse?format=json&lat=".$Poi_lat."&lon=".$Poi_lng,


Zusätzlich wurde der Teil "getBlitzerOrteCallback" komplett geändert.
Da in der Stadt (ich wohne auf dem Land...daher ist es nicht aufgefallen) kein Stadtteil angegeben wird, hat Wolle eine bessere Lösung gefunden.

Siehe auch: https://forum.fhem.de/index.php/topic,90014.msg831919.html#msg831919
Danke Wolle für den Tipp!
[/edit]

################################################################
###                        Blitzer                           ###
################################################################
sub getBlitzer(){
    my $httpDev = "httpmod_blitzer";
    my $BlitzerDev = "blitzer";
    my $lat = AttrVal($BlitzerDev,"lat",undef);
    my $lng = AttrVal($BlitzerDev,"lng",undef);
my $maxkm = AttrVal($BlitzerDev,"maxkm",undef);
    if (!defined $lat){
        Log 5,"[getBlitzer] lat ist nicht definiert!"; 
    }
    if (!defined $lng){
        Log 5,"[getBlitzer] lng ist nicht definiert!"; 
    }
if (!defined $maxkm){
        Log 5,"[getBlitzer] maxkm ist nicht definiert!"; 
    }
    # Da unbekannt ist, wie viele es gibt...durchprobieren
    my @Liste;
    for(my $i=1;$i<100;$i++){
        my $num = sprintf("%02d", $i);
        Log 5,"[getBlitzer] Reading: $num"; 
        my $Poi_lat = ReadingsVal($httpDev,"pois_".$num."_lat",undef);
        my $Poi_lng = ReadingsVal($httpDev,"pois_".$num."_lng",undef);
        last if !defined $Poi_lat;
#Log 1,"[getBlitzer] Reading: $Poi_lat"; 
        last if !defined $Poi_lng;
        Log 5,"[getBlitzer] lat/lng: $Poi_lat $Poi_lng"; 
        my $Poi_street = ReadingsVal($httpDev,"pois_".$num."_street","keine");
        my $Poi_vmax = ReadingsVal($httpDev,"pois_".$num."_vmax","kA");
        if (!defined $Poi_vmax){
            $Poi_vmax = ".";
        }
        if ($Poi_vmax eq ""){
            $Poi_vmax = ".";
        }
        Log 5,"[getBlitzer] $Poi_street $Poi_vmax"; 
               
        #Entfernung zur Home-Koordinate (Luftlinie)
        #Berechnung nach: https://www.kompf.de/gps/distcalc.html
        #Einfache Variante
        my $dx = 71.5 * abs($lng - $Poi_lng);
        my $dy = 111.3 * abs($lat - $Poi_lat);
my $distance = sqrt($dx * $dx + $dy * $dy);
       
#MaxEntfernung einbeziehen
if (not $distance > $maxkm){
Log 5,"[getBlitzer] distance: $distance"; 
        push @Liste, [ $distance, $Poi_street, $Poi_vmax, $Poi_lat, $Poi_lng ];
} else {
Log 5,"[getBlitzer] $distance > $maxkm"; 
}

       
    }
    my $out = join(", ", @Liste)."\n";
    Log 5,"[getBlitzer] $out"; 
    my @ListeSort = sort {$a->[0] <=> $b->[0]} @Liste;
    $out = join(", ", @ListeSort)."\n";
    Log 5,"[getBlitzer] $out"; 
   
    #Eintragen ins Dummy-Device
    #Eintragungen erst löschen
    fhem("deletereading $BlitzerDev .*", 1);
   
    my $Text="";
    my $Anzahl = scalar(@ListeSort);
    for (my $i=0;$i<$Anzahl;$i++) {
        my $num = sprintf("%02d", $i);
        Log 5,"[getBlitzer] Num: $num"; 
        fhem("setreading $BlitzerDev ".$num."Entfernung ".$ListeSort[$i][0]);
        fhem("setreading $BlitzerDev ".$num."Strasse ".$ListeSort[$i][1]);
        fhem("setreading $BlitzerDev ".$num."VMax ".$ListeSort[$i][2]);
       
        #Ort
        fhem("sleep 1; \{getBlitzerOrte(".$ListeSort[$i][3].",".$ListeSort[$i][4].",'$num','$BlitzerDev')};");
       
    }
    fhem("sleep 3; \{getBlitzerText('$BlitzerDev')};");
    #fhem("setreading $BlitzerDev Text $Text");
   
}
sub getBlitzerOrte($$$$){
#https://nominatim.openstreetmap.org/search/52.xxxxx%208.xxxx?format=json&addressdetails=1
    my $Poi_lat = shift;
    my $Poi_lng = shift;
    my $num = shift;
    $num = sprintf("%02d", $num);
    my $BlitzerDev = shift;


my $hash = {};
  $hash->{'blitzerdev'} = $BlitzerDev;
$hash->{'num'} = $num;
my $param = {
           url        => "https://nominatim.openstreetmap.org/reverse?format=json&lat=".$Poi_lat."&lon=".$Poi_lng,
           timeout    => 5,
           method     => "GET",            # Lesen von Inhalten
   hash       => $hash,            # Muss gesetzt werden, damit die Callback funktion wieder $hash hat
           header     => "",
           callback   =>  \&getBlitzerOrteCallback   # Diese Funktion soll das Ergebnis dieser HTTP Anfrage bearbeiten
    };
#agent: FHEM/1.0\r\nUser-Agent: FHEM/1.0\r\nAccept: application/json

    HttpUtils_NonblockingGet($param);      # Starten der HTTP Abfrage. Es gibt keinen Return-Code.

}
sub getBlitzerOrteCallback($) {
    my ($param, $err, $data) = @_;
    my $hash = $param->{hash};
    my $BlitzerDev = $hash->{blitzerdev};
my $num = $hash->{num};

    if($err ne "")      # wenn ein Fehler bei der HTTP Abfrage aufgetreten ist
    {
        Log3 "[getBlitzerOrte]", 3, "error while requesting ".$param->{url}." - $err";   # Eintrag fürs Log
    }
#Log 1,"[getBlitzerOrte] $BlitzerDev ".$param->{data}." ".$param->{url}." ".$param->{httpheader}." ".$param->{code};
#Log 1,"$data";

my $Stadtteil = "";
my $Stadt = "";

my ($Stadtteil) = $data =~ m/suburb":"([^"]+)"/;
if ((!defined $Stadtteil) or ($Stadtteil eq "")){
#Log 1, "[getBlitzerOrteCallback] search city_district";
       ($Stadtteil) = $data =~ m/city_district":"([^"]+)"/;
#Log 1, "[getBlitzerOrteCallback] $Stadtteil";
    }
if ((!defined $Stadtteil) or ($Stadtteil eq "")){
#Log 1, "[getBlitzerOrteCallback] $Stadtteil";
Log 5, "[getBlitzerOrteCallback] ".$param->{url};
Log 5, "[getBlitzerOrteCallback] $data";
       $Stadtteil = ".";
    }

       my ($Stadt) = $data =~ m/city":"([^"]+)"/;
if ((!defined $Stadt) or ($Stadt eq "")){
#Log 1, "[getBlitzerOrteCallback] search village $data";
        ($Stadt) = $data =~ m/town":"([^"]+)"/;
#Log 1, "[getBlitzerOrteCallback] $Stadt";
    }
if ((!defined $Stadt) or ($Stadt eq "")){
#Log 1, "[getBlitzerOrteCallback] search village $data";
        ($Stadt) = $data =~ m/village":"([^"]+)"/;
#Log 1, "[getBlitzerOrteCallback] $Stadt";
    }
    if ((!defined $Stadt) or ($Stadt eq "")){
#Log 1, "[getBlitzerOrteCallback] $Stadt";
Log 5, "[getBlitzerOrteCallback] ".$param->{url};
Log 5, "[getBlitzerOrteCallback] $data";
       $Stadt = ".";
    }
    my ($building) = $data =~ m/building":"([^"]+)"/;
    if ((!defined $building) or ($building eq "")){
        $building = ".";
    }
    Log 5,"[getBlitzerOrteCallback] $Stadt $Stadtteil $building";
    #Log 1,"[getBlitzerOrte] ".$decoded_json->{address}->{suburb}->[0];
if ($Stadt eq "."){$Stadt = " "};
if ($Stadtteil eq "."){$Stadtteil = " "};
    fhem("setreading $BlitzerDev ".$num."Ort $Stadt $Stadtteil");
fhem("setreading $BlitzerDev ".$num."Building $building");
}
sub getBlitzerText($){
    my $BlitzerDev = shift;
    my $Text="<html> <p align='left'>";
    my $SollAnzeige=0;
    for(my $i=0;$i<100;$i++){
        my $num = sprintf("%02d", $i);
        my $Entf = ReadingsVal($BlitzerDev,$num."Entfernung",undef);
last if !defined $Entf;
my $Ort = ReadingsVal($BlitzerDev,$num."Ort",".");
if ($Ort eq "."){$Ort = " "};
my $building = ReadingsVal($BlitzerDev,$num."Building",0);
if ($building eq "."){$building = " "};
        my $Strasse = ReadingsVal($BlitzerDev,$num."Strasse"," ");
        my $VMax = ReadingsVal($BlitzerDev,$num."VMax"," ");
        if (not $Text eq "<html> <p align='left'>"){
            $Text = $Text."\n <br>";   
        }
        $Text = $Text."$num $Ort $Strasse $building Max $VMax km/h (".sprintf("%.1f", "$Entf")."km) !!";
        $SollAnzeige=1;
    }
$Text = $Text."</p></html>";
    fhem("setreading $BlitzerDev Text $Text");
    fhem("setreading $BlitzerDev Anzeige $SollAnzeige");
}

Kann natürlich frei angepasst werden. Ich habe versucht darauf zu achten, dass die Abfrage bei openstreetmap non blocking ist.
Nicht immer sind die gleichen Ortsangaben vorhanden. Daher versuche ich immer "suburb", "city_district", "town" dann "village" zu finden.

Und zuguterletzt noch ein at um die Abfrage zu starten:

defmod at_Blitzer at +*00:10:00 {\
fhem("deletereading httpmod_blitzer .*", 1);;\
fhem("set httpmod_blitzer reread");;;;\
    fhem("sleep 2;; {getBlitzer};;");;;;\
}


Bestimmt noch nicht ganz Fehlerfrei...aber derzeit funktioniert es ganz gut.

Viel Spaß damit. Verbesserungsvorschläge sind immer willkommen :)

Gruß
Bismosa

[edit2]
Ich habe im "Ländlichen" Gebiet noch die ältere Variante (vielleicht sogar ein wenig modifiziert) laufen. Bei mir klappt das sehr gut.
Das betrifft nur das getBlitzerOrteCallback. Der Vollständigkeit halber hier die "alternative Variante"

sub getBlitzerOrteCallback($) {
    my ($param, $err, $data) = @_;
    my $hash = $param->{hash};
    my $BlitzerDev = $hash->{blitzerdev};
my $num = $hash->{num};

    if($err ne "")      # wenn ein Fehler bei der HTTP Abfrage aufgetreten ist
    {
        Log3 "[getBlitzerOrte]", 3, "error while requesting ".$param->{url}." - $err";   # Eintrag fürs Log
    }
#Log 1,"[getBlitzerOrte] $BlitzerDev ".$param->{data}." ".$param->{url}." ".$param->{httpheader}." ".$param->{code};
#Log 1,"$data";
#my $Ort = "";
my ($Ort) = $data =~ m/suburb":"([^"]+)"/;
if ((!defined $Ort) or ($Ort eq "")){
#Log 1, "[getBlitzerOrteCallback] search city_district";
        ($Ort) = $data =~ m/city_district":"([^"]+)"/;
#Log 1, "[getBlitzerOrteCallback] $Ort";
    }
if ((!defined $Ort) or ($Ort eq "")){
#Log 1, "[getBlitzerOrteCallback] search town $data";
        ($Ort) = $data =~ m/town":"([^"]+)"/;
#Log 1, "[getBlitzerOrteCallback] $Ort";
    }
if ((!defined $Ort) or ($Ort eq "")){
#Log 1, "[getBlitzerOrteCallback] search village $data";
        ($Ort) = $data =~ m/village":"([^"]+)"/;
#Log 1, "[getBlitzerOrteCallback] $Ort";
    }
    if ((!defined $Ort) or ($Ort eq "")){
#Log 1, "[getBlitzerOrteCallback] $Ort";
Log 5, "[getBlitzerOrteCallback] ".$param->{url};
Log 5, "[getBlitzerOrteCallback] $data";
        $Ort = ".";
    }
    my ($building) = $data =~ m/building":"([^"]+)"/;
    if ((!defined $building) or ($building eq "")){
        $building = ".";
    }
    Log 5,"[getBlitzerOrteCallback] $Ort $building";
    #Log 1,"[getBlitzerOrte] ".$decoded_json->{address}->{suburb}->[0];
    fhem("setreading $BlitzerDev ".$num."Ort $Ort");
fhem("setreading $BlitzerDev ".$num."Building $building");

}

[/ edit2]

[edit3]
Kleine Anpassung gegen die PERL Warnings
Zitat2019.01.18 07:59:55 1: PERL WARNING: "my" variable $out masks earlier declaration in same scope at ./FHEM/99_myUtils.pm line 240.
2019.01.18 07:59:55 1: PERL WARNING: "my" variable $Ort masks earlier declaration in same scope at ./FHEM/99_myUtils.pm line 304
Siehe auch https://forum.fhem.de/index.php/topic,90014.msg890222.html#msg890222
[/edit3]

[edit4]
Auf Anfrage habe ich den Teil in der myUtils "getBlitzerText($)" minimal erweitert.
Es wird nun ein zusätzliches Reading "Anzeige" erzeugt, dass eine 1 beinhaltet, wenn Blitzer im Bereich sind (sonst eine 0)
Hinzugefügt habe ich nur die 3 Zeilen:
my $SollAnzeige=0;
...
$SollAnzeige=1;
...
fhem("setreading $BlitzerDev Anzeige $SollAnzeige");

Siehe obiges Beispiel...
[/edit4]
Titel: Antw:Blitzer anzeigen
Beitrag von: binford6000 am 07 August 2018, 14:55:01
Hallo bismosa,
wirklich tolle Arbeit! Funktioniert bestens  :)

Ich hole mir die Koordinaten aus meinem ROOMMATE:
defmod blitzer dummy
attr blitzer userattr maxkm
attr blitzer icon ampel_rot
attr blitzer maxkm 50
attr blitzer room 90_Verkehr
attr blitzer stateFormat Text
attr blitzer userReadings lat {ReadingsVal('rr_Sebastian','locationLat','');;;;},long {ReadingsVal('rr_Sebastian','locationLong','');;;;}


Diese werden von owntracks aktuell gehalten. So habe ich immer die Blitzer in meiner unmittelbaren Umgebung
zur Verfügung und bekomme sie via push-Nachricht bei Eintreffen/Verlassen eines Standorts.
Oder periodisch wenn ich an keinem bekannten Standort (underway) bin  ;)

Für die Push-Nachricht habe ich deine sub "getBlitzerText($)" um $PushText (ohne html-Tags) ergänzt
und die Entfernungsangabe entfernt. Diese benötige ich nicht:
sub getBlitzerText($){
    my $BlitzerDev = shift;
    my $Text="<html> <p align='left'>";
# Text für Pushnachricht:
    my $PushText;
    for(my $i=0;$i<100;$i++){
        my $num = sprintf("%02d", $i);
        my $Entf = ReadingsVal($BlitzerDev,$num."Entfernung",undef);
last if !defined $Entf;
my $Ort = ReadingsVal($BlitzerDev,$num."Ort",".");
if ($Ort eq "."){$Ort = " "};
my $building = ReadingsVal($BlitzerDev,$num."Building",0);
if ($building eq "."){$building = " "};
        my $Strasse = ReadingsVal($BlitzerDev,$num."Strasse"," ");
        my $VMax = ReadingsVal($BlitzerDev,$num."VMax"," ");
        if (not $Text eq "<html> <p align='left'>"){
            $Text = $Text."\n <br>";
}
elsif (not $PushText){
            $PushText = $PushText."\n";
        }
        $Text = $Text."$num $Ort $Strasse $building Max $VMax Km/h";
# (".sprintf("%.1f", "$Entf")."km) !! aus $Text entfernt
        $PushText = $PushText."$num $Ort $Strasse $building Max $VMax Km/h\n\n";
    }
$Text = $Text."</p></html>";
    fhem("setreading $BlitzerDev Text $Text");
    fhem("setreading $BlitzerDev PushText $PushText") if ($PushText);
}


Vielen Dank und stay cool...  8)

VG Sebastian


Titel: Antw:Blitzer anzeigen
Beitrag von: Raemsna am 15 August 2018, 19:47:29
Zitat von: binford6000 am 07 August 2018, 14:55:01
Hallo bismosa,
wirklich tolle Arbeit! Funktioniert bestens  :)

Ich hole mir die Koordinaten aus meinem ROOMMATE:
defmod blitzer dummy
attr blitzer userattr maxkm
attr blitzer icon ampel_rot
attr blitzer maxkm 50
attr blitzer room 90_Verkehr
attr blitzer stateFormat Text
attr blitzer userReadings lat {ReadingsVal('rr_Sebastian','locationLat','');;;;},long {ReadingsVal('rr_Sebastian','locationLong','');;;;}


Diese werden von owntracks aktuell gehalten. So habe ich immer die Blitzer in meiner unmittelbaren Umgebung
zur Verfügung und bekomme sie via push-Nachricht bei Eintreffen/Verlassen eines Standorts.
Oder periodisch wenn ich an keinem bekannten Standort (underway) bin  ;)

Für die Push-Nachricht habe ich deine sub "getBlitzerText($)" um $PushText (ohne html-Tags) ergänzt
und die Entfernungsangabe entfernt. Diese benötige ich nicht:
sub getBlitzerText($){
    my $BlitzerDev = shift;
    my $Text="<html> <p align='left'>";
# Text für Pushnachricht:
    my $PushText = "";
    for(my $i=0;$i<100;$i++){
        my $num = sprintf("%02d", $i);
        my $Entf = ReadingsVal($BlitzerDev,$num."Entfernung",undef);
last if !defined $Entf;
my $Ort = ReadingsVal($BlitzerDev,$num."Ort",".");
if ($Ort eq "."){$Ort = " "};
my $building = ReadingsVal($BlitzerDev,$num."Building",0);
if ($building eq "."){$building = " "};
        my $Strasse = ReadingsVal($BlitzerDev,$num."Strasse"," ");
        my $VMax = ReadingsVal($BlitzerDev,$num."VMax"," ");
        if (not $Text eq "<html> <p align='left'>"){
            $Text = $Text."\n <br>";
}
elsif (not $PushText){
            $PushText = $PushText."\n";
        }
        $Text = $Text."$num $Ort $Strasse $building Max $VMax km/h";
# (".sprintf("%.1f", "$Entf")."km) !! aus $Text entfernt
        $PushText = $PushText."$num $Ort $Strasse $building Max $VMax km/h\n";
    }
$Text = $Text."</p></html>";
    fhem("setreading $BlitzerDev Text $Text");
    fhem("setreading $BlitzerDev PushText $PushText");
}


Vielen Dank und stay cool...  8)

VG Sebastian

Vielen Dank an Euch beide!
Ich nutze die Lösung von Sebastian und das Gesamtkonstrukt funktioniert wunderbar!!

Nur ein kleiner Schönheitsfehler ist mir aufgefallen:
Wenn kein Blitzer in der Nähe ist, läuft mein Log voll:

Zitat
2018.08.15 00:38:13 3: setreading Blitzer PushText  : Usage: setreading <name> <reading> <value>
where <name> is a single device name, a list separated by comma (,) or a regexp. See the devspec section in the commandref.html for details.

2018.08.15 00:38:13 2: After sleep: Usage: setreading <name> <reading> <value>
where <name> is a single device name, a list separated by comma (,) or a regexp. See the devspec section in the commandref.html for details.

2018.08.15 00:48:13 3: setreading Blitzer PushText  : Usage: setreading <name> <reading> <value>
where <name> is a single device name, a list separated by comma (,) or a regexp. See the devspec section in the commandref.html for details.

2018.08.15 00:48:13 2: After sleep: Usage: setreading <name> <reading> <value>
where <name> is a single device name, a list separated by comma (,) or a regexp. See the devspec section in the commandref.html for details.

Der Grund ist meine ich, dass $PushText aus der myUtils leer ist und entsprechend der setreading Befehl nicht funktioniert. Bei $Text ist das ja anders, weil die html Tags drin sind.

Ich habe das jetzt so gelöst:

Zitat
$Text = $Text."</p></html>";
   fhem("setreading $BlitzerDev Text $Text");
   chomp $PushText;      ## wird verwendet um das letzte \n zu entfernen
   if ($PushText ne "") {
      fhem("setreading $BlitzerDev PushText $PushText");
   }
Titel: Antw:Blitzer anzeigen
Beitrag von: binford6000 am 15 August 2018, 20:52:59
Für Benutzer des Moduls msgDialog https://wiki.fhem.de/wiki/MsgDialog (https://wiki.fhem.de/wiki/MsgDialog) hier ein passender Dialog zum Abrufen der Blitzer:
defmod Blitzer_Dialog_fav msgDialog {"Blitzer":{\
  "message": [\
    "(%me%) ",\
    "Aktuelle Blitzer in deiner Umgebung (Radius: [blitzer:maxkm] Km):\n\n[blitzer:PushText]"\
  ]\
}\
}\
attr Blitzer_Dialog_fav allowed everyone

Vielleicht kann es ja jemand gebrauchen  8)
VG Sebastian
Titel: Antw:Blitzer anzeigen
Beitrag von: Mumpitz am 15 August 2018, 22:29:09
Zitat von: binford6000 am 15 August 2018, 20:52:59
Für Benutzer des Moduls msgDialog https://wiki.fhem.de/wiki/MsgDialog (https://wiki.fhem.de/wiki/MsgDialog) hier ein passender Dialog zum Abrufen der Blitzer:
defmod Blitzer_Dialog_fav msgDialog {"Blitzer":{\
  "message": [\
    "(%me%) ",\
    "Aktuelle Blitzer in deiner Umgebung (Radius: [blitzer:maxkm] Km):\n\n[blitzer:PushText]"\
  ]\
}\
}\
attr Blitzer_Dialog_fav allowed everyone

Vielleicht kann es ja jemand gebrauchen  8)
VG Sebastian
Hallo Sebastian

Ich weiss ist etwas OT, aber ich finde die Gestaltung deines Dialogs sowas von cool. Würdest du das zur Verfügung stellen?
Titel: Antw:Blitzer anzeigen
Beitrag von: binford6000 am 16 August 2018, 08:27:27
ZitatIch weiss ist etwas OT, aber ich finde die Gestaltung deines Dialogs sowas von cool. Würdest du das zur Verfügung stellen?
Danke für die Blumen  :)

Alles basiert auf msgDialog. Anleitung dafür siehe im Wiki. Meine Sortierung der Dialoge habe ich im Forum mal beschrieben:
https://forum.fhem.de/index.php/topic,77297.msg747254.html#msg747254 (https://forum.fhem.de/index.php/topic,77297.msg747254.html#msg747254)

Dort im Forum sind m.W.n. auch einmal ein paar Dialoge gepostet worden. Alles andere gerne über PN.
VG Sebastian
Titel: Antw:Blitzer anzeigen
Beitrag von: thorschtn am 20 August 2018, 23:46:11
Hallo!

Et will nicht. :-(

Also eigentlich will es schon, die Verkehrslage wird korrekt ausgelesen und schreibt auch die richtigen Blitzer in die Readings.

Allerdings löst es mir nicht den Ort auf, obwohl eine manuelle Abfrage bei OpenStreetMap alle Details korrekt zurück liefert.

Ich habe den Code aus dem ersten Posting 1:1 in meine myUtils übernommen, JSON-Perl ist installiert.

Das Device habe ich 1:1 angelegt und lediglich die Koordinaten geändert, die Blitzer werden erkannt:

defmod httpmod_blitzer HTTPMOD https://cdn2.atudo.net/api/1.0/vl.php?type=0,1,2,3,4,5,6,20&box=52.21959722300952,13.338432312011718,52.324638816109996,13.554725646972656 0
attr httpmod_blitzer userattr getData getHeader1 getHeader2 getURL reading01DeleteIfUnmatched reading01JSON reading01Name reading01Regex reading02Name reading02RegOpt reading02Regex reading03JSON reading03Name readingEncode requestHeader1 requestHeader2 setParseResponse:0,1
attr httpmod_blitzer enableControlSet 1
attr httpmod_blitzer extractAllJSON 1
attr httpmod_blitzer getHeader1 Content-Type: application/json
attr httpmod_blitzer getHeader2 Accept: */*
attr httpmod_blitzer readingEncode utf8
attr httpmod_blitzer room Blitzer
attr httpmod_blitzer verbose 5

setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_backend 0-10367063
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_content 4294967295
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_counter 0
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_create_date 2018-08-20 22:42:06
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_gps_status -
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_id 2563366350
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_info {"count_180d":"1"}
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_lat 52.422978
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_lat_s 52.4
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_lng 13.430483
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_lng_s 13.4
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_polyline
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_street Alt-Buckow
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_type 1
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_01_vmax 30
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_backend 0-10366661
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_confirm_date 2018-08-20 22:40:42
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_content 4294967295
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_counter 3
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_create_date 2018-08-20 20:14:36
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_gps_status -
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_id 2563366091
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_info {"count_180d":"11"}
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_lat 52.390888
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_lat_s 52.4
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_lng 13.514981
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_lng_s 13.5
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_polyline
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_street Mittelstraße
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_type 1
setstate httpmod_blitzer 2018-08-20 23:21:30 pois_02_vmax 40


Lediglich der Ort bleibt leer obwohl die Abfrage

https://nominatim.openstreetmap.org/search/52.422978 13.430483?format=json&addressdetails=1

ein korrektes Ergebnis liefert:

[{"place_id":"36338097","licence":"Data © OpenStreetMap contributors, ODbL 1.0. https:\/\/osm.org\/copyright","osm_type":"node","osm_id":"2854361514","boundingbox":["52.4229149","52.4230149","13.4303433","13.4304433"],"lat":"52.4229649","lon":"13.4303933","display_name":"30, Alt-Buckow, Buckow, Neukölln, Berlin, 12349, Deutschland","class":"place","type":"house","importance":0.001,"address":{"house_number":"30","road":"Alt-Buckow","suburb":"Buckow","city_district":"Neukölln","state":"Berlin","postcode":"12349","country":"Deutschland","country_code":"de"}}]

Im Log finde ich keine Fehler:
2018.08.20 23:36:36 5: httpmod_blitzer: set called with start
2018.08.20 23:36:39 5: httpmod_blitzer: set called with reread
2018.08.20 23:36:39 4: httpmod_blitzer: GetUpdate called (reread)
2018.08.20 23:36:39 4: httpmod_blitzer: AddToQueue adds update, initial queue len: 0
2018.08.20 23:36:39 5: httpmod_blitzer: AddToQueue adds type update to URL https://cdn2.atudo.net/api/1.0/vl.php?type=0,1,2,3,4,5,6,20&box=52.21959722300952,13.338432312011718,52.324638816109996,13.554725646972656, no data, no headers, retry 0
2018.08.20 23:36:39 5: httpmod_blitzer: HandleSendQueue called, qlen = 1
2018.08.20 23:36:39 4: httpmod_blitzer: HandleSendQueue sends request type update to URL https://cdn2.atudo.net/api/1.0/vl.php?type=0,1,2,3,4,5,6,20&box=52.21959722300952,13.338432312011718,52.324638816109996,13.554725646972656, No Data, No Header
timeout 2
2018.08.20 23:36:39 5: HttpUtils url=https://cdn2.atudo.net/api/1.0/vl.php?type=0,1,2,3,4,5,6,20&box=52.21959722300952,13.338432312011718,52.324638816109996,13.554725646972656
2018.08.20 23:36:39 5: HttpUtils request header:
GET /api/1.0/vl.php?type=0,1,2,3,4,5,6,20&box=52.21959722300952,13.338432312011718,52.324638816109996,13.554725646972656 HTTP/1.0
Host: cdn2.atudo.net
User-Agent: fhem
Accept-Encoding: gzip,deflate
Content-Length: 0
Content-Type: application/x-www-form-urlencoded

2018.08.20 23:36:39 4: https://cdn2.atudo.net/api/1.0/vl.php?type=0,1,2,3,4,5,6,20&box=52.21959722300952,13.338432312011718,52.324638816109996,13.554725646972656: HTTP response code 200
2018.08.20 23:36:39 5: HttpUtils https://cdn2.atudo.net/api/1.0/vl.php?type=0,1,2,3,4,5,6,20&box=52.21959722300952,13.338432312011718,52.324638816109996,13.554725646972656: Got data, length: 1226
2018.08.20 23:36:39 5: HttpUtils response header:
HTTP/1.1 200 OK
Date: Mon, 20 Aug 2018 21:36:39 GMT
Server: Apache/2.4.25 (Debian)
Vary: Accept-Encoding
Content-Encoding: gzip
Access-Control-Allow-Origin: *
Content-Length: 530
Connection: close
Content-Type: application/json
2018.08.20 23:36:39 4: httpmod_blitzer: Read callback: request type was update retry 0,
Body: {"pois":[{"id":"2563398551","lat":"52.422978","lat_s":"52.4","lng":"13.430483","lng_s":"13.4","street":"Alt-Buckow","content":"4294967295","backend":"0-10367063","type":"1","vmax":"30","counter":"1","create_date":"2018-08-20 22:42:06","confirm_date":"2018-08-20 23:21:09","gps_status":"-","info":"{\"count_180d\":\"1\"}","polyline":""},{"id":"2563398326","lat":"52.390888","lat_s":"52.4","lng":"13.514981","lng_s":"13.5","street":"Mittelstra\u00dfe","content":"4294967295","backend":"0-10366661","type":"1","vmax":"40","counter":"3","create_date":"2018-08-20 20:14:36","confirm_date":"2018-08-20 23:22:30","gps_status":"-","info":"{\"count_180d\":\"11\"}","polyline":""},{"id":"2563398680","lat":"52.389820","lat_s":"52.4","lng":"13.526640","lng_s":"13.5","street":"A113","content":"4294967295","backend":"3-34251112","type":"20","vmax":"","counter":"0","create_date":"2018-08-20 23:35:01","confirm_date":"0000-00-00 00:00:00","gps_status":"-","info":"{\"reason\":null,\"length\":\"0.8\",\"duration\":\"83\",\"delay\":\"60\",\"lat_end\":\"52.397060\",\"lng_end\":\"13.519150\",\"refid_start\":\"311273\",\"polyline_source\":\"OSRM\"}","polyline":"kkw~Hq|pqAu@~@gDxDqBdCqExEOPaBfBuC~C_ElEgBhBo@t@}B`Cq@r@eAl@a@XKD"}],"grid":[]}
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter called : prefix , ref is HASH(0x589cfe0)
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter doing recursion because value is a ARRAY
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter called : prefix pois_, ref is ARRAY(0x58b8c78)
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter doing recursion because value is a HASH
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter called : prefix pois_01_, ref is HASH(0x590fad0)
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_lng_s to 13.4
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_polyline to
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_lng to 13.430483
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_content to 4294967295
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_counter to 1
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_create_date to 2018-08-20 22:42:06
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_lat_s to 52.4
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_confirm_date to 2018-08-20 23:21:09
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_vmax to 30
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_id to 2563398551
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_type to 1
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_street to Alt-Buckow
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_gps_status to -
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_lat to 52.422978
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_info to {"count_180d":"1"}
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_01_backend to 0-10367063
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter doing recursion because value is a HASH
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter called : prefix pois_02_, ref is HASH(0x58f9270)
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_lng_s to 13.5
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_polyline to
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_lng to 13.514981
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_lat_s to 52.4
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_content to 4294967295
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_counter to 3
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_create_date to 2018-08-20 20:14:36
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_vmax to 40
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_id to 2563398326
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_confirm_date to 2018-08-20 23:22:30
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_type to 1
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_info to {"count_180d":"11"}
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_backend to 0-10366661
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_street to Mittelstraße
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_gps_status to -
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_02_lat to 52.390888
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter doing recursion because value is a HASH
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter called : prefix pois_03_, ref is HASH(0x50f4958)
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_type to 20
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_confirm_date to 0000-00-00 00:00:00
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_id to 2563398680
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_vmax to
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_backend to 3-34251112
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_info to {"reason":null,"length":"0.8","duration":"83","delay":"60","lat_end":"52.397060","lng_end":"13.519150","refid_start":"311273","polyline_source":"OSRM"}
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_gps_status to -
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_street to A113
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_lat to 52.389820
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_polyline to kkw~Hq|pqAu@~@gDxDqBdCqExEOPaBfBuC~C_ElEgBhBo@t@}B`Cq@r@eAl@a@XKD
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_lng to 13.526640
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_lng_s to 13.5
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_lat_s to 52.4
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_counter to 0
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_create_date to 2018-08-20 23:35:01
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter sets pois_03_content to 4294967295
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter doing recursion because value is a ARRAY
2018.08.20 23:36:39 5: httpmod_blitzer: JSON Flatter called : prefix grid_, ref is ARRAY(0x58f3b18)
2018.08.20 23:36:39 4: httpmod_blitzer: extracted JSON values to internal
2018.08.20 23:36:39 5: httpmod_blitzer: ExtractSid called, context reading, num
2018.08.20 23:36:39 4: httpmod_blitzer: CheckAuth decided no authentication required
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_lat_s as reading pois_02_lat_s to value 52.4
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_gps_status as reading pois_02_gps_status to value -
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_id as reading pois_02_id to value 2563398326
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_lat as reading pois_02_lat to value 52.390888
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_lat_s as reading pois_03_lat_s to value 52.4
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_street as reading pois_01_street to value Alt-Buckow
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_lng_s as reading pois_03_lng_s to value 13.5
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_content as reading pois_02_content to value 4294967295
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_lat as reading pois_01_lat to value 52.422978
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_info as reading pois_03_info to value {"reason":null,"length":"0.8","duration":"83","delay":"60","lat_end":"52.397060","lng_end":"13.519150","refid_start":"311273","polyline_source":"OSRM"}
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_lng as reading pois_03_lng to value 13.526640
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_street as reading pois_03_street to value A113
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_backend as reading pois_01_backend to value 0-10367063
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_lat as reading pois_03_lat to value 52.389820
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_counter as reading pois_02_counter to value 3
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_counter as reading pois_03_counter to value 0
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_content as reading pois_03_content to value 4294967295
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_lat_s as reading pois_01_lat_s to value 52.4
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_vmax as reading pois_03_vmax to value
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_backend as reading pois_02_backend to value 0-10366661
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_confirm_date as reading pois_01_confirm_date to value 2018-08-20 23:21:09
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_id as reading pois_03_id to value 2563398680
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_create_date as reading pois_03_create_date to value 2018-08-20 23:35:01
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_info as reading pois_02_info to value {"count_180d":"11"}
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_vmax as reading pois_02_vmax to value 40
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_create_date as reading pois_01_create_date to value 2018-08-20 22:42:06
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_polyline as reading pois_01_polyline to value
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_gps_status as reading pois_03_gps_status to value -
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_polyline as reading pois_02_polyline to value
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_content as reading pois_01_content to value 4294967295
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_counter as reading pois_01_counter to value 1
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_type as reading pois_02_type to value 1
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_polyline as reading pois_03_polyline to value kkw~Hq|pqAu@~@gDxDqBdCqExEOPaBfBuC~C_ElEgBhBo@t@}B`Cq@r@eAl@a@XKD
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_id as reading pois_01_id to value 2563398551
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_street as reading pois_02_street to value Mittelstraße
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_type as reading pois_03_type to value 20
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_create_date as reading pois_02_create_date to value 2018-08-20 20:14:36
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_backend as reading pois_03_backend to value 3-34251112
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_vmax as reading pois_01_vmax to value 30
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_confirm_date as reading pois_02_confirm_date to value 2018-08-20 23:22:30
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_lng as reading pois_02_lng to value 13.514981
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_lng_s as reading pois_01_lng_s to value 13.4
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_03_confirm_date as reading pois_03_confirm_date to value 0000-00-00 00:00:00
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_type as reading pois_01_type to value 1
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_gps_status as reading pois_01_gps_status to value -
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_info as reading pois_01_info to value {"count_180d":"1"}
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_02_lng_s as reading pois_02_lng_s to value 13.5
2018.08.20 23:36:39 5: httpmod_blitzer: Read set JSON pois_01_lng as reading pois_01_lng to value 13.430483
2018.08.20 23:36:39 5: httpmod_blitzer: Read starts parsing response to update with defined readings:
2018.08.20 23:36:39 4: httpmod_blitzer: Read response to update matched Reading(s) pois_02_lat_s pois_02_gps_status pois_02_id pois_02_lat pois_03_lat_s pois_01_street pois_03_lng_s pois_02_content pois_01_lat pois_03_info pois_03_lng pois_03_street pois_01_backend pois_03_lat pois_02_counter pois_03_counter pois_03_content pois_01_lat_s pois_03_vmax pois_02_backend pois_01_confirm_date pois_03_id pois_03_create_date pois_02_info pois_02_vmax pois_01_create_date pois_01_polyline pois_03_gps_status pois_02_polyline pois_01_content pois_01_counter pois_02_type pois_03_polyline pois_01_id pois_02_street pois_03_type pois_02_create_date pois_03_backend pois_01_vmax pois_02_confirm_date pois_02_lng pois_01_lng_s pois_03_confirm_date pois_01_type pois_01_gps_status pois_01_info pois_02_lng_s pois_01_lng
2018.08.20 23:36:39 5: httpmod_blitzer: HandleSendQueue called, qlen = 0


Was mache ich falsch?

Viele Grüße
thorschtn
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 21 August 2018, 08:31:58
Hallo,

sollte ja eigentlich gehen. Vielleicht einfach mal die auskommentierten Log 1 in den MyUtils im Bereich "getBlitzerOrteCallback" aktivieren. Vielleicht finden wir so einen Hinweis.

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: thorschtn am 21 August 2018, 08:58:24
Hatte ich schon probiert, es wurde aber nichts zusätzlich geloggt, als ob er die Routine gar nicht aufrufen würde.
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 21 August 2018, 09:22:14
Moin!
Wie rufst Du denn derzeit die Blitzer ab? Manuell nur mit dem httpmod?
Hast du die Devices "blitzer dummy" und "at_Blitzer at" genauso wie aus dem Beispiel von mir? Oder vielleicht umbenannt?
Sonst mal die Log5 in Log1 in "sub getBlitzer" ändern und schauen was dann im Log passiert...

Gruß
Bismosa

Titel: Antw:Blitzer anzeigen
Beitrag von: thorschtn am 22 August 2018, 21:53:25
Vergesst es, das Problem saß vor dem Bildschirm.

Zuerst hatte ich die Zuordnung des Ortes im httpmod_blitzer gesucht und nicht erst im dummy. Und dann war meine Erwartung, dass sich die ausgelesenen Blitzer  tatsächlich auch nur auf den angegebenen Kartenausschnitt beziehen. Dem ist aber nicht so, Verkehrslage liefert einen etwas größeren Bereich, als angefordert. Damit lagen dann die gelieferten Blitzer außerhalb des Radius, weil ich den recht knapp auf den Kartenausschnitt gelegt hatte. Damit hatte ich dann keine Blitzer im Dummy und damit auch keine Ortsangaben.

Ich bitte die verursachte Verwirrung zu entschuldigen. Hat aber wenigstens dazu geführt, dass ich den Code jetzt verstanden habe. ;-)
Titel: Antw:Blitzer anzeigen
Beitrag von: FHEM-Wohnung am 29 August 2018, 14:03:58
Hallo,

ich stehe auf dem Schlauch.

Habe jetzt hier drei Devices:

Blitzer Dummy
defmod blitzer dummy
attr blitzer userattr maxkm
attr blitzer icon ampel_rot
attr blitzer maxkm 2000
attr blitzer room 94_Aktion->Blitzer
attr blitzer stateFormat Text
attr blitzer userReadings lat {ReadingsVal("Geo_Auto","Latitude","")};;\
long {ReadingsVal("Geo_Auto","Longitude","")}

setstate blitzer Text


Blitzer at
defmod at_Blitzer at *00:10:00 {\
fhem("deletereading httpmod_blitzer .*", 1);;\
fhem("set httpmod_blitzer reread");;\
fhem("sleep 2;;;; {getBlitzer};;;;");;\
}
attr at_Blitzer room 94_Aktion->Blitzer

setstate at_Blitzer Next: 00:10:00
setstate at_Blitzer 2018-08-29 00:10:00 state Next: 00:10:00


Blitzer Httpmod

defmod httpmod_blitzer HTTPMOD https://cdn2.atudo.net/api/1.0/vl.php?type=0,1,2,3,4,5,6&box=52.36176390234046,10.588760375976562,52.466468685912744,11.159706115722656
attr httpmod_blitzer userattr getData getHeader1 getHeader2 getURL reading01DeleteIfUnmatched reading01JSON reading01Name reading01Regex reading02Name reading02RegOpt reading02Regex reading03JSON reading03Name readingEncode requestHeader1 requestHeader2 setParseResponse:0,1
attr httpmod_blitzer enableControlSet 1
attr httpmod_blitzer extractAllJSON 1
attr httpmod_blitzer getHeader1 Content-Type: application/json
attr httpmod_blitzer getHeader2 Accept: */*
attr httpmod_blitzer readingEncode utf8
attr httpmod_blitzer room 94_Aktion->Blitzer

setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_backend 0-10410901
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_counter 0
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_create_date 2018-08-28 23:55:21
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_id 2590312859
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_lat 50.791525
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_lat_s 50.8
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_lng 8.760024
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_lng_s 8.8
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_street B3
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_01_vmax 80
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_backend 0-10410896
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_counter 0
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_create_date 2018-08-28 23:51:03
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_id 2590312854
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_info {"count_180d":"2"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_lat 49.326261
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_lat_s 49.3
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_lng 7.669789
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_lng_s 7.7
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_street B270
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_02_vmax 60
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_backend 0-10410865
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_counter 0
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_create_date 2018-08-28 23:26:55
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_id 2590312810
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_info {"count_180d":"1"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_lat 49.455273
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_lat_s 49.5
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_lng 7.813101
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_lng_s 7.8
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_street A6
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_03_vmax 80
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_backend 0-10410889
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_counter 0
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_create_date 2018-08-28 23:46:12
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_id 2590312846
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_info {"count_180d":"6"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_lat 49.966978
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_lat_s 50.0
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_lng 8.252980
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_lng_s 8.3
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_street A60
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_04_vmax 60
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_backend 0-10410876
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_counter 0
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_create_date 2018-08-28 23:35:56
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_id 2590312824
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_info {"count_180d":"1"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_lat 50.030030
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_lat_s 50.0
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_lng 8.293456
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_lng_s 8.3
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_street B455
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_05_vmax 50
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_backend 0-10410861
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_counter 0
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_create_date 2018-08-28 23:24:26
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_id 2590312805
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_lat 51.065388
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_lat_s 51.1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_lng 6.090090
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_lng_s 6.1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_street Liecker Straße
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_06_vmax 20
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_backend 0-10410793
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_counter 0
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_create_date 2018-08-28 22:42:33
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_id 2590312728
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_info {"count_180d":"1"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_lat 49.321329
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_lat_s 49.3
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_lng 7.138965
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_lng_s 7.1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_street Am Ring
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_07_vmax 50
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_backend 0-10410585
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_confirm_date 2018-08-28 22:32:46
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_counter 2
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_create_date 2018-08-28 21:20:46
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_id 2590312622
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_info {"count_180d":"4"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_lat 49.233681
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_lat_s 49.2
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_lng 6.966088
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_lng_s 7.0
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_street A620
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_08_vmax 30
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_backend 0-10410788
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_counter 0
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_create_date 2018-08-28 22:39:46
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_id 2590312725
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_lat 50.090170
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_lat_s 50.1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_lng 8.641435
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_lng_s 8.6
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_street Im Mainfeld
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_09_vmax 130
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_backend 0-10410594
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_confirm_date 2018-08-28 22:45:49
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_counter 2
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_create_date 2018-08-28 21:23:22
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_id 2590312625
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_info {"count_180d":"3"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_lat 50.133425
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_lat_s 50.1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_lng 8.695568
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_lng_s 8.7
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_street Friedberger Landstraße
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_10_vmax 30
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_backend 5-279336
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_counter 2
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_create_date 2018-08-28 21:05:01
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_id 2590312604
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_info false
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_lat 50.027397
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_lat_s 50.0
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_lng 8.472659
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_lng_s 8.5
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_street A3
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_11_vmax 100
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_backend 0-10410846
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_counter 0
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_create_date 2018-08-28 23:13:34
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_id 2590312792
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_lat 50.084631
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_lat_s 50.1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_lng 8.592414
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_lng_s 8.6
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_street Henriette-Fürth-Straße
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_type 2
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_12_vmax
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_backend 0-10410751
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_counter 0
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_create_date 2018-08-28 22:18:16
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_id 2590312690
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_lat 50.799228
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_lat_s 50.8
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_lng 7.300055
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_lng_s 7.3
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_street Talsperrenweg
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_13_vmax 20
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_backend 0-10410349
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_confirm_date 2018-08-28 23:57:00
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_counter 3
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_create_date 2018-08-28 20:05:34
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_id 2590312560
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_info {"count_180d":"14"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_lat 50.616439
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_lat_s 50.6
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_lng 7.417084
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_lng_s 7.4
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_street A3
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_14_vmax 100
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_backend 0-10409942
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_confirm_date 2018-08-29 00:08:29
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_counter 3
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_create_date 2018-08-28 18:13:13
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_id 2590312484
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_info {"count_180d":"8"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_lat 49.353405
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_lat_s 49.4
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_lng 8.425705
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_lng_s 8.4
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_street A61
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_15_vmax 100
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_backend 0-10408210
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_confirm_date 2018-08-29 00:02:39
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_content 4294967295
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_counter 3
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_create_date 2018-08-28 13:43:31
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_gps_status -
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_id 2590312296
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_info {"count_180d":"62"}
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_lat 50.923752
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_lat_s 50.9
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_lng 9.550121
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_lng_s 9.6
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_polyline
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_street A7
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_type 1
setstate httpmod_blitzer 2018-08-29 00:10:00 pois_16_vmax 100


Des Weiteren habe ich die Datei myUtils mit der Änderung von binford6000 angepasst.

Leider bekomme ich weder die Blitzer von meinem Standort noch eine Pushnachricht.
Wo liegt mein Fehler?

Die Koordinaten bekomme ich per Geo_Auto Device
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 30 August 2018, 14:02:37
Hallo,

für mich ist es schwierig hier zu helfen. Was passiert denn alle 10Min beim at ? Gibt es Logeinträge? Fehlermeldungen? Wird den getBlitzer überhaupt ausgeführt?
Was passiert, wenn Du in der Befehlszeile "{getBlitzer}" ausführst?
Irgendwie sieht bei Dir die Zeile anders aus:
Mein Beispiel:
fhem("sleep 2;; {getBlitzer};;");;;;\
Dein:
fhem("sleep 2;;;; {getBlitzer};;;;");;\
Aber ob es jetzt daran liegt...

Sonst mal ein paar Log-Einträge in MyUtils hinzufügen...vielleicht lässt sich dann der Fehler etwas eingrenzen...

Viel glück!

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: FHEM-Wohnung am 30 August 2018, 14:14:31
Vielen Dank für deine Hilfe.
Wenn ich {getBlitzer} eingebe, bekomme ich die Meldung: Bareword "getBlitzer" not allowed while "strict subs" in use at (eval 351781) line 1.
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 30 August 2018, 14:26:40
Huch...da ist also schon etwas faul...
Hast du die myUtils im Fhem-Editor oder manuell geändert? Kann es sein, das da schon etwas falsch hast?
Titel: Antw:Blitzer anzeigen
Beitrag von: FHEM-Wohnung am 30 August 2018, 14:41:19
Okay sorry...war mein Fehler irgendwie ist ein Kopierfehler entstanden. Jetzt funktioniert der Befehl.
Jedoch liefert allein schon mein httpmod nicht die Daten von meinen Koordinaten aus dem Blitzer dummy. Im Httpmod müssten doch in der URL die Daten aus dem Blitzer Dummy (lat long) abgefragt werden order irre ich mich?
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 30 August 2018, 14:54:20
Ja. Im HTTPMOD werden die Koordinaten abgefragt.
Wenn ich die URL "https://cdn2.atudo.net/api/1.0/vl.php?type=0,1,2,3,4,5,6&box=52.36176390234046,10.588760375976562,52.466468685912744,11.159706115722656" aufrufe, dann erhalte ich auch derzeit 3 Blitzer.
Also müssten im httpmod ja auch die einzelnen Readings jetzt vorhanden sein? Dann sollte an dieser Stelle alles passen. Der Rest passiert dann ja im Code von myUtils.
Die Koordinaten  (die ich in deinem Dummy nicht sehe)

attr blitzer lat 52.xxxxxx
attr blitzer lng 8.xxxxxx

sind nur dazu da um die Entfernung zu deinem Standort zu berechnen...

Vielleicht versucht du einfach erstmal den Fehler weiter einzugrenzen. Was passiert wann und wo genau? Gibt es ein problem im Code von myutils? Ich weiß z.b. nicht was passiert, wenn keine lat lng Koordinaten angegeben werden...wird vielleicht die Entfernung bis zum Südatlantik (lat 0 lng 0) ?

Viel Glück!
Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: FHEM-Wohnung am 30 August 2018, 15:01:43
Die Koordinaten aus deinem aufgeführten Link sind nicht meine Koordinaten.

Ich würde dies gerne so haben, das mein Handy die aktuelle Koordinaten bereit stellt. Diese werden dann abgefragt bei Atudo. Anschließend wird mir eine Push Benachrichtigung gegeben, wenn ich einem Blitzer näher komme.

Dazu müssten ja immer die aktuellen Koordinaten im httpmod abgefragt werden. Die Entfernung zum Standort wird ja berechnet aufgrund meines Handys. Welche die Koordinaten in das Blitzer-Dummy schreibt.

Wie bekommt der httpmod die Koordinaten meines Handys?
Titel: Antw:Blitzer anzeigen
Beitrag von: Wolle02 am 31 August 2018, 09:48:32
Vielen Dank an alle bisherigen Codebereitsteller. Läuft bei mir ganz wunderbar. Ein paar Kleinigkeiten habe ich bei mir ebenfalls noch angepasst und wollte das hier auch einfließen lassen.
Mir ist aufgefallen, dass im Reading "Ort" bei mir immer nur der Ortsteil steht und nicht die dazugehörige Stadt bzw. Gemeinde. Deshalb habe ich in der myUtils die Sub "getBlitzerOrteCallback($)" wie folgt geändert:


sub getBlitzerOrteCallback($) {
    my ($param, $err, $data) = @_;
    my $hash = $param->{hash};
    my $BlitzerDev = $hash->{blitzerdev};
my $num = $hash->{num};

    if($err ne "")      # wenn ein Fehler bei der HTTP Abfrage aufgetreten ist
    {
        Log3 "[getBlitzerOrte]", 3, "error while requesting ".$param->{url}." - $err";   # Eintrag fürs Log
    }
#Log 1,"[getBlitzerOrte] $BlitzerDev ".$param->{data}." ".$param->{url}." ".$param->{httpheader}." ".$param->{code};
#Log 1,"$data";

my $Stadtteil = "";
my $Stadt = "";

my ($Stadtteil) = $data =~ m/suburb":"([^"]+)"/;
if ((!defined $Stadtteil) or ($Stadtteil eq "")){
#Log 1, "[getBlitzerOrteCallback] search city_district";
       ($Stadtteil) = $data =~ m/city_district":"([^"]+)"/;
#Log 1, "[getBlitzerOrteCallback] $Stadtteil";
    }
if ((!defined $Stadtteil) or ($Stadtteil eq "")){
#Log 1, "[getBlitzerOrteCallback] $Stadtteil";
Log 5, "[getBlitzerOrteCallback] ".$param->{url};
Log 5, "[getBlitzerOrteCallback] $data";
       $Stadtteil = ".";
    }

       my ($Stadt) = $data =~ m/city":"([^"]+)"/;
if ((!defined $Stadt) or ($Stadt eq "")){
#Log 1, "[getBlitzerOrteCallback] search village $data";
        ($Stadt) = $data =~ m/town":"([^"]+)"/;
#Log 1, "[getBlitzerOrteCallback] $Stadt";
    }
if ((!defined $Stadt) or ($Stadt eq "")){
#Log 1, "[getBlitzerOrteCallback] search village $data";
        ($Stadt) = $data =~ m/village":"([^"]+)"/;
#Log 1, "[getBlitzerOrteCallback] $Stadt";
    }
    if ((!defined $Stadt) or ($Stadt eq "")){
#Log 1, "[getBlitzerOrteCallback] $Stadt";
Log 5, "[getBlitzerOrteCallback] ".$param->{url};
Log 5, "[getBlitzerOrteCallback] $data";
       $Stadt = ".";
    }
    my ($building) = $data =~ m/building":"([^"]+)"/;
    if ((!defined $building) or ($building eq "")){
        $building = ".";
    }
    Log 5,"[getBlitzerOrteCallback] $Stadt $Stadtteil $building";
    #Log 1,"[getBlitzerOrte] ".$decoded_json->{address}->{suburb}->[0];
if ($Stadt eq "."){$Stadt = " "};
if ($Stadtteil eq "."){$Stadtteil = " "};
    fhem("setreading $BlitzerDev ".$num."Ort $Stadt $Stadtteil");
fhem("setreading $BlitzerDev ".$num."Building $building");
}


Bei der Lektüre der Anleitung zu Nominatim ist mir folgender Absatz aufgefallen:

ZitatDie Abfrage von Details erzeugt eine hohe Serverlast und ist nur zum Testen vorgesehen ("Warum findet Nominatim nicht das, was ich suche?"). Daher gibt es auch keine API dafür. Mißbrauch dieser Funktion kann zu einer Sperrung führen.

In der Funktion "sub getBlitzerOrte($$$$)" wird die Abfrage wie folgt durchgeführt:

url        => "https://nominatim.openstreetmap.org/search/".$Poi_lat."%20".$Poi_lng."?format=json&addressdetails=1",

Da ich mir nicht ganz sicher bin, ob mit den o.g. Details die addressdetails=1 gemeint sind, habe ich die Abfrage wie folgt umgestellt (ich denke auch, dass das eigentlich von OSM so vorgesehen ist):

url        => "https://nominatim.openstreetmap.org/reverse?format=json&lat=".$Poi_lat."&lon=".$Poi_lng,

Bei mir kommen damit die gleichen Daten und es ist hoffentlich Ressourcenschonender für die Server von OSM.

Gruß
Wolle
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 31 August 2018, 20:19:38
Hallo!
Danke Wolle für die Tipps! Ich habe das gleich mal im ersten Beitrag angepasst. Gerade die Abfrage bei OSM sollte damit besser sein.
Da ich auf dem Dorf wohne brauche ich eigentlich keinen Stadtteil. Aber ich habe es gleich übernommen...dann muss nicht jeder lange suchen  :)

@FHEM-Wohnung
Für mich hört sich das ganz nach einem Fall für eine BlitzerApp für das Handy an. Die können das besser. Zumindest während der Fahrt. Das ist dann sicherlich auch ressourcenschonender.
Auf Anhieb weiß ich da auch nciht, wie man ins httpmod  die aktuellen Daten am sinnvollsten bekommt. Jedes Mal ein defmod ist wohl heftig und nicht im Sinne des Erfinders.

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: Ascos am 10 September 2018, 12:48:44
Hi,

ich hab mir das Skript heute auch eingerichtet. Die Abfrage funktioniert auch soweit.
Wenn ich die Readings im HTTPMOD richtig verstehe, hat er 26 POIs gefunden, also 26 Blitzer.
Macht für Berlin und Umland auch Sinn.

Im Dummy werden aber nur 4 Blitzer angezeigt.

Woran kann das liegen?

Viele Grüße
Ascos

Der Dummy:
defmod blitzer dummy
attr blitzer userattr lat lng maxkm
attr blitzer lat 52.xx
attr blitzer lng 13.xx
attr blitzer maxkm 25
attr blitzer stateFormat Text

setstate blitzer <html> <p align='left'>00 Tempelhof keine   Max kA km/h (8.0km) !!\
<br>01 Ahrensfelde Lindenberg Ahrensfelder Straße ALOS Gmbh Max 30 km/h (9.9km) !!\
<br>02 Altlandsberg Waldkante L33   Max 70 km/h (18.5km) !!\
<br>03 Petershagen\/Eggersdorf Petershagen Dorfstraße   Max 30 km/h (20.3km) !!</p></html>
setstate blitzer 2018-09-10 12:46:53 00Building .
setstate blitzer 2018-09-10 12:46:51 00Entfernung 8.03352294814713
setstate blitzer 2018-09-10 12:46:53 00Ort Tempelhof
setstate blitzer 2018-09-10 12:46:51 00Strasse keine
setstate blitzer 2018-09-10 12:46:51 00VMax kA
setstate blitzer 2018-09-10 12:46:53 01Building ALOS Gmbh
setstate blitzer 2018-09-10 12:46:51 01Entfernung 9.89090516159308
setstate blitzer 2018-09-10 12:46:53 01Ort Ahrensfelde Lindenberg
setstate blitzer 2018-09-10 12:46:51 01Strasse Ahrensfelder Straße
setstate blitzer 2018-09-10 12:46:51 01VMax 30
setstate blitzer 2018-09-10 12:46:53 02Building .
setstate blitzer 2018-09-10 12:46:51 02Entfernung 18.5236079964187
setstate blitzer 2018-09-10 12:46:53 02Ort Altlandsberg Waldkante
setstate blitzer 2018-09-10 12:46:51 02Strasse L33
setstate blitzer 2018-09-10 12:46:51 02VMax 70
setstate blitzer 2018-09-10 12:46:53 03Building .
setstate blitzer 2018-09-10 12:46:51 03Entfernung 20.2942791961498
setstate blitzer 2018-09-10 12:46:53 03Ort Petershagen\/Eggersdorf Petershagen
setstate blitzer 2018-09-10 12:46:51 03Strasse Dorfstraße
setstate blitzer 2018-09-10 12:46:51 03VMax 30
setstate blitzer 2018-09-10 12:46:54 Text <html> <p align='left'>00 Tempelhof keine   Max kA km/h (8.0km) !!\
<br>01 Ahrensfelde Lindenberg Ahrensfelder Straße ALOS Gmbh Max 30 km/h (9.9km) !!\
<br>02 Altlandsberg Waldkante L33   Max 70 km/h (18.5km) !!\
<br>03 Petershagen\/Eggersdorf Petershagen Dorfstraße   Max 30 km/h (20.3km) !!</p></html>



Und hier die HHPMOD

defmod httpmod_blitzer HTTPMOD https://cdn2.atudo.net/api/1.0/vl.php?type=0,1,2,3,4,5,6&box=52.273898,12.878327,52.667806,13.922731 0
attr httpmod_blitzer userattr getData getHeader1 getHeader2 getURL reading01DeleteIfUnmatched reading01JSON reading01Name reading01Regex reading02Name reading02RegOpt reading02Regex reading03JSON reading03Name readingEncode requestHeader1 requestHeader2 setParseResponse:0,1
attr httpmod_blitzer enableControlSet 1
attr httpmod_blitzer extractAllJSON 1
attr httpmod_blitzer getHeader1 Content-Type: application/json
attr httpmod_blitzer getHeader2 Accept: */*
attr httpmod_blitzer readingEncode utf8

setstate httpmod_blitzer 2018-09-10 12:39:05 pois_01_id 13
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_01_info {"count_cluster":20}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_01_lat 52.470852
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_01_lng 13.400529
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_01_type 1000
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_backend 0-10474349
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_confirm_date 2018-09-10 12:37:50
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_counter 2
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_create_date 2018-09-10 12:18:48
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_id 2631973536
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_info {"count_180d":"3"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_lat 52.656830
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_lat_s 52.7
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_lng 11.823895
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_lng_s 11.8
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_street B189
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_02_vmax 70
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_backend 0-10474222
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_confirm_date 2018-09-10 12:19:38
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_counter 3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_create_date 2018-09-10 11:53:50
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_id 2631973369
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_info {"count_180d":"3"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_lat 52.663595
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_lat_s 52.7
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_lng 11.821000
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_lng_s 11.8
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_street B189
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_03_vmax 90
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_backend 0-10474317
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_confirm_date 2018-09-10 12:35:39
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_counter 2
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_create_date 2018-09-10 12:12:16
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_id 2631973486
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_info {"count_180d":"1"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_lat 52.573324
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_lat_s 52.6
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_lng 14.352424
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_lng_s 14.4
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_street Hauptstraße
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_04_vmax 50
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_backend 0-10474268
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_counter 0
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_create_date 2018-09-10 12:03:13
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_id 2631973431
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_lat 52.107755
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_lat_s 52.1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_lng 14.119527
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_lng_s 14.1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_street K672
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_05_vmax 50
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_backend 0-10474093
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_counter 0
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_create_date 2018-09-10 11:34:54
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_id 2631973239
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_info {"count_180d":"1"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_lat 52.009873
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_lat_s 52.0
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_lng 14.193575
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_lng_s 14.2
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_street Redeneck
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_06_vmax 60
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_backend 0-10474211
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_confirm_date 2018-09-10 12:30:40
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_counter 3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_create_date 2018-09-10 11:52:00
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_id 2631973357
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_info {"count_180d":"5"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_lat 52.726768
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_lat_s 52.7
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_lng 13.239915
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_lng_s 13.2
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_street Birkenallee
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_07_vmax 30
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_backend 0-10473092
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_confirm_date 2018-09-10 12:05:53
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_counter 3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_create_date 2018-09-10 08:47:26
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_id 2631972712
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_lat 52.601861
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_lat_s 52.6
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_lng 13.531672
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_lng_s 13.5
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_street Ahrensfelder Straße
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_08_vmax 30
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_backend 0-10474069
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_counter 0
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_create_date 2018-09-10 11:32:15
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_id 2631973241
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_lat 52.147341
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_lat_s 52.1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_lng 13.971615
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_lng_s 14.0
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_street Limsdorfer Dorfstraße
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_09_vmax 80
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_backend 0-10472261
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_confirm_date 2018-09-10 11:03:10
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_counter 3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_create_date 2018-09-10 06:16:13
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_id 2631972549
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_lat 52.204583
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_lat_s 52.2
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_lng 14.024828
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_lng_s 14.0
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_street Beeskower Chaussee
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_10_vmax 60
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_backend 0-10473994
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_counter 0
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_create_date 2018-09-10 11:19:16
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_id 2631973163
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_lat 52.168302
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_lat_s 52.2
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_lng 13.686912
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_lng_s 13.7
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_street Chausseestraße
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_11_vmax 50
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_backend 0-10473791
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_counter 0
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_create_date 2018-09-10 10:45:19
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_id 2631972982
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_lat 52.225109
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_lat_s 52.2
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_lng 13.635296
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_lng_s 13.6
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_street Thälmannstraße
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_12_vmax 50
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_backend 0-10473543
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_confirm_date 2018-09-10 12:05:51
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_counter 2
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_create_date 2018-09-10 10:01:03
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_id 2631972850
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_lat 52.283533
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_lat_s 52.3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_lng 13.211546
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_lng_s 13.2
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_street Ludwigsfelder Chaussee
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_13_vmax 30
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_backend 0-10473943
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_counter 0
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_create_date 2018-09-10 11:12:31
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_id 2631973099
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_info {"count_180d":"2"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_lat 52.336683
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_lat_s 52.3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_lng 14.554487
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_lng_s 14.6
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_street Walter-Korsing-Straße
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_14_vmax 30
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_backend 0-10473623
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_confirm_date 2018-09-10 11:26:38
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_counter 3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_create_date 2018-09-10 10:16:56
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_id 2631972882
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_info {"count_180d":"1"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_lat 52.346729
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_lat_s 52.3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_lng 14.544156
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_lng_s 14.5
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_street Rosa-Luxemburg-Straße
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_15_vmax 30
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_backend 0-10473771
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_confirm_date 2018-09-10 12:32:06
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_counter 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_create_date 2018-09-10 10:42:02
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_id 2631972953
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_lat 52.339536
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_lat_s 52.3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_lng 14.585436
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_lng_s 14.6
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_street Transportowa
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_type 2
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_16_vmax
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_backend 0-10473765
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_confirm_date 2018-09-10 12:37:44
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_counter 3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_create_date 2018-09-10 10:41:31
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_id 2631972947
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_info {"count_180d":"8"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_lat 52.079412
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_lat_s 52.1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_lng 13.649734
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_lng_s 13.6
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_street A13
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_17_vmax 60
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_backend 0-10473706
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_confirm_date 2018-09-10 12:26:39
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_counter 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_create_date 2018-09-10 10:32:41
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_id 2631972923
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_lat 52.880613
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_lat_s 52.9
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_lng 12.372573
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_lng_s 12.4
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_street Zernitzer Dorfstraße
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_18_vmax 30
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_backend 0-10473494
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_confirm_date 2018-09-10 11:56:27
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_counter 2
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_create_date 2018-09-10 09:52:53
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_id 2631972830
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_info {"count_180d":"4"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_lat 52.412257
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_lat_s 52.4
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_lng 12.565477
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_lng_s 12.6
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_street Mühlendamm
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_19_vmax 30
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_backend 0-10473445
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_confirm_date 2018-09-10 12:36:03
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_counter 3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_create_date 2018-09-10 09:46:19
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_id 2631972813
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_info {"count_180d":"9"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_lat 52.565359
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_lat_s 52.6
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_lng 12.920886
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_lng_s 12.9
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_street B5
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_20_vmax 100
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_backend 0-10472243
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_confirm_date 2018-09-10 12:33:17
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_counter 3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_create_date 2018-09-10 06:07:31
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_id 2631972547
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_info {"count_180d":"5"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_lat 52.463497
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_lat_s 52.5
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_lng 13.080859
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_lng_s 13.1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_street B2
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_21_vmax 80
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_backend 0-10473315
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_confirm_date 2018-09-10 11:53:58
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_counter 3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_create_date 2018-09-10 09:24:39
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_id 2631972761
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_info {"count_180d":"1"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_lat 52.523465
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_lat_s 52.5
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_lng 13.769187
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_lng_s 13.8
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_street Dorfstraße
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_22_vmax 30
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_backend 0-10472306
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_confirm_date 2018-09-10 12:10:43
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_counter 2
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_create_date 2018-09-10 06:34:27
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_id 2631972556
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_info {"count_180d":"2"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_lat 52.556331
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_lat_s 52.6
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_lng 13.737616
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_lng_s 13.7
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_street L33
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_23_vmax 70
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_backend 0-10472629
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_confirm_date 2018-09-10 12:34:57
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_counter 3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_create_date 2018-09-10 07:32:40
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_id 2631972601
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_lat 52.705474
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_lat_s 52.7
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_lng 13.056744
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_lng_s 13.1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_street A10
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_24_vmax 60
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_backend 0-10472593
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_confirm_date 2018-09-10 12:22:56
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_content 4294967295
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_counter 3
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_create_date 2018-09-10 07:27:35
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_gps_status -
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_id 2631972593
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_info {"count_180d":"2"}
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_lat 52.882715
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_lat_s 52.9
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_lng 13.160784
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_lng_s 13.2
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_polyline
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_street B96
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_type 1
setstate httpmod_blitzer 2018-09-10 12:39:05 pois_25_vmax 80


Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 10 September 2018, 13:08:28
Hallo,
sind die anderen Blitzer vielleicht zu weit entfernt? Also weiter als Deine angegebenen 25km?

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: Ascos am 14 September 2018, 17:24:24
Zitat von: bismosa am 10 September 2018, 13:08:28
Hallo,
sind die anderen Blitzer vielleicht zu weit entfernt? Also weiter als Deine angegebenen 25km?

Gruß
Bismosa

Ja, das war es. Hab die Entfernung hoch gestellt, dann waren sie da. :)
Titel: Antw:Blitzer anzeigen
Beitrag von: lapidu am 16 Oktober 2018, 23:35:02
Hallo Zusammen,

bei mir funktioniert alles außer die korrekte Darstellung im Telegram.

Mit diesen Befehl schicke ich die aktuellen Blitzer auf mein Telegram Bot.

set teleBot message Aktuelle Blitzer:\n {( return sprintf( ReadingsVal("blitzer","Text",0))  )};

Das kommt bei Telegram an:

Aktuelle Blitzer:
<html> <p align='left'>00 Nassereith Fernpassstraße   Max 70 km/h (26.6km) !!
<br>01 Hohenbrunn Hohenbrunn A99   Max 110 km/h (76.5km) !!
<br>02 Friedberg (Bayern) Augsburger Straße   Max 60 km/h (96.6km) !!
<br>03 Neufahrn Kurt-Kittel-Ring   Max 30 km/h (101.2km) !!</p></html>

Gibt es eine Möglichkeit den HTML Code zu entfernen?

Danke

Titel: Antw:Blitzer anzeigen
Beitrag von: binford6000 am 17 Oktober 2018, 03:38:54
ZitatGibt es eine Möglichkeit den HTML Code zu entfernen?
Ich habe das für meinen Telegram Dialog so gemacht:
https://forum.fhem.de/index.php/topic,90014.msg825084.html#msg825084 (https://forum.fhem.de/index.php/topic,90014.msg825084.html#msg825084)
VG Sebastian
Titel: Antw:Blitzer anzeigen
Beitrag von: lapidu am 17 Oktober 2018, 06:57:42
Mit welchen Befehl schickst du dann die nachricht an Telegram?
Titel: Antw:Blitzer anzeigen
Beitrag von: thorschtn am 17 Oktober 2018, 07:34:08
Zitat von: lapidu am 16 Oktober 2018, 23:35:02
Aktuelle Blitzer:
<html> <p align='left'>00 Nassereith Fernpassstraße   Max 70 km/h (26.6km) !!
<br>01 Hohenbrunn Hohenbrunn A99   Max 110 km/h (76.5km) !!
<br>02 Friedberg (Bayern) Augsburger Straße   Max 60 km/h (96.6km) !!
<br>03 Neufahrn Kurt-Kittel-Ring   Max 30 km/h (101.2km) !!</p></html>

Gibt es eine Möglichkeit den HTML Code zu entfernen?

Klar, einfach im sub getBlitzerText($) rausnehmen.

Gruss,

Thorsten
Titel: Antw:Blitzer anzeigen
Beitrag von: lapidu am 17 Oktober 2018, 07:51:16
Ich habe folgendes rausgenommen:

Zitatsub getBlitzerText($){
    my $BlitzerDev = shift;
    my $Text="<html> <p align='left'>";
    for(my $i=0;$i<100;$i++){
        my $num = sprintf("%02d", $i);
        my $Entf = ReadingsVal($BlitzerDev,$num."Entfernung",undef);
      last if !defined $Entf;
      my $Ort = ReadingsVal($BlitzerDev,$num."Ort",".");
      if ($Ort eq "."){$Ort = " "};
      my $building = ReadingsVal($BlitzerDev,$num."Building",0);
      if ($building eq "."){$building = " "};
        my $Strasse = ReadingsVal($BlitzerDev,$num."Strasse"," ");
        my $VMax = ReadingsVal($BlitzerDev,$num."VMax"," ");
        if (not $Text eq "<html> <p align='left'>"){
            $Text = $Text."\n <br>";   
        }
        $Text = $Text."$num $Ort $Strasse $building Max $VMax km/h (".sprintf("%.1f", "$Entf")."km) !!";
    }
   $Text = $Text."</p></html>";
    fhem("setreading $BlitzerDev Text $Text");
}

Leider keine Änderung in der Telegram Nachricht.
Titel: Antw:Blitzer anzeigen
Beitrag von: binford6000 am 17 Oktober 2018, 11:38:55
Zitat von: lapidu am 17 Oktober 2018, 06:57:42
Mit welchen Befehl schickst du dann die nachricht an Telegram?

So:
msg push Aktuelle Blitzer:\n[blitzer:PushText] oder
set <TelegramBot device> msg Aktuelle Blitzer:\n[blitzer:PushText]
falls du kein msg-Befehl benutzt.

Das blitzer dummy device enthält neben dem html-formatierten Text Reading "Text" auch das Reading "PushText" ohne HTML.
Vg Sebastian
Titel: Antw:Blitzer anzeigen
Beitrag von: lapidu am 17 Oktober 2018, 11:41:10
Wie bekomme ich Reading "PushText"  in meinem dummy hin?
Titel: Antw:Blitzer anzeigen
Beitrag von: binford6000 am 17 Oktober 2018, 12:46:46
Zitat von: lapidu am 17 Oktober 2018, 11:41:10
Wie bekomme ich Reading "PushText"  in meinem dummy hin?

Hier mal meine sub getBlitzerText($):

sub getBlitzerText($){
    my $BlitzerDev = shift;
    my $Text="<html> <p align='left'>";
# Text für Pushnachricht:
    my $PushText;
    for(my $i=0;$i<100;$i++){
        my $num = sprintf("%02d", $i);
        my $Entf = ReadingsVal($BlitzerDev,$num."Entfernung",undef);
last if !defined $Entf;
my $Ort = ReadingsVal($BlitzerDev,$num."Ort",".");
if ($Ort eq "."){$Ort = " "};
my $building = ReadingsVal($BlitzerDev,$num."Building",0);
if ($building eq "."){$building = " "};
        my $Strasse = ReadingsVal($BlitzerDev,$num."Strasse"," ");
        my $VMax = ReadingsVal($BlitzerDev,$num."VMax"," ");
        if (not $Text eq "<html> <p align='left'>"){
            $Text = $Text."\n <br>";
}
elsif (not $PushText){
            $PushText = $PushText."\n";
        }
        $Text = $Text."$num $Ort $Strasse $building Max $VMax Km/h";
# (".sprintf("%.1f", "$Entf")."km) !! aus $Text entfernt
        $PushText = $PushText."$num $Ort $Strasse $building Max $VMax Km/h\n\n";
    }
$Text = $Text."</p></html>";
    fhem("setreading $BlitzerDev Text $Text");
    fhem("setreading $BlitzerDev PushText $PushText") if ($PushText);
}


VG Sebastian
Titel: Antw:Blitzer anzeigen
Beitrag von: lapidu am 17 Oktober 2018, 12:54:17
ich hab genau das gleich drin.

Zeigt er bei deinem dummy bei den Readings PushText an?
Bei mir nur Text
Titel: Antw:Blitzer anzeigen
Beitrag von: binford6000 am 17 Oktober 2018, 13:09:32
Zitat von: lapidu am 17 Oktober 2018, 12:54:17
ich hab genau das gleich drin.

Zeigt er bei deinem dummy bei den Readings PushText an?
Bei mir nur Text

Ja tut er:
setstate blitzer 2018-10-17 10:00:27 PushText 00 Ort Strasse   Max 100 Km/h\
setstate blitzer 2018-10-17 10:00:27 Text <html> <p align='left'>00 Ort Strasse   Max 100 Km/h</p></html>


Musste es aus dem save File rauskopieren da in meiner Umgebung momentan keine Blitzer stehen  ;)
VG Sebastian
Titel: Antw:Blitzer anzeigen
Beitrag von: binford6000 am 17 Oktober 2018, 13:11:23
ABER: Die Readings sehen im Webfrontend gleich aus. Ein Browser zeigt die HTML-tags nicht an  ;)
Titel: Antw:Blitzer anzeigen
Beitrag von: lapidu am 17 Oktober 2018, 13:21:48
Das Problem bei mir ist das ich kein Reading PushText habe.
Wie kann ich das dem dummy hinzufügen?
Titel: Antw:Blitzer anzeigen
Beitrag von: binford6000 am 17 Oktober 2018, 21:20:24
Zitat von: lapidu am 17 Oktober 2018, 13:21:48
Das Problem bei mir ist das ich kein Reading PushText habe.
Wie kann ich das dem dummy hinzufügen?
Das macht doch
    fhem("setreading $BlitzerDev PushText $PushText") if ($PushText);
in der  sub getBlitzerText($). Siehe oben.
VG Sebastian
Titel: Antw:Blitzer anzeigen
Beitrag von: maseb am 25 November 2018, 12:06:53
Zitat von: binford6000 am 07 August 2018, 14:55:01
Hallo bismosa,
wirklich tolle Arbeit! Funktioniert bestens  :)

Ich hole mir die Koordinaten aus meinem ROOMMATE:
defmod blitzer dummy
attr blitzer userattr maxkm
attr blitzer icon ampel_rot
attr blitzer maxkm 50
attr blitzer room 90_Verkehr
attr blitzer stateFormat Text
attr blitzer userReadings lat {ReadingsVal('rr_Sebastian','locationLat','');;;;},long {ReadingsVal('rr_Sebastian','locationLong','');;;;}


Diese werden von owntracks aktuell gehalten. So habe ich immer die Blitzer in meiner unmittelbaren Umgebung
zur Verfügung und bekomme sie via push-Nachricht bei Eintreffen/Verlassen eines Standorts.
Oder periodisch wenn ich an keinem bekannten Standort (underway) bin  ;)

]

Vielen Dank und stay cool...  8)

VG Sebastian


Hallo Sebastian,

wie hast du das gemacht das die sub getBlitzer() die Werte für lat long nun aus den readings des blitzer dummys liest?

Es sucht doch die Werte in den attr vom blitzer dummy.

mit InternalVal anstelle von attrVal habe ich keinen Erfolg.

Grüße
Rudi
Titel: Antw:Blitzer anzeigen
Beitrag von: binford6000 am 26 November 2018, 07:28:05
Moin Rudi,
im blitzer dummy folgende userReadings gesetzt:
lat {ReadingsVal('rr_Sebastian','locationLat','');;},
long {ReadingsVal('rr_Sebastian','locationLong','');;},


Und dann in der sub getBlitzer() folgendes geändert:
my $lat = ReadingsVal($BlitzerDev,"lat",undef);
my $lng = ReadingsVal($BlitzerDev,"long",undef);


VG Sebastian
Titel: Antw:Blitzer anzeigen
Beitrag von: ThomasMagnum am 26 November 2018, 12:32:33
Hallo zusammen,

ich habe diese "Funktion" seit einigen Monaten im Einsatz und sie funktioniert sehr gut - danke dafür.

Da ich beruflich sehr viel auf Achste bin und immer mal wieder woanders bin, möchte ich mir nun diese Funktion so umbauen, bzw. eine zweite erstellen, mit der ich dies bei Bedarf für meinen aktuellen Aufenthaltsort nutzen kann. Ich möchte hierzu meine aktuellen Locationdaten verwenden. Leider bietet sich hier nur die Möglichkeit einen Kartenausschnitt mit "Eckpunkten" zu definieren.
Gibt es eine Möglichkeit aus der aktuellen Location einen Kartenausschnitt um diese Position mit einem definierten Radius zu berechnen? Oder aber gibt es evt. die Möglichkeit eines API Aufrufs bei atudo in Form eines Radius um eine Position?

Ich konnte leider keine Information zu deren API finden.

Vielen Dank für jeden Hinweis.

Gruß, Thomas

P.S.: diese Idee soll nur bei Bedarf aufgerufen werden und nicht wie das in diesem Thread beschriebene per "at".
Titel: Antw:Blitzer anzeigen
Beitrag von: somansch am 23 Dezember 2018, 17:59:17
Vielen Dank vorab für diesen Code!

Jedoch werden bei mir die Orts- und Straßennamen nicht aufgelöst. Habe 1:1 den Code aus dem ersten Post übernommen, bekomme zwei POIs, jedoch keine Ortsbeschreibung :-\

Hier aus dem Log:
2018.12.23 17:43:44 1: PERL WARNING: "my" variable $out masks earlier declaration in same scope at ./FHEM/99_myUtils.pm line 420.
2018.12.23 17:43:44 1: PERL WARNING: "my" variable $Stadtteil masks earlier declaration in same scope at ./FHEM/99_myUtils.pm line 485.
2018.12.23 17:43:44 1: PERL WARNING: "my" variable $Stadt masks earlier declaration in same scope at ./FHEM/99_myUtils.pm line 498.
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 23 Dezember 2018, 18:19:52
Hallo,
Sorry...gerade wenig Zeit. ist die Entfernung vielleicht zu hoch? Zum testen Stelle ich immer auf 99km um mir alle anzuzeigen...
Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: somansch am 23 Dezember 2018, 18:55:19
Zitat von: bismosa am 23 Dezember 2018, 18:19:52
Hallo,
Sorry...gerade wenig Zeit. ist die Entfernung vielleicht zu hoch? Zum testen Stelle ich immer auf 99km um mir alle anzuzeigen...
Gruß
Bismosa

Habe es mal auf 99km gestellt. Hier die Readings:
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_backend 0-10922398
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_content 4629456640
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_counter 0
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_create_date 2018-12-23 18:38:37
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_gps_status -
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_id 2988916073
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_lat 48.142387
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_lat_s 48.1
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_lng 11.560817
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_lng_s 11.6
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_polyline
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_street Elisenstraße
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_type 1
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_vmax 40
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_backend 0-10922301
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_content 4629388678
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_counter 0
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_create_date 2018-12-23 17:52:25
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_gps_status -
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_id 2988915938
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_lat 48.206104
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_lat_s 48.2
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_lng 12.140827
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_lng_s 12.1
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_polyline
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_street B15
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_type 1
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_vmax 70
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_backend 0-10920895
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_confirm_date 2018-12-23 18:49:22
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_content 4628704382
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_counter 3
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_create_date 2018-12-23 10:19:44
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_gps_status -
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_id 2988915554
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_info {"count_180d":"8"}
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_lat 48.493763
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_lat_s 48.5
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_lng 11.204416
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_lng_s 11.2
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_polyline
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_street B300
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_type 1
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_vmax 80
Titel: Antw:Blitzer anzeigen
Beitrag von: somansch am 23 Dezember 2018, 23:00:52
Zitat von: somansch am 23 Dezember 2018, 18:55:19
Habe es mal auf 99km gestellt. Hier die Readings:
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_backend 0-10922398
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_content 4629456640
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_counter 0
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_create_date 2018-12-23 18:38:37
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_gps_status -
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_id 2988916073
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_lat 48.142387
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_lat_s 48.1
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_lng 11.560817
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_lng_s 11.6
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_polyline
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_street Elisenstraße
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_type 1
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_01_vmax 40
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_backend 0-10922301
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_confirm_date 0000-00-00 00:00:00
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_content 4629388678
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_counter 0
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_create_date 2018-12-23 17:52:25
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_gps_status -
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_id 2988915938
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_info {"count_180d":"0"}
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_lat 48.206104
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_lat_s 48.2
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_lng 12.140827
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_lng_s 12.1
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_polyline
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_street B15
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_type 1
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_02_vmax 70
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_backend 0-10920895
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_confirm_date 2018-12-23 18:49:22
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_content 4628704382
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_counter 3
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_create_date 2018-12-23 10:19:44
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_gps_status -
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_id 2988915554
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_info {"count_180d":"8"}
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_lat 48.493763
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_lat_s 48.5
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_lng 11.204416
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_lng_s 11.2
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_polyline
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_street B300
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_type 1
setstate httpmod_blitzer 2018-12-23 18:53:11 pois_03_vmax 80


Sorry, Layer 8 Error  ;D. Man muss natürlich über den at ansteuern, sonst wird ja die Routine nicht ausgeführt  :-X
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 24 Dezember 2018, 08:48:35
Moin!
Und welche readings sind im Dummy?

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: somansch am 27 Dezember 2018, 00:52:41
Inzwischen läuft es ja auch bei mir  :). Vielen Dank für diesen Code!

Es gibt ja auch für Verkehrsinfos ein Modul. Dafür wiederum auch ein Widget für FTUI.

Wenn die Readings ähnlich zu den Verkehrsinfos wären, könnte man auch einfach ein Widget für die Blitzer in FTUI abbilden  8).

Welche Anpassungen wären nötig, um zusätzlich den "count" (Anzahl der Blitzer) als Reading zu bekommen? Weiterhin wäre "date_time" für den Zeitstempel und eine Nummerierung beginnend bei "1", z.B. b_1_, b_2_ schön. Hier mal die Readings von Verkehrsinfo als Grundlage:
2018-12-26 23:50:23   count           4
     2018-12-26 23:50:23   date_time       2018-12-26 23:50:23
     2018-12-26 23:50:23   e_1_head        Regensburg Richtung Holledau
     2018-12-26 23:50:23   e_1_msg         zwischen Pfaffensteintunnel und Regensburg-West (40) Unfall, linker Fahrstreifen blockiert, Stau, vorsichtig an das Stauende heranfahren
     2018-12-26 23:50:23   e_1_road        A93
     2018-12-26 23:50:23   e_2_head        Oberstdorf - Kempten
     2018-12-26 23:50:23   e_2_msg         zwischen Waltenhofen-Kuhnen und B12, A980, Waltenhofen in beiden Richtungen Ampelanlage außer Betrieb, bis 27.12.2018 07:00 Uhr
     2018-12-26 23:50:23   e_2_road        B19
     2018-12-26 23:50:23   e_3_head        Weiden - Regensburg
     2018-12-26 23:50:23   e_3_msg         in Höhe Schwandorf-Nord in beiden Richtungen alle Fahrbahnen geräumt
     2018-12-26 23:50:23   e_3_road        A93
     2018-12-26 23:50:23   e_4_head        Autobahndreieck Allgäu - Lindau
     2018-12-26 23:50:23   e_4_msg         zwischen Durach (2) und Waltenhofen in beiden Richtungen Ampelanlage außer Betrieb, bis 27.12.2018 07:00 Uhr
     2018-12-26 23:50:23   e_4_road        A980
     2018-12-26 23:50:23   message         Es liegen um 23:50 für Bayern, 4 Staumeldungen vor:
zwischen Pfaffensteintunnel und Regensburg-West Unfall, linker Fahrstreifen blockiert, Stau, vorsichtig an das Stauende heranfahren. zwischen Waltenhofen-Kuhnen und B12, A980, Waltenhofen in beiden Richtungen Ampelanlage außer Betrieb, bis 27.12.2018 07:00 Uhr. in Höhe Schwandorf-Nord in beiden Richtungen alle Fahrbahnen geräumt. zwischen Durach und Waltenhofen in beiden Richtungen Ampelanlage außer Betrieb, bis 27.12.2018 07:00 Uhr.
     2018-12-26 23:50:23   state           update 2018-12-26 23:50:23
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 27 Dezember 2018, 01:14:31
Thread gerade entdeckt - das klingt ja spannend.

Zitat von: somansch am 27 Dezember 2018, 00:52:41
Es gibt ja auch für Verkehrsinfos ein Modul. Dafür wiederum auch ein Widget für FTUI.

@somansch - lange nicht gesehen ;)
Beide sind mir nicht bekannt. Kannst Du beide bitte mal verlinken, ehe wir uns alle einen Wolf suchen?

@bismosa
Deine im Beitrag #1 gegebenen Informationen sind aktuell? Oder muss ich mich schrittweise durch den Thread hangeln?
Titel: Antw:Blitzer anzeigen
Beitrag von: somansch am 27 Dezember 2018, 19:03:03
Zitat von: curt am 27 Dezember 2018, 01:14:31
Thread gerade entdeckt - das klingt ja spannend.

@somansch - lange nicht gesehen ;)
Beide sind mir nicht bekannt. Kannst Du beide bitte mal verlinken, ehe wir uns alle einen Wolf suchen?

@bismosa
Deine im Beitrag #1 gegebenen Informationen sind aktuell? Oder muss ich mich schrittweise durch den Thread hangeln?

Hallo Curt,

hier der Link mit sämtlichen Infos (incl. FTUI Link) zu "Verkehrsinfo":https://forum.fhem.de/index.php/topic,55118.0.html (https://forum.fhem.de/index.php/topic,55118.0.html)

@bismosa hat den Code im Beitrag 1 gepflegt. Daher kannst du dies 1zu1 übernehmen  ;).

Viele Grüße
Andreas
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 27 Dezember 2018, 19:25:28
Hallo,
ja, der Code ist eigentlich gepflegt. Zumindest für den ursprünglichen Anwendungsfall. Danke für das Antworten...ich bin gerade im Urlaub.
Ich glaube es gab im Verlauf noch einzelne Erweiterungen...
Ich selbst habe mir aktuell nur den HTML Code angepasst um Zeilenumbrüche anders zu gestalten...bei mir läuft es sehr zuverlässig.
Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 28 Dezember 2018, 17:58:25
@somansch @bismosa
Sehr herzlichen Dank!
Bei mir funktioniert das so, wie offensichtlich vom Autoren gewollt.

Ich habe Verständnisfragen:
Es bleibt bei dem selbst zu definierenden Rechteck? Und die Kilometerangabe in "maxkm" bildet einen Kreis um die Punktkoordinate? Mit der Folge, dass ein zu klein gewähltes Rechteck systematisch schief geht?

Ich sehe ein weiteres Problem (jedes gelöste Problem gebiert ja automatisch Junge ...):
Ich lebe auf dem Lande, im Umkreis von 30km gibt es sicher 300 Dorfstraßen. Aber auch im Ruhrgebiet dürfte sich das Problem ähnlich darstellen:


00 Dessauer Landstraße 0 Max 50 km/h (48.4km) !!
01 Brandenburger Chaussee 0 Max 50 km/h (54.9km) !!
02 K209 0 Max 100 km/h (59.3km) !!
03 B5 0 Max 80 km/h (64.7km) !!
04 Buckower Damm 0 Max 30 km/h (70.7km) !!
05 Leipziger Straße 0 Max 30 km/h (75.1km) !!


Ähmmm, ja. Ungünstig.
Bestünde denn die Möglichkeit, optional (!) den Namen der Stadt/Gemeinde auch noch zu bekommen? Im Gegenzug würde ich auf die Nummerierung (die darf optional werden) verzichten. Und wenn ich schon mal träume: Als Tabelle wäre ... hmmm: Da muss ich nochmal nachdenken - ich will das in FTUI nutzen, da weiß ich vor Schreck gar nicht, was da der optimale Ansatz ist (kann ich aber gelegentlich liefern, ich habe das bei CalView/Template ganz gut in Griff).

Zitat von: bismosa am 27 Dezember 2018, 19:25:28
ich bin gerade im Urlaub.

Ich wünsche gute Erholung und einen guten Rutsch!
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 29 Dezember 2018, 12:53:49
Hallo,
Danke!
Ja. Man definiert ein Rechteck. Allerdings werden die Blitzer auch außerhalb des Rechtecks genommen. Wie weit weiß ich nicht.
Daher habe ich mit maxkm das noch weiter eingegrenzt.
Also muss zwangsläufig nicht unbedingt ein zu klein gewähltes Rechteck schiefgehen.
Ich wohne auch ländlich...bei mir werden auch die Ortsnamen angezeigt. Mich wundert die "0" vor dem Max. Da scheint irgendwas nicht zu stimmen.
Schau dir Mal den Teil
sub getBlitzerOrteCallback
Genauer an...da wird glaube ich der Ort gefiltert.
Sonst einfach Mal die URL selbst im Browser aufrufen und schauen, welche Jason Readings angezeigt werden...dann sollte der Rest machbar sein.
Sonst melde dich nochmal... heute Abend kann ich nochmal genauer nachschauen.
Die Nummerierung kannst du im Code der myutuils selbst entfernen. Ich nutze die auch nicht mehr. Du kannst auch den HTML Code so verändern, das dir eine Tabelle erzeugt wird. Dürfte nicht allzu schwierig sein.
Ich Blende mir im ftui nur den text mit einem Symbol ein, wenn ein Blitzer in der Nähe ist...mehr mache ich da gar nicht...

Ich wünsche ebenfalls allen einen guten Start ins Jahr 2019!

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 04 Januar 2019, 00:18:02
Zitat von: bismosa am 29 Dezember 2018, 12:53:49
Ich wohne auch ländlich...bei mir werden auch die Ortsnamen angezeigt. Mich wundert die "0" vor dem Max. Da scheint irgendwas nicht zu stimmen.

Schau dir Mal den Teil
sub getBlitzerOrteCallback
Genauer an...da wird glaube ich der Ort gefiltert.

Da es bei Dir ländlich geht - es wäre vermutlich am Einfachsten, wenn Du mir Deinen aktuellen Code einfach mal zeigst. Das kürzt einiges ab, da wäre ich Dir sehr dankbar.
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 04 Januar 2019, 15:45:25
Hallo!
Das habe ich doch schon längst im ersten Beitrag  :)
Ich habe da keine Änderungen gemacht.

Was kommt denn bei dir, wenn Du im Browser die URL
https://nominatim.openstreetmap.org/reverse?format=json&lat=".$Poi_lat."&lon=".$Poi_lng
aufrufst? (Natürlich mit den eingesetzten lat lng Werten)


Ich habe es jetzt nochmal geprüft. Sorry. Ich hatte gedacht, das ich die Modifizierung damals genauso umgesetzt hatte. Habe ich wohl nicht. Daher habe ich im ersten Beitrag unter "Edit2" meine Variante der getBlitzerOrteCallback Funktion nochmal geschrieben. Das sollte dann für das "ländliche" Gebiet etwas besser passen.

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: AnDiBaCkE am 04 Januar 2019, 19:42:20
Hallo zusammen und allen ein gesundes Neues!

Bei mir läuft die Darstellung der Blitzer im Dummy perfekt. Über den Umweg mit dem PushText Reading klappt es auch mit der Benachrichtigung per Pushover.
Leider bekomme ich nun im definierten Intervall die Nachrichten immer doppelt weil das mit event-on-change-reading im Dummy nicht funktioniert. Es liegt bestimmt an der Weise wie die Readings geholt werden, erst alle löschen und dann reread.
Habt ihr eine schlanke Idee wie man dennoch nur bei Ändrung des Readings eine Nachricht sendet?

Vielen Dank für den nützlichen Code!

Gruß,
AnDiBaCkE
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 04 Januar 2019, 19:46:44
Hallo!
Einfach das Löschen der readings auskommentieren. Dürfte eigentlich überflüssig sein, da ja immer etwas neues erstellt wird.
Habe ich jetzt auf die schnelle nicht überprüft...
Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: AnDiBaCkE am 05 Januar 2019, 15:28:30
Hallo bismosa,

Ich habe das Delete raus genommen aber nun bleiben die alten Blitzer stehen. Wenn neue Blitzer rein kommen rutschen die Alten weiter runter.
Event-on-change-reading klappt jetzt natürlich aber der Dummy zeigt jetzt veraltete Blitzer an  :(
Hast du noch eine andere Idee?

Vielen Dank!

Gruß,
AnDiBaCkE
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 05 Januar 2019, 15:40:31
Hallo,
mist. Daran hatte ich nicht gedacht. das wird ja benötigt um die alten zu entfernen.
Man müsste das löschen der Readings ohne ein Event zu erzeugen vornehmen....weiß ich aber gerade nicht, wie das am besten geht.

Ich überlege gerade nur, ob es wirklich am löschen der readings liegt? Ein gelöschtes Reading kann ja schlecht ein Event erzeugen? Liegt es daran, dass gerade mehrere Blitzer in der Nähe sind?
Ich habe gerade gelesen, dass es nicht die feine Art ist, die Readings zu löschen. Ich habe aber für diesen Anwendungsfall gerade keine bessere Idee. Sorry. Ich denke aber mal weiter drauf rum.

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: thorschtn am 05 Januar 2019, 20:45:02
Zitat von: AnDiBaCkE am 04 Januar 2019, 19:42:20
Leider bekomme ich nun im definierten Intervall die Nachrichten immer doppelt weil das mit event-on-change-reading im Dummy nicht funktioniert. Es liegt bestimmt an der Weise wie die Readings geholt werden, erst alle löschen und dann reread.
Habt ihr eine schlanke Idee wie man dennoch nur bei Ändrung des Readings eine Nachricht sendet?

Schlank vielleicht nicht, ich hab das bei mir folgendermaßen gelöst:

Ich lösche das Reading im Dummy wie von Bismosa implementiert und schreibe es neu. Ich habe aber noch ein weiteres Dummy_Whatsapp, das vergleiche ich anschließend mit dem Standard Dummy. Wenn das Dummy_Whatsapp jetzt verschieden ist (d.h. es hat sich etwas geändert) und das Standard Dummy nicht leer, dann kopiere ich den Sendetext aus dem Standard Dummy in das Dummy_Whatsapp und überwache das Dummy_Whatsapp mit on-change-reading. Das hat zur Folge, dass immer nur dann gesendet wird, wenn es auch wirklich eine Änderung gegeben hat und die Meldung nicht leer ist.


fhem("setreading $BlitzerDev Text $Text");

### Vergleich ob Meldung anders und nicht leer
my $currentText = ReadingsVal ("blitzerWhatsApp","Text","");
if ($Text ne $currentText){
if ($Text ne "."){
fhem("setreading $BlitzerDevWhatsApp Text $Text");
}
}
}
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 06 Januar 2019, 22:18:11
Zitat von: bismosa am 04 Januar 2019, 15:45:25
Hallo!
Das habe ich doch schon längst im ersten Beitrag  :)
Ich habe da keine Änderungen gemacht.

Was kommt denn bei dir, wenn Du im Browser die URL
https://nominatim.openstreetmap.org/reverse?format=json&lat=".$Poi_lat."&lon=".$Poi_lng
aufrufst? (Natürlich mit den eingesetzten lat lng Werten)


Mein "ohne Orte" scheint ein wie auch immer gearteter Hustenanfall gewesen zu sein. Als ich vorhin (mit dem bisherigen Code) schaute, waren die Orte auf einmal da.

Deinen neuen Codevorschlag habe ich nun eingebaut, mangels örtlicher Blitzer kann ich dazu aber nichts sagen.

Die dann folgende Diskussion - ist die für mich relevant?
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 07 Januar 2019, 08:58:35
Hallo!

@curt
Die Nachfolgende Diskussion hat nur etwas mit den erzeugten Events zu tun. Nichts mit der Anzeige der Orte.
Manchmal gibt es Bereiche in denne geblitzt wird, wo es keinen festen Ort gibt. Z.B. auf einer Landstraße. Dann einfach mal nachschauen, was da gemeldet wird und welche Variante da besser für Dich passt.

@thorschtn
Danke für das teilen. Auf diese Idee wäre ich wohl nicht gekommen.

@All
Es ist halt einfach nur eine Bastellösung. Ich finde es aber sehr interessant, auf wie viel Interesse das Thema stößt. Falls hier Ideen sind, wie man das noch besser (vielleicht auch ohne löschen der Readings) lösen kann...kann ich das auch im ersten Beitrag nachpflegen.

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: AnDiBaCkE am 07 Januar 2019, 19:39:21
Hallo!
Wenn ich wieder zu Hause bin teste ich auch gleich den Vorschlag von thorschtn. Vielen Dank für die Unterstützung.

@Bismosa: Ich bin ja für ein eigenes Modul  8) Leider habe ich davon keine Ahnung aber ich werde es mir einmal vom Weihnachtsmann wünschen! Vielleicht klappt's  :P

Gruß,
AnDiBaCkE
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 07 Januar 2019, 20:29:16
Hallo!

@AnDiBaCkE
Ja...ein Modul wäre hier wohl praktisch...aber eigentlich bin ich auch zufrieden, wie es bei mir läuft. Wäre aber auch ein schönes Übungsprojekt....aber leider bin ich auch in zu vielen anderen Projekten schon drin...
Das sind mir noch zu viele ABER...aber wer weiß?  :)

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 08 Januar 2019, 01:45:40
Zitat von: bismosa am 07 Januar 2019, 20:29:16
Ja...ein Modul wäre hier wohl praktisch...

Ich weiß nicht, ob es für alles ein Modul braucht. Viel wichtiger ist -und darum möchte ich Dich sehr freundlich bitten- das gesamte Vorgehen im Wiki zu verewigen.

Begründung: Hier im Forum findet man solche schönen Lösungen nur zufällig, im Wiki ist das viel nachhaltiger.

BTW: Machst Du was mit FTUI als Frontend? Schaue Dir mal bitte https://wiki.fhem.de/wiki/FTUI_Widget_Maps an. Wenn ich recht erinnere, ist das von @eki und kann mehrere JSON-Ebenen. Ich selbst habe das Thema allerdings zurückgestellt: Bei mir gibt es die Karte, die Verkehrslage sowie testweise die Feuerlöscher (Testebene). Auf den ersten Blick wäre es sinnvoll, die Blitzer (auch) dort zu integrieren. Ich bin allerdings nicht sicher, ob das geht.
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 08 Januar 2019, 13:26:34
Hallo!

ZitatIch weiß nicht, ob es für alles ein Modul braucht
Ich weiß es auch nicht. Aber in einem Modul ist es viel praktischer als über mehrere Devices und einer langen Anleitung. Dafür ist es doch am Anfang sehr Aufwendig ein Modul zu erstellen...und ich habe da sehr wenig Erfahrung drin.

Zitatdas gesamte Vorgehen im Wiki zu verewigen
Hatte ich auch bereits drüber nachgedacht. Aber wieder verworfen. Ich finde den Ort hier bei den Codeschnipseln besser aufgehoben, da man ja schon im Thread bemerkt, wie unterschiedlich die einzelnen Lösungen aussehen können. Hier kann dann auch direkt die Diskussion dazu stattfinden.
Ich persönlich habe nur sehr wenig aus dem Wiki an Vorlagen verwendet. Oftmals waren die Informationen hier veraltet. Im Forum habe ich dann bessere Hinweise gefunden. Meine Meinung.
Wenn jemand Lust und Zeit hat, darf er gerne das Beispiel im Wiki veröffentlichen. Da habe ich kein Problem mit.

ZitatMachst Du was mit FTUI als Frontend? Schaue Dir mal bitte https://wiki.fhem.de/wiki/FTUI_Widget_Maps an
Ja. Das nutze ich genau so im FTUI. Per Label eingebunden. Da kann man den generierten HTML Code so verwenden. Mehr benötige ich hier nicht. Ich lasse mir nur eine kleine Warnung (In ROT) anzeigen, wenn ein Blitzer in der Nähe ist. Entweder gehe ich dann dichter an das Tablet um die Texte zu lesen oder ich fahre einfach besonnender ;)
Eine Anzeige als Map hatte ich nie vor.

@thorschtn @AnDiBaCkE
Auf welches Reading triggert ihr denn eigentlich? Aus dem "httpmod_blitzer"? Ich nutze in der TabletUI das Reading "Text" aus dem dummy. Hier könntet ihr doch auch einfach ein weiteres Reading erzeugen, das getriggert wird, wenn es eine Änderung gibt. Also z.B. im Bereich "getBlitzerText" wenn es eine Änderung gibt ein Reading "HasChanged" o.ä. setzen. Dann könnte man nur auf das eine Event reagieren.
Wenn ich es auf die schnelle gerade richtig gesehen habe, dann wird das reading Text im Dummy bei jedem Durchlauf neu geschrieben...und nie gelöscht.

Eigentlich müsste es sich auch so erweitern lassen, dass die Readings nur neu geschrieben/gelöscht werden, wenn es Änderungen gibt.
Vermutlich wäre ein ReadingsBulkUpdate hier praktisch. Ich habe aber keine Erfahrung ob dies auch außerhalb eines Moduls funktioniert.
Allerdings müsste dies im Device httpmod_blitzer passieren...

Mir fehlt leider die Zeit mich gerade intensiv damit auseinander zu setzen. Habe gerade noch ein paar andere Baustellen offen.

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: MadMax-FHEM am 08 Januar 2019, 16:20:37
Zitat von: AnDiBaCkE am 07 Januar 2019, 19:39:21
Hallo!
Wenn ich wieder zu Hause bin teste ich auch gleich den Vorschlag von thorschtn. Vielen Dank für die Unterstützung.

@Bismosa: Ich bin ja für ein eigenes Modul  8) Leider habe ich davon keine Ahnung aber ich werde es mir einmal vom Weihnachtsmann wünschen! Vielleicht klappt's  :P

Gruß,
AnDiBaCkE

und @thorschtn:

statt den gesamten Inhalt zu merken/speichern und zu vergleichen kann man (so mache ich das bei TelegramMeldungen) auch einfach ein Reading im Blitzer-Device setzen (mittels: setreading Blitzer msgSent now / was als "Wert" gesetzt wird [hier: now ;) ] ist quasi egal) und dann einfach vor dem (erneuten) Senden prüfen wann zuletzt gesendet wurde (mittels ReadingAge("Blitzer","msgSent",0) ) und beispielsweise frühestens nach 10s/1m etc. wieder was senden...

@bismosa: vielen Dank für den Code!

EDIT: da war ich knapp zu langsam ;) aber ähnlich
Zitat von: bismosa am 08 Januar 2019, 13:26:34
@thorschtn @AnDiBaCkE
Auf welches Reading triggert ihr denn eigentlich? Aus dem "httpmod_blitzer"? Ich nutze in der TabletUI das Reading "Text" aus dem dummy. Hier könntet ihr doch auch einfach ein weiteres Reading erzeugen, das getriggert wird, wenn es eine Änderung gibt. Also z.B. im Bereich "getBlitzerText" wenn es eine Änderung gibt ein Reading "HasChanged" o.ä. setzen. Dann könnte man nur auf das eine Event reagieren.
Wenn ich es auf die schnelle gerade richtig gesehen habe, dann wird das reading Text im Dummy bei jedem Durchlauf neu geschrieben...und nie gelöscht.

Gruß, Joachim
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 09 Januar 2019, 01:21:17
Zitat von: bismosa am 08 Januar 2019, 13:26:34
Zitatdas gesamte Vorgehen im Wiki zu verewigen
Hatte ich auch bereits drüber nachgedacht. Aber wieder verworfen. Ich finde den Ort hier bei den Codeschnipseln besser aufgehoben, da man ja schon im Thread bemerkt, wie unterschiedlich die einzelnen Lösungen aussehen können. Hier kann dann auch direkt die Diskussion dazu stattfinden.
Ich persönlich habe nur sehr wenig aus dem Wiki an Vorlagen verwendet. Oftmals waren die Informationen hier veraltet. Im Forum habe ich dann bessere Hinweise gefunden. Meine Meinung.

Ich sehe das genau anders-herum. Zig Seiten Diskussion. Und man weiß nicht, ob es es noch und welche der Versionen funktioniert. Riesiger Zeitaufwand, oft für nichts.

Zitat von: bismosa am 08 Januar 2019, 13:26:34
Das nutze ich genau so im FTUI. Per Label eingebunden. Da kann man den generierten HTML Code so verwenden. Mehr benötige ich hier nicht. Ich lasse mir nur eine kleine Warnung (In ROT) anzeigen, wenn ein Blitzer in der Nähe ist.

Ehe ich aufwändig das Fahrrad neu erfinde: Zeigst Du bitte den Code?
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 09 Januar 2019, 07:54:54
Hallo!
ZitatIch sehe das genau anders-herum. Zig Seiten Diskussion. Und man weiß nicht, ob es es noch und welche der Versionen funktioniert. Riesiger Zeitaufwand, oft für nichts.
Dafür halte ich alles im ersten Beitrag auf Stand. Das ist im WiKi meist nicht so einfach...aber Du kannst gerne einen Wiki Eintrag machen.
Ich hatte öfter den anderen Fall, das Beispiele aus dem Wiki extrem veraltet waren...

ZitatZeigst Du bitte den Code?
Beitrag #1 ?

Und im FTUI noch ein einfaches Label:

<div data-type="label"
     data-device="blitzer"
     data-get="Text"
     ></div>


Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 09 Januar 2019, 08:13:16
Danke.

Aber nun habe ich es kaputt gemacht:

Zitat
ERROR:
syntax error at ./FHEM/99_myUtils.pm line 116, near ""!!" 99_" Global symbol "$device" requires explicit package name (did you forget to declare "my $device"?) at ./FHEM/99_myUtils.pm line 122. Global symbol "@rl" requires explicit package name (did you forget to declare "my @rl"?) at ./FHEM/99_myUtils.pm line 124. Can't redeclare "my" in "my" at ./FHEM/99_myUtils.pm line 127, near "" syntax error at ./FHEM/99_myUtils.pm line 131, near "}" Global symbol "$device" requires explicit package name (did you forget to declare "my $device"?) at ./FHEM/99_myUtils.pm line 131. Global symbol "@rl" requires explicit package name (did you forget to declare "my @rl"?) at ./FHEM/99_myUtils.pm line 133. syntax error at ./FHEM/99_myUtils.pm line 134, near "}" syntax error at ./FHEM/99_myUtils.pm line 139, near "}" Can't redeclare "my" in "my" at ./FHEM/99_myUtils.pm line 144, near "" ./FHEM/99_myUtils.pm has too many errors.

In der Ausgabezeile habe ich die Nummerierung sowie das scheinbar unsinnige "!!" gelöscht. Das sieht doch nicht schön aus.

Am fehlenden "!!" stört er sich aber erst, seitdem ich auch noch die Nummerierung löschte. Gna.

Hab mal bitte eine Idee.
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 09 Januar 2019, 08:16:05
Hallo,

zeig mal bitte Deine myUtils. Vielleicht fehlt irgendwo ein semikolon o.ä.?

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 09 Januar 2019, 08:19:30
Ich habe gesehen, dass Du im Script aus irgendwelchen Gründen nach "!!" suchst. Aber das gibt es nun nicht mehr. Keine Ahnung, ob das relevant ist.


################################################################
###                        Blitzer                           ###
################################################################
# https://forum.fhem.de/index.php/topic,90014.0.html
#
sub getBlitzer(){
    my $httpDev = "httpmod_blitzer";
    my $BlitzerDev = "blitzer";
    my $lat = AttrVal($BlitzerDev,"lat",undef);
    my $lng = AttrVal($BlitzerDev,"lng",undef);
my $maxkm = AttrVal($BlitzerDev,"maxkm",undef);
    if (!defined $lat){
        Log 5,"[getBlitzer] lat ist nicht definiert!";
    }
    if (!defined $lng){
        Log 5,"[getBlitzer] lng ist nicht definiert!";
    }
if (!defined $maxkm){
        Log 5,"[getBlitzer] maxkm ist nicht definiert!";
    }
    # Da unbekannt ist, wie viele es gibt...durchprobieren
    my @Liste;
    for(my $i=1;$i<100;$i++){
        my $num = sprintf("%02d", $i);
        Log 5,"[getBlitzer] Reading: $num";
        my $Poi_lat = ReadingsVal($httpDev,"pois_".$num."_lat",undef);
        my $Poi_lng = ReadingsVal($httpDev,"pois_".$num."_lng",undef);
        last if !defined $Poi_lat;
#Log 1,"[getBlitzer] Reading: $Poi_lat";
        last if !defined $Poi_lng;
        Log 5,"[getBlitzer] lat/lng: $Poi_lat $Poi_lng";
        my $Poi_street = ReadingsVal($httpDev,"pois_".$num."_street","keine");
        my $Poi_vmax = ReadingsVal($httpDev,"pois_".$num."_vmax","kA");
        if (!defined $Poi_vmax){
            $Poi_vmax = ".";
        }
        if ($Poi_vmax eq ""){
            $Poi_vmax = ".";
        }
        Log 5,"[getBlitzer] $Poi_street $Poi_vmax";
               
        #Entfernung zur Home-Koordinate (Luftlinie)
        #Berechnung nach: https://www.kompf.de/gps/distcalc.html
        #Einfache Variante
        my $dx = 71.5 * abs($lng - $Poi_lng);
        my $dy = 111.3 * abs($lat - $Poi_lat);
my $distance = sqrt($dx * $dx + $dy * $dy);
       
#MaxEntfernung einbeziehen
if (not $distance > $maxkm){
Log 5,"[getBlitzer] distance: $distance";
        push @Liste, [ $distance, $Poi_street, $Poi_vmax, $Poi_lat, $Poi_lng ];
} else {
Log 5,"[getBlitzer] $distance > $maxkm";
}

       
    }
    my $out = join(", ", @Liste)."\n";
    Log 5,"[getBlitzer] $out";
    my @ListeSort = sort {$a->[0] <=> $b->[0]} @Liste;
    my $out = join(", ", @ListeSort)."\n";
    Log 5,"[getBlitzer] $out";
   
    #Eintragen ins Dummy-Device
    #Eintragungen erst löschen
    fhem("deletereading $BlitzerDev .*", 1);
   
    my $Text="";
    my $Anzahl = scalar(@ListeSort);
    for (my $i=0;$i<$Anzahl;$i++) {
        my $num = sprintf("%02d", $i);
        Log 5,"[getBlitzer] Num: $num";
        fhem("setreading $BlitzerDev ".$num."Entfernung ".$ListeSort[$i][0]);
        fhem("setreading $BlitzerDev ".$num."Strasse ".$ListeSort[$i][1]);
        fhem("setreading $BlitzerDev ".$num."VMax ".$ListeSort[$i][2]);
       
        #Ort
        fhem("sleep 1; \{getBlitzerOrte(".$ListeSort[$i][3].",".$ListeSort[$i][4].",'$num','$BlitzerDev')};");
       
    }
    fhem("sleep 3; \{getBlitzerText('$BlitzerDev')};");
    #fhem("setreading $BlitzerDev Text $Text");
   
}
sub getBlitzerOrte($$$$){
#https://nominatim.openstreetmap.org/search/52.xxxxx%208.xxxx?format=json&addressdetails=1
    my $Poi_lat = shift;
    my $Poi_lng = shift;
    my $num = shift;
    $num = sprintf("%02d", $num);
    my $BlitzerDev = shift;


my $hash = {};
  $hash->{'blitzerdev'} = $BlitzerDev;
$hash->{'num'} = $num;
my $param = {
           url        => "https://nominatim.openstreetmap.org/reverse?format=json&lat=".$Poi_lat."&lon=".$Poi_lng,
           timeout    => 5,
           method     => "GET",            # Lesen von Inhalten
   hash       => $hash,            # Muss gesetzt werden, damit die Callback funktion wieder $hash hat
           header     => "",
           callback   =>  \&getBlitzerOrteCallback   # Diese Funktion soll das Ergebnis dieser HTTP Anfrage bearbeiten
    };
#agent: FHEM/1.0\r\nUser-Agent: FHEM/1.0\r\nAccept: application/json

    HttpUtils_NonblockingGet($param);      # Starten der HTTP Abfrage. Es gibt keinen Return-Code.

}

sub getBlitzerOrteCallback($) {
    my ($param, $err, $data) = @_;
    my $hash = $param->{hash};
    my $BlitzerDev = $hash->{blitzerdev};
my $num = $hash->{num};

    if($err ne "")      # wenn ein Fehler bei der HTTP Abfrage aufgetreten ist
    {
        Log3 "[getBlitzerOrte]", 3, "error while requesting ".$param->{url}." - $err";   # Eintrag fürs Log
    }
#Log 1,"[getBlitzerOrte] $BlitzerDev ".$param->{data}." ".$param->{url}." ".$param->{httpheader}." ".$param->{code};
#Log 1,"$data";
my $Ort = "";
my ($Ort) = $data =~ m/suburb":"([^"]+)"/;
if ((!defined $Ort) or ($Ort eq "")){
#Log 1, "[getBlitzerOrteCallback] search city_district";
        ($Ort) = $data =~ m/city_district":"([^"]+)"/;
#Log 1, "[getBlitzerOrteCallback] $Ort";
    }
if ((!defined $Ort) or ($Ort eq "")){
#Log 1, "[getBlitzerOrteCallback] search town $data";
        ($Ort) = $data =~ m/town":"([^"]+)"/;
#Log 1, "[getBlitzerOrteCallback] $Ort";
    }
if ((!defined $Ort) or ($Ort eq "")){
#Log 1, "[getBlitzerOrteCallback] search village $data";
        ($Ort) = $data =~ m/village":"([^"]+)"/;
#Log 1, "[getBlitzerOrteCallback] $Ort";
    }
    if ((!defined $Ort) or ($Ort eq "")){
#Log 1, "[getBlitzerOrteCallback] $Ort";
Log 5, "[getBlitzerOrteCallback] ".$param->{url};
Log 5, "[getBlitzerOrteCallback] $data";
        $Ort = ".";
    }
    my ($building) = $data =~ m/building":"([^"]+)"/;
    if ((!defined $building) or ($building eq "")){
        $building = ".";
    }
    Log 5,"[getBlitzerOrteCallback] $Ort $building";
    #Log 1,"[getBlitzerOrte] ".$decoded_json->{address}->{suburb}->[0];
    fhem("setreading $BlitzerDev ".$num."Ort $Ort");
fhem("setreading $BlitzerDev ".$num."Building $building");
}

sub getBlitzerText($){
    my $BlitzerDev = shift;
    my $Text="<html> <p align='left'>";
    for(my $i=0;$i<100;$i++){
        my $num = sprintf("%02d", $i);
        my $Entf = ReadingsVal($BlitzerDev,$num."Entfernung",undef);
last if !defined $Entf;
my $Ort = ReadingsVal($BlitzerDev,$num."Ort",".");
if ($Ort eq "."){$Ort = " "};
my $building = ReadingsVal($BlitzerDev,$num."Building",0);
if ($building eq "."){$building = " "};
        my $Strasse = ReadingsVal($BlitzerDev,$num."Strasse"," ");
        my $VMax = ReadingsVal($BlitzerDev,$num."VMax"," ");
        if (not $Text eq "<html> <p align='left'>"){
            $Text = $Text."\n <br>";   
        }
        $Text = $Text."$Ort $Strasse $building Max $VMax km/h (".sprintf("%.1f", "$Entf")."km)";
    }
$Text = $Text."</p></html>";
    fhem("setreading $BlitzerDev Text $Text");
}

##########

Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 09 Januar 2019, 08:22:44
Hallo!
Zitatdass Du im Script aus irgendwelchen Gründen nach "!!" suchst
Öhm...nö? Nicht das ich mich gerade daran erinnern könnte. Oder was meinst Du genau?

Kannst Du mir Sagen welches die Zeile 116 ist?

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 09 Januar 2019, 08:32:16
Zitat von: bismosa am 09 Januar 2019, 08:22:44
Hallo!Öhm...nö? Nicht das ich mich gerade daran erinnern könnte. Oder was meinst Du genau?

Das ist zu streichen, Fehler meinerseits. Diese Zeile taucht in sub DWD auf ...
$expMode = "point" if(!defined($expMode));grep "!!" 99_myUtils.pm*

Der schnelle Blick war zu schnell ...

Zitat von: bismosa am 09 Januar 2019, 08:22:44
Kannst Du mir Sagen welches die Zeile 116 ist?

Ich verstehe den Hintergrund der Frage nicht.
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 09 Januar 2019, 08:34:49
Hallo,

ZitatIch verstehe den Hintergrund der Frage nicht.
In der Fehlermeldung steht:
syntax error at ./FHEM/99_myUtils.pm line 116
daher möchte ich gerne wissen, welches diese Zeile sein kann. Dann kann man gezielter nach dem Fehler suchen.

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: AnDiBaCkE am 09 Januar 2019, 21:47:17
Hallo bismosa,

Zitat@thorschtn @AnDiBaCkE
Auf welches Reading triggert ihr denn eigentlich? Aus dem "httpmod_blitzer"? Ich nutze in der TabletUI das Reading "Text" aus dem dummy. Hier könntet ihr doch auch einfach ein weiteres Reading erzeugen, das getriggert wird, wenn es eine Änderung gibt. Also z.B. im Bereich "getBlitzerText" wenn es eine Änderung gibt ein Reading "HasChanged" o.ä. setzen. Dann könnte man nur auf das eine Event reagieren.
Wenn ich es auf die schnelle gerade richtig gesehen habe, dann wird das reading Text im Dummy bei jedem Durchlauf neu geschrieben...und nie gelöscht.

Eigentlich müsste es sich auch so erweitern lassen, dass die Readings nur neu geschrieben/gelöscht werden, wenn es Änderungen gibt.
Vermutlich wäre ein ReadingsBulkUpdate hier praktisch. Ich habe aber keine Erfahrung ob dies auch außerhalb eines Moduls funktioniert.
Allerdings müsste dies im Device httpmod_blitzer passieren...

Mir fehlt leider die Zeit mich gerade intensiv damit auseinander zu setzen. Habe gerade noch ein paar andere Baustellen offen.

Ich habe es in beiden versucht, httpmod und Dummy und mit allen möglichen Readings.
Mit ReadingAge habe ich nichts zum Laufen bekommen und habe mir nun aus Zeitgründen die 2x Dummylösung von thorschtn gebaut.
Ist zwar nicht elegant aber funktioniert.

Vielen Dank!

Gruß,
AnDiBacKe
Titel: Antw:Blitzer anzeigen
Beitrag von: MadMax-FHEM am 09 Januar 2019, 22:02:58
Zitat von: AnDiBaCkE am 09 Januar 2019, 21:47:17
Hallo bismosa,

Ich habe es in beiden versucht, httpmod und Dummy und mit allen möglichen Readings.
Mit ReadingAge habe ich nichts zum Laufen bekommen und habe mir nun aus Zeitgründen die 2x Dummylösung von thorschtn gebaut.
Ist zwar nicht elegant aber funktioniert.

Vielen Dank!

Gruß,
AnDiBacKe

Hallo AnDiBacKe,

wenn's läuft... ;)

Falls du etwas schlanker werden willst evtl. mal hier schauen: https://forum.fhem.de/index.php/topic,95598.msg884655.html#msg884655

Statt dem Dummy (dmTelegramSends) kannst du das auch direkt im Blitzer-HTTPMOD oder so "speichern".
Ich habe den Dummy nur, da das meine generelle Sammelstelle für Telegram-Nachrichten ist...
$SignalDevice brauchst du auch nicht, kann ja ein fester Reading-Name sein ;)

Gruß, Joachim
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 09 Januar 2019, 23:12:52
@bismosa
Ich habe die letzte Sicherung von 99_myUtils.pm eingespielt und dann nochmals die Nummerierung sowie "!!" entfernt. Nun geht es.
Titel: Antw:Blitzer anzeigen
Beitrag von: Floriky am 17 Januar 2019, 22:18:08
Also bei mir läuft das alles Suuuuuuuuuuuuper! Vielen Dank an alle für eure Arbeit!
Titel: Antw:Blitzer anzeigen
Beitrag von: Floriky am 18 Januar 2019, 08:19:11
Hallo Zusammen,

finde seit der Übernahme des Codeschnipsels folgende Einträge in meinem Log:

2019.01.18 07:59:55 1: PERL WARNING: "my" variable $out masks earlier declaration in same scope at ./FHEM/99_myUtils.pm line 240.
2019.01.18 07:59:55 1: PERL WARNING: "my" variable $Ort masks earlier declaration in same scope at ./FHEM/99_myUtils.pm line 304


Zur Zeile 240:

Zeile:
    my $out = join(", ", @ListeSort)."\n";

aus:
        #Entfernung zur Home-Koordinate (Luftlinie)
        #Berechnung nach: https://www.kompf.de/gps/distcalc.html
        #Einfache Variante
        my $dx = 71.5 * abs($lng - $Poi_lng);
        my $dy = 111.3 * abs($lat - $Poi_lat);
                my $distance = sqrt($dx * $dx + $dy * $dy);

                #MaxEntfernung einbeziehen
                if (not $distance > $maxkm){
                        Log 5,"[getBlitzer] distance: $distance";
                push @Liste, [ $distance, $Poi_street, $Poi_vmax, $Poi_lat, $Poi_lng ];
                } else {
                        Log 5,"[getBlitzer] $distance > $maxkm";
                }




}
    my $out = join(", ", @Liste)."\n";
    Log 5,"[getBlitzer] $out";
    my @ListeSort = sort {$a->[0] <=> $b->[0]} @Liste;
    my $out = join(", ", @ListeSort)."\n";
    Log 5,"[getBlitzer] $out";

    #Eintragen ins Dummy-Device
    #Eintragungen erst löschen



Zur Zeile 304:

Zeile:
my ($Ort) = $data =~ m/suburb":"([^"]+)"/;


aus:
    if($err ne "")      # wenn ein Fehler bei der HTTP Abfrage aufgetreten ist
    {
        Log3 "[getBlitzerOrte]", 3, "error while requesting ".$param->{url}." - $err";   # Eintrag fürs Log
    }
        #Log 1,"[getBlitzerOrte] $BlitzerDev ".$param->{data}." ".$param->{url}." ".$param->{httpheader}." ".$param->{code};
        #Log 1,"$data";
        my $Ort = "";
        my ($Ort) = $data =~ m/suburb":"([^"]+)"/;
        if ((!defined $Ort) or ($Ort eq "")){
                #Log 1, "[getBlitzerOrteCallback] search city_district";
        ($Ort) = $data =~ m/city_district":"([^"]+)"/;
                #Log 1, "[getBlitzerOrteCallback] $Ort";
    }
        if ((!defined $Ort) or ($Ort eq "")){
                #Log 1, "[getBlitzerOrteCallback] search town $data";
        ($Ort) = $data =~ m/town":"([^"]+)"/;
                #Log 1, "[getBlitzerOrteCallback] $Ort";
    }
        if ((!defined $Ort) or ($Ort eq "")){
                #Log 1, "[getBlitzerOrteCallback] search village $data";
        ($Ort) = $data =~ m/village":"([^"]+)"/;
                #Log 1, "[getBlitzerOrteCallback] $Ort";
    }
    if ((!defined $Ort) or ($Ort eq "")){
                #Log 1, "[getBlitzerOrteCallback] $Ort";
                Log 5, "[getBlitzerOrteCallback] ".$param->{url};
                Log 5, "[getBlitzerOrteCallback] $data";
        $Ort = ".";
    }


Kann das mit meinem Wissensstand leider überhaupt nicht einschätzen . Hab ich da was falsch gemacht?

Vielen Dank vorab!

Grüße
Florian
Titel: Antw:Blitzer anzeigen
Beitrag von: mumpitzstuff am 18 Januar 2019, 08:56:06
Du legst einfach eine Variable doppelt an:

my $out = join(", ", @Liste)."\n";
my $out = join(", ", @ListeSort)."\n";


und

my $Ort = "";
my ($Ort) = $data =~ m/suburb":"([^"]+)"/;


Lösung:

#my $out = join(", ", @Liste)."\n";
    #Log 5,"[getBlitzer] $out";


Diese beiden Zeilen auskommentieren.

#my $Ort = "";

Und diese Zeile ebenfalls.
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 18 Januar 2019, 09:27:11
Hallo,

danke für den Hinweis. Ich habe es direkt im ersten Beitrag bereinigt.

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: Floriky am 18 Januar 2019, 09:42:43
Zitat von: mumpitzstuff am 18 Januar 2019, 08:56:06
Du legst einfach eine Variable doppelt an:

my $out = join(", ", @Liste)."\n";
my $out = join(", ", @ListeSort)."\n";


und

my $Ort = "";
my ($Ort) = $data =~ m/suburb":"([^"]+)"/;


Lösung:

#my $out = join(", ", @Liste)."\n";
    #Log 5,"[getBlitzer] $out";


Diese beiden Zeilen auskommentieren.

#my $Ort = "";

Und diese Zeile ebenfalls.

Hallo und Danke mumpitzstuff! Die Meldung ist weg! Ich liebe dieses Forum einfach! So sollte Internet immer sein...  ;) Viele Grüße


Zitat von: bismosa am 18 Januar 2019, 09:27:11
Hallo,

danke für den Hinweis. Ich habe es direkt im ersten Beitrag bereinigt.

Gruß
Bismosa

Hallo Bismosa,
kann es sein, dass das nicht geklappt hat oder verstehe ich was falsch? Will nicht drängeln - nur nichts falsch machen.

Grüße Florian
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 18 Januar 2019, 10:21:10
Hallo,

doch...das sollte geklappt haben.
Ich habe es jedoch etwas anders gemacht:

    my $out = join(", ", @Liste)."\n";
    Log 5,"[getBlitzer] $out"; 
    my @ListeSort = sort {$a->[0] <=> $b->[0]} @Liste;
    $out = join(", ", @ListeSort)."\n";

Ich habe hier jetzt die Variable "out" nur noch 1x deklariert.
Man kann es auch so machen, wie vorgeschlagen. Dann hat man aber bei "Debug 5" diese Ausgabe nicht mehr.

#my $Ort = "";
Ist auch auskommentiert.

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: Floriky am 18 Januar 2019, 10:33:23
Zitat von: bismosa am 18 Januar 2019, 10:21:10

Ich habe hier jetzt die Variable "out" nur noch 1x deklariert.
Man kann es auch so machen, wie vorgeschlagen. Dann hat man aber bei "Debug 5" diese Ausgabe nicht mehr.

#my $Ort = "";
Ist auch auskommentiert.

Gruß
Bismosa

Ok, dann ist gut! Danke für deine Mühe!
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 18 Januar 2019, 15:41:51
Zitat von: bismosa am 18 Januar 2019, 09:27:11
danke für den Hinweis. Ich habe es direkt im ersten Beitrag bereinigt.

Args ... bedeutet das jetzt, dass man jedesmal den ersten Beitrag zeilenweise nachvollziehen muss?
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 18 Januar 2019, 15:47:45
Hallo,

ZitatArgs ... bedeutet das jetzt, dass man jedesmal den ersten Beitrag zeilenweise nachvollziehen muss?

Ja...letztendlich schon. Oder man hat es mitbekommen und den Beitrag
https://forum.fhem.de/index.php/topic,90014.msg890222.html#msg890222
gelesen.

Da viele es entweder selbst angepasst haben oder direkt kopiert haben ist für jeden anders. Bei einer direkten Kopie einfach neu kopieren oder die entsprechenden Zeilen bearbeiten.
Sollte machbar sein.

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 18 Januar 2019, 16:08:07
Naja - aber spätestens jetzt wird es für Neueinsteiger unübersichtlich. Und auch für Leute wie mich - nun gibt es ja zwei Versionen der vorgeschlagenen Änderung.

Ich würde es schöner/zielführender finden, wenn es irgendwo (Wiki?) eine aktuelle Version gäbe.
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 18 Januar 2019, 16:23:37
Hallo,

dann stelle es doch ins Wiki. Was hätten wir dann? Noch mehr Chaos!
Da gibt es dann keine Diskussion...sondern es wäre einfach ohne das es jemand mitbekommt geändert worden.
Ich pflege die Änderungen im ersten Beitrag nach. Wenn es sich jemand kopiert sollte es fehlerfrei laufen. Dafür mache ich das.

Es gibt mittlerweile bestimmt über 10 Versionen...das hier ist ein BEISPIEL! Kann man so benutzen wie es ist...oder sich selbst abändern. Wie man es gerne möchte. Oder man lässt es bleiben und erfindet das Rad für sich neu. Muss jeder selber wissen.

Und was ist unübersichtlich? Wer sich das vorher kopiert hat...der kopiert es einfach neu. Wer sich das abgeändert hat...muss ggf. genauer hinschauen. Ich verstehe das Problem nicht.

Sorry...aber solche Kommentare nerven und da überlege ich mir das nächstes Mal 2x ob ich ein Beispiel hier veröffentliche...

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 18 Januar 2019, 16:29:51
Können wir es bitte sachlich besprechen?

Ich sehe tatsächlich ein Problem. Es reicht ja offensichtlich nicht, Code aus dem ersten Beitrag zu kopieren. Selbst dort sind schon mehrere Edits, die man dann schrittweise immer neu nachvollziehen muss.

(Bitte meinen Beitrag nicht als Angriff missverstehen.)
Titel: Antw:Blitzer anzeigen
Beitrag von: Wolle02 am 18 Januar 2019, 16:51:36
Auch wenn es Off Topic wird, möchte ich hier kurz bismosa zur Seite springen.
Man sollte sich vor Augen führen, dass dieser Thread hier im Bereich "Codeschnipsel" angesiedelt ist und es sich um kein offizielles Modul handelt, das einen Maintainer hat. Da hat bismosa völlig Recht, dass hier jeder für sich selbst gefordert ist.
Ich fände es wirklich sehr, sehr schade, wenn solche Codeschnipsel hier nicht mehr gepostet würden, weil die Leute fürchten dann zum Maintainer durch die Hintertüre gemacht zu werden, obwohl sie das vielleicht gar nicht wollen, sondern nur eine bestimmte Lösung präsentieren wollten.

<Off Topic off>
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 18 Januar 2019, 16:58:03
Hallo,
@curt
natürlich reicht es aus den Code aus dem ersten Beitrag zu kopieren...
Ich habe nach einer Nachfrage noch eine "alternative" Variante mit hinzugefügt....ansonsten die Anpassungen immer direkt im Code vorgenommen...also aus meiner Sicht kein Problem.

Edit3 habe ich nur als Hinweis, damit diejenigen die es bereits laufen haben wissen, dass es eine Anpassung gab.
Ich habe nun noch einen Link zum entsprechenden Beitrag ergänzt. Das hatte ich vorhin vergessen.

Wie schon mal geschrieben...du kannst das auch gerne ins Wiki stellen...ich werde hier nur den Code auf der ersten Seite pflegen.

@Wolle02
Du hast recht. Das wird hier wirklich zu Off Topic.
Als offiziellen Maintainer würde ich mich hier nicht sehen. Aber wenn man ein Beispiel postet sollte man es nach Möglichkeit auch aktuell halten. Das versuche ich auch umzusetzen, damit man nicht seitenweise Beiträge lesen muss.

Ich nehme nach wie vor gerne Verbesserungsvorschläge (für den Codeschnipsel) entgegen. Perfekt ist das bestimmt nicht...aber es funktioniert scheinbar bei mehreren gut.

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 18 Januar 2019, 17:14:50
Zitat von: bismosa am 18 Januar 2019, 16:58:03
Ich nehme nach wie vor gerne Verbesserungsvorschläge (für den Codeschnipsel) entgegen. Perfekt ist das bestimmt nicht...aber es funktioniert scheinbar bei mehreren gut.

Und das Ergebnis ist ja auch wirklich beeindruckend. (Wenn es anders wäre, würden wir doch gar nicht darüber reden.) Ich gehe mal bzgl. Wiki in mich, also ob ich das nicht nur jetzt, sondern auch mittelfristig leisten kann.

So, nun genug des OT.
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 19 Januar 2019, 06:34:01
Zitat von: bismosa am 18 Januar 2019, 16:58:03
natürlich reicht es aus den Code aus dem ersten Beitrag zu kopieren...

Dieses nahm ich und setzte bei mir testweise nochmals völlig neu auf. Damit schrieb ich dann https://wiki.fhem.de/wiki/Stra%C3%9Fenverkehr_Blitzer . Tue mir bitte den Gefallen und überfliege den Text: Der Code ist Deiner, völlig unverändert. Da ist kein Problem. Siehst Du irgendwo Probleme oder Missverständlichkeiten bei meinen Beschreibungen?

Zitat von: bismosa am 18 Januar 2019, 16:58:03
Ich habe nach einer Nachfrage noch eine "alternative" Variante mit hinzugefügt....ansonsten die Anpassungen immer direkt im Code vorgenommen...also aus meiner Sicht kein Problem.

Dieses - sowie Edit3 Edit4 ... Edit17- verwirren einen später Hinzukommenden nur. Da sieht man den Wald vor lauter Bäumen nicht. Mir geht es darum, eine Anleitung zu schreiben, die nachvollziehbar zum sofortigen Erfolg für einen neuen Nutzer führt.

Kritik zu dem Wiki-Artikel https://wiki.fhem.de/wiki/Stra%C3%9Fenverkehr_Blitzer nehme ich gern entgegen. Da wir gleichzeitig aufpassen müssen, dass wir diesen Thread damit nicht zerschießen - vielleicht besser in der Diskussion des Wiki-Artikels. Oder als PN an mich. Notfalls halt auch hier.
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 07 Februar 2019, 04:33:02
Da keine Kritik kam, würde ich den Wiki-Artikel in den nächsten Tagen in die Freiheit entlassen wollen.

@bismosa
Vorher -
da habe ich noch eine Frage, ich selbst kann das nicht.

Wäre des denn bitte möglich, dass Du den Code dergestalt erweiterst, dass ein weiteres/neues Reading erzeugt wird: Es möge "0" sein, wenn in meinem definierten Raum keine Blitzer sind und "1", wenn es einen oder mehrere Blitzer gibt.

Hintergrund ist natürlich, dass ich auf meinem Taktikbildschirm ein Icon anzeigen (bzw nicht anzeigen) will.
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 07 Februar 2019, 10:37:10
Hallo,

habe den Code im erstenn Beitrag angepasst. Es sind nur 3 Zeilen hinzugekommen:
Im Bereich "getBlitzerText($)":
my $SollAnzeige=0;
...
$SollAnzeige=1;
...
fhem("setreading $BlitzerDev Anzeige $SollAnzeige");


Meinetwegen kann der Wiki-Artikel öffentlich gemacht werden. Ich sehe da keine Probleme...

Gruß
Bismsoa
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 08 Februar 2019, 06:16:29
Herzlichen Dank für die Anpassung: Nun kann ich das Symbol ein- bzw. ausschalten.

Die Änderung habe ich in das Wiki übernommen. Artikel verfügbar.
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 15 Februar 2019, 01:13:46
[OT] @somansch @bismosa
Zitat von: somansch am 27 Dezember 2018, 19:03:03
hier der Link mit sämtlichen Infos (incl. FTUI Link) zu "Verkehrsinfo":https://forum.fhem.de/index.php/topic,55118.0.html (https://forum.fhem.de/index.php/topic,55118.0.html)

@bismosa hat den Code im Beitrag 1 gepflegt. Daher kannst du dies 1zu1 übernehmen  ;).

Offtopic:
Soweit ich recht verstand, werden Koordinaten in Adressen umgewandelt. Irgednwo las ich auch, dass OSM im Spiel sei.

Momentan suche ich die genau umgekehrte Version: Adresse (Mitteleuropa oder nur DACH) zu Koordinate. Idealerweise ein OSM-Dienst und als Ergebnis json.

Ideen?
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 18 Februar 2019, 22:55:55
@bismosa

Kannst Du der Device httpmod_blitzer bitte noch ein weiteres Reading spendieren? Das Reading möge nur dann geschrieben werden, wenn der Abruf auch erfolgreich [200 ok] war.

Hintergrund ist https://forum.fhem.de/index.php/topic,49408.0.html - damit kann man ganz allgemein sehen, ob Devices "leben".

Ich könnte auf pois_01_backend prüfen. Sofern auch nur EIN Blitzer irgendwo im definierten Raum steht, lebt das Blitzer-Device. An Tagen wie Heiligabend könnte das aber schief gehen.

Nein, ist nicht wichtig. Und auch nicht dringend.
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 27 März 2019, 20:25:14
Huhu!

@ALL
Weihnachtsgeschenke gibt es hier:
https://forum.fhem.de/index.php/topic,99070.0.html

Das ist die "Modulversion" von diesem Codeschnipsel.

Somit sollte dies hier abgelöst sein. Ich werde das gleich auch noch im ersten Beitrag dazuschreiben.

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: moonsorrox am 03 April 2019, 15:16:04
ich habe mal eine Frage zu der Anzeige, nachdem ich mal den Wert der Entfernung hoch gesetzt habe hatte ich auch einen Blitzer, soll heißen es funktioniert auch.
Was mir jetzt aufgefallen ist in der DeviceOverview des httpmod_blitzer stehen immer ???, also diese 3 Fragezeichen, sollte sich das irgendwann ändern..??
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 03 April 2019, 18:04:29
Wenn Du die neue Modulversion einsetzt, wäre Deine Frage im direkt über Dir verlinkten Thread wohl deutlich besser eingeordnet.
Titel: Antw:Blitzer anzeigen
Beitrag von: Gisbert am 15 April 2019, 17:57:08
Hallo,

ich bekomme seit 1-2 Tagen folgende Meldungen im logfile, Fhem-update lief am Samstag vor 2 Tagen:
2019.04.15 12:49:04 3: httpmod_blitzer: no parsed JSON structure available
2019.04.15 12:49:04 3: httpmod_blitzer: Read response to update didn't match any Reading
2019.04.15 13:29:04 3: httpmod_blitzer: no parsed JSON structure available
2019.04.15 13:29:04 3: httpmod_blitzer: Read response to update didn't match any Reading
2019.04.15 14:49:04 3: httpmod_blitzer: no parsed JSON structure available
2019.04.15 14:49:04 3: httpmod_blitzer: Read response to update didn't match any Reading
2019.04.15 15:09:04 3: httpmod_blitzer: no parsed JSON structure available
2019.04.15 15:09:04 3: httpmod_blitzer: Read response to update didn't match any Reading
2019.04.15 16:19:05 3: httpmod_blitzer: no parsed JSON structure available
2019.04.15 16:19:05 3: httpmod_blitzer: Read response to update didn't match any Reading
2019.04.15 16:59:05 3: httpmod_blitzer: no parsed JSON structure available
2019.04.15 16:59:05 3: httpmod_blitzer: Read response to update didn't match any Reading
2019.04.15 17:19:04 3: httpmod_blitzer: no parsed JSON structure available
2019.04.15 17:19:04 3: httpmod_blitzer: Read response to update didn't match any Reading
2019.04.15 17:29:04 3: httpmod_blitzer: no parsed JSON structure available
2019.04.15 17:29:04 3: httpmod_blitzer: Read response to update didn't match any Reading


Ist das bedenklich, soll oder muss ich gar etwas dagegen tun?

Viele​ Grüße​ Gisbert​
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 16 April 2019, 19:36:02
Hallo,

ich habe keine Ahnung, warum dieser Fehler auftritt. Müsste man sich vielleicht mal mit einem anderen Verbose-Level anschauen.
Ich würde Dir empfehlen auf das Modul s.o. zu wechseln. Das läuft bei mir problemlos.  :)

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: curt am 18 April 2019, 00:42:09
@bismosa

Vorschlag:
Du schreibst einen allerletzten Beitrag mit einer kurzen Erklärung sowie einen Link auf https://forum.fhem.de/index.php/topic,99070.0.html und schließt dann diesen Thread.

Falls Du es nicht wissen solltest: Du bist in diesem Thread Opener, daher kannst Du den thread auch schließen. Du klickt in diesem Thread Deinen ersten Beitrag und schließt diesen Thread dann.
Titel: Antw:Blitzer anzeigen
Beitrag von: bismosa am 18 April 2019, 10:19:19
Hallo!

@curt
Soweit ich weiß ist ein schließen von Beiträgen von den Moderatoren nicht gewünscht. Bei Fragethemen soll man ein [gelöst] vor den Beitragstitel stellen. Ganz einig sind sie sich aber nicht. Siehe https://forum.fhem.de/index.php?topic=85771.15

Aber abgesehen davon...diesen Thread möchte ich offen lassen, da einige ja diese Version nutzen und sogar ggf. bevorzugen (bessere Anpassbarkeit auf eigene Bedürfnisse). Dann kann hier ja auch noch gerne geschrieben werden. Der Codevorschlag behält ja weiterhin seine Gültigkeit.

Gruß
Bismosa
Titel: Antw:Blitzer anzeigen
Beitrag von: Roland303 am 24 Mai 2019, 09:34:26
Hallo ich habe alles nach dieser Anleitung gemacht und es funktioniert auch super. Die Blitzer werden sauber am PC angezeigt. Jetzt wollte ich sie noch über Pushover auf mein Handy schicken lassen, nur da bin ich leider überfordert. Kann mal einer bitte ein Beispiel posten was ich genau machen muß, damit es mir immer die aktuellen Blitzer anzeigt. Pushover ist eingerichtet und andere Nachrichten gehen auch.
Titel: Antw:Blitzer anzeigen
Beitrag von: binford6000 am 24 Mai 2019, 14:56:55
Zitat von: Roland303 am 24 Mai 2019, 09:34:26
Hallo ich habe alles nach dieser Anleitung gemacht und es funktioniert auch super. Die Blitzer werden sauber am PC angezeigt. Jetzt wollte ich sie noch über Pushover auf mein Handy schicken lassen, nur da bin ich leider überfordert. Kann mal einer bitte ein Beispiel posten was ich genau machen muß, damit es mir immer die aktuellen Blitzer anzeigt. Pushover ist eingerichtet und andere Nachrichten gehen auch.

Nimm einfach das Modul:
https://forum.fhem.de/index.php/topic,99070.0.html

VG Sebastian