C# TwitchBot 不会连接到聊天

C# TwitchBot won't connect to chat

我尝试使用 Visual Studio C# 创建一个简单的 twitchBot,但它不会显示在聊天中。我可以毫无问题地手动连接 mIRC。

我没有收到任何错误消息,所以我很难找出问题所在。 任何想法表示赞赏。

class Program
{
    static void Main(string[] args)
    {
        IrcClient irc = new IrcClient("irc.chat.twitch.tv", 6667, "gruhlumbot", "oauth:g49tpwj1czs200RETAINED");

        irc.joinRoom("gruhlumbot");
        while(true)
        {
            string message = irc.readMessage();
            if (message.Contains("!test"))
            {
                irc.sentChatMessage("response");
            }
        }
    }
}

class IrcClient
{
    private string userName;
    private string channel;

    private TcpClient tcpClient;
    private StreamReader inputStream;
    private StreamWriter outputStream;

    public IrcClient(string ip, int port, string userName, string password)
    {
        this.userName = userName;

        tcpClient = new TcpClient(ip, port);
        inputStream = new StreamReader(tcpClient.GetStream());
        outputStream = new StreamWriter(tcpClient.GetStream());

        outputStream.WriteLine("PASS " + password);
        outputStream.WriteLine("NICK " + userName);
        outputStream.WriteLine("USER " + userName + " 8 * :" + userName);
        outputStream.Flush();
    }

    public void joinRoom(string channel)
    {
        this.channel = channel;
        outputStream.WriteLine("JOIN #" + channel);
        outputStream.Flush();
    }

    public void sentChatMessage(string message)
    {
        sendIrcMessage(":" + userName + "!" + userName + "@" + userName + ".tmi.twitch.tv PRIVMSG #" + channel + " :" + message);
    }

    public string readMessage()
    {
        string message = inputStream.ReadLine();
        return message;
    }

}

可以试试在join命令前加上字符“/”吗?

我记得当我使用 Irc 时,所有命令都在命令前使用“/”字符。

像这样。

outputStream.WriteLine("/JOIN #" + channel);

与我们分享结果。谢谢