Ein paar grundlegende Fragen

D

daraven

Fortgeschrittenes Mitglied
9
Hi,

sicher ist die ein oder andere Frage schon irgendwo irgendwann mal gestellt worden , aber ich komme momentan mit ein paar Variablen Fragen nicht weiter.

Um mein anliegen besser zu veranschaulichen ich ein Beispiel.
Ich besitze eine FritzBox 7270 und eine 7390 beide zuhause in betrieb.

- Profil 1 Kontext : Wifi verbunden 7270 ,
Task : PinCode aus
ExitTask: PinCode an

-Profil 2 Kontext : Wifi verbunden 7390
-> rest wie 7270

so weit so gut nun habe ich aber noch folgendes Profil

- Kontext -> Deitei geöffnet - Musik.mp3

Task -> 1. Secure Settings Clear Password
2. Secure SettingsBilschirm an für 60 sek
2. Warte 20 Sekunden
3. FolderSync

-Kontext Benachrichtigung Foldersync
Task -> Spiele synchronisierte Datei.mp3 ab
If %PACTIVE !~ *7270*/*7390*
wait 60 sek
Secure Settings Set Pin
End If

Soweit funktioniert das alles Top ,aber ich hätte es gern so das ich keine Globale Variable nehmen muss wie %PACTIVE sondern lieber lokal wie %pactive , aber wie stelle ich das an.

muss ich Variable Set %pactive zu *7270*/*7390* machen?
Verstehe die ganze Variable Set Sache nicht das die von mir erstellte Variable dann auch das abfragt was ich will, in dem fall ob das Profil für mein Wlan an oder aus ist aber eben Lokal in dem Task wo ich es brauch.
 
Hi,

die variable %PACTIVE ist eine "built in" variable. Sie existiert auch wenn du sie garnicht benutzt. Du könntest natürlich variable Set %pactive to %PACTIVE machen um eine lokale variable für die if-Bedingung zu nehmen, allerdings bringt das absolut keinen Vorteil.


Gruß

Chillmann
 
  • Danke
Reaktionen: daraven
Aber wenn ich die system %PACTIVE nehme und in einem anderen Profil auch, hab ich bedenken das sich das dann hakt.
Was Variable Set %PACTIVE zu %pactive angeht so habe ich das probiert ,leider funktioniert das nicht die If Bedingung (If %pactive ~ *7270*/*7390*) bleibt bei dieser Konstellation rot obwohl ich zur FritzBox verbunden bin und sage ich (If %PACTIVE !~ *7270*/*7390*) ist sie grün :blink: .
 
%PACTIVE fragst du nur ab. Die Variable wird von Tasker gesetzt, und aktualisiert, wenn Profile (in)aktiv werden. Insofern kannst du die problemlos und ruhigen Gewissens in allen möglichen Tasks verwenden; dazu ist sie da.

Wenn du eine lokale Variable verwendest, dann ist die nur in dem Task gültig und verfügbar, in dem sie definiert wird. Solltest du sie in Task1 setzen und auch in Task2 verwenden wollen, müsstest du sie global machen. Also mindestens einen Großbuchstaben im Namen.

Aber wie Chillmann schon schrieb, das bringt dir keine Vorteile. Frag einfach %PACTIVE ab.
 
  • Danke
Reaktionen: daraven
daraven schrieb:
Was Variable Set %PACTIVE zu %pactive angeht so habe ich das probiert ,leider funktioniert das nicht die If Bedingung (If %pactive ~ *7270*/*7390*) bleibt bei dieser Konstellation rot obwohl ich zur FritzBox verbunden bin und sage ich (If %PACTIVE !~ *7270*/*7390*) ist sie grün :blink: .

Noch kleiner Nachtrag: der Task im editor betrachtet wird bei der if-Bedingung immer "nicht erfüllt" anzeigen, da die abgefragte variable nur solange existiert, wie der Task, der sie erstellt, aktiv ist.
Wenn man jetzt den Play Button drückt, den Task also manuell startet, erfolgt leider keine Echtzeit Aktualisierung der Anzeige, so dass man in der Tat NIEMALS den grünen Balken sehen wird, wenn man per "if entspricht" eine lokale variable abfragt.
Nicht desto trotz sollte der Task im livetest, als auch via Play Button, korrekt abgearbeitet werden


Gruß

