如何设置宏以在指定时间在不和谐频道中发送命令?

时间:2019-06-02 19:14:28

标签: autohotkey discord

我正在尝试进行设置,以便可以在AutoHotKey上激活脚本,该脚本将在后台使用我的不和谐应用程序,并每三个小时发送一次指定的消息。最好将三个小时设置为指定的时间,例如12、3、6、9、12等。

我几乎很难理解send命令,但是我确定我还需要有关如何正确使用discord api的信息,因此,给我越多越好。我打算使用chrome网络浏览器来执行此操作,并打开一个带有不和谐网站的标签,这样它就不会干扰我正在做的任何事情,但是我现在认为通过应用程序进行操作将是最好的方法。

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
Send, #
Send, c
Send, h
Send, Enter

尝试此代码时,我得到的只是Windows叮叮声。我对这方面的知识还不够了解,所以再说一次,我能在这里得到的指导越多越好。

1 个答案:

答案 0 :(得分:0)

我建议您通读帮助文档的“入门”部分,以对基础有所了解。
https://www.autohotkey.com/docs/AutoHotkey.htm

查看到目前为止的内容,了解您要发送的内容很重要。这些!^+#中的每一个都充当一次性修改键altctrlshiftwindows-key。如果要将这些字符作为实际字符发送,则需要将它们用大括号括起来,例如Send , {#}。回车键也是如此;如果不使用大括号,它将仅发送字母E,n,t,e和r。此外,您可以将所有发送合并为一个-Send , {#}ch{enter}

要将其设置为每三小时运行一次,您可以使用SetTimer完成此操作。我建议您在help documentation中进行检查,以获取用法和示例。如果您希望它每三个小时运行一次,这很简单;如果您希望它运行在三分之一的小时数内,那么您还必须让它检查时间。这是一个示例,它每小时检查一次当前时间是否可以被三整除。

f1::
GoSub, l_Timer
SetTimer , l_Timer , 3600000 ; 60min/hour x 60sec/min x 1000ms/sec
Return

l_Timer:
If ( Mod( SubStr( A_Now , 9 , 2 ) , 3 ) = 0 )
MsgBox , The current hour is divisible by 3.
Return

请注意,在第一次运行时,计时器必须在激活子程序之前耗尽。您可以像我一样通过添加GoSub , [label]行来使其立即运行。