Autor Thema: neues Modul: TRAFFIC - google maps directions  (Gelesen 47065 mal)

Offline Raven

  • Full Member
  • ***
  • Beiträge: 262
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #15 am: 31 Juli 2016, 10:33:20 »
Hurra, ein Schritt nun weiter, aber mit neuer Meldung:

Zitat
2016.07.31 10:18:51 3: TRAFFIC: (MG_Work) duration = 1538 - 1612
Undefined subroutine &main::encode_json called at ./FHEM/98_TRAFFIC.pm line 282.

Müssten diese Zeilen sein:
Zitat
    Log3 $hash, 5, "TRAFFIC: ($name) returning from TRAFFIC_DoUpdate: ".encode_json($returnJSON);
    Log3 $hash, 3, "TRAFFIC: ($name) TRAFFIC_DoUpdate done";
    return "$name;;;".encode_json($returnJSON);

Verstehe ich nicht...  :o "encode_json" existiert doch in meiner Version des JSON Moduls.
Cubietruck-Prod: HM-LAN, Heizung, Rolläden, Schalter, Viessmann (optolink)
Cubietruck-DEV:
Fritzbox 7490

Offline jmike

  • Developer
  • Full Member
  • ****
  • Beiträge: 229
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #16 am: 31 Juli 2016, 12:15:23 »
Okay..

Sehr strange.
Mir ist aufgefallen dass ich JSON nicht inkludiert habe. Vielleicht hast du irgendeine "Randkonfiguration" bei der das was ausmacht.

Mach mal bei Zeile 42 folgendes rein:
use JSON;
Wenn das auch nicht geht, lass uns per PN weitermachen damit wir den Thread nicht mit Troubleshooting "zumüllen". Die Lösung reicht ja dann hier.
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 15099
  • s/fhem\.cfg/configDB/g
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #17 am: 31 Juli 2016, 12:24:38 »
Für delay, duration und duration_in_traffic jetzt zusätzlich Minutenwerte.
Wenn die original Werte unter 1 Stunde sind, sind die Werte nun natürlich doppelt gelistet.

Das halte ich für überflüssig. Das Umrechnen von hh:mm in mmm sollte man bei Bedarf auch selbst hinbekommen, das kann man sich - wenn man es wirklich haben möchte - jederzeit per userReading hinzufügen.
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Nächster Hamburg-Stammtisch: 14.12.2018 - 18:30 Uhr

Offline Raven

  • Full Member
  • ***
  • Beiträge: 262
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #18 am: 31 Juli 2016, 16:31:19 »
Das wars. Nun geht es. Dankeschön.

Ich hab eine Standard-Config (Igors Image für den Cubie).
HUEBridge verwendet auch explizit "use JSON".

Mach mal bei Zeile 42 folgendes rein:
use JSON;
Cubietruck-Prod: HM-LAN, Heizung, Rolläden, Schalter, Viessmann (optolink)
Cubietruck-DEV:
Fritzbox 7490

Offline jmike

  • Developer
  • Full Member
  • ****
  • Beiträge: 229
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #19 am: 01 August 2016, 08:47:08 »
@Raven: Sehr gut, nächstes Update kommt.

@betateilchen: Ich weiß was du meinst, wenn die Werte nicht sowieso in dem API return stehen würden, hätte ich bestimmt einen anderen Lösungsweg gesucht. Vielleicht mach ich die Readings konfigurierbar z.b. "attr readings hms min". Dann kann sich jeder das Modul zusammenklicken wie er möchte.

Offline d.schoen

  • Jr. Member
  • **
  • Beiträge: 90
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #20 am: 01 August 2016, 10:26:06 »
Ich häng mich mal dran. Danke für das Modul. Insbesondere die bereits andiskutierte Zeitreihenanalyse und Prognose finde ich hochinteressant.
FHEM 5.7 auf RasPi2
COC 868MHz, Jeelink Clone
Devices: IT, HomeMatic, LaCrosse, ENIGMA2, LG-TV, Thinkingcleaner (iRobot Roomba), LIFX Wifi-Bulbs
Helper: TelegramBot, Homebridge (Siri), Geofency

Offline jmike

  • Developer
  • Full Member
  • ****
  • Beiträge: 229
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #21 am: 01 August 2016, 13:04:53 »
Hi.

Ich schieb gleich das nächste Update nach.
Die Änderungen umfassen zwei neue Attribute und ein paar kleine Code Optimierungen / Fehlerbehebungen.

Am besten macht ihr nach dem reload ein defmod auf das Device bzw. ein re-def vom API Key.

Danach wird ein neues Attribut, outputReadings, erstellt mit Wert "text".
"text" definiert dass wir nur noch Readings bekommen für returns aus der Google API (sowie eta und state).

     2016-08-01 12:23:44   delay           19 min
     2016-08-01 12:23:44   distance        119 km
     2016-08-01 12:23:44   duration        1 hour 18 mins
     2016-08-01 12:23:44   duration_in_traffic 1 hour 37 mins
     2016-08-01 12:23:44   eta             14:00:54
     2016-08-01 12:23:44   state           OK
     
Neben text gibt es auch noch min (und sec - was vermutlich kein Mensch braucht).
Wer z.b. nur minuten sehen will macht "attr device outputReadings min" und bekommt:
     2016-08-01 12:28:38   delay_min       17
     2016-08-01 12:28:38   duration_in_traffic_min 96
     2016-08-01 12:28:38   duration_min    78
     2016-08-01 12:28:38   eta             14:04:47
     2016-08-01 12:28:38   state           OK
     
     
