IRC: capabilities negociation
This commit is contained in:
parent
028b7fd88d
commit
b63170244a
1 changed files with 5 additions and 0 deletions
|
|
@ -31,6 +31,7 @@ class IRCServer(SocketServer):
|
||||||
self.nick = nick
|
self.nick = nick
|
||||||
self.owner = owner
|
self.owner = owner
|
||||||
self.realname = realname
|
self.realname = realname
|
||||||
|
self.capabilities = list() if not node.hasAttribute("caps") or node["caps"].lower() != "no" else None
|
||||||
self.id = "TODO"
|
self.id = "TODO"
|
||||||
|
|
||||||
def _on_connect():
|
def _on_connect():
|
||||||
|
|
@ -47,8 +48,12 @@ class IRCServer(SocketServer):
|
||||||
if SocketServer._open(self):
|
if SocketServer._open(self):
|
||||||
if self.password is not None:
|
if self.password is not None:
|
||||||
self.write("PASS :" + self.password)
|
self.write("PASS :" + self.password)
|
||||||
|
if self.capabilities is not None:
|
||||||
|
self.write("CAP LS")
|
||||||
self.write("NICK :" + self.nick)
|
self.write("NICK :" + self.nick)
|
||||||
self.write("USER %s %s bla :%s" % (self.nick, self.host, self.realname))
|
self.write("USER %s %s bla :%s" % (self.nick, self.host, self.realname))
|
||||||
|
if self.capabilities is not None:
|
||||||
|
self.write("CAP END")
|
||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue