"oder" befehl in Tasker?

P3rsona

P3rsona

Erfahrenes Mitglied
63
Hey Leute,

Ich bin absoluter Tasker neuling und habe es eigentlich nur installiert um ein Juice defender ähnliches Profil zu erstellen. (vorerst)

Jetzt ist in diesem Profil die ausgangssituation folgende:

Mobile daten + Sync sollen ausgeschaltet werden, wenn das Display aus ist und sich nur alle 20 Minuten kurz neu verbinden um zu syncen.
Wenn Display an, dann durchgängig Mobile Daten + Sync an.
Das kennt man ja alles schon.

Jetzt sollen aber 2 Ausnahmen sein.
1. Das wenn W-Lan verbunden ist

ODER

2. Wenn das Gerät lädt


Wichtig für mich ist hier wirklich das oder, da nur eins dieser beiden Situationen gegeben sein muss um die Tasks außer kraft zu setzen.

Momentan nutze ich dafür 5 Profile und ich frage mich ob man das nicht auch vereinfachen kann.

Profil: Display aus
Kontext:

Ereignis - Display - Display Aus - Fertig
Status - WiFi Verbunden „Umkehren setzten“ - Fertig

Task:

Task - warte - 5 min - fertig
Netzwerk - Mobile Daten „setzten AUS“ - Fertig
Netzwerk - Auto-Sync „setzten AUS“ - Fertig
Variable - Variable Setzten „Name: ACTIVEDISPLAY ZU: 0“ - Fertig
Profil: Display an
Kontext:

Ereignis - Display - Display An - Fertig
Status WiFi Verbunden „Umkehren setzten“ - Fertig


Task:

Netzwerk - Mobile Daten „setzten An“ - Fertig
Netzwerk - Auto-Sync „setzten AN“ - Fertig
Variable - Variable Setzten „Name: %ACTIVEDISPLAY ZU: 1“ - Fertig
Profil: Sync
Kontext:

Zeit - Wdh.: jede 20 Minute(n) - Fertig
Status - WiFi Verbunden „Umkehren setzten“ - Fertig


Task:

Netzwerk - Mobile Daten „setzten AN“ - Fertig
Netzwerk - Auto-Sync „setzten AN“ - Fertig
Tasker - Warte „1Minute 30Sekunden“ - Fertig
Tasker - If „%ACTIVEDISPLAY Stimmt Überein 0“ - Fertig
Netzwerk - Mobile Daten „setzten AUS“ - Fertig
Tasker - End If - Fertig
Netzwerk - Auto-Sync „setzten AUS“ - Fertig

Mit den 3 oben aufgeführten Profilen ist nun schonmal das Internet verhalten geregelt und die Ausnahme W-lan verbunden integriert.
Um nun aber die Ausnahme "Akku Lädt" hinzuzufügen hab ich dazu noch 2 weitere Profile erstellt.


Profil: Akku lädt
Kontext:

Status - Laden - Power - Beide - fertig

Task:

Netzwerk - Mobile Daten „setzten AN“ - Fertig
Netzwerk → Auto-Sync „setzten AN“ - Fertig
Tasker - Profilstatus -"Profil: Display aus" - "setzen AUS" - fertig
Tasker - Profilstatus -"Profil: Display an" - "setzen AUS" - fertig
Tasker - Profilstatus -"Profil: Sync" - "setzen AUS" - fertig
Profil: Akku Lädt nicht
Kontext:

Status - Laden - Power - Beide „Umkehren setzten“ - fertig

Task:


Tasker - Profilstatus -"Profil: Display aus" - "setzen AN" - fertig
Tasker - Profilstatus -"Profil: Display an" - "setzen AN" - fertig
Tasker - Profilstatus -"Profil: Sync" - "setzen AN" - fertig



Nun Frage ich mich natürlich ob man das nicht vereinfachen könnte und die letzten beiden Profile komplett streichen könnte, wenn man in den ersten 3 Profilen den Status - Laden „Umkehren setzten“ - mit einbeziehen könnte.
Aber so das eben nicht beide Situationen erfüllt sein müssen, sondern nur A, nur B oder A und B

hebe einen "oder" befehl bisher nicht finden können und wäre für hilfe dankbar.
 
Zuletzt bearbeitet:
Nabend,

viel anders wirst du es nicht lösen können, einzige "Verbesserung"

Code:
Task:


Tasker - Profilstatus -"Profil: Display aus" - "setzen AN" - fertig 
Tasker - Profilstatus -"Profil: Display an" - "setzen AN" - fertig 
Tasker - Profilstatus -"Profil: Sync" - "setzen AN" - fertig

als Exit-Task von dem Profil "Akku lädt" damit sparst du dir ein Profil.
Das Ergebnis ist das Gleiche.
 
Als Exit Task würde er mir dann aber, sobald ich den Ladestecker abziehe, Data + Sync ausschalten?! Das wollte ich da eigentlich vermeiden.

