Skip to main content.
home | support | download

Back to List Archive

ANNOUNCE: swished: swish-e in daemon form

From: Josh Rabinowitz <joshr-swishe(at)>
Date: Mon Aug 09 2004 - 22:31:59 GMT
Hello Everyone:

At 6:13 AM -0700 7/27/04, Peter Karman wrote:
>The swish-e home page mentions this:
>'swished', a mod_perl-based concurrent and persistent swish-e server
>written by Josh and to be open sourced around the time of conference.
>Such a server has long been on the SWISH-E "to do" list.

Today I'm releasing the SWISHED server code and the matching 
SWISH::API::Remote client library. Together, they allow remote access 
to swish-e indices via TCP/IP.

The client SWISH::API::Remote can be found at

Code for the server, SWISHED, can be found at

This is definitely working code, and it's pretty well documented in 
the source and perldoc files.

To get started, take a look at this:

Those who use the SWISH::API bundled with SWISH-E will notice a 
similarity between SWISH::API and SWISH::API::Remote.

Below is an example of using SWISH::API::Remote to search on a swished server:

     use SWISH::API::Remote;
     my $sw = SWISH::API::Remote->new( '');
     my $w = "foo OR bar";
     my $results = $sw->Execute( $w );
     printf("Fetched %d of %d hits for search on '%s'\n",
         $results->Fetched(), $results->Hits(), $w);
     while ( my $r = $results->NextResult() ) {
         print join(" ", map { $r->Property($_) } ($r->Properties()) ) . "\n";
     if ($results->Error()) {
         die $results->ErrorString();

Other reading on this subject can be found at:
and protocol currently used is described here:
and in the doc referred to below.

Interested to hear what people think!

   Josh Rabinowitz

PS: I've also put the related paper from this year's USENIX Annual 
Technical conference online at ; I'll be 
sending out another email about that shortly.
-- Josh Rabinowitz                  --
-- --
-- SkateTalk Chat Systems(tm)    --
Received on Mon Aug 9 15:32:27 2004