Я делаю IRC-бот на python для вызова хакциссита (программа 8).Вот выдержка из кода подключения:
def ping():
ircsock.send("PONG :Pong\n")
ircsock.connect((server,6667))
ircsock.send("USER "+botnick+" "+server+" "+botnick+" :"+version+"\n")
ircsock.send("NICK "+botnick+"\n")
while(connect):
ircmsg = ircsock.recv(2048)
ircmsg = ircmsg.strip('\n\r')
print(ircmsg)
if(ircmsg.find("PING :") != -1):
ping()
Я не думаю, что с этим что-то не так.Все переменные определены и имеют значение, этот код работает без проблем на некоторых серверах (например, freenode).Но на других серверах (foonetic, hackthissite) я получаю следующий вывод:
:hub.irc.hackthissite.org NOTICE AUTH :*** Looking up your hostname...
:hub.irc.hackthissite.org NOTICE AUTH :*** Found your hostname
PING :3C8E9173
:3C8E9173!nospoof@hub.irc.hackthissite.org PRIVMSG Tadbot :VERSION
Я не уверен, что с этим делать.Я попытался отправить обратно версию своего бота на имя пользователя между ":" и "!", Что (как и ожидалось) ничего не сделало.На серверах, где это происходит, я никогда не получаю свой MOTD, поэтому я получаю сообщение об ошибке «Вы не зарегистрированы», когда я пытаюсь что-либо сделать.
Google дал некоторые результаты людей, объясняющих подобные проблемы, но это всегдабудь то, что они забыли прислать своего ПОЛЬЗОВАТЕЛЯ и НИК, так что я действительно в недоумении, что делать здесь.