[AHK-] 如何识别Line视窗发送讯息

楼主: a0307 (便当王)   2024-03-14 00:41:34
目前希望ahk可以在我所有已开启的line聊天视窗
在对方发送讯息(图片or文字)后,自动帮我按下enter 送出已打好的讯息
请问大概有什么方法可以让它识别吗?
#Persistent
; 设置监听功能以检测 Line 聊天视窗的标题
SetTitleMatchMode, 2
Loop {
WinWait, Line ; 可根据 Line 聊天视窗的标题进行设置
WinGetTitle, title, A
; 设置监听功能以捕捉对方发送的讯息
WinGetClass, class, A
SetTimer, CheckForIncomingMessage, 100
; 监听 Line 聊天视窗是否被关闭,如果是,则重置 Timer
WinWaitClose, % "ahk_class " class
SetTimer, CheckForIncomingMessage, Off
}
CheckForIncomingMessage:
; 检测是否有新讯息
ControlGetText, message, Edit1, ahk_class %class%, % "ahk_class " class
; 如果有新讯息,按下 Enter 键发送预先设定的讯息内容
if (message != "") {
SendInput, Your_Predefined_Message_Here{Enter}
}
return
这段是我在Chatgpt上询问的结果
不过实测后并没有成功
WinWait, Line ; 可根据 Line 聊天视窗的标题进行设置
将这行的Line 改成对方名字(视窗名) 也没有成功
请问哪里还需要修改呢
作者: esouxcon   2024-03-14 21:22:00
我的想法啦 先都不要开启聊天视窗 用PixelSearch每隔几秒去搜寻系统列的未读"N"的红色图示 当搜寻成功 点开Line 然后搜寻右边的未读绿色圈圈图示 搜寻成功 点开该聊天视窗 比对标题 看是不是你要的那几个群组 是的话Send你要输入的讯息 否的话 Esc关掉 缺点是 不是要自动回复的聊天视窗 也会变已读 大概这样吧

Links booklink

Contact Us: admin [ a t ] ucptt.com