Inspiriert von einem Artikel, den ich hier  gefunden habe, habe ich mir ebenfalls mal HTTPMOD mit der Google Maps Api angesehen. Die Grundzüge hat der Author schon erläutert - ich mache hier lediglich eine Vereinfachung und Update.

Achtung: Dieser Beitrag benötigt eine noch experimentelle Version von HTTPMOD aus diesem Forumsthread 

Los gehts mit der Erstellung des API-Keys via Google Developer Console . Dort auf “APIs aktivieren und verwalten”:

5535-FHEM-MAPS-API-01
Dann ein neues Projekt erstellen und einen Projektnamen vergeben (z.B. fhem-maps-api):
5535-FHEM-MAPS-API-02
Dann suche in der nächsten Übersicht nach “Google Maps Distance” und nimm die “Google Maps Distance Matrix API”:
5535-FHEM-MAPS-API-03
Aktiviere diese:
5535-FHEM-MAPS-API-04
Klicke dann links auf “Zugangsdaten”:
5535-FHEM-MAPS-API-05
Wähle “Browser-Schlüssel”:
5535-FHEM-MAPS-API-06
Nimm einen beliebigen Namen, welcher für dich Aussagekraft hat.
5535-FHEM-MAPS-API-07
Nun ist dein API-Schlüssel erstellt. Diesen musst du kopieren.
5535-FHEM-MAPS-API-08

Dann gehts in FHEM. Im untenstehenden Code muss YOURAPIKEY gegen den soeben erstellten API Key getauscht werden, ebenso natürlich dein Abfahrtsort (ORIGIN) und ZIEL (DESTINATION). Um letztere herauszufinden, würde ich eine Google Maps Suche machen und dann das Feld jeweils herauskopieren. Leerzeichen sollten durch %20 ersetzt werden, also beispielsweise wird aus: Robert-Schuman-Straße 8, 68519 Viernheim dann Robert-Schuman-Straße%208,%2068519%20Viernheim. Die definition des Devices folgt wie immer meiner Namenskonvention:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
define INF_HTM_FAHRZEIT_HOME_WORK HTTPMOD https://maps.googleapis.com/maps/api/distancematrix/json?origins=ORIGIN&destinations=DESTINATION&mode=driving&language=de-DE&departure_time=now&key=YOURAPIKEY 3600
attr INF_HTM_FAHRZEIT_HOME_WORK reading01Name standard
attr INF_HTM_FAHRZEIT_HOME_WORK reading01JSON rows_01_elements_01_duration_value
attr INF_HTM_FAHRZEIT_HOME_WORK reading01Expr strftime("%T", gmtime $val)
attr INF_HTM_FAHRZEIT_HOME_WORK reading02Name traffic
attr INF_HTM_FAHRZEIT_HOME_WORK reading02JSON rows_01_elements_01_duration_in_traffic_value
attr INF_HTM_FAHRZEIT_HOME_WORK reading02Expr strftime("%T", gmtime $val)
attr INF_HTM_FAHRZEIT_HOME_WORK reading03Name distance
attr INF_HTM_FAHRZEIT_HOME_WORK reading03JSON rows_01_elements_01_distance_value
attr INF_HTM_FAHRZEIT_HOME_WORK reading03Expr sprintf("%.1f", $val/1000)
attr INF_HTM_FAHRZEIT_HOME_WORK stateFormat Normal:standard Aktuell:traffic (distance km)

Vielen Dank nochmals an Jürgen für die Idee  - sehr cool :)