매크로

조회 수 171 추천 0 댓글 0

안녕하세요. 테일스타 여러분들~


지금가지고있는


#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.

#SingleInstance Force

#Persistent

#Warn

SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.

SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

SetTitleMatchMode, 3

CoordMode, ToolTip, Screen

DetectHiddenText, On

DetectHiddenWindows, On


;-- 변수 선언 ----------------------------------------------------------------------------------------------------

global varVer = "몰 도우미 for Kakao v1.0.2"

global varOnoff := 0

global varStatus1, varStatus2, varStatus3

global varWorking

global varAway

global varHome

global varNTF

global var5min

global varEdit


;=================================================================================================================================

;=================================================================================================================================

start:


IfNotExist, MAssistant.ini

{

IniWrite, 반갑습니다(방긋) 앞서 문의주신 손님께 답변 중이니 잠시만 기다려주세요(방긋), MAssistant.ini, Sample,varWorking

IniWrite, 반갑습니다(방긋) 지금은 부재중이라 상담에 응해드릴 수가 없어요. 제가 다시 연락드릴께요(눈물), MAssistant.ini, Sample,varAway

IniWrite, 고객님(눈물) 상담가능한 시간은 오전 9시부터 오후 6시까지 입니다(눈물) 상담시간에 제가 연락드리겠습니다(눈물), MAssistant.ini, Sample,varHome

}


;-- 현재 상태 ----------------------------------------------------------------------------------------------------

Gui, Add, GroupBox, x12 y10 w90 h140 , 현재 상태


Gui, Add, Radio, x22 y30 w60 h20 gactionStatus vvarStatus1, 상담 중

Gui, Add, Radio, x22 y70 w70 h20 gactionStatus vvarStatus2, 자리 비움

Gui, Add, Radio, x22 y110 w70 h20 gactionStatus vvarStatus3, 퇴근


IniRead, varStatus1 , MAssistant.ini, Status,varStatus1,1

IniRead, varStatus2 , MAssistant.ini, Status,varStatus2,0

IniRead, varStatus3 , MAssistant.ini, Status,varStatus3,0

GuiControl,,varStatus1, %varStatus1%

GuiControl,,varStatus2, %varStatus2%

GuiControl,,varStatus3, %varStatus3%


;-- 에디트 컨트롤 -------------------------------------------------------------------------------------------------

Gui, Add, GroupBox, x112 y10 w210 h140 , 현재 지정된 메시지

Gui, Add, Edit, x122 y30 w190 h110 vvarEdit


IniRead, varWorking , MAssistant.ini, Sample,varWorking

IniRead, varAway , MAssistant.ini, Sample,varAway

IniRead, varHome , MAssistant.ini, Sample,varHome


Gui, Submit, NoHide

If varStatus1 = 1

GuiControl,,varEdit, %varWorking%

else if varStatus2 = 1

GuiControl,,varEdit, %varAway%

else if varStatus3 = 1

GuiControl,,varEdit, %varHome%


;--추가 기능-------------------------------------------------------------------------------------------------------

Gui, Add, GroupBox, x12 y160 w310 h70, 추가 기능 ; group-box


Gui, Add, CheckBox, x22 y180 w290 h20 vvarNTF gactionNTF, 친구에게는 메시지를 전송하지 않습니다. ;varNTF ;~varNotToFriend

Gui, Add, CheckBox, x22 y200 w290 h20 vvar5min gaction5min, 5분 동안 입력이 없으면 자동으로 실행합니다. ;var5min


IniRead, varNTF , MAssistant.ini, Option,varNTF,1

IniRead, var5min , MAssistant.ini, Option,var5min,0

GuiControl,,varNTF, %varNTF%

GuiControl,,var5min, %var5min%


;--버튼 모음-------------------------------------------------------------------------------------------------------

Gui Font, cRed

GuiControl Font, status

Gui, Add, text, x332 y25 w80 h60 center hidden vstatus, 자동 응답 중

Gui, Add, Button, x332 y50 w80 h60 vonoff,On/Off

