试图将IRC bot授权给irc.twitch.tv(C ++)

时间:2013-11-15 00:31:24

标签: c++ bots irc twitch

所以我正在尝试制作一个可以使用C ++连接到Twitch.tv IRC服务器的IRC机器人。到目前为止,我已经设法让这个机器人连接到不需要任何密码的IRC服务器,但是我在需要机器人提供密码的部分被绊倒了。所以我现在得到的是:

(连接到服务器)

send(cSock, "USER custom 0 0 <bot_name>\r\n", strlen("USER custom 0 0 <bot_name>\r\n"), NULL);
send(cSock, "PASS <twitch_oauth_token>\r\n", strlen("PASS <twitch_oauth_token>\r\n"), NULL);
send(cSock, "NICK <bot_name>\r\n", strlen("NICK <name>\r\n"), NULL);

(加入频道)

send(cSock, "JOIN #<channel_name>\r\n", strlen("JOIN #<channel_name>\r\n"), NULL);
send(cSock, "PRIVMSG #<channel_name> :Message\r\n", strlen("PRIVMSG #<channel_name> :Message\r\n"), NULL);

机器人会在加入频道时说出一条消息。我已经测试过没有包含PASS的线路的机器人连接到irc.quakenet.org而无需提供身份验证信息,但我希望能够让机器人向irc.twitch.tv提供身份验证信息以便我可以使用它在那里的注册帐户。

我做错了什么?

更新: 没关系......我弄清楚我做错了什么。显然我必须在发送USER或NICK之前发送通行证。在这一点上,一切似乎都正常。

无论如何,谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

你做错了什么?

据推测,服务器正在告诉你。您是否看过它与您的机器人的对话?我假设没有,因为你没有把它贴在这里。

获取对话记录。要么将机器人打印出来,要么使用网络数据包嗅探器,例如tcpdumpWireshark

答案 1 :(得分:0)

您必须在发送用户之前发送oauth密码。  [编辑]看到你更新的地方[/ edit]