Mitglieder surfen ohne Werbung: Jetzt kostenlos registrieren!

funktionierender "whatsapp vorlesen" task

  • 8 Antworten
  • Neuester Beitrag
Diskutiere funktionierender "whatsapp vorlesen" task im Automatisierung - Tasker im Bereich Tools.
rtwl

rtwl

Erfahrenes Mitglied
hat hier jemand einen funktionierenden "whatsapp vorlesen" task am laufen mit allen möglichen Konstellationen?
also eine "natürliche" Ansage egal ob:
  • eine Nachricht einer Person
  • eine Nachricht aus einer Gruppe
  • 2 oder mehr Nachrichten einer Person
  • 2 oder mehr Nachrichten einer Person aus einer Gruppe
  • 2 oder mehr Nachrichten aus mehreren Personen einer Gruppe
  • 2 oder mehr Nachrichten mehrerer Personen
  • 2 oder mehr Nachrichten von Person und Gruppen.
warum ich so blöd frage:
ich habe kein Root, deswegen kommt WhatsTasker nicht in frage (anscheinend könnte man es damit). Ich habe die fertigen Projekte getestet, aber hier gibt es Probleme mit den oben genannten Möglichkeiten.
daher hab ich mich selber ans basteln gemacht. Ich nutze das plugin AutoNotification und setze dann diverse if Bedingungen um die verschiedenen Möglichkeiten abzufangen.
was bis jetzt gut funktioniert ist:
  • eine oder mehr Nachrichten einer Person
  • mehrere Nachrichten mehrerer Personen.
das Problem aktuell ist noch die Abfrage einer Nachricht aus einer Gruppe.

aber bevor ich hier weiter aushole an was es genau scheitert wollte ich mal fragen ob jemand einen funktionierenden task dafür hat? Ach ja, es geht mir nur ums vorlesen nicht um Antworten per Sprache.
 
H

Hastenichgesehen

Stammgast
Die einfachen Tasks im Anhang kennst Du sicher!?
 

Anhänge

  • Downloads.zip
    1,9 KB Aufrufe: 2
rtwl

rtwl

Erfahrenes Mitglied
Ja danke die kenne ich. Auf diese tasks hab ich es natürlich aufgebaut, aber ich möchte es schon etwas komplexer haben, eben mit allen Bedingungen wie im ersten Post erwähnt.

Aktuell sieht mein Projekt so aus. Ich glaube auch, dass es jetzt soweit funktioniert, muss aber noch testen.

PS: Die ganzen IF Bedingungen resultieren aus der Tatsache, dass AutoNotification die Variablen/Arrays manchmal unterschiedlich bestückt.
Sowie den Unterschied im 'Vorlesen' zu haben ob eine oder mehrere Nachrichten von einer oder mehreren Personen kommt.

