From dea7fb4dd9fd3313a2d0798f2a8901daea4ebab2 Mon Sep 17 00:00:00 2001 From: Thierry Carrez Date: Fri, 4 Aug 2017 15:53:45 +0200 Subject: [PATCH] Move admin commands from ! to ~ Due to an unfortunate bot command character collision, move admin commands from ! to ~. Take the opportunity to properly document them. Change-Id: Ida77e6262e6da9dade64e6ff9ebca1e41b291b30 --- README.rst | 46 +++++++++++++++++++++++++++++++++++++++------- ptgbot/bot.py | 2 +- 2 files changed, 40 insertions(+), 8 deletions(-) diff --git a/README.rst b/README.rst index f3c6f58..21dfb02 100644 --- a/README.rst +++ b/README.rst @@ -3,14 +3,25 @@ OpenStack PTG Bot ================= ptgbot is the bot that PTG room moderators use to surface what's -currently happening at the event. Commands follow the following format:: +currently happening at the event. Room operators send messages to +the bot, like:: + + #swift now discussing ring balancing + +and from that information the bot builds a static webpage with discussion +topics currently discussed ("now") and an indicative set of discussion +topics coming up next ("next"). It also merges information from the +reservable rooms ethercalc in order to produce a single, static, +mobile-friendly page. + +Room operators commands +======================= + +You have to have voice in the channel (+v) to send commands to the ptgbot. +Commands follow the following format:: #ROOMNAME [now|next] TOPIC -From that information the bot builds a static webpage with discussion -topics currently discussed ("now") and an indicative set of discussion -topics coming up next ("next"). - Please note that: * There can only be one "now" topic at a time. If multiple topics are @@ -31,8 +42,29 @@ Example:: #swift next at 3pm we plan to cover cold storage features -Testing -======= +Admin commands +============== + +You have to ve a channel operator (+o) to use admin commands. + +~list + List available room names + +~add ROOM [ROOM..] + Add new room name(s) + +~del ROOM [ROOM..] + Deletes room name(s) + +~clean ROOM [ROOM..] + Removes active entries for specified room(s) + +~wipe + Resets the database entirely (removes all defined rooms and entries) + + +Local testing +============= Copy config.json.sample to config.json:: diff --git a/ptgbot/bot.py b/ptgbot/bot.py index c460cbf..9b57c2f 100644 --- a/ptgbot/bot.py +++ b/ptgbot/bot.py @@ -137,7 +137,7 @@ class PTGBot(irc.bot.SingleServerIRCBot): return self.send(chan, "%s: ack" % (nick,)) - if msg.startswith('!'): + if msg.startswith('~'): if not self.channels[chan].is_oper(nick): self.send(chan, "%s: Need op for admin commands" % (nick,)) return