I've been working on a Pingback client for my blog. Most of the XML-RPC posts I've sent have come back with a fault. I've sent one successfully (By 'Successfully', I mean where I also see it actually show up in the comments.. Sorry; that test was on this thread), but due to moderation time I have no clue what string I actually sent to the Pingback server. Maybe the C9 admins record that and could send it back to me?
I've tried different variations of HtmlEncoding, escaping, etc.
Here are some examples of FAILED requests and the responses I've gotten:
Pingback URL:
http://channel9.msdn.com/413392/pingback.aspx
Method Call:
<?xml version="1.0"?> <methodCall> <methodName>pingback.ping</methodName> <params> <param> <value><string>http://www.zi255.com/?Req=Post&PID=496</string></value> </param> <param> <value><string>http://channel9.msdn.com/forums/TechOff/413392-IIS-ASPNET-Allowing-HTTP-POST/</string></value> </param> </params> </methodCall>
Response:
<?xml version="1.0" encoding="utf-8"?> <methodResponse> <fault> <value> <struct> <member> <name>faultCode</name> <value> <int>0</int> </value> </member> <member> <name>faultString</name> <value> <string>EntryID is invalid or missing</string> </value> </member> </struct> </value> </fault> </methodResponse>
Pingback URL:
http://home.officesnapshots.com/xmlrpc.php
Method Call:
<?xml version="1.0"?> <methodCall> <methodName>pingback.ping</methodName> <params> <param> <value><string>http://www.zi255.com/?Req=Post&PID=421</string></value> </param> <param> <value><string>http://home.officesnapshots.com/</string></value> </param> </params> </methodCall>
Response:
<?xml version="1.0"?> <methodResponse> <fault> <value> <struct> <member> <name>faultCode</name> <value><int>33</int></value> </member> <member> <name>faultString</name> <value><string>The specified target URL cannot be used as a target. It either doesn't exist, or it is not a pingback-enabled resource.</string></value> </member> </struct> </value> </fault> </methodResponse>
Pingback URL:
http://chris.pirillo.com/xmlrpc.php
Method Call:
<?xml version="1.0"?> <methodCall> <methodName>pingback.ping</methodName> <params> <param> <value><string>http://www.zi255.com/?Req=Post&PID=499</string></value> </param> <param> <value><string>http://chris.pirillo.com/2008/06/09/have-you-ever-been-to-a-lan-party/</string></value> </param> </params> </methodCall>
Response:
<?xml version="1.0"?> <methodResponse> <params> <param> <value> <string>Pingback from http://www.zi255.com/?Req=Post&amp;PID=499 to http://chris.pirillo.com/2008/06/09/have-you-ever-been-to-a-lan-party/ registered. Keep the web talking!
</string> </value> </param> </params> </methodResponse>
Pingback URL:
http://scobleizer.com/xmlrpc.php
Method call:
<?xml version="1.0"?> <methodCall> <methodName>pingback.ping</methodName> <params> <param> <value><string>http://www.zi255.com/?Req=Post&PID=197</string></value> </param> <param> <value><string>http://www.scobleizer.com</string></value> </param> </params> </methodCall>
Response:
<?xml version="1.0"?> <methodResponse> <fault> <value> <struct> <member> <name>faultCode</name> <value><int>33</int></value> </member> <member> <name>faultString</name> <value><string>The specified target URL cannot be used as a target. It either doesn't exist, or it is not a pingback-enabled resource.</string></value> </member> </struct> </value> </fault> </methodResponse>