Chillmann
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: daraven
germanos schrieb:
%PACTIVE fragst du nur ab. Die Variable wird von Tasker gesetzt, und aktualisiert, wenn Profile (in)aktiv werden. Insofern kannst du die problemlos und ruhigen Gewissens in allen möglichen Tasks verwenden; dazu ist sie da.

Wenn du eine lokale Variable verwendest, dann ist die nur in dem Task gültig und verfügbar, in dem sie definiert wird. Solltest du sie in Task1 setzen und auch in Task2 verwenden wollen, müsstest du sie global machen. Also mindestens einen Großbuchstaben im Namen.

Aber wie Chillmann schon schrieb, das bringt dir keine Vorteile. Frag einfach %PACTIVE ab.


Ok das ist schon mal gut zu wissen das ich mir diesbezüglich keine Gedanken machen brauch :)

Der ursprüngliche Beitrag von 10:38 Uhr wurde um 10:40 Uhr ergänzt:

Chillmann schrieb:
Noch kleiner Nachtrag: der Task im editor betrachtet wird bei der if-Bedingung immer "nicht erfüllt" anzeigen, da die abgefragte variable nur solange existiert, wie der Task, der sie erstellt, aktiv ist.
Wenn man jetzt den Play Button drückt, den Task also manuell startet, erfolgt leider keine Echtzeit Aktualisierung der Anzeige, so dass man in der Tat NIEMALS den grünen Balken sehen wird, wenn man per "if entspricht" eine lokale variable abfragt.
Nicht desto trotz sollte der Task im livetest, als auch via Play Button, korrekt abgearbeitet werden


Gruß

Chillmann


Das ist ebenfalls sehr informativ hab schon an mir gezweifelt warum das nicht geht aber so wie du es schreibst ist es logisch und wird mir bei weiteren Profilen helfen :)

Vielen dank euch beiden :)
 
Hallo

hab da mal noch ne Frage :).
Und habe ich das Problem wenn ich als Kontext : Status-> App -> Kalendereintrag wähle die Google Kalendertermine nur erfasst werden wenn sie nicht ganztägig sind :confused2: ist das bei euch auch so bzw ist das normal so.

Weil würde mir gerne basierend nach meinen eingetragenen Schichtplan den Wecker stellen lassen.
 
Hab de evtl nen passenden Task in petto ;)
Die Endung .txt muss vorm Importieren noch aus dem Dateinamen gelöscht werden. Der Kalendereintrag darf hier aber auch nicht ganztägig sein.


Gruß

Chillmann
 

Anhänge

  • Alarm_by_calendar_entry.tsk.xml.txt
    3,2 KB · Aufrufe: 162
Zuletzt bearbeitet:
  • Danke
Reaktionen: daraven
Chillmann schrieb:
Hab de evtl nen passenden Task in petto ;)
Die Endung .txt muss vorm Importieren noch aus dem Dateinamen gelöscht werden. Der Kalendereintrag darf hier aber auch nicht ganztägig sein.


Gruß

Chillmann

Erstmal vielen dank für das Profil werde es mal ausprobieren :).
Aber es wurmt mich schon das es keine Möglichkeit gibt auf Termine zu reagieren
die als ganztägig gekennzeichnet sind.
Auch ist es nicht möglich zum jetzigen Zeitpunkt die von mir erstellten Wecker z.b Zur Arbeit in Sanfter Wecker zu aktivieren/deaktivieren.
Aber vielleicht wird das irgendwann mal mit nem Update behoben :drool:
 
Sanfter Wecker bringt direkt Tasker-Support mit. Musst mal unter 3rd Party Apps schauen.
 
so hab ich es ja gemacht nur leider kann er nur sanfter wecker ein oder ausstellen und nicht einen bestimmten wecker an oder aus stellen
 
Doch natürlich, man kann vordefinierte Wecker scharfstellen oder deaktivieren. Falls du einen "neuen Wecker" definieren willst, also neue Weckzeit, musst du die Aktion: "Apps -> set Alarm" nehmen. Beim ersten Ausführen wird noch gefragt ob der Stock-Wecker oder gentle Alarm gestellt werden soll.
Auf diesem weg wird bei gentle Alarm aber immer das Standard-Weckprofil genommen. Falls du für die Arbeit ein besonderes Profil mit Vorwecker etc. haben solltest, musst du dieses erst zum Standardprofil machen.


Gruß

