The Wayback Machine - http://web.archive.org/web/20060105013920/http://developers.technorati.com:80/wiki/pingConfigurations

> pingConfigurations

How to add the Update and Notification Service into your weblog configuration

See also the PingSampleCode page for code samples.

  1. How to add the Update and Notification Service into your weblog configuration
    1. XML-RPC format
    2. Movable Type
    3. boastMachine
    4. Blogger
    5. blosxom
    6. DasBlog
    7. b2
    8. Radio UserLand
    9. Manila
    10. pMachine
    11. Expression Engine
    12. TypePad
    13. Drupal
    14. Nucleus
    15. WordPress 1.0.1
    16. WordPress 1.2
    17. Requests
    18. Pivot
    19. Not possible with recent version
    20. Generic PHP client
    21. Dada Mail
    22. Makeshift Online
    23. ThinkJot

XML-RPC format

If you're constructing your own XML-RPC pinger, your XML-RPC message should look like this:

POST /rpc/ping HTTP/1.0
User-Agent: YOUR AGENT HERE
Host: rpc.technorati.com
Content-Type: text/xml
Content-length: 250

<?xml version="1.0"?>
<methodCall>
   <methodName>weblogUpdates.ping</methodName>
      <params>
         <param>
            <value>YOUR WEBLOG NAME HERE</value>
         </param>
      <param>
         <value>http://www.YOURWEBLOGURL.com/</value>
      </param>
   </params>
</methodCall>

JimWinstead: it should be specified how non-US-ASCII characters are handled. As an example, how this is handled by the ping service for http://blo.gs/ is specified at http://blo.gs/ping-example.php

KevinMarks: a reasonable point Jim, but in practice we use the title from the blog itself rather than what is sent here. XML itself defines how encoding is handled in some detail.

Movable Type

When you update your blog, Movable Type will automatically notify the selected sites.

Under "Others: (separate URLs with a carriage return)", enter the following in the box:

http://rpc.technorati.com/rpc/ping

That's it! From now on, whenever you add or update your blog, Moveable Type will automatically let Technorati know, and we'll put it in our high priority queue for faster indexing.

boastMachine

boastMachine, starting from v3.0 has the ping functionality built in. To Ping Tecnorati every time you update your weblog, just follow these steps.
  1. Login to your blog ( you need to have admin privilages )

  2. Click on the "Admin" link in your account page

  3. Once in the admin area, click on "Settings"

  4. Click on "Misc settings" on the settings page

  5. Scroll down until you see the "Hosts to be pinged (XML-RPC method)" option

  6. Add a new line to the textbox and add the url http://rpc.technorati.com/rpc/ping

  7. Click on the "Save settings" button

Thats all ! [WWW]boastMachine will now automatically ping Technorati every time you update your weblog!

Contributed: [WWW]Kailash Nadh

Blogger

Just make sure that your weblog is listed as a "public" weblog. To do this:
  1. Log into your blogger account

  2. Select your weblog

  3. Click on "Settings"

  4. Select "Yes" to the "Public Blog?" question

  5. Click on "Save Changes"

That's it! Just edit your blog as usual, and Technorati will index your blog within minutes of posting.

blosxom

DasBlog

Contributed: [WWW]Peter Samwel has modified the v1.7.5016.0 codebase to add configurable Technorati ping. [WWW]Download source modifications

[WWW]Instructions:

  1. Backup your existing codebase. If you use source control � even better!

  2. Unzip the file into a temporary location.

  3. The site.config file is included in the patch, however the only line that needs to be added is: <notifytechnorati>true</notifytechnorati>, so if you don�t want to have to re-add all your specific site settings, I suggest removing the site.config and only adding this line.

  4. Copy the �dasBlog 1.7 Source" folder (or just contents of this folder if you have your root named differently).

  5. Open the dasBlog source solution & recompile.

b2

function pingTechnorati($blog_ID = 1) {
   global $use_technoratiping, $blogname,$siteurl,$blogfilename;

   if ((!(($blogname=="my weblog") && ($siteurl=="http://example.com") && ($blogfilename=="b2.php"))) &&
(!preg_match("/localhost\//",$siteurl)) && ($use_technoratiping))
   {
      $client = new xmlrpc_client("/rpc/ping", "rpc.technorati.com", 80);
      $message = new xmlrpcmsg("weblogUpdates.ping", array(new xmlrpcval($blogname),
                                                           new xmlrpcval($siteurl."/")));
      $result = $client->send($message);
      if (!$result || $result->faultCode())
         return(false);

      return(true);
   }
   else
      return(false);
}
   $use_technoratiping = 1;
   pingWeblogs($blog_ID);
   pingCafelog($cafelogID, $post_title, $post_ID);
   pingBlogs($blog_ID);
   pingTechnorati($blog_ID); /* <--- ADD THIS LINE   */

