Simon Carstensen: BlogPing is a Web application that tracks changes to weblogs and other news-driven websites through an XML-RPC interface and forwards the ping to a number of web services. A non-propietary weblog-ping service
Cool. This is an RFC, and I do have comments. None of which will be any surprise to regular readers here.
If you look at the original simple weblog ping interface, there are two parameters. blo.gs adds two more. Your proposed interface now has 7 parameters.
My suggestion to all: if you are going to design an interface to be used by others, start by making it exensible. Start with namespaces and named parameter associations.
Now, take a close look at the first 6 out of 7 parameters in the RFC. These are straight out of the RSS spec. Why not simply POST the RSS, possibly with an envelope?
Suppose you have a parameter that you want to pass that RSS doesn't currently support? That's what namespaces are for.
We seem to be getting more and more "standards" for weblog pings and more and more meta-weblog tracking sites that either accept a standard or are trying to create their own. What would be really cool is:-
1) There was a single widely implemented standard. I envisage REST, XMLRPC and SOAP variants of the same extremely simple protocol to say "I've changed. Please index me". We could do worse than just use the current weblogs.com API.
2) Someone ran a "fan-out" server. It would respond to 1) really quickly. And then in the background it would fan out the ping to a long list of other Meta-Weblog sites. As a site developer, I would then only have to make a single synchronous ping to hit the whole range of search engines and meta sites.
And I can imagine that Google (and other search engines) could be involved somewhere in this. Probably as one of the primary sites. This would let them index the change almost immediately and lead to a radical improvement in the timeliness of their index. I doubt if they or any of the commercial sites would be prepared to run the fan out server. But I can imagine them all wanting to be clients.
julian, http://blo.gs/ already acts as a fan-out server. (heck, the code is even available. i won't claim it is particularly elegant, but it works.)
i wish i had the energy to code up all the great ideas being generated. but i've got a real job to take care of, and a back that is driving me crazy.
Julian,
Before James had to go and spoil my fun by saying blo.gs had
already done this, I hacked together one of these "fan-out"
servers.
See http://www.openweblog.info/archive/80614165 for more info.
Not to worry, there's still fun to be had - what Jim meant was that blo.gs offers information about the pings it receives to others. I know that weblogs.com doesn't take up that offer, and I don't think that blogrolling.com does either. So we still need to ping them all.
Don't suppose you had so much fun writing that version that you would like to mod it to accept XML-RPC pings? MT only sends XML-RPC, not SOAP, so if I want to skip sitting around watching while all three pings go through, I'll need one that takes one XML-RPC ping and fans it out to all three. Oh, and to be able to let my friends using Free Blogger ping all three, it would also need to accept a GET with the blog name and URL in the query string, so they could just bookmark the response page and hit that when they update. Plenty of fun left!
Post RSS to an arbitrary URL as a result of adding a new post? Hackable enough, but not very distributable (most MT users aren't that fond of hacking away at the source, for some odd reason).
No matter what you want to do as the result of adding a new post, it'll be vastly easier to do it in a script that's triggered by receiving a weblogUpdates XML-RPC ping, since that's just a matter of pasting a URL into a textarea. You could make it MT-ish by creating an MT::Blog object and loading the latest entry, but why bother? A little autodiscovery and you can just grab it out of the RSS file already processed, with the bonus feature of working for b2, or Radio with Simon's blogping.root, or anything else that can direct where its pings go and does autodiscovery.
A good Python programmer ought to be able to get a weblogUpdates.ping, autodiscover RSS from the blog URL, get the latest item from the feed, and POST it to anyone who wants it in ten minutes or less, so it shouldn't take me more than three weeks to knock out. (bats eyes, looks fetchingly helpless)
I've put the ping proxy up.
See http://www.openweblog.info/archive/80614168 and
http://www.openweblog.info/ping
--
You are a mystery as deep as the sea; the more I search, the more
I find, and the more I find the more I search for you.
-- St. Catherine of Siena