Preliminary RSS plug-in
commita7782c138ec40b4f2253d30d53bbbaaa6b7d3206
authorAllan Odgaard <nee1lnl02@sneakemail.com>
Wed, 4 Jul 2007 10:36:19 +0000 (4 12:36 +0200)
committerAllan Odgaard <nee1lnl02@sneakemail.com>
Wed, 4 Jul 2007 10:37:39 +0000 (4 12:37 +0200)
treee3d47921fd091d21f4c04c4491cd4cfb5f2c44ad
parentd22da938f8fb6665ac9a00ceb6642f04b4d7afee
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.
plugins/feed.rb [new file with mode: 0755]