Ik ben momenteel bezig met een low-level Ircbot om mijn kennis een beetje te oefenen en om te leren. Momenteel gaat hij steeds eerst proberen te connecten, maar dan geeft hij de volgende output:
:sinisalo.freenode.net NOTICE * :*** Looking up your hostname...
:sinisalo.freenode.net NOTICE * :*** Checking Ident
:sinisalo.freenode.net NOTICE * :*** Couldn't look up your hostname
[Errno 10035] Een niet-blokkerende socketbewerking kan niet onmiddellijk worden voltooid
:sinisalo.freenode.net NOTICE * :*** No Ident response
:sinisalo.freenode.net 461 * USER :Not enough parameters
:sinisalo.freenode.net 451 * :You have not registered
[Errno 10035] Een niet-blokkerende socketbewerking kan niet onmiddellijk worden voltooid
Die errno 10035 blijft hij steeds maar printen naar de console
Relevante software en hardware die ik gebruik
Ik heb momenteel de volgende code:
import sys
import time
import socket
server = "irc.freenode.net"
botnick = "Jantje2000_BOT"
channel = "##testit"
commands = {
"Hoi": "Hoi",
"Hoe gaat het" : "Goed, en met jou?"
}
#Establish connection
irc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
irc.connect((server, 6667))
irc.setblocking(False)
irc.send("USER "+botnick+" "+botnick+" :Hello! I am a test bot!\r\n")
irc.send("NICK "+botnick+"\n")
irc.send("JOIN "+channel+"\n")
text = ""
while 1:
time.sleep(0.1)
try:
text=irc.recv(2040)
print text
except Exception, e:
print e
if text.find("PING")!=-1:
irc.send("PONG "+text.split()[1]+"\r\n")
for tell, send in commands.items():
if text.lower().find(tell)!=-1:
irc.send("PRIVMSG "+channel+" "+send+"\r\n")
input()
Ik gebruik overigens python 2.7
Wat ik al gevonden of geprobeerd heb
Ik heb al gezocht op Google en ik lees er veel over op StackOverFlow, maar dat zijn allemaal andere gevallen en ik heb geen idee hoe ik dit dan in dit geval zou kunnen oplossen.
:sinisalo.freenode.net NOTICE * :*** Looking up your hostname...
:sinisalo.freenode.net NOTICE * :*** Checking Ident
:sinisalo.freenode.net NOTICE * :*** Couldn't look up your hostname
[Errno 10035] Een niet-blokkerende socketbewerking kan niet onmiddellijk worden voltooid
:sinisalo.freenode.net NOTICE * :*** No Ident response
:sinisalo.freenode.net 461 * USER :Not enough parameters
:sinisalo.freenode.net 451 * :You have not registered
[Errno 10035] Een niet-blokkerende socketbewerking kan niet onmiddellijk worden voltooid
Die errno 10035 blijft hij steeds maar printen naar de console
Relevante software en hardware die ik gebruik
Ik heb momenteel de volgende code:
import sys
import time
import socket
server = "irc.freenode.net"
botnick = "Jantje2000_BOT"
channel = "##testit"
commands = {
"Hoi": "Hoi",
"Hoe gaat het" : "Goed, en met jou?"
}
#Establish connection
irc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
irc.connect((server, 6667))
irc.setblocking(False)
irc.send("USER "+botnick+" "+botnick+" :Hello! I am a test bot!\r\n")
irc.send("NICK "+botnick+"\n")
irc.send("JOIN "+channel+"\n")
text = ""
while 1:
time.sleep(0.1)
try:
text=irc.recv(2040)
print text
except Exception, e:
print e
if text.find("PING")!=-1:
irc.send("PONG "+text.split()[1]+"\r\n")
for tell, send in commands.items():
if text.lower().find(tell)!=-1:
irc.send("PRIVMSG "+channel+" "+send+"\r\n")
input()
Ik gebruik overigens python 2.7
Wat ik al gevonden of geprobeerd heb
Ik heb al gezocht op Google en ik lees er veel over op StackOverFlow, maar dat zijn allemaal andere gevallen en ik heb geen idee hoe ik dit dan in dit geval zou kunnen oplossen.
De wet van Murphy: Alles wat fout kan gaan zal fout gaan.