在频道中提问后
await channel.SendMessageAsync("question?");
我该如何等待某个回复? (例如,是,否) 我试过了
string input;
bool done = false;
while(!done)
{
input = channel.GetMessageAsync(channel.Id).ToString();
if (String.Compare(input, "yes") == 0)
{
//code here
done = true;
}
else if (String.Compare(input, "no") == 0)
{
//code here
done = true;
}
}
但它似乎无法发挥作用。
答案 0 :(得分:0)
input = channel.GetMessageAsync(channel.Id).ToString();
没有任何意义。 GetMessageAsync()
希望您提供messageID而不是频道ID。
现在您还不知道尚未发送的消息中的ID,因此,消息的循环可能会或可能永远不会循环到无穷大。我建议你在消息/命令处理程序中处理它。
在这里,您可以跟踪列表,其中包含触发您的初始命令的人。之后,您可以检查他们的消息是否包含是/否或甚至是其他所有内容。