Aller au contenu

Messages recommandés

Posté(e)

Hello tout le monde ! j'espère que vous allez bien !!

 

J'ai une petite question...

 

Dans un QA, la fonction

function QuickApp:onInit()

s'exécute toujours bien au démarrage du QA ? ça n'a pas changé ?

et donc...

également au démarrage de la box ?

 

Je demande car je constate que pour certain QA, il se comporte exactement comme il le faut lors du reboot d'un QA, 

mais PAS au démarrage de la box.

Dans mon QA en question, les lignes de codes sont justes, ignorées !!

Aucune trace dans les log, aucun message d'erreur.

 

Je viens lire le contenu du variable et celle-ci n'est pas lue. 

Je répète, que ça arrive que au démarrage de la box... Si je redémarre le QA, il y a aucun problème.

 

 

Vous avez une idée ?

 

merci  d'avance pour vos retours...

 

 

 

 

Posté(e)
Il y a 1 heure, jjacques68 a dit :

Je viens lire le contenu du variable et celle-ci n'est pas lue. 

Variable quoi ? Globale ? Du QuickApp ?

 

Aucun souci de mon coté, d'ailleurs si c'était le cas je m'en rendrait rapidement compte, vu qu'aucun de mes QA ne fonctionneraient vu qu'ils démarrent tous à l'aide du onInit()

 

Donc si tu parles de "variable", je suppose qu'il s'agit de globale, et peut être que tu y accèdes "trop top" après le reboot de la box.... je te suggère alors de tester avec un timeout.

Posté(e) (modifié)

Oui j'ai pas précisé, je parle de variables du QA.

 

Tous mes QA ont aussi du code dans le onInit(), tous fonctionnent à part 2 ??

Hier soir  j'ai  mis justement un timeout de 10 s dans un de ces 2.

Et ce matin ça a bien démarré...

 

Je faisais déjà ça avec les QA qui gère les socket TCP...

 

étrange...

C'est comme si au démarrage c'était mode panique 

Modifié par jjacques68
Posté(e)

Je suppose que tout le système n'est pas encore parfaitement initialisé lors du démarrage des QA, donc dans certaines conditions, ça doit faire planter tes 2 QA... il faudrait identifier la commande dans ton onInit qui plante, en rajoutant un maximum de traces.

  • Like 1
Posté(e)

Rien constaté non plus au redémarrage des services hebdomadaire après la sauvegarde.

Mais suite à une ancienne discussion (quand ma box rebooter seule) j'ai ajouté une tempo dans tous mes QA pour pouvoir choisir un ordre de démarrage

 

-----------------------------------------------------------INIT-----------------------------------------
function QuickApp:onInit()
    QuickApp._VERSION = "0.00"
    QuickApp._NAME = "LE QA"

    local TempoInit = tonumber (self:getVariable("V_TempoInit") ) or 0
    fibaro.setTimeout(TempoInit*1000, function() MyInit(self,TempoInit) end)
end

-----------------------------------------------------------MyInit-----------------------------------------
function MyInit(self,Tempo)

    self:trace("")
    self:trace(" - *** QuickApp " ..self._NAME .." - MyInit V: " .. (self._VERSION), "- Initialisation après temporisation de " ..Tempo .." secondes *** -") 
    self:trace("")

    ...
    ...
end

 

 

 

 

 

 

  • Like 3
Posté(e)
Il y a 9 heures, Lazer a dit :

il faudrait identifier la commande dans ton onInit qui plante

déjà ça, le bon vieux tag 

__TAG = string.format("QA_%s_%s",self.id, self.name)

 

 

Il y a 8 heures, henri-allauch a dit :

local TempoInit = tonumber (self:getVariable("V_TempoInit") ) or 0

lire une variable ne passait déjà pas...

 

comme tu as dit @henri-allauch, j'ai encapsulé les instructions dans un timeout...

 

  • Confused 1
×
×
  • Créer...