syndicate-js/packages/syntax-playground/src/avahipublish.js

28 lines
1009 B
JavaScript

const { Observe, currentFacet, genUuid } = require("@syndicate-lang/core");
const S = activate require("@syndicate-lang/driver-streams-node");
const M = activate require("@syndicate-lang/driver-mdns");
spawn named 'test' {
const svc = M.Service((new Date()).toJSON(), '_syndicate._tcp');
assert M.Publish(svc, null, 8001, []);
during M.Discovered(M.Service($name, '_syndicate._tcp'),
$hostName,
$port,
$txtDataRecords,
$address,
"IPv4",
$interfaceName)
{
on start console.log('+', name, hostName, port, txtDataRecords, address, interfaceName);
on stop console.log('-', name, hostName, port, txtDataRecords, address, interfaceName);
}
during M.Discovered(M.Service($n, $t), $h, $p, _, $a, "IPv4", $i) {
if (t !== '_syndicate._tcp') {
on start console.log('**', t, n, h, p, a, i);
on stop console.log('==', t, n, h, p, a, i);
}
}
}