我觉得这是显而易见的,但我一直在寻找,就是找不到答案。
我正在编程一个'bot'连接到我的twitch频道的聊天。我想跟踪用户连续观看的流的数量。我有一个命令,我在每个流开始时输入,表示一个新的流已经开始,因此,加入的用户应该增加他们连续观看的流的数量。
我目前使用JOIN事件来增加用户连续流计数,但是如果有人在流开始之前坐在聊天中,他们不会得到信用,因为JOIN事件发生在新流开始的标志之前。
有没有办法获得聊天中当前$nick的列表?如果是这样,我可以在启动流并更新已经在聊天中的用户时将其挂接到命令中。
您可以使用$nick(#,N)
检索通道中的用户数量,其中#是您的通道的名称,N是一个数字。
您应该首先使用$nick(#mychannel,0)来获取通道中的用户总数,然后您可以使用$nick(#,N)在用户列表中循环该数字。
例如,您执行//echo $nick(#mychannel,0)
,它将显示10。当您使用$nick(#mychannel,1)
时,它将返回用户列表中的第一个用户。
简单代码示例:
alias getusers {
var %users = $nick($1,0), %n = 1
while (%n <= %users) {
; print all users in the channel
echo -ag $nick($1,%n)
; you can put your code here
inc %n
}
}
在通道中输入/getusers #channelname获取所有用户的列表。
如果你需要更多的帮助就告诉我。