Add roster command

This commit is contained in:
Robert Miles 2018-12-02 05:57:43 +00:00
parent cdda8caa8b
commit 08e34bdd94
1 changed files with 7 additions and 1 deletions

8
bot.py
View File

@ -1,4 +1,4 @@
import teambot,tasks,rss,time,sys
import teambot,tasks,rss,time,sys,subprocess
class CosmicBot(teambot.Handler):
def __init__(self,bot):
@ -9,6 +9,7 @@ class CosmicBot(teambot.Handler):
self.tasks.load_state(0)
self.commands = dict()
self.register_command("botlist",self.on_botlist)
self.register_command("roster",self.on_roster)
self.register_command("admin",self.on_admin,True)
def register_command(self,name,action,is_admin=False):
self.commands[name] = dict(action=action,is_admin=is_admin)
@ -46,6 +47,11 @@ class CosmicBot(teambot.Handler):
sys.exit()
elif subcmd=="check":
self.tasks.states[0] = self.check_rss(self.tasks.states[0],self.tasks.base_state)
def on_roster(self,channel,nick,namecnt=""):
output = subprocess.check_output(["/usr/local/bin/roster",namecnt]).decode("ascii").split("\n")
for line in output:
line = re.sub("\s+"," ",line).split()
self.say(channel,"{}: {} (by {})".format(nick,line[1],line[0]))
if __name__=="__main__":
channels = "#cosmic".split()