neues Modul: TRAFFIC - google maps directions

Begonnen von jmike, 27 Juli 2016, 10:51:23

Vorheriges Thema - Nächstes Thema

pflock_y

Hi,
das reading "alternatives" ist bei allen drei Devices auf "1". meine Vermutung ist, das Reading ist zu lang  ??? .
Einziger Unterschied zu den anderen Devices ist der "travelMode"



list ...

   Internals:
   APIKEY     xxxxxxxxxxxx
   DEF        xxxxxxxxxxxx 28800
   FUUID      xxxxxxxxxxxx
   INTERVAL   28800
   NAME       TrafficSchule
   NR         719
   STATE      OK
   TRIGGERTIME 1602602676.68776
   TRIGGERTIME_FMT 2020-10-13 17:24:36
   TYPE       TRAFFIC
   VERSION    1.3.7
   OLDREADINGS:
   READINGS:
     2020-10-13 09:24:37   alternatives    Lindenstraße und Wilhelm-Külz-Straße - , Lindenstraße -
     2020-10-13 09:24:37   distance        2,2 km
     2020-10-13 09:24:37   duration        8 Minuten
     2020-10-13 09:24:37   duration_min    8
     2020-10-13 09:24:37   state           OK
     2020-10-13 09:24:37   status          OK
     2020-10-13 09:24:37   summary         Lindenstraße und Wilhelm-Külz-Straße
   helper:
     GoogleMapsCenter 52.xxxxxxx,13.xxxxxxx
     Poly       xxxxxxxxxxxxxxxx
Attributes:
   GoogleMapsCenter 52.xxxxxxx,13.xxxxxxx
   GoogleMapsDisableUI 1
   GoogleMapsSize 750,600
   GoogleMapsStroke #000000,2,80,#000011,2,80
   GoogleMapsTrafficLayer 1
   GoogleMapsZoom 15
   alternatives 1
   end_address Strasse Hausnummer, PLZ Ort
   includeReturn 0
   language   de
   outputReadings text min
   room       Traffic
   start_address Strasse Hausnummer, PlZ Ort
   travelMode bicycling
   userattr   GoogleMapsCenter GoogleMapsDisableUI GoogleMapsFixedMap GoogleMapsSize GoogleMapsStroke GoogleMapsStyle GoogleMapsTrafficLayer GoogleMapsZoom alternatives end_address includeReturn language outputReadings raw_data returnWaypoints start_address stateReading travelMode updateSchedule userReadings verbose waypoints
   verbose    0




jmike

Sehr gut. Ich bau das mal nach und sag Bescheid.
Schätze aber "bicycle" verändert den Google Return etwas.

Das Reading passt übrigens, "1" ist das Attribut ;)
   READINGS:
     2020-10-13 09:24:37   alternatives    Lindenstraße und Wilhelm-Külz-Straße - , Lindenstraße -



gent

Hi,

habe seit 4.10.2020 folgendes im log:

2020.10.16 07:19:12 1: TRAFFIC: (xxxx) decode_json on googles return failed, cant continue
2020.10.16 07:19:12 1: TRAFFIC: (xxxx) TRAFFIC doUpdate returned an error "API error" will schedule a retry in 5 seconds

Gab es eine Änderung, von der ich nix mitbekommen habe? Seit der Änderung der Abrechnungsbedingungen habe ich auch am google Konto bzw. am Device nichts mehr gemacht.

Viele Grüße
fhem auf rPi3 mit USB boot und M2, cul866 (hm), homebridge, FlowerSens, Shelly, Harmony, WemosD1, Sonoff/Tasmota, grafana, mqtt/mosquitto

pflock_y

Moin,

gibt es was neues zum log Eintrag

2020.11.11 09:06:21 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/98_TRAFFIC.pm line 624.


vg
pflock_y

dennisk

Zitat von: chunter1 am 16 September 2019, 15:11:23
Erst mal vielen Dank für das tolle TRAFFIC Modul!
Zum update Mechanismus hätte ich eine Frage:
Ist es richtig, dass das Update IMMER im Raster des im DEF angeführten Intervalls ausgeführt wird und mittels updateSchedule zu bestimmten Zeiten anpassbar ist?
Ich versuche nämlich grade das ganze so zum Laufen zu bekommen, dass er ausschließlich in den updateSchedule Zeiträumen updatet und außerhalb gar nicht.
Wenn ich im DEF als Intervall "0" angebe, scheint das Modul "deaktiviert" zu sein und ignoriert die updateSchedule Zeiträume.
Ich nehme an, dass das so mit dem Modul nicht geht und ich mittels z.B. DOIF ein Update von extern anstoßen muss?

Hallo, erstmal vielen Dank für das tolle Modul!
Wenn ich nichts übersehen habe, dann gab es zu diesem Problem keine Antwort bzw. keine Lösung. Und da ich das gleiche Problem habe, möchte ich einmal fragen, wie ich Traffic so einstellen kann, dass es eben nur während des updateSchedules aktualisiert?

moskito

Moin,

habe jetzt nicht die ganze Unterhaltung verfolgt, aber ein Ansatz wäre doch, das Traffic-Device mit den Wunschabfrageparametern zu erstellen und dann über ein at/DOIF/notify das Attribut "disable" zu ändern, oder aber einen immens großen/langen Standardabfrageintervall zu definieren und dann mittels den "updateSchedule" Zeiten zu arbeiten.

Gruß
Danny
FHEM auf Intel NUC/Proxmox & Debian 12 + HM-CFG-USB + zigbee2mqtt + Zwave + Enocean

dennisk

Guten Morgen,

@moskito vielen Dank für die Vorschläge mit DOIF und Co. Wollte eigentlich den internen Mechanismus nutzen, wenn es schon einen gibt. Auf Grund des folgenden Problems habe ich mich jetzt aber für ein DOIF entschieden.

