Twitch.TV Moderator Bot (2 / 8 steg)
Steg 2: Skriv nätverksfunktioner
Twitch använder IRC som dess chatt protokoll, vilket gör mesta kommunikationen trivial. Fortfarande, koden kommer att hamna mycket renare om vi definierar vissa nyttofunktioner först.
Vi använder sockets som nätverket uttag för denna bot. Uttag ger ett mycket klart skicka och mottagning gränssnitt för nätverkskommunikation, så att dessa funktioner inte kommer att vara mycket komplicerat.
Jag har förutsatt docstrings i enlighet med PEP 257 som ger kort förklaring av funktioner.
# bot.py
def chat (strumpa, msg):
"""
Skicka ett chat-meddelande till servern.
Nyckelordet argument:
strumpa--uttaget som meddelandet ska skickas
MSG--meddelandet som ska skickas
"""
Sock.send ("PRIVMSG # {} :{}".format (cfg. CHAN, msg))
def förbud (strumpa, användare):
"""
Förbjuda en användare från den aktuella kanalen.
Nyckelordet argument:
strumpa--uttaget som att skicka kommandot förbud
användare--användaren att förbjudas
"""
chatt (strumpa, "{.ban}".format(user))
def timeout (strumpa, användare, SEK = 600):
"""
Time out en användare för en viss tid.
Nyckelordet argument:
strumpa--uttaget som att skicka kommandot timeout
användare--användaren att vara timeout
SEK--längden på timeout i sekunder (standard 600)
"""
chatt (strumpa, "{.timeout}".format (användare, SEK))