De rien. Bonne nuit
Gladys et Imperihome
isokar
#85
oui, c’est clair que c’est pas précis. mais le volet est déjà vieux et je ne cherche pas la précision.
voici le code, encore en cours d’amélioration:
var t_max= 160;
var t_demand;
console.log(`start script`);
gladys.param.getValue(`volet_position`)
.then((cur_pos) =>{
gladys.deviceType.exec({
devicetype: 322,
value: 0
});
gladys.deviceType.exec({
devicetype: 321,
value: 0
});
console.log(`position actuelle:${cur_pos}`);
gladys.deviceType.getById({ id: 327})
.then((demand) => {
console.log(`position demandee:${demand.lastValue}`);
if(demand.lastValue>cur_pos){
t_demand = t_max*(demand.lastValue-cur_pos);
gladys.deviceType.exec({
devicetype: 322,
value: 1
});
}else{
t_demand = t_max*(cur_pos-demand.lastValue);
gladys.deviceType.exec({
devicetype: 321,
value: 1
});
}
console.log(`temps:${t_demand}`);
setTimeout(function(){
gladys.deviceType.exec({
devicetype: 322,
value: 0
});
gladys.deviceType.exec({
devicetype: 321,
value: 0
});
},t_demand)
gladys.param.setValue({
name:'volet_position',
value:`${demand.lastValue}`
})
})
})