Hallo ihr lieben, hab mal wieder ein Problem...
Hab in meinem Büro immer Mucke am laufen. Wenn ich jetzt nen Anruf bekomme, geht mein Anrufmonitor auf.
Entweder so:
moni0.png
oder so:
moni1.png
Der Monitor bleibt während des Telefonats offen (siehe Zeitanzeige oben im Fenster). Da ich sowieso grad mit autoit am rumbasteln bin, dachte ich mir, ich könnte des mit Pixelsearch lösen, indem ich nach rot bzw gelb in dem Logobereich scannen lasse. Wenn eine der Farben vorhanden, dann Pause
Hier mein bisheriger Lösungsansatz
Spoiler anzeigen
#include <Misc.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <WinAPI.au3>
Global $olpos, $urpos, $Looping
start()
Func start()
$Looping = 1
bereich()
EndFunc ;==>start
; Bereich Anrufmonitor festlegen
Func bereich()
While $Looping
If _IsPressed(01) Then
$olpos = MouseGetPos()
While _IsPressed(01)
WEnd
ExitLoop
EndIf
WEnd
Sleep(100)
While $Looping
If _IsPressed(01) Then
$urpos = MouseGetPos()
While _IsPressed(01)
WEnd
ExitLoop
EndIf
WEnd
fritz()
EndFunc ;==>bereich
Func fritz()
While 1
$waitpixel = PixelSearch($olpos[0], $olpos[1], $urpos[0], $urpos[1], 0xffe500, 10)
$waitpixel1 = PixelSearch($olpos[0], $olpos[1], $urpos[0], $urpos[1], 0xea0019, 10)
While True
If IsArray($waitpixel) = True OR IsArray($waitpixel1) = True Then
WinActivate("AIMP3")
Send("{SPACE}")
EndIf
If IsArray($waitpixel) = False AND IsArray($waitpixel1) = False Then
WinActivate("AIMP3")
Send("{SPACE}")
EndIf
WEnd
WEnd
EndFunc ;==>fritz
Alles anzeigen
Wenn jetzt ein Anruf kommt, öffnet er mir zwar den AIMP3 (Player) und macht pause, aber da er in ner Endlosschleife hängt, nimmt er die logischerweise auch gleich wieder raus, wieder rein etc.
Wie kann ich des lösen, dass ich sag -> wenn Farbe da, dann AIMP3 -> Pause und erst was machen, wenn sich Farbzustand ändert?
PS: Ich weiß, dass sich des eleganter mit Winexist lösen löst, wollte es aber mal so probieren. Winexist kommt auch noch