Page 2 sur 4
Re: DzVents : Vacances scolaires par zone et académie
Publié : 11 janv. 2020, 23:44
par Mex31
alors, en general, ca ne ca marche pas comme ca.
je dirais qu'avec ce switch, stable/beta on opte pour une ligne de version, mais en aucun cas il n'y a de version stable ET beta pour un meme n°. donc la 4.10717 est stable et il n'y a pas de 4.10717 beta.
La dernière version beta est la 4.11605
Re: DzVents : Vacances scolaires par zone et académie
Publié : 11 janv. 2020, 23:52
par McFlyPartages
Mex31 a écrit : 11 janv. 2020, 23:44
alors, en general, ca ne ca marche pas comme ca.
je dirais qu'avec ce switch, stable/beta on opte pour une ligne de version, mais en aucun cas il n'y a de version stable ET beta pour un meme n°. donc la 4.10717 est stable et il n'y a pas de beta.
La dernière version beta est la 4.11605
Tout à fait.
Je suis en béta ( la signature n'est plus bonne) et la version de dzvents n'est pas la même en béta 2.5.3 et en stable 2.4.19.
Le changement de stable à béta ma résolu le problème comme dit plus haut.
Re: DzVents : Vacances scolaires par zone et académie
Publié : 25 janv. 2020, 09:29
par Mex31
Ca ne marche toujours pas pour moi. Toujours les mêmes messages d'erreur. Je désactive le script.
Re: DzVents : Vacances scolaires par zone et académie
Publié : 29 janv. 2020, 22:27
par papoo
est-ce le seul qui ne fonctionne pas ou as tu d'autres scripts non fonctionnels?
Re: DzVents : Vacances scolaires par zone et académie
Publié : 17 juil. 2020, 18:57
par balajol
Bonsoir,
A priori ce script n'est plus fonctionnel ?
Code : Tout sélectionner
2020-07-17 18:43:01.390 Status: dzVents: Info: Handling httpResponse-events for: "dataEducation_response"
2020-07-17 18:43:01.390 Status: dzVents: Info: Vacances Scolaires v2.02: ------ Start internal script: script_time_vac_scol_dz: HTTPResponse: "dataEducation_response"
2020-07-17 18:43:01.391 Status: dzVents: Debug: Vacances Scolaires v2.02: H0 : 0
2020-07-17 18:43:01.404 Status: dzVents: Debug: Vacances Scolaires v2.02: Processing device-adapter for Aujourd hui vacances scolaires: Switch device adapter
2020-07-17 18:43:01.405 Status: dzVents: Debug: Vacances Scolaires v2.02: Constructed timed-command: Off
2020-07-17 18:43:01.405 Status: dzVents: Debug: Vacances Scolaires v2.02: Device Aujourd hui vacances scolaires sur OFF
2020-07-17 18:43:01.405 Status: dzVents: Debug: Vacances Scolaires v2.02: H1 : 0
2020-07-17 18:43:01.405 Status: dzVents: Debug: Vacances Scolaires v2.02: Processing device-adapter for Demain vacances scolaires: Switch device adapter
2020-07-17 18:43:01.406 Status: dzVents: Debug: Vacances Scolaires v2.02: Constructed timed-command: Off
2020-07-17 18:43:01.406 Status: dzVents: Debug: Vacances Scolaires v2.02: Device Demain vacances scolaires sur OFF
2020-07-17 18:43:01.406 Status: dzVents: Info: Vacances Scolaires v2.02: ------ Finished script_time_vac_scol_dz
2020-07-17 18:43:01.406 Status: dzVents: Debug: Commands sent to Domoticz:
2020-07-17 18:43:01.406 Status: dzVents: Debug:
Merci
cdt
Bertrand
Re: DzVents : Vacances scolaires par zone et académie
Publié : 17 juil. 2020, 23:40
par Jeff
Oui j'ai la même et je suis repassé sur l'ancien en lua, il semble marcher, je télécharge le fichier manuellement.
Re: DzVents : Vacances scolaires par zone et académie
Publié : 18 juil. 2020, 00:40
par balajol
Bonjour Jeff,
Merci de ton retour.
Je vais essayer celui en Lua.
Cdt
Bertrand
Re: DzVents : Vacances scolaires par zone et académie
Publié : 18 juil. 2020, 21:45
par papoo
la saisie des vacances de la saison 2020-2021 n'a pas pris en compte les vacances de cet été contrairement aux années précédentes. j'ai modifié mon script en conséquence (dispo sur le github en v2.03
Code : Tout sélectionner
--[[
/home/pi/domoticz/scripts/dzVents/scripts/vacancesScolaires.lua
author/auteur = papoo
update/mise à jour = 18/07/2020
création = 05/08/2017
https://pon.fr/dzvents-vacances-scolaires-par-zone-et-academie/
https://github.com/papo-o/dz_scripts/blob/master/dzVents/scripts/vacancesScolaires.lua
https://easydomoticz.com/forum/viewtopic.php?f=17&t=9126
V1.xx : https://github.com/papo-o/domoticz_scripts/blob/master/Lua/script_time_vacances_scolaires.lua
Principe : récupérer via l'API de data.education.gouv (https://data.education.gouv.fr/explore/dataset/fr-en-calendrier-scolaire/api/?disjunctive.description)
les informations de vacances scolaires pour une date, une zone et une academie
--]]
--------------------------------------------
------------ Variables à éditer ------------
--------------------------------------------
local zone = 'A' -- Indiquer ici la zone (A, B ou C)
local location = 'Limoges' -- Indiquer ici l'academie (https://fr.wikipedia.org/wiki/Acad%C3%A9mie_(%C3%A9ducation_en_France))
local holidayNow = 'Vacances Scolaires' -- Indiquer ici le nom du device vacances aujourd'hui de type switch nil si inutilisé
local holidayTomorrow = 'Vacances Scolaires Demain' -- Indiquer ici le nom du device vacances demain de type switch nil si inutilisé
--------------------------------------------
----------- Fin variables à éditer ---------
--------------------------------------------
local scriptName = 'Vacances Scolaires'
local scriptVersion = '2.03'
local response = 'dataEducation_response'
return {
active = true,
on = { --timer = { 'at 00:11' },
-- timer = { "every minute" },
timer = { "every 2 hours" },
httpResponses = { response } },
logging = { level = domoticz.LOG_DEBUG,
-- level = domoticz.LOG_INFO, -- Seulement un niveau peut être actif; commenter les autres
-- level = domoticz.LOG_ERROR, -- Only one level can be active; comment others
-- level = domoticz.LOG_MODULE_EXEC_INFO,
marker = scriptName..' v'..scriptVersion },
execute = function(dz, item)
local _ , round = dz.utils._, dz.utils.round
local H0, H1 = 0, 0
local function logWrite(str,level)
dz.log(tostring(str),level or dz.LOG_DEBUG)
end
local function date2timestamp(now)
a, b, Y, M, D = string.find(now, "(%d+)-(%d+)-(%d+)")
return os.time{year=Y, month=M, day=D, hour=00, minute=00}
end
local function schoolYear(dayOfYear)
if tonumber(dayOfYear) > 244 then
schoolYear = dz.time.year .. "-" ..(tonumber(dz.time.year) + 1)
else
schoolYear = (tonumber(dz.time.year) - 1) .. "-" ..dz.time.year
end
return schoolYear
end
local Timestamp = dz.time.dDate
--local Timestamp = date2timestamp("2019-12-20") -- pour test (uniquement sur l'année en cours)
local dayOfYear = tonumber(os.date("%j"))
--logWrite('vacances scolaires '.. schoolYear(dayOfYear))
if (item.isHTTPResponse and item.trigger == response) then
if (not item.isJSON) then
logWrite('Last http response was not what expected. Trigger: '..item.trigger,dz.LOG_ERROR)
else
local holidays = {}
local start_date = {}
local end_date = {}
holidays = item.json.records
if holidays ~= nil then
for i, Result in ipairs( holidays ) do
start_date[i] = Result.fields.start_date
end_date[i] = Result.fields.end_date
-- vacances aujourd'hui
if (date2timestamp(start_date[i]) < Timestamp or date2timestamp(start_date[i]) == Timestamp) and (date2timestamp(end_date[i]) > Timestamp or date2timestamp(end_date[i]) == Timestamp) then
logWrite('date de début des vacances '.. tostring(start_date[i]))
logWrite('date de fin des vacances '.. tostring(end_date[i]))
H0 = 1
end
--vacances demain
if (date2timestamp(start_date[i]) < (Timestamp + 24*3600) or date2timestamp(start_date[i]) == (Timestamp + 24*3600)) and (date2timestamp(end_date[i]) > (Timestamp + 24*3600) or date2timestamp(end_date[i]) == (Timestamp + 24*3600)) then
logWrite('date de début des vacances '.. tostring(start_date[i]))
logWrite('date de fin des vacances '.. tostring(end_date[i]))
H1 = 1
end
end
logWrite('H0 : '..tostring(H0))
if holidayNow ~= nil then
if H0 == 1 then
dz.devices(holidayNow).switchOn().checkFirst()
logWrite('Device '..holidayNow..' sur ON')
else
dz.devices(holidayNow).switchOff().checkFirst()
logWrite('Device '..holidayNow..' sur OFF')
end
else
logWrite('pas de device pour les vacances du jour')
end
logWrite('H1 : '..tostring(H1))
if holidayTomorrow ~= nil then
if H1 == 1 then
dz.devices(holidayTomorrow).switchOn().checkFirst()
logWrite('Device '..holidayTomorrow..' sur ON')
else
dz.devices(holidayTomorrow).switchOff().checkFirst()
logWrite('Device '..holidayTomorrow..' sur OFF')
end
else
logWrite('pas de device pour les vacances de demain')
end
end
end
else
local schoolYear = schoolYear(dayOfYear)
logWrite('vacances scolaires '.. schoolYear)
-- local url = "https://data.education.gouv.fr/api/records/1.0/search/?dataset=fr-en-calendrier-scolaire&facet=start_date&facet=end_date&refine.zones=Zone+".. zone .."&rows=40&refine.annee_scolaire=".. schoolYear .."&refine.location=".. location
local url = "https://data.education.gouv.fr/api/records/1.0/search/?dataset=fr-en-calendrier-scolaire&facet=start_date&facet=end_date&refine.zones=Zone+".. zone .."&rows=40&refine.annee_scolaire=".. schoolYear .."&refine.location=".. location.."&sort=-end_date&q=end_date%3E="..dz.time.rawDate
dz.openURL({
url = url,
method = "GET",
callback = response})
end
end
}
)
Re: DzVents : Vacances scolaires par zone et académie
Publié : 18 juil. 2020, 22:06
par balajol
Bonsoir Papoo,
Merci
Cdt
Bertrand
Re: DzVents : Vacances scolaires par zone et académie
Publié : 19 juil. 2020, 21:58
par Jeff
Merci Papoo, je suis reparti sur ce script