Code:
    WhatsApp vorlesen test (529)
        A1: AutoNotification Query [ Konfiguration:Notification Apps: WhatsApp Timeout (Sekunden):20 ]
        A2: Popup-Benachrichtigung [ Text:%antextlines(1) Lang:An ]
        A3: Array Leeren [ Variable Array:%Wtitle ]
        A4: Array Leeren [ Variable Array:%Wtext ]
        A5: Array Leeren [ Variable Array:%Wtextlines ]
        A6: Stopp [ (Fehler):Aus Task: ] If [ %antitle ~ \%antitle ]
        A7: Array Set [ Variable Array:%Wtitle Values:%antitle() Teiler:, ]
        A8: Array Set [ Variable Array:%Wtext Values:%antext() Teiler:, ]
        A9: Variable Setzen [ Name:%textlinecheck Zu:%antextlines()  Recurse Variables:Aus Mathematisch:Aus Hinzufügen:Aus Max Rounding Digits:3 ] If [ %antextlines(1) ist gesetzt | %antextlines(1) ~ \%antextlines1 &+ %antextlines(2) ist gesetzt ]
        A10: Variablen [ Name:%textlinecheck Von:2 Länge:9 Anpassen:Aus Ergebnis Ablegen In:%textlineerste8 ] If [ %antextlines(1) ist gesetzt | %antextlines(1) ~ \%antextlines1 &+ %antextlines(2) ist gesetzt ]
        A11: If [ %textlineerste8 ~ antextlin ]
        <Mit antextlines>
        A12: Array Set [ Variable Array:%wtextlinesa Values:%antextlines() Teiler:, ]
        <Mit antextlines>
        A13: Array Set [ Variable Array:%Wtextlines Values:%wtextlinesa(2) Teiler:=:= ]
        A14: Else
        <ohne antextlines>
        A15: Array Set [ Variable Array:%Wtextlines Values:%antextlines Teiler:=:= ] If [ %antextlines(1) ist gesetzt | %antextlines(1) ~ \%antextlines1 ]
        A16: End If
        <1 von 1>
        A17: If [ %Wtextlines(2) ! gesetzt ]
        A18: Vorlesen [ Text:%antitle(1) schreibt %antext(1) Maschine: Stimme:default:default Stream:3 Tonhöhe:5 Geschwindigkeit:5 Respect Audio Focus:An Network:Aus sofort mit Task fortfahren:Aus ]
        A19: End If
        <2+ von 1>
        A20: If [ %Wtitle(1) ~ %Wtitle(2) & %Wtext(1) !~ %Wtext(2) ]
        A21: Vorlesen [ Text:%Wtextlines(#) Nachrichten von %Wtitle(1) Maschine: Stimme:default:default Stream:3 Tonhöhe:5 Geschwindigkeit:5 Respect Audio Focus:An Network:Aus sofort mit Task fortfahren:Aus ]
        A22: For [ Variable:%arr Einträge:1:%Wtextlines(#) ]
        A23: Vorlesen [ Text:Nachricht %arr: %Wtextlines(%arr) Maschine: Stimme:default:default Stream:3 Tonhöhe:5 Geschwindigkeit:5 Respect Audio Focus:An Network:Aus sofort mit Task fortfahren:Aus ]
        A24: End For
        A25: End If
        <X von 2>
        A26: If [ %Wtitle(1) !~ %Wtitle(2) ]
        A27: Vorlesen [ Text:%Wtextlines(#) Nachrichten aus mehreren Chats Maschine: Stimme:default:default Stream:3 Tonhöhe:5 Geschwindigkeit:5 Respect Audio Focus:An Network:Aus sofort mit Task fortfahren:Aus ]
        A28: For [ Variable:%arr Einträge:1:%Wtextlines(#) ]
        A29: Vorlesen [ Text:Nachricht %arr: %Wtextlines(%arr) Maschine: Stimme:default:default Stream:3 Tonhöhe:5 Geschwindigkeit:5 Respect Audio Focus:An Network:Aus sofort mit Task fortfahren:Aus ]
        A30: End For
        A31: End If
 
rtwl

rtwl

Erfahrenes Mitglied
aktuelles Problem mit meinem task:
sobald nur eine Nachricht in einer Gruppe kommt, greift die falsche if Bedingung und es wird irgendwas vorgelesen.
kommt eine zweite oder mehr Nachrichten in die Gruppe (beide natürlich ungelesen und in der Statuszeile) funktioniert es wieder.

Status Problemlösung:
ich muss mal alle anderen Variablen aus dem AutoNotification checken ob es da eine bessere Variable gibt einzelne Nachrichten-Konstellationen als IF Bedingung zu verwenden.
 
Spardas

Spardas

Experte
WhatsApp Vorlesen Testversion v0.1

So geht es, aber sehr rudimentär. ohne ansagen viele Nachrichten von welchem Absender. Eventuell Hilft es dir für den Ausbau.

WhatsApp vorlesen test v0.1 (115)
A1: AutoNotification Query [ Konfiguration:Notification Apps: WhatsApp Timeout (Sekunden):20 ]
A2: Variable Aufteilen [ Name:%antextlines Teiler:=:= Basis löschen:Aus ] If [ %antextlines ist gesetzt ]
A3: [X] Popup-Benachrichtigung [ Text:%antextlines
%antitle %antext Lang:Aus ]
A4: Vorlesen [ Text:Nachricht %antitle %antext Maschine: Stimme:default:default Stream:3 Tonhöhe:5 Geschwindigkeit:5 Respect Audio Focus:An Network:Aus sofort mit Task fortfahren:Aus ] If [ %antextlines ! gesetzt ]
A5: For [ Variable:%arrrr Einträge:%antextlines() ]
A6: Vorlesen [ Text:Nachricht %arrrr Maschine: Stimme:default:default Stream:3 Tonhöhe:5 Geschwindigkeit:5 Respect Audio Focus:An Network:Aus sofort mit Task fortfahren:Aus ]
A7: End For
[/spioler]
 
Zuletzt bearbeitet von einem Moderator:
Bearbeitet von derstein98 - Grund: derstein98+
rtwl

rtwl

Erfahrenes Mitglied
Leider nicht, da es damit Probleme gibt wenn man zwei Nachrichten von einer Person bekommt. Da ist %antextlines leer, dafür hat man zwei Einträge in %antext(). Als trigger für eine Person verwende ich dafür den Vergleich der beiden Einträge in %antitel(), diese sind dabei identisch.
bei zwei Personen sind die %antitle() logischerweise ungleich.
bei zwei Nachrichten einer Person aus einer Gruppe sind sie auch ungleich, was aber dann die falsche vorlesen Aktion startet. Das Problem ist, dass der Nachrichtentext dabei in %antext() steht und erst ab der dritten Nachricht die array %antextlines() befüllt wird.

vielleicht kann mir jemand einen kurzen test task machen wie diese Einträge als die selbe Person triggern kann:
%arr(1) = "Max Mustermann @Gruppe"
%arr(2) = "Max Mustermann"

manchmal ist aber das @Gruppe im (2) und der Name in (1).

@Spardas, manchmal sieht %antextlines() so aus "Hallo=:=Wie geht's"
manchmal aber auch so
"%antextlines1,Hallo=:=Wie geht's"

auch das hab ich lösen können mit den 3 IF Bedingungen... zumindest haben meine Tests damit erfolg erbracht.
 
qwoka

qwoka

Experte
Ich beobachte diesen Thread sehr interessiert. @rtwl gibt es mittlerweile eine überarbeitete Version von Deinem Task oder blieb es bei der Testversion? Vielen Dank für diese Arbeit.
 
rtwl

rtwl

Erfahrenes Mitglied
Bis jetzt hatte ich noch keine Gelegenheit weiter zu arbeiten. Daher bleibt es vorerst bei der Testversion.
ich habe auch noch nicht zu 100% herausgefunden wann es nicht funktioniert. Also bei welcher Konstellation an privat und Gruppen Nachrichten.
wenn du da eine Logik beobachtet hast, bitte melden. Vielleicht kommt dann meine Motivation wieder 😉
zu 95% funktioniert es aber aktuell bei mir.
 
Ähnliche Themen - funktionierender "whatsapp vorlesen" task Antworten Datum
7
8
1