Aber soweit so gut, denn aus deiner Antwort schließe ich, das es einen "Oder befehl" nicht gibt.
Das hilft schon weiter, danke dir =)
 
das sollte auch mit einem Profil gehen,
kanns nicht weiter ausprobieren da ich unterwegs bin, das profil sollte sich aber auf den richtigen weg bringen.

<TaskerData sr="" dvi="1" tv="1.3.4b2m">
<Profile sr="prof95" ve="2">
<cdate>1356033545550</cdate>
<clp>true</clp>
<edate>1356034131391</edate>
<id>95</id>
<mid0>96</mid0>
<mid1>142</mid1>
<nme>test</nme>
<State sr="con0">
<code>10</code>
<pin>true</pin>
<Int sr="arg0" val="0"/>
</State>
<State sr="con1">
<code>123</code>
<Int sr="arg0" val="0"/>
</State>
</Profile>
<Task sr="task142">
<cdate>1356034031752</cdate>
<edate>1356034131391</edate>
<id>142</id>
<Action sr="act0" ve="3">
<code>37</code>
<lhs>%WIFI</lhs>
<op>1</op>
<rhs>on</rhs>
</Action>
<Action sr="act1" ve="3">
<code>548</code>
<Str sr="arg0" ve="3">sync</Str>
<Int sr="arg1" val="0"/>
</Action>
<Action sr="act2" ve="3">
<code>38</code>
</Action>
</Task>
<Task sr="task96">
<cdate>1356033553733</cdate>
<edate>1356033993853</edate>
<id>96</id>
<Action sr="act0" ve="3">
<code>37</code>
<lhs>%WIFI</lhs>
<op>1</op>
<rhs>on</rhs>
</Action>
<Action sr="act1" ve="3">
<code>548</code>
<Str sr="arg0" ve="3">sync</Str>
<Int sr="arg1" val="0"/>
</Action>
<Action sr="act2" ve="3">
<code>43</code>
<lhs>%WIFI</lhs>
<op>1</op>
<rhs>off</rhs>
</Action>
<Action sr="act3" ve="3">
<code>548</code>
<Str sr="arg0" ve="3">sync off</Str>
<Int sr="arg1" val="0"/>
</Action>
<Action sr="act4" ve="3">
<code>445</code>
<Str sr="arg0" ve="3">Ringtones/beeps.mp3</Str>
<Int sr="arg1" val="0"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="3"/>
</Action>
<Action sr="act5" ve="3">
<code>38</code>
</Action>
</Task>
</TaskerData>


Gesendet von meinem Nexus 4 mit Tapatalk 2
 
Ich würde es ganz anders machen.
Erstens braucht man keine 2 Profile für Display an/aus. Kann ja nur eines von beiden sein.
Zwweitens arbeite ich gerne mit Variablen und lasse meine Profile alle an. (Hab mit dem Tasker begonnen wie das nicht anders ging)
Also ein Profil das bei Display ein eine Variable setzt und im Exittask sie wieder lösch. Genauso für Wlan und für laden.
Dann ein Task der die Variablen abfrät und davon abhängig die Sachen schaltet. Gejht in Richtung objektorientierte Programmierung. Das oder kannst auch so lösen das du für die Oderabfrage eine Variable verwendest. Und beim ersten Profil die Variable um 1 erhöst bzw im Exittask um 1 reduzierst, im 2 Profil um 2 im 3 Profil um 4 usw. Wenn du dann einen Task nimmst der auf Variable >0 reargiert wird er gestartet wenn ein oder mehrere Profile zutreffen.

Das sind nur Ideen ohne es endgültig ausformuliert zu haben.
 
man kann im task %WIFI auf on off abfragen, genauso geht das mit %SCREEN on off.
Dafür brauch man kein extra Profil, diese variablen liefert Tasker von Haus aus.

das sollte eigtl. mit einem profil machbar sein.

edit: hier mal ein Profil zum testen, wenn ich das jetzt richtig verstanden habe soll

-immer normal gesynct werden,
wenn Wlan an ist ODER display an ODER am laden ist.

- bei Display aus
wenn Wlan aus UND nicht am laden, soll das 20min Intervall syncen starten.

musst dir nur die Benachrichtigungen anschauen in den tasks, dort ist beschrieben was an dieser stelle passieren soll.
-

Gesendet von meinem Nexus 4 mit Tapatalk 2
 

Anhänge

  • Sync.prf.zip
    978 Bytes · Aufrufe: 101
Zuletzt bearbeitet:

Ähnliche Themen

keinnamemehrfrei
Antworten
19
Aufrufe
824
keinnamemehrfrei
keinnamemehrfrei
holms
Antworten
3
Aufrufe
163
Cecoupeter
Cecoupeter
H
  • Hastenichgesehen
Antworten
2
Aufrufe
179
Hastenichgesehen
H
Zurück
Oben Unten