0

我将如何进行触发(例如!Help),然后机器人会私信给他们一个列表。不是它将打开一个新窗口的消息类型,而是它将显示在频道中但只有他们可以看到它的位置(如果你知道我的意思。)我不知道这些条款,所以任何帮助都会很棒。

4

2 回答 2

1

您正在谈论的消息是使用/msg <User> message命令发送的消息,而不是使用/query. 如此处所述(第2.2 节私人对话):

在 mIRC 中,如果您启动 /MSG,则在其他人响应您之前,您不会得到“查询”窗口。您可以使用 /QUERY 命令从一开始就在您身边设置一个“查询”窗口。

问题是,由于这是特定于客户端的行为,您永远无法确定不是 mIRC 的客户端会以一种或另一种方式行事。

有了这个,编码方面,你最有可能想要使用的是一个 python irc 协议客户端库,它将为你省去处理 IRC 协议管道的麻烦。该特定库为您提供了一个示例 irc bot,这可能是您需要开始的地方。

祝你好运。

于 2013-04-01T05:52:32.617 回答
1

在我看来,您想要的是NOTICE事件,而不是PRIVMSG

PRIVMSG 是指定发送给接收者的文本的事件,其中接收者可以是个人或频道。您要求一条不打开新窗口的私人消息,直接发送给用户的 PRIVMSG 将为他们打开一个新窗口。发送到通道的PRIVMSG 将显示在通道中。

NOTICE 向用户发送不创建新窗口的直接消息。但是,我不鼓励使用它,因为许多客户端处理此类事件的方式不同。

例如;
默认情况下,mIRC 将在当前活动窗口中显示通知。
然而,Irssi 将在状态窗口中显示它们,可能会被忽略。

话虽如此,我不太确定您使用 Python 的目的是什么,您的帖子中没有解释。我只能假设机器人是用 Python 编程的,而您使用的是 mIRC 客户端?

于 2013-04-07T12:01:37.357 回答