En plus d'indiquer le retard pour un départ au travail ou quoi, pourra surement servir à initier un script time lors du retour à la maison (par exemple ouverture du portail a tel heure ou allumer les lumières)
J'ai installé ce script hier. Super boulot hormis qu'il s'est exécuté ce matin alors qu'il ne devrait pas. Le test sur le numéro du jour ne semble pas fonctionner pourtant avec ce petit script, la valeur affichée est bien zéro (Sunday).
De temps en temps, j'ai également ça qui apparaît dans les Log :
"Error: EventSystem: in /usr/local/domoticz/var/scripts/lua/scrip_time_calcultrajet.lua: /volume1/@appstore/domoticz/var/scripts/lua/JSON.lua:660: html passed to JSON:decode():"
NUC sous Ubuntu Server / RFXCom / Domoticz Version: 2020.2
Tout fonctionne pour le calcul et tout s'affiche correctement sauf que dans le log j'ai l'erreur suivante:
Error: EventSystem: in waze2: [string "-- Script de calcul de temps pour un trajet e..."]:70: attempt to concatenate global 'arrivey' (a nil value)
Moumi32 a écrit :....
la ligne 70 correspond à:
local waze=assert(io.popen('curl --referer https://www.waze.com "https://www.waze.com/row-RoutingManager ... ex..'+y%3A'..arrivey..'&returnJSON=true&returnGeometries=true&returnInstructions=true&timeout=60000&nPaths='..nbIti..'&clientVersion=4.0.0&options=AVOID_TRAILS%3At%2CALLOW_UTURNS%3At%2CAVOID_TOLL_ROADS"'))
...
Tu as sans doute mal initialisé la variable arrivey en début de script.
Du coup je me demande d'où vient le résultat que tu dis être correctement calculé.
-----------------------------------------
----------------------------------------------------------------
--Récupération du trajet et de sa durée en temps réel via WAZE--
----------------------------------------------------------------
voir_les_logs('curl --referer https://www.waze.com "https://www.waze.com/row-RoutingManager/routingRequest?from=x%3A'..departx..'+y%3A'..departy..'&to=x%3A'..arrivex..'+y%3A'..arrivey..'&returnJSON=true&returnGeometries=true&returnInstructions=true&timeout=60000&nPaths=1&clientVersion=4.0.0&options=AVOID_TRAILS%3At%2CALLOW_UTURNS%3At%2CAVOID_TOLL_ROADS"')
local waze=assert(io.popen('curl --referer https://www.waze.com "https://www.waze.com/row-RoutingManager/routingRequest?from=x%3A'..departx..'+y%3A'..departy..'&to=x%3A'..arrivex..'+y%3A'..arrivey..'&returnJSON=true&returnGeometries=true&returnInstructions=true&timeout=60000&nPaths=1&clientVersion=4.0.0&options=AVOID_TRAILS%3At%2CALLOW_UTURNS%3At%2CAVOID_TOLL_ROADS"'))
local infowaze = waze:read('*all')
waze:close()
local jsonTrajet = json:decode(infowaze)
--Noms des principales routes empruntées
routeName = jsonTrajet['response']['routeName']
if routeName == nil then routeName="route non précisée" end
--Liste des routes empruntées
route = jsonTrajet['response']['results']
--Temps de trajet en secondes
routeTotalTimeSec = 0
--calcul du temps de trajet
routeTotalTimeSec =jsonTrajet['response']['totalRouteTime']
--Temps de trajet en minutes
routeTotalTimeMin = routeTotalTimeSec/60-((routeTotalTimeSec%60)/60)
-- Détermination des noms des routes employées
xtime = {}
route = jsonTrajet['response']['results']
voie = jsonTrajet['response']['streetNames']
for response,results in pairs(route) do
i = tonumber(results['street'])
if voie[i] == nil then voie[i] = "/ND" end
if xtime[i]==nil then xtime[i]=0 end
xtime[i]=xtime[i]+tonumber(results['crossTime'])
voir_les_logs(tostring(response).." "..results['crossTime'].." "..results['street'].." "..voie[i].." "..xtime[i])
end
i=0
j=1
chemin = {}
trajet = {}
Une idée ? Personne n'a le pb avec la dernière version stable de Domoticz ?
Merci.
NUC sous Ubuntu Server / RFXCom / Domoticz Version: 2020.2
Bonjour
Oui merci au rédacteurs de ce script , je l'utilise depuis un mois,j'y ai intégré l'envoi de SMS quand le delai de déplacement dépasse une certaine durée et c'est un bijou
Merci encore
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
Bonjour,
Hey, bonne idée ! J'ai ajouté l'heure d'arrivée prévue, je vais de ce pas ajouter une notification si l'heure dépasse mon "horaire de bureau".
@+
Datawolf