Zum Problem: Wenn ich als "großes" Intervall z.B. 86400 setze, dann wird updateSchedule nach einem Neustart von fhem erst dann berücksichtigt, wenn das Intervall einmal abgelaufen ist. Selbst manuelles updaten bringt an der Stelle nichts - erst, wenn das erste Mal automatisch nach Ablauf von 86400 getriggert worden ist, wird updateSchedule berücksichtigt. So zumindest stellt es sich für mich momentan dar. Machen andere hier die gleiche oder andere Beobachtungen?

jmike

Moin.
Ich guck mir das die Tage mal an und dann gibts endlich mal eine neue Version.
Tomtom als provider war eigentlich auch schon fast fertig, aber dann waren plötzlich die Straßen eh leer... ;)

dennisk

Hallo jmike,

konntest Du Dir das schon anschauen?

Viele Grüße und Danke

tomster

Hat eigentlich noch jemand das Phänomen, dass sich das attr GoogleMapsStroke nur auf Linienstärke und Opacity anwenden lässt, nicht jedoch auf die Farbe?

Ich vermute, es hat hiermit zu tun:
https://stackoverflow.com/questions/39733871/why-google-maps-polyline-strokecolor-always-black

iCure

Zitat von: jmike am 01 Oktober 2021, 20:08:57
Moin.
Ich guck mir das die Tage mal an und dann gibts endlich mal eine neue Version.
Tomtom als provider war eigentlich auch schon fast fertig, aber dann waren plötzlich die Straßen eh leer... ;)

Da sich hier wenig tut, einmal die frage:

Was macht das Update auf TomTom?
Ist es denn schon lauffähig und erhältlich?

fhemjan

Bei der Einrichtung der API bei Google wird man gefragt ob man die Nutzung der API aus Sicherheitsgründen Einschränken will. Funktioniert das für die Nutzung unter FHEM? Habe FHEM nur im internen Netz aktiv, kein Reverse Proxy oder sowas.

Cruiser79

Zitat von: tomster am 29 November 2021, 17:23:22
Hat eigentlich noch jemand das Phänomen, dass sich das attr GoogleMapsStroke nur auf Linienstärke und Opacity anwenden lässt, nicht jedoch auf die Farbe?

Ich vermute, es hat hiermit zu tun:
https://stackoverflow.com/questions/39733871/why-google-maps-polyline-strokecolor-always-black
Moin, das Problem habe ich auch und ich konnte feststellen, das im HTML Code ein # vor der "Hinweg-Farbe" fehlte (siehe strokeColor).
var setRegionR = new google.maps.Polyline({
                path: decodedPathR,
                levels: decodedLevels,
                strokeColor: "#FF0000",
                strokeOpacity: 1,
                strokeWeight: 1,
                map: map
            });var decodedPath = google.maps.geometry.encoding.decodePath(document.getElementById("path0").value);
            var decodedLevels = decodeLevels("");
            var setRegion = new google.maps.Polyline({
                path: decodedPath,
                levels: decodedLevels,
                strokeColor: "4cde44",
                strokeOpacity: 1,
                strokeWeight: 6,
                map: map
            });


Ich habe den Modulecode mal debugged und festgestellt, dass die Funktion lightHex die eigentlich korrekt Farbe #4cde44 so verändert, das die Variable nachher nur noch 4cde44 enthält. Das wird dann ins HTML gepackt.

Mein dilletantischer Fix, nicht auf dem übergebenen Wert in der Methode weiterzuarbeiten, bringt dann auch wieder die korrekt Farbe hervor.
sub lightHex {
    my $hexy = $_[0];
    $hexy =~ s/#//g;
  return sprintf '%02x'x3,
      map{ ($_ *= 1+$_[1]) > 0xff ? 0xff : $_  }
      map hex, unpack 'A2'x3, $hexy;
}


Wenn an diesem Modul noch gearbeitet wird, könnte das ja mal in schön eingebaut werden.
FHEM auf Raspberry Pi
HM-CFG-LAN mit HM-TC-IT-WM-W-EU, HM-CC-RT-DN, HM-WDS10-TH-O, HM-LC-SW1-FM, HM-LC-Bl1-FM
Signalduino mit Elro AB440, LOGILINK WS0002, IT CMR-1000

Gisbert

Hallo,

ich nutze das Modul schon seit Jahren. Bisher bin ich mit meinen kostenlosen Abfragen zurecht gekommen. Jetzt ergeben sich andere Wegstrecken und Abfragezeiten und ich würde gerne abschätzen, ob ich noch ohne Kosten auskomme. Ich kenne die Seite, auf der ich Kosten abschätzen kann und habe auch Zugriff auf mein Konto mit den monatlichen Rechnungen, die sich alle auf 0,00 EUR belaufen.

Was ich nicht herausfinden konnte, bis zu welcher Freigrenze keine Kosten berechnet werden. Ich hab wiederholt hier im Forum etwas von 200$ gelesen, aber ich weiß nicht ob es pro Monat oder Jahr ist. Für den Dezember 2022 wurden Nutzungskosten von 27.83 € ermittelt, die aber zu 100% gutgeschrieben wurden. Ab welchen Nutzungskosten (ungefähre Angabe reicht mir) muss ich mit Zahlungen an Google rechnen?

Ich bin für jede Information dankbar.
Viele Grüße
Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY

rcmcronny

Hallo Gisbert,

ich nutze es auch schon seit Jahren und bisher nie was bezahlt, frage halt früh und Nachmittag ab.  Weiss leider auch nicht, ab wann es Geld kostet, wollte aber zumindest Dir eine kurze Rückmeldung geben :)

Ronny