Chillmann
 
  • Danke
Reaktionen: Indurus und daraven
ok das werde ich mal testen .
aber mal was anderes wie kann ich Tasker dazu bewegen zu prüfen ob eine App läuft oder nicht? hab mir heute Abend/Nacht schon die finger wund gegoogelt :confused2:
 
Ohne weiteres kann Tasker nur erkennen ob eine App im Vordergrund ist oder nicht. Ob sie geschlossen wurde oder nur im Hintergrund weiterläuft kann er nicht unterscheiden.
Jedoch kann man mit Tasker Shell-Befehle ausführen und das Ergebnis in Variablen ablegen. Vllt kann dir Erims Post: How to: Killen einer Hintergrundapp weiterhelfen.


Gruß

Chillmann
 
  • Danke
Reaktionen: daraven
Alles klar hab mal auf die Seite geschaut da muss ich mich erstmal einlesen das scheint mir keine einfache Sache zu sein :).
Konkret ging es mir um TS3 für Android einmal um herauszufinden welcher Prozess dafür verantwortlich ist sich mit einem Server zu verbinden da man kein Shortcut auf den Homescreen legen kann und zweitens das ich mittels tasker nach beenden von TS3 ne Aktion starten könnte ,wofür aber Tasker wissen müsste das TS3 geschlossen wurde.
Hab mir auch mal n Terminal installiert um mir mal n Log anzuschauen aber bis jetzt hab ich es über die Shell nur hinbekommen das TS3 startet.

Aber mal was anderes habe dein Weckprofil mal ausprobiert aber steige bei der fülle von Befehelen nicht zu 100% durch was was macht da mir die nötigen kenntnisse dazu fehlen.
Habe es mit meinen Anfängerwissen erstmal folgender massen gelöst.

Kontext:

Kalendereintrag : mit Titel und Kalenderangabe (ganztägiger Termin)
Zeit : 0:00 Uhr

Task:

1 App -> Alarm stellen -> Std 5 Minuten 20 Nachricht: Zur Arbeit

Das funktioniert auch super, aber ich würde es gerne noch erweitern.

heute haben wir den 13.3. , mal angenommen mein Dienst beginnt am 14.3 und im Kalender Arbeit ist dieser ganztägig am 14.3 erstellt, dann kann ich Tasker erst den Wecker um 0 Uhr stellen lassen da ja da erst erst der 14.3 ist.

Wie stelle ich es an das ich den Wecker schon einen Tag vor Terminbeginn ,in meinem Bsp. am 13.3 stellen kann, so das er mich am 14.3 um 5:20 Uhr weckt.
Ist das möglich ?


Dann hab ich noch eine dritte Baustelle :ohmy:

Hab ein Nachtruheprofil was bestimmte sachen um 0 Uhr ausschaltet um Akku zu sparen.
Wie bekomme ich es hin das das Profil erst aktiv wird sobald 20 Minuten keine Benutzeraktion erfolgt ist ,um sicher zu gehen das ich auch wirklich nix mehr mit dem Handy machen will.
Und in weiterer folge wenn das Nachtruheprofil aktiv sein sollte und ich das Handy wieder bediene, sich das Nachtruheprofil wieder deaktiviert und wieder auf besagte 20 min wartet ,bevor es wieder eingeschaltet wird.

Anbei noch vielen Dank für die super Unterstützung hier im Forum :thumbup:

grüße
Daraven
 
Aber mal was anderes habe dein Weckprofil mal ausprobiert aber steige bei der fülle von Befehelen nicht zu 100% durch was was macht da mir die nötigen kenntnisse dazu fehlen.
Habe es mit meinen Anfängerwissen erstmal folgender massen gelöst.
Mein Task macht halt Folgendes: Er prüft stundenweise die kommenden 24h ob ein Termin mit dem definierten Titel eingetragen ist und stellt den Wecker auf die gewählte Anzahl Stunden vor Terminbeginn. Im Grunde nur nützlich wenn man ständig zu anderen Uhrzeiten aufstehen muss.


Wie stelle ich es an das ich den Wecker schon einen Tag vor Terminbeginn ,in meinem Bsp. am 13.3 stellen kann, so das er mich am 14.3 um 5:20 Uhr weckt.
Ist das möglich ?
Also ein bestimmtes Datum mit auszuwählen oder gar generell "Uhrzeit + 1Tag" festzulegen ist leider nicht möglich. Aber solange du den Wecker nach 5:20 Uhr auf 5:20 Uhr stellst, muss das ja für den Folgetag gelten ;)