Gui, Add, Button, x332 y115 w80 h35 vmsgSave, 메시지 저장 ;actionChangeMsg

Gui, Add, Button, x332 y155 w80 h35 vabout, 문의/기부 ;~ display a pop-up

Gui, Add, Button, x332 y195 w80 h35 vquit, 종료`(&Q`) ;~ display a pop-up TBD

Gui, Show, x1 y1 w423 h240, 몰 도우미 for Kakao v1.0


main:


Gui +lastfound

hWnd := WinExist()


DllCall( "RegisterShellHookWindow", UInt,hWnd )

MsgNum := DllCall( "RegisterWindowMessage", Str,"SHELLHOOK" )


inactivity_limit=300 ; measured in seconds

how_often_to_test=10 ; measured in seconds

show_tooltip=1       ; 1=show, anything else means hide


inactivity_limit_ms:=inactivity_limit*1000

how_often_to_test_ms:=how_often_to_test*1000


IfNotExist, %A_ScriptDir%\customers.txt

FileAppend, Mall Assistant v1.0 Customer Log`n,%A_ScriptDir%\customers.txt


settimer, check_active, %how_often_to_test_ms%


return

;=================================================================================================================================

;=================================================================================================================================

ButtonOn/Off:

Critical

Gui, Submit, NoHide

OnMessage(MsgNum, (varOnOff := !varOnOff) ? "ShellMessage" : "")

If varOnoff = 1

{

If GetKeyState("Ctrl", "P") = 0

{

If CheckKakaoLogin()

Intro()

}

If varOnoff = 1

{

GuiControl, show, status

GuiControl, disable, varStatus1

GuiControl, disable, varStatus2

GuiControl, disable, varStatus3

GuiControl, disable, varNTF

GuiControl, disable, var5min

GuiControl, disable, msgSave

GuiControl, disable, about

GuiControl, disable, varEdit

TrayTip,Mall Assistant v1.0, 자동 응답을 시작합니다^^,1

SetTimer, RemoveTrayTip, 1000

}

}

else

{

Outro()

GuiControl, hide, status

GuiControl, enable, varStatus1

GuiControl, enable, varStatus2

GuiControl, enable, varStatus3

GuiControl, enable, varNTF

GuiControl, enable, var5min

GuiControl, enable, msgSave

GuiControl, enable, about

GuiControl, enable, varEdit

}

return


check_active:

if A_TimeIdlePhysical > %inactivity_limit_ms%

{

If varOnoff = 0

{

If var5min = 1

{

ControlClick, On/Off, 몰 도우미 for Kakao v1.0

}

}

}

return


Intro() ;5초 대기 후 시작

{

GuiControl, disable, onoff

Loop, 5

{

tempCnt := 5 - A_Index + 1

TrayTip,Mall Assistant v1.0, %tempCnt%초 뒤 자동 응답을 시작합니다^^,1

SetTimer, RemoveTrayTip, 900

sleep, 970

}

GuiControl, enable, onoff

}


Outro()

{

TrayTip,Mall Assistant v1.0, 자동 응답을 종료합니다^^,1

SetTimer, RemoveTrayTip, 1000

SaveAll()

}


CheckKakaoLogin() ;카카오톡 로그인 상태 확인

{

IfWinExist, 카카오톡

{

WinShow, 카카오톡

WinActivate, 카카오톡

ControlGet, varCKLcontrol, Visible,, Edit2, 카카오톡

If varCKLcontrol{

msgbox, 0x1040, Mall Assistant v1.0,카카오톡에 로그인을 해 주세요 :)

varOnoff := 0

return 0

}

}

else{

varOnoff := 0

msgbox, 0x1040, Mall Assistant v1.0,카카오톡을 먼저 실행 해 주세요 :)

return 0

}

return 1

}



ShellMessage( wParam,lParam ) ;푸시 알림 감지 및 채팅창 열기

{

WinGetTitle, Title, ahk_id %lParam%

If (( wParam = 32774 ) && ( Title = "카카오톡" ))

{

BlockInput, On

Winwait, ahk_class EVA_Window_Dblclk,,0

ControlClick, x1 y1, ahk_class EVA_Window_Dblclk

sleep, 100

If varNTF && DetermineFriend()

return

IfNotExist, %A_ScriptDir%\customers.txt

FileAppend, Mall Assistant v1.0 Customer Log`n,%A_ScriptDir%\customers.txt