Contributed: [WWW]bluviolin (On [WWW]this page I've posted the same instructions in Italian).

Radio UserLand

Manila

pMachine

This will work for pMachine 2.3.

Add the following to pm/xmlrpc/ping.fns.php as a new function:

// PING TECHNORATI

function ping_technorati($weblog) {

} // END

Then add the following to pm/language/english/main.php at approx line 222:

$L_WEBLOG['467'] = "Unable to ping Technorati.com at this time.";

$L_WEBLOG['468'] = "Technorati.com has been pinged.";

Then finally add the following to pm/cp/weblog.cp.php at approx line 1900 just before the SEND TRACKBACK function.

// PING TECHNORATI

Expression Engine

Expression Engine has built in ping functionaility. To add the ability to ping Technorati do the following:

  1. Login to your control panel.

  2. Click on ADMIN. Look for "Default Ping Servers" under Weblog Administration.

  3. There are blank fields underneath the default ping servers already set up.

  4. Click on the field for "Server Name" and give it a name (like technorati.com).

  5. Click on the field for "Server URL/Path" and type or paste in: http://rpc.technorati.com/rpc/ping

  6. Leave the "Port" and "Protocol" settings alone.

  7. Choose whether you want Technorati to be pinged automatically every time you post. Yes or No. (If you choose "No" you can ping Technorati at your discretion by selecting the checkbox for it on the publish page.

  8. You may also assign an "Order" number. This will just determine the order that the Technorati ping checkbox will show up on the publish page.

  9. Click "Submit" and your are done.

TypePad

HELP PLEASE: Anybody know how to ping using Typepad? Thanks!

At the moment the only way to ping any other sites than weblogs.com or pin.gs is to fill the URL in the TrackBack field in advanced posting view. I guess we'll have to note 6A for this. :)

Drupal

  unset($client);

  $client = new xmlrpc_client("/rpc/ping", "rpc.technorati.com", 80);

  $message = new xmlrpcmsg("weblogUpdates.ping", array(new xmlrpcval($name), new xmlrpcval($url)));

  $result = $client->send($message);

  if (!$result || $result->faultCode()) {
    watchdog("error", "failed to notify 'technorati.com'");
  }

Nucleus

[WWW]Anand : Change the [WWW]ping pong plugin to add the following.
function pingTechnorati() {
         $b = new BLOG($this->myBlogId);
         $message = new xmlrpcmsg(
         'weblogUpdates.ping', array(
         new xmlrpcval($b->getName(),'string'),
         new xmlrpcval($b->getURL(),'string')
         ));

         $c = new xmlrpc_client('/rpc/ping', 'rpc.technorati.com', 80);

         //$c->setDebug(1);

         $r = $c->send($message,15); // 15 seconds timeout...
    }

// modify this

function event_PostAddItem($data) {
      // $this->pingIndianBlogPortal();
         $this->pingBloGs();
         $this->pingTechnorati();
    }


== Other tools (please add your own!) ==

WordPress 1.0.1

This is similar to the Drupal method, because it is Drupal code ;-) implemented into WordPress. Thanks to the great forum members at www.wordpress.org/support/ for the code!

// -----------------------------------
// Technorati Ping Hack
function pingTechnorati($blog_ID = 1) {
        // original function by Dries Buytaert for Drupal
        global $blogname,$siteurl,$blogfilename;
        if ((!(($blogname=="your blog name") && ($siteurl=="http://example.com") && ($blogfilename=="wp.php"))) && (!preg_match("/localhost\//",$siteurl))) {
                $client = new xmlrpc_client("/rpc/ping", "rpc.technorati.com", 80);
                $message = new xmlrpcmsg("weblogUpdates.ping", array(new xmlrpcval($blogname), new xmlrpcval($siteurl."/".$blogfilename)));
                $result = $client->send($message);
                if (!$result || $result->faultCode()) {
                        return false;
                }
                return true;
        } else {
                return false;
        }
}

add_filter('action_publish_post', 'pingTechnorati');

WordPress 1.2

WordPress now has ping functionaility built into the core code, meaning the hack defined in the instructions for WordPress 1.0.1 is no longer neccessary. To add the ability to ping Technorati, just:

  1. Login to your blog. This is usually done via the Login link in your sidebar. If that link is missing, just append /wp-login.php to the end of your site's URL.

  2. Click on Options. This will show a small, grey sub-menu underneath.

  3. Click on Writing in the cub-menu to bring up the Writing Options menu.

  4. Under the Update Services section, add a newline in the textbox and type in http://rpc.technorati.com/rpc/ping

  5. Click Update Options in the bottom right-hand corner of the page.

That's it! WordPress will now notify Technorati whenever you post a new item to your blog.

Requests

Help! All I want is to insert the correct Technorati code in my blog for automatically updating it (frequently). But I don't use any of the Blogging servers. My blog is published directly from my own website so I don;t know which of these systems applies to me. And I'm not that much of a techie expert to figure out a lot of this stuff. Could you have a simply worded section for others like me, who are blogging from their own website, without benefit of any blogging software? I use Dreamweaver 3 to design and upload my site, and use a Mac G4, OS9.2. I am a Technorati member. My blog URL is: http://www.nataliedarbeloff.com/blaugustine.html Any help appreciated.

Hi, I'm trying to implement this in my own blog software but I'm a newbie to XML-RPC and having some trouble. I could really use some help. I don't want to clutter up this page so I'll post my stuff on [SimonWoodside].

Pivot

in the main admin panel, under configuration, there is a ping config area. paste in rpc.technorati.com/rpc/ping do not use the http://

Not possible with recent version

Wanted: How to do this with [WWW]Nucleus and the [WWW]PingPong-Plugin and the .Text blogging tool?

Wanted: How to do this with [WWW]PostNuke and the XML-RPC modules included in the base install of PostNuke.

Generic PHP client

Have your blog software execute this code upon successfully submitting a post. This should work to ping any host running a "weblogUpdate.ping" XMLRPC server, so long as you change the relevant variables.

Adapted from b2 and pMachine hacks.

[WWW]Patrick Barabe

<?php

require_once "XML/RPC.php";
$postURL = "http://www.myurl.com" ; // change to fit your blog host

$params = array( 
    new XML_RPC_Value( $title, "string" ),
    new XML_RPC_Value( $postURL, "string" )
        );

$msg = new XML_RPC_Message("weblogUpdates.ping", $params);
$client = new XML_RPC_CLIENT( "/rpc/ping", "rpc.technorati.com", "80" ) ; // change for other ping hosts

$response = $client->send($msg);
$v = $response->value();

if (!$response->faultCode()) {
        $rpcValue = $v->scalarval() ;
        $rpcMessage = $rpcValue['message'] ;
        $rpcMe = $rpcMessage->me ;
        $rpcString = $rpcMe['string'] ;
        print "<div>" ;
        print $clientHosts[$i] ;
        print " Response: <span> " . $rpcString . "</span>\n";
        print "</div>" ;
} else {
        print "<div>" ;
        print $clientHosts[$i] . " Fault Code: <span> " . $response->faultCode() . "</span>\n";
        print "<div>" ;
        print "</div>" ;
        print $clientHosts[$i] . " Fault Reason: <span> " . $response->faultString() . "</span>\n";
        print "</div>" ;
}

?>

Dada Mail

[WWW]Dada Mail has had the ability to Ping/Notify Site Update Services since version 2.9 of the program.

To Ping Technorati everytime you send a message that is destined to be archived, just follow these steps.

  1. Login to a list

  2. On the left hand menu, under, "Manage List Archive" click, "Archive Options"

  3. On the Archive Options screen, click, "Advanced..."

  4. On the Advanced Archive Options screen, check, "Publish your archives index in RSS/Atom" as well as, "Ping/Notify Site Update Services"

  5. Click the, "Change Archive Options" button on the bottom of the screen.

If the, "Ping/Notify Site Update Services" option is greyed out and disabled, make sure you have the Perl module collection [WWW]Soap::Lite installed.

If you would like change which ping sites to notify, edit the Dada Mail's Config.pm array, "@PING_URLS". By default, Technorati is already included.

Contributed: [WWW]Justin Simoni

Makeshift Online

[WWW]MakeshiftOnline.net added the ability to ping technorati on 10-20-2005

  1. Login to your account

  2. Goto your overview

  3. Advanced Settings -> Misc

  4. Make sure "Allow Technorati Ping" is checked

Will ping the technorati server everytime a new post is made.

Contributed by [WWW]Drew Lustro

ThinkJot

[WWW]http://www.process64.com/ThinkJot/ A blog software based on the dasBlog engine

  1. Login to your account

  2. Goto Configuration

  3. Under "Services To Ping", check Technorati

  4. Save

Will ping the technorati server everytime a new post is made. The important thing to note is that if your site is running under Medium-Trust settings, this will not work since external web calls are disallowed by the security mechanism. If so, uncheck all options under "Services To Ping". Contributed by [Ronnie J]