Preliminary RSS plug-in
Some warnings/notes/TODOs:
1. You MUST create the data/feed directory manually before activating this plug-in. IMO the file_name() method implemented by PluginBase should ensure that the directory exists.
2. Ruby’s RSS parser is used, this has a problem with http://slashdot.org/slashdot.rdf and non-RSS feeds (atom)
3. Subscribe is unimplemented, so edit the YAML or the plug-in source (the default list)
4. Since the plug-in runs in a thread, but needs the IRC object (to send text to the channel) it won’t start this thread before it has that object (which it gets when receiving the first message from the channel)
5. All feeds are checked every half hour, preferably it should distribute the load throughout the period.
6. All unread messages are posted when seen. Probably it should limit itself to 1-2 per feed.
7. Some feeds contain HTML and the conversion to text is very naive and is not decoding all entities.
8. The http handling could be improved. Presently it follows 3 known redirects but uses the etag stored for the final URI as the etag for all requests prior to the final one. It doesn’t update the URI for permanent redirects.