WinGet, id, list, ahk_class #32770,,카카오톡

Loop %id%

{

if %id%

{

this_id := id%A_Index%

WinGetTitle, varCTitle, ahk_id %this_id%

varWrite := 1

;--------------중복 여부만을 검사---------------------------------

Loop, read, %A_ScriptDir%\customers.txt

{

If varCTitle = %A_LoopReadLine%

varWrite := 0

}

if varWrite

{

FileAppend, %varCTitle%`n, %A_ScriptDir%\customers.txt

SendKaKaoMessage(varEdit,varCTitle)

}

}

}

}

BlockInput, Off

return

}


DetermineFriend() ;친구여부 판단, 1 : 친구, 0 : 친구아님

{

Winwait, ahk_class EVA_Window_Dblclk,,0

ControlClick, x20 y20, ahk_class EVA_Window_Dblclk


ControlGetPos, varDFnd,,,,EVA_Window1,ahk_class #32770

If varDFnd

{

Send, {ESC}

return 1

}

else

return 0

}


; 사용예시 SendKakaoMessage("Message","Matthew Burrows")

SendKaKaoMessage(Word, Name) ;카톡으로 메시지 보내기

{

Clipboard=%Word%

clipWait

IfWinExist, %Name%

{

PostMessage,0x302,1,0,RichEdit20W1,%Name%

sleep, 120

PostMessage,0x100,0x0D,0,RichEdit20W1,%Name%

}

}


SaveAll() ;설정내용 저장

{

Gui, Submit, nohide

IniWrite, %varStatus1%, MAssistant.ini, Status,varStatus1

IniWrite, %varStatus2%, MAssistant.ini, Status,varStatus2

IniWrite, %varStatus3%, MAssistant.ini, Status,varStatus3

If varStatus1 = 1

IniWrite, %varEdit%, MAssistant.ini, Sample, varWorking

Else if varStatus2 = 1

IniWrite, %varEdit%, MAssistant.ini, Sample, varAway

Else if varStatus3 = 1

IniWrite, %varEdit%, MAssistant.ini, Sample, varHome

IniWrite, %varNTF%, MAssistant.ini, Option,varNTF

IniWrite, %var5min%, MAssistant.ini, Option,var5min

}


actionStatus:

Gui, Submit, NoHide

IniRead, varWorking , MAssistant.ini, Sample,varWorking

IniRead, varAway , MAssistant.ini, Sample,varAway

IniRead, varHome , MAssistant.ini, Sample,varHome


If varStatus1 = 1

GuiControl,,varEdit, %varWorking%

else if varStatus2 = 1

GuiControl,,varEdit, %varAway%

else if varStatus3 = 1

GuiControl,,varEdit, %varHome%

return


actionNTF:

action5min:

Gui, Submit, NoHide

return


Button문의/기부:

Gui,2:Add, Text, x10 y10 w180 h20 , 몰 도우미 for Kakao v1.0.2

Gui,2:Add, Text, x10 y60 w310 h50 , 비영리 목적으로 제작되었지만 피드백(feedback)과`n도네이션(donation)은 언제든지 감사히 받겠습니다.`n모든 문의는 아래 링크된 Guestbook을 통해 남겨주시면 되겠습니다.

Gui,2:Add, Button, x220 y160 w100 h30 gactionOK, 확인

Gui,2:Add, Link, x10 y120 w310 h20 , <a href="http://rahs.tistory.com/guestbook">문제 보고 및 개선/개발 건의</a>

Gui,2:Add, Link, x10 y140 w310 h20 , <a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=5P49F5SDKSQVG">기부/격려=$1/추가 개발 독촉</a>

Gui,2:Add, Text, x10 y30 w310 h20 , [Developed for KakaoTalk PC ver. 2.0.4.777]

; Generated using SmartGUI Creator for SciTE

Gui,2:Show, w330 h200, About MA v1.0.2

return

ExitApp


actionOK:

Gui,2:Destroy

return


Button메시지저장:

SaveAll()

return


Button종료(Q):

GuiClose:

Outro()

SaveAll()

ExitApp


RemoveToolTip:

SetTimer, RemoveToolTip, Off

ToolTip

return


RemoveTrayTip:

SetTimer, RemoveTrayTip, Off

TrayTip

return


이소스가 카톡이오면 비활성으로 톡으로보내는건대~ 톡보내기전 그앞에 친구추가 버튼도 클릭하고싶거든요~ 그렇게할려면 어떻게해야할가요ㅜㅜ



List of Articles
분류 제목 글쓴이 최근변경 추천
자유 외부 커뮤니티로의 유입 광고 글에 대해 피카부 2023.10.19 0/0
자유 글이 베스트로 이동될 시 권한 부여 피카부 2021.06.07 0/0
자유 추천 금지를 권유/유도하는 행위는 제재 됩니다 피카부 2020.01.15 0/0
자유 이메일로 공유 요청하는 계정 제재 피카부 2018.09.14 0/0
자유 이곳은 매크로 장터가 아닙니다. 구매/판매 글 제재 피카부 2019.02.19 0/0
자유 운영 방해 목적의 매크로 관련 글 제재 피카부 2019.09.03 0/0
자유 테일스타 회원 레벨 정보 이용하기 피카부 2022.02.17 0/0
자유 외부 유료 매크로의 추천 유도 및 광고 추천 제재 피카부 2018.04.25 0/0
자유 매크로는 [공유] 분류를 지정해주세요 피카부 2022.02.17 0/0
질문 (KON)(클래시오브클랜)안드로이드,IOS(아이폰 or 아이... farogr 2016.08.04 0/-1
자유 힘들게 돌리고있습니다. 5 카카오툭틱 2023.07.26 0/0
질문 히트히트로 사용중인데요,.... 5 lollpp 2016.01.30 1/0
자유 히트패드를 받고싶은데 다룬로드 1 켄자드 2016.03.04 0/0
질문 히트컨트롤 결장에서 평타 못치나요?? 2 웰시꼬기 2016.11.26 0/0
자유 히트메크로 진짜 대박이네요.. 19 ssoks 2016.04.21 0/0
질문 히트매크로 요즘어떤거쓰시나요 5 niccel 2016.12.11 0/0
질문 히트매크로 사용하시는분들 1 dkdh3 2016.11.25 0/0
질문 히트로매크로 없어지고 21 제제안당함 2016.12.12 0/0
질문 히트로매크로 관련 오류사항 2가지만 말씀드리겠습니다. 3 쒜트리 2016.02.14 0/0
질문 히트로를 사용중인데 모두 잘 구동하나 모험포인트 구... 4 스컹컹 2016.01.29 0/0
질문 히트로 스킬캡쳐관련 질문드립니다. 갓파더 2016.02.14 0/0
질문 히트로 사용하시는분 장비판매가.. 1 동네차칸형 2016.02.14 0/0
자유 히트로 매크로.... 3 으뜸훈 2016.02.04 0/0
질문 히트로 매크로 사용법줌 알려주세요~ 39 악동사신 2017.07.22 2/0
자유 히트로 매크로 문제점. 8 멜트다운 2016.06.24 0/0
자유 히트로 매크로 < UI 디자인? > 36 파더 2016.02.18 1/0
질문 히트로 매크로 1.3버전 왜 강화가 안될까요? 9 아쿠아마린v 2016.07.10 0/0
자유 히트로 매크로 0.4 버전 (12-18) 5 파더 2016.01.11 3/0
자유 히트로 매크로 0.3 버전 ( 2차 수정 ) 7 파더 2015.12.19 3/-1
Board Pagination Prev 1 2345678910 ... 513 Next
/ 513

전체 최신 인기글

전체 주간 인기글