---
name: "Net::Rendezvous::Publish"
section: "3pm"
platform: "linux"
package: "libnet-rendezvous-publish-perl"
version: "0.04-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Net::Rendezvous::Publish"
---

# Net::Rendezvous::Publish(3pm)

publish Rendezvous services

## NAME

Net::Rendezvous::Publish - publish Rendezvous services

## SYNOPSIS

```
 use Net::Rendezvous::Publish;
 my $publisher = Net::Rendezvous::Publish->new
   or die "couldn't make a Responder object";
 my $service = $publisher->publish(
     name => "My HTTP Server",
     type => '_http._tcp',
     port => 12345,
 );
 while (1) { $publisher->step( 0.01 ) }
```

## DESCRIPTION

## METHODS

### new

Creates a new publisher handle

### publish( %definition )

Returns a Net::Rendezvous::Publish::Service object.  The following keys are meaningful in the service definition hash.

- name

  A descriptive name for the service.

- type

  The type of service.  This is string of the form \_service.\_protocol.

- port

  The port on which you're advertising the service.  If you're not using a port (and instead just using mDNS as a way of propogating other service information) it's common practice to use 9 (the discard service)

- domain

  The domain in which to advertise a service.  Defaults to `"local."`

### step( $seconds )

Spend at most `$seconds` seconds handling network events and updating internal state.

## TODO

At some point I may learn enough of the mDNS protocol to write a pure-perl responder.  That'll be nifty.

## AUTHOR

Richard Clamp \<richardc@unixbeard.net\>

## COPYRIGHT

Copyright 2004, 2005, 2006, Richard Clamp.  All Rights Reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

## SEE ALSO

Net::Rendezous - for service browsing.

Net::Rendezvous::Publish::Backend::\* - you'll need one of these to talk to your local mDNS responder.
