stevex's stuff
Some code, some writing about code. Some writing not about code.
        

Syndicache, an RSS service and class library

This is the first of two or three pieces of code I've been working on to read RSS.  Everyone's written a blogging tool, it seems, but I wanted something I couldn't find anywhere else when I started this project (and I'm not sure there exists something good today):  An RSS reader that worked in my web browser.

The reason I wanted this is that I read my RSS from more than one place:  The laptop somewhere in the house, at my main PC, at work, etc., and having a typical Win32 client application as my reader just wasn't cutting it.

Radio has an RSS aggregator page, but I found it didn't really give me any tools for managing a large amount of subscriptions, and it hasn't really been updated since I started using Radio (well, no updates that affect this).  So I started Syndicache.

What I've posted so far is two pieces:

    • RssObjects - some classes that understand RSS and can take a RSS link and retrieve the feed, parse it, and update an SQL Server (or MSDE, more likely) database with any new items found since the last scan.
    • RssService - A Win32 service that drives the RssObjects library, so that my feeds are regularly updated.

I've had this running for months now, and I have a database with over 4000 items in it, from the 40 or so feeds I have subscribed to.  It determines whether an item is "new" or not by hashing some of the item's fields including the description and item link, so generally I don't get duplicates - it will be nice once an RSS method of retrieving only new items is standard.

You can download the code here:  Syndicache.zip.  It's all C# code, and I didn't include binaries so if you don't have a compiler (and know how to use it) you should wait until this is a little farther along. Currently I think it's a pretty good example of how to retrieve RSS and parse it, and it might be a good starting point for anyone else writing an aggregator.

 



© Copyright 2003 Steve Tibbett. Click here to send an email to the editor of this weblog.
Last update: 24/07/2003; 1:05:11 AM.