@otpjs/transports-epmd v0.17.0
@otpjs/transports-epmd
Listens on an ephemeral port for incoming connections. Registers new connections with the provided otpjs
node using @otpjs/transports-tcp
. Publishes the otpjs
node's name and
ephemeral port number on the specified epmd
instance.
Usage
Installation
npm i @otpjs/transports-epmd
Exports
register(node: otp.Node, options = {})
Creates a TCP server, listens for incoming connections, and registers said server with an epmd
instance.
Options
Parameter | Default | Description |
---|---|---|
bridge | false | Forwards node discovery messages, acts as relay |
type | Symbol.for("temporary") | Node persistence strategy |
epmd | See below | See below |
tcp | See below | See below |
EPMD Options
EPMD options regarding which epmd
instance to connect to. Should be an object with the following properties:
Parameter | Default | Description |
---|---|---|
host | "localhost" | Host to connect to epmd on |
port | 4369 | Port to connect to epmd on |
TCP Options
Object passed to created @otpjs/transports-tcp
instances for incoming connections.
See the @otpjs/transports-tcp
README for available options.
Registration
After initializing your otpjs
node, invoke the register
function to connect to epmd
and publish your connection details.
import epmd from '@otpjs/transports-epmd';
// build node
epmd.register(node, options);
Teardown
@otpjs/transports-epmd
maintains a persistent connection to the epmd
instance, indicating
its lifecycle. In order to disconnect from the epmd
instance, invoke the returned destroy
function.
const destroy = epmd.register(node, options);
// When you want to remove the published connection details and close the listener
destroy();