Und wer alles sehen will setzt eben "attr device outputReadings text min".


Das zweite Attribut definiert den Namen eines Readings und überschreibt damit den device state.
Wer also z.b. duration_in_traffic als state haben möchte setzt:
"attr device stateReading duration_in_traffic"

Das File ist wieder im ersten Thread. Vermutlich lohnt sich langsam ein Wiki Eintrag + SVN /contrib

Offline Posti123

  • Full Member
  • ***
  • Beiträge: 172
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #22 am: 01 August 2016, 20:47:47 »
ich hab mir ein Google Maps Distance Matrix API Key generiert, leider kommt trotz allem REQUEST DENIED

   
This API project is not authorized to use this API. Please ensure this API is activated in the Google Developers Console: https://console.developers.google.com/apis/api/directions_backend?project=_

Ist dies die falsche API ? Aus dem verlinkten Thread werde ich auch nicht ganz schlau.

Danke
18xHM-CC-RT-DN, 5xHM-TC-IT-WM-W-EU, HMLAN, 2xJeeLink 868, 1xJeeLink433, 1xCUL868, HM-LC-Bl1PBU-FM, HM-LC-Sw2-FM, HM-LC-SW1-FM, HM-LC-Sw1PBU-FM, 5xHM-Sec-SC-2, 2xHM-Sec-SCo, HM-ES-TX-WM, HM-Sen-MDIR-O-2, HM-WDS10-TH-O, 6xTechnoline, 2x PCA301,2xHM-PB-2-WM55-2,2xHM-RC-4-2,2xHM-WDS30-T-O, HM-SEC-WDS-2

Offline jmike

  • Developer
  • Full Member
  • ****
  • Beiträge: 229
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #23 am: 01 August 2016, 20:57:27 »
Ist die API denn aktiviert?

Google API > API Manager > Google Maps Directions API

da sollte oben "DEAKTIVIEREN" stehen. Falls es bei dir "AKTIVIEREN" ist, draufklicken :)

Offline RaspiCOC

  • Full Member
  • ***
  • Beiträge: 345
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #24 am: 01 August 2016, 20:57:48 »
Kann es sein, dass Du in der Google Console die Distance Matrix nicht aktiviert hast. Schau doch noch mal nach, ob Du I  der Google Console Fehlermeldungen findest. Das Gleiche passiert, wenn Du die 2500 Requests pro Tag überschreitet. Dann musst Du Dich anmelden und das wieder aktivieren.

Offline RaspiCOC

  • Full Member
  • ***
  • Beiträge: 345
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #25 am: 01 August 2016, 20:59:12 »
Jacke war schneller....  Dennoch vielleicht von mir auch noch ein sinnvoller Hinweis gewesen...

Offline Posti123

  • Full Member
  • ***
  • Beiträge: 172
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #26 am: 01 August 2016, 21:00:26 »
Danke hat geholfen. Aktiviert war die Google Distance Matrix API aber nun habe ich noch die Google Maps Directions API aktiviert, nun funktioniert es.

Vielen Dank!
18xHM-CC-RT-DN, 5xHM-TC-IT-WM-W-EU, HMLAN, 2xJeeLink 868, 1xJeeLink433, 1xCUL868, HM-LC-Bl1PBU-FM, HM-LC-Sw2-FM, HM-LC-SW1-FM, HM-LC-Sw1PBU-FM, 5xHM-Sec-SC-2, 2xHM-Sec-SCo, HM-ES-TX-WM, HM-Sen-MDIR-O-2, HM-WDS10-TH-O, 6xTechnoline, 2x PCA301,2xHM-PB-2-WM55-2,2xHM-RC-4-2,2xHM-WDS30-T-O, HM-SEC-WDS-2

Offline Icinger

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1141
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #27 am: 01 August 2016, 21:20:27 »
Mal so ein Gedanke: Die meisten defines werden ja wohl den Weg zum Arbeitsplatz oder so betreffen.
Ich lass mich auch gern per Nachricht erinnern, wenn der Heimweg länger dauert.

Könnte man nicht statt 2 defines da gleich den Hin- und auch Rückweg auswerten im TRAFFIC?

lg, Stefan
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

Offline jmike

  • Developer
  • Full Member
  • ****
  • Beiträge: 229
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #28 am: 01 August 2016, 21:30:32 »
Hi Stefan.

Ich mag die Idee und nehme mal ein Attribut "wayBack" auf die 2do Liste.

gruß
Mike

Offline Raven

  • Full Member
  • ***
  • Beiträge: 262
Antw:neues Modul: TRAFFIC - google maps directions
« Antwort #29 am: 01 August 2016, 22:21:01 »
Dankeschön für die neue Version!  :)

Bin ich der einzige, bei den es Abweichungen gibt zw. den Minuten- und Text-Angaben?

Zitat
delay                  0
delay_min          -1

duration_min        26
duration               27 mins

duration_in_traffic_min   24   
duration_in_traffic          25 mins

Cubietruck-Prod: HM-LAN, Heizung, Rolläden, Schalter, Viessmann (optolink)
Cubietruck-DEV:
Fritzbox 7490