service_adv_mdns
[Drivers]
This driver can be used to publish information about a Player TCP service using the proposed IETF standard for multicast DNS service discovery (MDNS-SD). MDNS-SD is a part of the Zeroconf protocols, and has also been called "Rendezvous".
If you use this driver, it is assumed that the standard Player 2 TCP transport is being used; the MDNS-SD service type is "_player2._tcp". In addition to any "service_description" given in the configuration file (see below), any loaded device drivers will be represented in the service's TXT record. Each device will be entered into the TXT record as: device=
name#
number(
driver name)
.
The Howl library is used for MDNS-SD and must be available for this driver to be compiled into the server.
This driver has no client proxy. When the driver is loaded and initialized, the service is published, and Howl responds to queries in a background thread. Clients may use Howl or any other MDNS-SD implementation to query and find services.
- Compile-time dependencies
- Provides
- none
- Note, however, that you must specify a "provides" field in the config file, anyway. Use "opaque".
- Requires
- None
- Configuration requests
- none
- Configuration file options
- service_name (string)
- A short name for the service. If omitted, a default will be chosen based on the Player port number.
- service_description (string)
- A longer "description" for the robot, which will be included in the service TXT record.
- service_tags (tuple string)
- Tags to include in the service TXT record, in addition to device names.
- Example
driver ( name "service_adv_mdns" provides ["opaque:0"] service_name "robot" service_description "This is a groovy robot which can be controlled with Player." service_tags [ "job=mapper" "operator=reed" "strength=12" "dexterity=18" "intelligence=4" "thac0=8" ] )
- Author:
- Reed Hedges <reed@mobilerobots.com>