The Publisher
sub send { my ($self, $message) = @_; $message =~ s/\s+$//; return 'error','no message' unless $message; my $token = sha1_hex($message,$self->secret); my $socket = $self->requestor; my $rv; eval { $socket->send([$token, $message]); $rv = $socket->receive(1); }; if ($@ || !$rv) { return ('error', $@ || 'connection timeout' ); } else { return $rv->[0], ''; } }