unetjs 1.0.1 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/unet.cjs CHANGED
@@ -1,4 +1,4 @@
1
- /* unet.js v1.0.1 2021-11-08T05:30:51.735Z */
1
+ /* unet.js v1.1.0 2022-02-19T07:01:46.580Z */
2
2
 
3
3
  'use strict';
4
4
 
@@ -1293,6 +1293,8 @@ let UnetServices = {
1293
1293
  'TRANSPORT': 'org.arl.unet.Services.TRANSPORT',
1294
1294
  'REMOTE': 'org.arl.unet.Services.REMOTE',
1295
1295
  'STATE_MANAGER': 'org.arl.unet.Services.STATE_MANAGER',
1296
+ 'DEVICE_INFO': 'org.arl.unet.Services.DEVICE_INFO',
1297
+ 'DOA': 'org.arl.unet.Services.DOA'
1296
1298
  };
1297
1299
 
1298
1300
  Object.assign(Services, UnetServices);
@@ -1321,97 +1323,97 @@ let Protocol = {
1321
1323
  */
1322
1324
  let UnetMessages = {
1323
1325
  // unet
1324
- 'TestReportNtf' : MessageClass('org.arl.unet.TestReportNtf'),
1325
- 'AbnormalTerminationNtf' : MessageClass('org.arl.unet.AbnormalTerminationNtf'),
1326
- 'CapabilityListRsp' : MessageClass('org.arl.unet.CapabilityListRsp'),
1327
- 'CapabilityReq' : MessageClass('org.arl.unet.CapabilityReq'),
1328
- 'ClearReq' : MessageClass('org.arl.unet.ClearReq'),
1329
- 'DatagramCancelReq' : MessageClass('org.arl.unet.DatagramCancelReq'),
1330
- 'DatagramDeliveryNtf' : MessageClass('org.arl.unet.DatagramDeliveryNtf'),
1331
- 'DatagramFailureNtf' : MessageClass('org.arl.unet.DatagramFailureNtf'),
1332
- 'DatagramNtf' : MessageClass('org.arl.unet.DatagramNtf'),
1333
- 'DatagramProgressNtf' : MessageClass('org.arl.unet.DatagramProgressNtf'),
1334
- 'DatagramReq' : MessageClass('org.arl.unet.DatagramReq'),
1335
- 'ParamChangeNtf' : MessageClass('org.arl.unet.ParamChangeNtf'),
1336
- 'RefuseRsp' : MessageClass('org.arl.unet.RefuseRsp'),
1337
- 'FailureNtf' : MessageClass('org.arl.unet.FailureNtf'),
1326
+ 'TestReportNtf' : MessageClass('org.arl.unet.TestReportNtf'),
1327
+ 'AbnormalTerminationNtf' : MessageClass('org.arl.unet.AbnormalTerminationNtf'),
1328
+ 'CapabilityListRsp' : MessageClass('org.arl.unet.CapabilityListRsp'),
1329
+ 'CapabilityReq' : MessageClass('org.arl.unet.CapabilityReq'),
1330
+ 'ClearReq' : MessageClass('org.arl.unet.ClearReq'),
1331
+ 'DatagramCancelReq' : MessageClass('org.arl.unet.DatagramCancelReq'),
1332
+ 'DatagramDeliveryNtf' : MessageClass('org.arl.unet.DatagramDeliveryNtf'),
1333
+ 'DatagramFailureNtf' : MessageClass('org.arl.unet.DatagramFailureNtf'),
1334
+ 'DatagramNtf' : MessageClass('org.arl.unet.DatagramNtf'),
1335
+ 'DatagramProgressNtf' : MessageClass('org.arl.unet.DatagramProgressNtf'),
1336
+ 'DatagramReq' : MessageClass('org.arl.unet.DatagramReq'),
1337
+ 'ParamChangeNtf' : MessageClass('org.arl.unet.ParamChangeNtf'),
1338
+ 'RefuseRsp' : MessageClass('org.arl.unet.RefuseRsp'),
1339
+ 'FailureNtf' : MessageClass('org.arl.unet.FailureNtf'),
1338
1340
 
1339
1341
  // net
1340
- 'DatagramTraceReq' : MessageClass('org.arl.unet.net.DatagramTraceReq'),
1341
- 'RouteDiscoveryReq' : MessageClass('org.arl.unet.net.RouteDiscoveryReq'),
1342
- 'RouteTraceReq' : MessageClass('org.arl.unet.net.RouteTraceReq'),
1343
- 'RouteDiscoveryNtf' : MessageClass('org.arl.unet.net.RouteDiscoveryNtf'),
1344
- 'RouteTraceNtf' : MessageClass('org.arl.unet.net.RouteTraceNtf'),
1342
+ 'DatagramTraceReq' : MessageClass('org.arl.unet.net.DatagramTraceReq'),
1343
+ 'RouteDiscoveryReq' : MessageClass('org.arl.unet.net.RouteDiscoveryReq'),
1344
+ 'RouteTraceReq' : MessageClass('org.arl.unet.net.RouteTraceReq'),
1345
+ 'RouteDiscoveryNtf' : MessageClass('org.arl.unet.net.RouteDiscoveryNtf'),
1346
+ 'RouteTraceNtf' : MessageClass('org.arl.unet.net.RouteTraceNtf'),
1345
1347
 
1346
1348
  // phy
1347
- 'FecDecodeReq' : MessageClass('org.arl.unet.phy.FecDecodeReq'),
1348
- 'RxJanusFrameNtf' : MessageClass('org.arl.unet.phy.RxJanusFrameNtf'),
1349
- 'TxJanusFrameReq' : MessageClass('org.arl.unet.phy.TxJanusFrameReq'),
1350
- 'BadFrameNtf' : MessageClass('org.arl.unet.phy.BadFrameNtf'),
1349
+ 'FecDecodeReq' : MessageClass('org.arl.unet.phy.FecDecodeReq'),
1350
+ 'RxJanusFrameNtf' : MessageClass('org.arl.unet.phy.RxJanusFrameNtf'),
1351
+ 'TxJanusFrameReq' : MessageClass('org.arl.unet.phy.TxJanusFrameReq'),
1352
+ 'BadFrameNtf' : MessageClass('org.arl.unet.phy.BadFrameNtf'),
1351
1353
  'BadRangeNtf' : MessageClass('org.arl.unet.phy.BadRangeNtf'),
1352
- 'ClearSyncReq' : MessageClass('org.arl.unet.phy.ClearSyncReq'),
1353
- 'CollisionNtf' : MessageClass('org.arl.unet.phy.CollisionNtf'),
1354
- 'RxFrameNtf' : MessageClass('org.arl.unet.phy.RxFrameNtf', DatagramNtf$1),
1355
- 'RxFrameStartNtf' : MessageClass('org.arl.unet.phy.RxFrameStartNtf'),
1356
- 'SyncInfoReq' : MessageClass('org.arl.unet.phy.SyncInfoReq'),
1357
- 'SyncInfoRsp' : MessageClass('org.arl.unet.phy.SyncInfoRsp'),
1358
- 'TxFrameNtf' : MessageClass('org.arl.unet.phy.TxFrameNtf'),
1359
- 'TxFrameReq' : MessageClass('org.arl.unet.phy.TxFrameReq', DatagramReq$1),
1360
- 'TxFrameStartNtf' : MessageClass('org.arl.unet.phy.TxFrameStartNtf'),
1361
- 'TxRawFrameReq' : MessageClass('org.arl.unet.phy.TxRawFrameReq'),
1354
+ 'ClearSyncReq' : MessageClass('org.arl.unet.phy.ClearSyncReq'),
1355
+ 'CollisionNtf' : MessageClass('org.arl.unet.phy.CollisionNtf'),
1356
+ 'RxFrameNtf' : MessageClass('org.arl.unet.phy.RxFrameNtf', DatagramNtf$1),
1357
+ 'RxFrameStartNtf' : MessageClass('org.arl.unet.phy.RxFrameStartNtf'),
1358
+ 'SyncInfoReq' : MessageClass('org.arl.unet.phy.SyncInfoReq'),
1359
+ 'SyncInfoRsp' : MessageClass('org.arl.unet.phy.SyncInfoRsp'),
1360
+ 'TxFrameNtf' : MessageClass('org.arl.unet.phy.TxFrameNtf'),
1361
+ 'TxFrameReq' : MessageClass('org.arl.unet.phy.TxFrameReq', DatagramReq$1),
1362
+ 'TxFrameStartNtf' : MessageClass('org.arl.unet.phy.TxFrameStartNtf'),
1363
+ 'TxRawFrameReq' : MessageClass('org.arl.unet.phy.TxRawFrameReq'),
1362
1364
 
1363
1365
  // addr
1364
- 'AddressAllocReq' : MessageClass('org.arl.unet.addr.AddressAllocReq'),
1365
- 'AddressAllocRsp' : MessageClass('org.arl.unet.addr.AddressAllocRsp'),
1366
- 'AddressResolutionReq' : MessageClass('org.arl.unet.addr.AddressResolutionReq'),
1367
- 'AddressResolutionRsp' : MessageClass('org.arl.unet.addr.AddressResolutionRsp'),
1366
+ 'AddressAllocReq' : MessageClass('org.arl.unet.addr.AddressAllocReq'),
1367
+ 'AddressAllocRsp' : MessageClass('org.arl.unet.addr.AddressAllocRsp'),
1368
+ 'AddressResolutionReq' : MessageClass('org.arl.unet.addr.AddressResolutionReq'),
1369
+ 'AddressResolutionRsp' : MessageClass('org.arl.unet.addr.AddressResolutionRsp'),
1368
1370
 
1369
1371
  // bb
1370
- 'BasebandSignal' : MessageClass('org.arl.unet.bb.BasebandSignal'),
1371
- 'RecordBasebandSignalReq' : MessageClass('org.arl.unet.bb.RecordBasebandSignalReq'),
1372
- 'RxBasebandSignalNtf' : MessageClass('org.arl.unet.bb.RxBasebandSignalNtf', BasebandSignal),
1373
- 'TxBasebandSignalReq' : MessageClass('org.arl.unet.bb.TxBasebandSignalReq', BasebandSignal),
1372
+ 'BasebandSignal' : MessageClass('org.arl.unet.bb.BasebandSignal'),
1373
+ 'RecordBasebandSignalReq' : MessageClass('org.arl.unet.bb.RecordBasebandSignalReq'),
1374
+ 'RxBasebandSignalNtf' : MessageClass('org.arl.unet.bb.RxBasebandSignalNtf', BasebandSignal),
1375
+ 'TxBasebandSignalReq' : MessageClass('org.arl.unet.bb.TxBasebandSignalReq', BasebandSignal),
1374
1376
 
1375
1377
  // link
1376
- 'LinkStatusNtf' : MessageClass('org.arl.unet.link.LinkStatusNtf'),
1378
+ 'LinkStatusNtf' : MessageClass('org.arl.unet.link.LinkStatusNtf'),
1377
1379
 
1378
1380
  // localization
1379
- 'RangeNtf' : MessageClass('org.arl.unet.localization.RangeNtf'),
1380
- 'RangeReq' : MessageClass('org.arl.unet.localization.RangeReq'),
1381
- 'BeaconReq' : MessageClass('org.arl.unet.localization.BeaconReq'),
1382
- 'RespondReq' : MessageClass('org.arl.unet.localization.RespondReq'),
1383
- 'InterrogationNtf' : MessageClass('org.arl.unet.localization.InterrogationNtf'),
1381
+ 'RangeNtf' : MessageClass('org.arl.unet.localization.RangeNtf'),
1382
+ 'RangeReq' : MessageClass('org.arl.unet.localization.RangeReq'),
1383
+ 'BeaconReq' : MessageClass('org.arl.unet.localization.BeaconReq'),
1384
+ 'RespondReq' : MessageClass('org.arl.unet.localization.RespondReq'),
1385
+ 'InterrogationNtf' : MessageClass('org.arl.unet.localization.InterrogationNtf'),
1384
1386
 
1385
1387
 
1386
1388
  // mac
1387
- 'ReservationAcceptReq' : MessageClass('org.arl.unet.mac.ReservationAcceptReq'),
1388
- 'ReservationCancelReq' : MessageClass('org.arl.unet.mac.ReservationCancelReq'),
1389
- 'ReservationReq' : MessageClass('org.arl.unet.mac.ReservationReq'),
1390
- 'ReservationRsp' : MessageClass('org.arl.unet.mac.ReservationRsp'),
1391
- 'ReservationStatusNtf' : MessageClass('org.arl.unet.mac.ReservationStatusNtf'),
1392
- 'RxAckNtf' : MessageClass('org.arl.unet.mac.RxAckNtf'),
1393
- 'TxAckReq' : MessageClass('org.arl.unet.mac.TxAckReq'),
1389
+ 'ReservationAcceptReq' : MessageClass('org.arl.unet.mac.ReservationAcceptReq'),
1390
+ 'ReservationCancelReq' : MessageClass('org.arl.unet.mac.ReservationCancelReq'),
1391
+ 'ReservationReq' : MessageClass('org.arl.unet.mac.ReservationReq'),
1392
+ 'ReservationRsp' : MessageClass('org.arl.unet.mac.ReservationRsp'),
1393
+ 'ReservationStatusNtf' : MessageClass('org.arl.unet.mac.ReservationStatusNtf'),
1394
+ 'RxAckNtf' : MessageClass('org.arl.unet.mac.RxAckNtf'),
1395
+ 'TxAckReq' : MessageClass('org.arl.unet.mac.TxAckReq'),
1394
1396
 
1395
1397
 
1396
1398
  // remote
1397
- 'RemoteExecReq' : MessageClass('org.arl.unet.remote.RemoteExecReq'),
1398
- 'RemoteFailureNtf' : MessageClass('org.arl.unet.remote.RemoteFailureNtf'),
1399
- 'RemoteFileGetReq' : MessageClass('org.arl.unet.remote.RemoteFileGetReq'),
1400
- 'RemoteFileNtf' : MessageClass('org.arl.unet.remote.RemoteFileNtf'),
1401
- 'RemoteFilePutReq' : MessageClass('org.arl.unet.remote.RemoteFilePutReq'),
1402
- 'RemoteSuccessNtf' : MessageClass('org.arl.unet.remote.RemoteSuccessNtf'),
1403
- 'RemoteTextNtf' : MessageClass('org.arl.unet.remote.RemoteTextNtf'),
1404
- 'RemoteTextReq' : MessageClass('org.arl.unet.remote.RemoteTextReq'),
1399
+ 'RemoteExecReq' : MessageClass('org.arl.unet.remote.RemoteExecReq'),
1400
+ 'RemoteFailureNtf' : MessageClass('org.arl.unet.remote.RemoteFailureNtf'),
1401
+ 'RemoteFileGetReq' : MessageClass('org.arl.unet.remote.RemoteFileGetReq'),
1402
+ 'RemoteFileNtf' : MessageClass('org.arl.unet.remote.RemoteFileNtf'),
1403
+ 'RemoteFilePutReq' : MessageClass('org.arl.unet.remote.RemoteFilePutReq'),
1404
+ 'RemoteSuccessNtf' : MessageClass('org.arl.unet.remote.RemoteSuccessNtf'),
1405
+ 'RemoteTextNtf' : MessageClass('org.arl.unet.remote.RemoteTextNtf'),
1406
+ 'RemoteTextReq' : MessageClass('org.arl.unet.remote.RemoteTextReq'),
1405
1407
 
1406
1408
  // scheduler
1407
- 'AddScheduledSleepReq' : MessageClass('org.arl.unet.scheduler.AddScheduledSleepReq'),
1408
- 'GetSleepScheduleReq' : MessageClass('org.arl.unet.scheduler.GetSleepScheduleReq'),
1409
- 'RemoveScheduledSleepReq' : MessageClass('org.arl.unet.scheduler.RemoveScheduledSleepReq'),
1410
- 'SleepScheduleRsp' : MessageClass('org.arl.unet.scheduler.SleepScheduleRsp'),
1411
- 'WakeFromSleepNtf' : MessageClass('org.arl.unet.scheduler.WakeFromSleepNtf'),
1409
+ 'AddScheduledSleepReq' : MessageClass('org.arl.unet.scheduler.AddScheduledSleepReq'),
1410
+ 'GetSleepScheduleReq' : MessageClass('org.arl.unet.scheduler.GetSleepScheduleReq'),
1411
+ 'RemoveScheduledSleepReq' : MessageClass('org.arl.unet.scheduler.RemoveScheduledSleepReq'),
1412
+ 'SleepScheduleRsp' : MessageClass('org.arl.unet.scheduler.SleepScheduleRsp'),
1413
+ 'WakeFromSleepNtf' : MessageClass('org.arl.unet.scheduler.WakeFromSleepNtf'),
1412
1414
 
1413
1415
  // state
1414
- 'ClearStateReq' : MessageClass('org.arl.unet.state.ClearStateReq'),
1416
+ 'ClearStateReq' : MessageClass('org.arl.unet.state.ClearStateReq'),
1415
1417
  'SaveStateReq' : MessageClass('org.arl.unet.state.SaveStateReq')
1416
1418
  };
1417
1419
 
@@ -1423,24 +1425,24 @@ const DatagramNtf = UnetMessages.DatagramNtf;
1423
1425
  const RxFrameNtf = UnetMessages.RxFrameNtf;
1424
1426
 
1425
1427
  /**
1426
- * Creates a new UnetSocket to connect to a running Unet instance. This constructor returns a
1427
- * {@link Promise} instead of the constructed UnetSocket object. Use `await` or `.then()` to get
1428
- * a reference to the UnetSocket object. Based on if this is run in a Browser or Node.js,
1428
+ * Creates a new UnetSocket to connect to a running Unet instance. This constructor returns a
1429
+ * {@link Promise} instead of the constructed UnetSocket object. Use `await` or `.then()` to get
1430
+ * a reference to the UnetSocket object. Based on if this is run in a Browser or Node.js,
1429
1431
  * it will internally connect over WebSockets or TCP respectively.
1430
1432
  *
1431
- *
1433
+ *
1432
1434
  * @class UnetSocket
1433
1435
  * @param {string} [hostname] - hostname/ip address of the master container to connect to
1434
1436
  * @param {number} [port] - port number of the master container to connect to
1435
1437
  * @param {string} [path=''] - path of the master container to connect to (for WebSockets)
1436
1438
  * @returns {Promise<UnetSocket>} - Promise which resolves to the UnetSocket object being constructed
1437
- *
1439
+ *
1438
1440
  * @example
1439
1441
  * let socket = await new UnetSocket('localhost', 8081, '/ws/');
1440
1442
  */
1441
1443
  class UnetSocket {
1442
1444
 
1443
- constructor(hostname, port, path='') {
1445
+ constructor(hostname, port, path='') {
1444
1446
  return (async () => {
1445
1447
  this.gw = new Gateway({
1446
1448
  hostname : hostname,
@@ -1471,13 +1473,13 @@ class UnetSocket {
1471
1473
  * Checks if a socket is closed.
1472
1474
  * @returns {boolean} - true if closed, false if open
1473
1475
  */
1474
- isClosed() {
1476
+ isClosed() {
1475
1477
  return this.gw == null;
1476
1478
  }
1477
1479
 
1478
1480
  /**
1479
1481
  * Binds a socket to listen to a specific protocol datagrams.
1480
- * Protocol numbers between Protocol.DATA+1 to Protocol.USER-1 are reserved protocols
1482
+ * Protocol numbers between Protocol.DATA+1 to Protocol.USER-1 are reserved protocols
1481
1483
  * and cannot be bound. Unbound sockets listen to all unreserved
1482
1484
  * @param {Protocol} protocol - protocol number to listen for
1483
1485
  * @returns {boolean} - true on success, false on failure
@@ -1489,9 +1491,9 @@ class UnetSocket {
1489
1491
  }
1490
1492
  return false;
1491
1493
  }
1492
-
1494
+
1493
1495
  /**
1494
- * Unbinds a socket so that it listens to all unreserved protocols.
1496
+ * Unbinds a socket so that it listens to all unreserved protocols.
1495
1497
  * Protocol numbers between Protocol.DATA+1 to Protocol.USER-1 are considered reserved.
1496
1498
  * @returns {void}
1497
1499
  */
@@ -1504,13 +1506,13 @@ class UnetSocket {
1504
1506
  isBound() { return this.localProtocol >= 0;}
1505
1507
 
1506
1508
  /**
1507
- * Sets the default destination address and destination protocol number for datagrams sent
1508
- * using this socket. The defaults can be overridden for specific send() calls.
1509
- * The default protcol number when a socket is opened is Protcol.DATA.
1510
- * The default node address is undefined.
1511
- * Protocol numbers between Protocol.DATA+1 to Protocol.USER-1 are considered reserved,
1509
+ * Sets the default destination address and destination protocol number for datagrams sent
1510
+ * using this socket. The defaults can be overridden for specific send() calls.
1511
+ * The default protcol number when a socket is opened is Protcol.DATA.
1512
+ * The default node address is undefined.
1513
+ * Protocol numbers between Protocol.DATA+1 to Protocol.USER-1 are considered reserved,
1512
1514
  * and cannot be used for sending datagrams using the socket.
1513
- *
1515
+ *
1514
1516
  * @param {number} to - default destination node address
1515
1517
  * @param {Protocol} protocol - default protocol number
1516
1518
  * @returns {boolean} - true on success, false on failure
@@ -1525,11 +1527,11 @@ class UnetSocket {
1525
1527
  }
1526
1528
 
1527
1529
  /**
1528
- * Resets the default destination address to undefined, and the default protocol number
1530
+ * Resets the default destination address to undefined, and the default protocol number
1529
1531
  * to Protocol.DATA.
1530
1532
  * @returns {void}
1531
1533
  */
1532
- disconnect() {
1534
+ disconnect() {
1533
1535
  this.remoteAddress = -1;
1534
1536
  this.remoteProtocol = 0;
1535
1537
  }
@@ -1544,7 +1546,7 @@ class UnetSocket {
1544
1546
  * Gets the local node address of the Unet node connected to.
1545
1547
  * @returns {Promise<int>} - local node address, or -1 on error
1546
1548
  */
1547
- async getLocalAddress() {
1549
+ async getLocalAddress() {
1548
1550
  if (this.gw == null) return -1;
1549
1551
  const nodeinfo = await this.gw.agentForService(Services.NODE_INFO);
1550
1552
  if (nodeinfo == null) return -1;
@@ -1571,14 +1573,14 @@ class UnetSocket {
1571
1573
  getRemoteProtocol() { return this.remoteProtocol; }
1572
1574
 
1573
1575
  /**
1574
- * Sets the timeout for datagram reception. A timeout of 0 means the
1575
- * {@link UnetSocket#receive|receive method} will check any appropriate
1576
+ * Sets the timeout for datagram reception. A timeout of 0 means the
1577
+ * {@link UnetSocket#receive|receive method} will check any appropriate
1576
1578
  * Datagram has already been received (and is cached) else return immediately.
1577
- *
1579
+ *
1578
1580
  * @param {number} ms - timeout in milliseconds
1579
1581
  * @returns {void}
1580
1582
  */
1581
- setTimeout(ms) {
1583
+ setTimeout(ms) {
1582
1584
  if (ms < 0) ms = 0;
1583
1585
  this.timeout = ms;
1584
1586
  }
@@ -1627,12 +1629,12 @@ class UnetSocket {
1627
1629
  }
1628
1630
 
1629
1631
  /**
1630
- * Receives a datagram sent to the local node and the bound protocol number. If the socket is unbound,
1632
+ * Receives a datagram sent to the local node and the bound protocol number. If the socket is unbound,
1631
1633
  * then datagrams with all unreserved protocols are received. Any broadcast datagrams are also received.
1632
- *
1634
+ *
1633
1635
  * @returns {Promise<?DatagramNtf>} - datagram received by the socket
1634
1636
  */
1635
- async receive() {
1637
+ async receive() {
1636
1638
  if (this.gw == null) return null;
1637
1639
  return await this.gw.receive(msg => {
1638
1640
  if (msg.__clazz__ != DatagramNtf.__clazz__ && msg.__clazz__ != RxFrameNtf.__clazz__ ) return false;
@@ -1661,7 +1663,7 @@ class UnetSocket {
1661
1663
  }
1662
1664
 
1663
1665
  /**
1664
- *
1666
+ *
1665
1667
  * @param {string} svc - the named service of interest
1666
1668
  * @returns {Promise<AgentID[]>} - a promise which returns an array of {@link AgentID|AgentIDs} that provides the service when resolved
1667
1669
  */
@@ -1685,7 +1687,7 @@ class UnetSocket {
1685
1687
  * @param {string} nodeName - name of the node to resolve
1686
1688
  * @returns {Promise<?number>} - address of the node, or null if unable to resolve
1687
1689
  */
1688
- async host(nodeName) {
1690
+ async host(nodeName) {
1689
1691
  const arp = await this.agentForService(Services.ADDRESS_RESOLUTION);
1690
1692
  if (arp == null) return null;
1691
1693
  const req = new AddressResolutionReq(nodeName);