d9d7753ee1
Add a refresh timestamp, and generate the page at startup (to pick up recent ethercalc changes). Change-Id: I1fec2e29cabf434e0aa4466d426ce7f1777198b4 |
||
---|---|---|
html | ||
ptgbot | ||
.gitignore | ||
.gitreview | ||
LICENSE | ||
README.rst | ||
config.json.sample | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
README.rst
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:
#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 discussed at the same time in various corners of the room, they should all be specified in a single "now" command.
- In order to ensure that information is current, entering a "now" command wipes out any "next" entry for the same room. You might want to refresh those after entering a "now" topic.
Example:
#swift now discussing ring placement
#swift next at 2pm we plan to discuss #glance support
#swift next around 3pm we plan to cover cold storage features
...
#swift now discussing #glance support, come over!
#swift next at 3pm we plan to cover cold storage features
Testing
Copy config.json.sample to config.json:
cp config.json.sample config.json
Edit config.json contents, for example:
{
"irc_nick": "ptgbot",
"irc_server": "irc.freenode.net",
"irc_port": 6667,
"irc_channel": "#testptg",
"db_filename": "html/ptg.json",
}
In one terminal, run the bot:
tox -evenv -- ptgbot -d config.json
Join that channel and give a command to the bot:
#swift now discussing ring placement
(note, the bot currently only takes commands from Freenode identified users)
In another terminal, start the webserver:
cd html && python -m SimpleHTTPServer
Open the web page in a web browser: http://127.0.0.1:8000/ptg.html