chompy-notify
The front page of chompy.net is powered by chompy-notify, a custom suite of programs written by SNF Labs to aggregate weblog feeds, linklog feeds, and Flickr photos.
chompy-notify was originally written as an implementation of the Weblogs.com XML-RPC interface. This interface is used by some content management systems (notably, Movable Type) to send notifications when new weblog entries are created. Besides receiving notifications, chompy-notify goes beyond this by fetching summary info from the weblog's RSS or Atom feed. For sites that don't suport the Weblogs.com XML-RPC interface, chompy-notify polls for their feeds like a conventional feed aggregator. As of 2006, the pings interface of chompy-notify is nonfunctional, and only the feed fetching feature is now used.
Further information, including bugs and planned features, can be found on the SNF Labs wiki entry for chompy.
huh?
You know how the chompy.net home page lists every update to SNF-affiliated weblogs? This is the thing that does that.
using chompy-notify
You don't have to do anything to use chompy-notify. If your weblog is on its list, then your updates will automatically be included on the chompy.net front page.
Prior to 2006, you could optionally ping chompy-notify so that it would update chompy.net the moment you published a new entry.
pinging chompy-notify (deprecated)
Your site must be configured to ping the following URL:
http://www.chompy.net/notify/xmlrpc.cgi
Only pings from approved weblogs are accepted by the system. (Email me if you want to be on the list. I will add you if I know you.)
In Movable Type 2.5 and up, this is done by adding the URL to the "Others" text box under the "Publicity" section of the Preferences page. Refer to the screenshot above. Or, if you like, here it is, step by step:
- From the main menu of your weblog, click on "Weblog Config."
- Click on "Preferences."
- Click on "Publicity / Remote Interfaces / TrackBack."
- In the text box marked "Others," paste in this URL: http://www.chompy.net/notify/xmlrpc.cgi
- Scroll down and click on the "Save" button.
You can then update your weblog as you normally would, and it will automatically ping chompy.net when you first save a new entry.
customizing the appearance of your entries
The post excerpt that appears on the front page of chompy.net is pulled from your feed's <description> or <summary> element. In Movable Type, this field is automatically generated as an excerpt from your entry, but you can customize this by typing a summary into the "Excerpt" field of the post creation page.
Blosxom users can obtain similar results by using Sam Ruby's Blosxom excerpts plugin.
Your excerpt/summary will be truncated at approximately ninety words, so keep it pithy.
how can I ping chompy if I'm not using Movable Type?
I hope to write a ping plugin for Textpattern users one of these days. Meanwhile, chompy can also poll for sites that are unable to ping it, so as long as your site has an RSS or Atom feed, it will work with chompy. Simply ask me to add your site to the list of sites that chompy checks.
If you are using Blosxom, you can try the experimental ping_chompy plugin. It mostly works.
news
2005/10/10
The main chompy.net code has been thoroughly updated to support a new front page format. The ping notification feature seems to be broken right now.2005/02/13
Added bandwidth-friendly HTTP ETag support as outlined in the previous entry. I think that completes my work on chompy-notify, barring the discovery of any bugs. I could merge the two scripts that grab weblogs and linklogs, and maybe clean up the XML text sanitization code, but that's really it.
2005/01/12
Began the first steps of moving chompy-notify to a more conventional feed polling model, which should be much simpler and easier to maintain. Now a periodic script grabs every feed and builds a static updates page. XML-RPC pings will still work -- they now manually trigger rebuilds -- but are not necessary. Also fixed a longstanding bug in which UnicodeErrors would cause the entire script to fail, but only if invoked via XML-RPC.
The new code doesn't honor HTTP caching, so next I need to save each feed's ETag/whatever and then pickle the feed data to a file. If the feed has been updated, grab the feed and pickle a new copy, else use the old saved feed data to rebuild the page.
thanks
chompy-notify makes use of Mark Pilgrim's excellent Feed Parser script, which is the reason why I learned Python.