Page 2 of 2

Re: Logisk programmering... HJÄLP!!!

Posted: Wed 01 Apr 2015, 06:28
by krambriw
Är som sagt rätt rudisk vad gäller detta
Ingen fara, du behöver bara beskriva vad du vill beräkna (logiken) och vilken information (händelser) du vill använda samt vad som skall hända (uppdatera datakälla). Vad som är nödvändigt för att kunna hjälpa är

- beskrivning av logiken, alltså vad vill du upppnå
- händelser som skall användas och formatet på dom, gärna exempel tagna direkt från loggen
- namn och värden för datakällan/källorna som skall sättas, exakta formatet för båda

I ditt senaste fall så ser jag nu bara två signaler (inte fyra som tidigare) som kan samverka för att sätta datakällan i SK

Skriptet kan då se ut som nedan, var god testa

mvh

Code: Select all

try:
    dummy
    #print systemState
except NameError:
    dummy = 0
    systemState = [0, 0] #initierar status för datakällorna

#sätter status för datakällorna 
if eg.event.string.find('house:14394510;unit:1;group:0;method:turnon')>0:
    systemState[0] = 1
if eg.event.string.find('house:14394510;unit:1;group:0;method:turnoff')>0:
    systemState[0] = 0
if eg.event.string.find('house:14394510;unit:2;group:0;method:turnon')>0:
    systemState[1] = 1
if eg.event.string.find('house:14394510;unit:2;group:0;method:turnoff')>0:
    systemState[1] = 0

#utvärderar systemstatus och sätter datakälla i SK
#print systemState
if (systemState[0] == 1 and systemState[1] == 1):
    eg.plugins.SwitchkingTellStick.DSSet(u'TEST REST: TurnOn', u'TEST REST', u'TurnOn', 4)
else:
    eg.plugins.SwitchkingTellStick.DSSet(u'TEST REST: TurnOff', u'TEST REST', u'TurnOff', 4)