bot6/util.py

34 lines
861 B
Python
Raw Normal View History

2021-09-16 17:35:06 +00:00
import irctokens
2021-10-04 12:48:10 +00:00
2021-09-16 17:35:06 +00:00
class Util:
2021-10-04 12:48:10 +00:00
def __init__(self, config, sock):
self.sock = sock
self.config = config
self.target = ""
def send(self, raw: str):
2021-09-16 17:35:06 +00:00
print(f"> {raw}")
self.sock.sendall(f"{raw}\r\n".encode("utf8"))
2021-10-04 12:48:10 +00:00
def quit(self, msg=None):
if msg != None:
self.send("QUIT :" + msg)
else:
self.send("QUIT")
def nick(self, nick=None):
if nick == None:
self.send("NICK " + self.config.self.nick)
else:
self.send("NICK " + nick)
def mesg(self, msg: str, t=None):
if t == None:
t = self.target
msg = str(msg).partition("\n")[0]
if len(msg) >= 900:
msg = msg[:900]
self.mesg("message too long!")
2021-10-04 12:48:10 +00:00
self.send(irctokens.build("PRIVMSG", [t, str(msg)]).format())