Wie bekomme ich es hin das das Profil erst aktiv wird sobald 20 Minuten keine Benutzeraktion erfolgt ist ,um sicher zu gehen das ich auch wirklich nix mehr mit dem Handy machen will.
Und in weiterer folge wenn das Nachtruheprofil aktiv sein sollte und ich das Handy wieder bediene, sich das Nachtruheprofil wieder deaktiviert und wieder auf besagte 20 min wartet ,bevor es wieder eingeschaltet wird.

Anbei noch vielen Dank für die super Unterstützung hier im Forum
Immer gerne doch ;) Aber noch lieber helfe ich zur Selbshilfe (wo ist der Smiley mit dem Heiligenschein? :lol:)
Deswegen nur ein paar Tips: Aktivität/Inaktivität würde ich über Display (on/off) überwachen; eine Warte-Aktion ist unter "Task" zu finden und unter "Tasker" die Aktion: "Set Profilstatus (on/off/toggle)"
Das sollten die essentiellen "Bausteine" für dein Vorhaben sein. Am besten du liest dir hier im Forum, im Tasker-FAQ, noch den Beitrag zu Variablen durch.
Falls es dennoch nicht hinhauen sollte, zögere nicht nochmal nachzuhaken.


Gruß

Chillmann
 
Auch wenn OT, weil es nichts mehr mit dem Tasker zu tun hat. (Meine Taskerlösungen haben nicht 100% funktioniert, und den Chef interessiert es nicht warum ich erst um 10 und nicht um 7 da bin)

Ich arbeite über Arbeitskalender wo ich die Schichten eingetragen habe + die Zeit um wieviel ich vorher aufstehen muß. Da die Terminerinnerung von Android als Wecker unbrauchbar ist (Nokia war top) hab ich mir nach unsicheren Versuchen mit Tasker jetzt hab ich Calender Event Reminder gekauft. Jetzt funktioniert es gut. Nur wirklich gut testen, da gibt es soviel Einstellungen das schnell was falsch gehen kann.
 
@ Chillmann erstmal vielen dank für die hilfreichen Tipps und wenn ich ein Smiley mit nem Heiligenschein gefunden hätte ,hätte ich ihn jetzt eingefügt :laugh: .

Anbei hier mal mein erster versuch zur Selbsthilfe:

----------------------------------------------------------------
Kontext: Nachtruhe
-Zeit von 0 bis 5:20 Uhr Wdh (2min zu testzwecken)
-Cell Near

Task: Nachtruhe an
1. If %SCREEN ~ off
2.Lautlos an
3.GPS aus
4.Mobile Daten an
5.Wifi aus
6.Auto Sync aus
7. End If
8. If %SCREEN ~ on
9.Task -> Task ausführen -> ZuhauseAn
9. End If

Exit Task: Nachtruhe aus
1. Lautlos Vibrieren
2. Wifi an
3. GPS an
4. Auto Sync an
5. Mobile Daten aus

--------------------------------------------------------------------------
Und hier mein Zuhause Profil

Kontext: Zuhause
-Cell Near
- Zeit von 5:20 bis 0 Uhr

Task: ZuhauseAn
1. Warte 2 sek
2. Keyguard deaktivieren
3. Pinabfrage deaktivieren
4. Mobile Daten aus
5. Wifi an
6. Display Timeout auf 1min 30 sek
7. Variable Setzen %Wifi zu %WIFI
8. If % Wifi ~ off
9. Mobile Daten an
10. End If

Exit Task: Zuhause Aus
1.Keyguard an
2.Pin wieder aktivieren
3. Mobile Daten an
4. Wifi aus
5. Display Timeout 30 sek
--------------------------------------------------------------------------------------

Das hat auch funktioniert aber eben immer nur alle 2 min.
Wenn ich das Handy eingeschaltet hatte hat er erst nach 2 min registriert das ja der Bildschirm an ist und das ist nicht effektiv.

Also habe ich die ganze Sache wieder geändert(stand alt ohne If%SCREEN) und 3 neue Profile erstellt.
--------------------------------------------------------------------------
Kontext: Display an
-Display State Ein
-von 0 bis 5:20 Uhr
-Cell Near

Task: Display an
1. Task ausführen Nachtruhe aus (der Exit Task vom Nachtruheprofil)
2. Task ausführen Zuhause an (siehe oben)
--------------------------------------------------------------------------
Kontext: Display aus
-Display State aus
-non 0 bis 5:20 Uhr
-Cell Near

Task: Display aus
1.Task ausführen Zuhause aus (exit Task von Zuhauseprofil)
2.Task ausführen Nachtruhe an
--------------------------------------------------------------------------

Dann musste ich mir noch gedanken machen was im falle ist wenn ich innerhalb dieser Zeit den Cell Near Bereich verlasse denn dann soll ja Wifi aus und Mobil an sein getestet hatte ich dies mit manuellem Wifi ausschalten aber
Mobile Daten gingen nicht an.

darum ein weiteres Profil:
Kontext :Wifi
-nicht Wifi verbunden (FritzBox)

------------------------------------------------------
Task: Wifi1
-Mobile Daten an
-Wifi aus

Exit Task: Wifi2
-Mobile Daten aus
-Wifi an
---------------------------------------------------------

Solange ich noch auf war und testen konnte funktionierte alles wie es sollte, aber da ich im Schlafzimmer grottenschlechten Wifi empfang habe muss er sich die nacht irgendwie verhaspelt haben , denn Mobile Daten waren An und Wifi aus so wie es nicht sein sollte als ich heute Früh aufgestanden bin ,denn nach 5:20 geht ja mein Zuhause Profil wieder an.

Wie kann ich die Sache Dingfest machen das sie richtig Rund läuft.
Fakt ist auch Das sich bei der Fülle der Profil Nachtruhe Ein/Ausgangstask ,Zuhause Ein/Ausgangstask ,Displ An/Aus manches doppelt ausgeführt wird z.b Wifi an usw.Weiß nicht ob das ein Problem ist


@Georgius
vielen dank für den Tipp mit Calender Event Reminder werd es mir die Tage mal installieren und Probieren ob es seine Sache so macht wie ich es mir vorstelle.

Lg
Daraven
 
Zuletzt bearbeitet:
Versuch mal auf der Ausschalten der mobilen Daten zu verzichten. Sobald man mit einem W-lan verbunden ist, wird idR. diese Verbindung bevorzugt. Vllt vereinfacht das die Verfeinerung deiner Profile.

Zurück zur eigentlichen Frage (Nachtmodus erst nach 20min inaktivität)

Profil: Display
Kontext: Displaystatus

Eingangstask:
1. Stopp "Nachtruhe an"
2. Task ausführen: "Nachtruhe aus" if %WIFI ~ off)

Ausgangstask:
Nachtruhe an
(wobei du deinem "Nachtruhe an" Task die 20min Wartezeit-Aktion an erste Stelle setzt)

Bei diesem Profil darf in den Profiloptionen "Enforce Taskorder" nicht aktiviert sein! (ist leider standardmäßig an)


Das eigentliche Nachtruheprofil:
Kontext: von 0 - 5:20 Uhr

Eingangstask:
1. Task ausführen: "Nachtruhe an"
2. Profilstatus: "Display" an

Ausgangstask:
1. Nachtruhe aus
2. Profilstatus: "Display" aus
3. Stopp "Nachtruhe an" (nötig, weil Aktive Profile ihren Ausgangstask ausführen, wenn sie ausgeschaltet werden. Was hier der Fall wäre, wenn das Display um 5:20 an ist und das aktive Profil "Display" durch den Ausgangstask des Profils: "Nachtruhe" ausgeschaltet wird. An der Stelle würde dann "Nachtruhe an" ausgeführt werden)


Gruß

Chillmann
 
  • Danke
Reaktionen: daraven
Ertsmal vielen dank für die Hilfe :thumbup::thumbsup::biggrin: jetzt scheint es rund zu laufen, verstehe nur nicht warum im Display Eingangstask Nachtruhe aus ausgeführt wird und im Nachtruhe aus task nochmal Nachtruhe aus ausgeführt wird.

Lg
Daraven
 

Ähnliche Themen

E
Antworten
2
Aufrufe
310
mbefore305
M
X
Antworten
2
Aufrufe
403
xyzUpdate
X
beeedooo
  • beeedooo
Antworten
10
Aufrufe
1.013
beeedooo
beeedooo
Zurück
Oben Unten