// const nats = require('nats'); // const fs = require('fs'); // const privateKey = fs.readFileSync('clientCertificate/client-key.pem'); // const certificate = fs.readFileSync('clientCertificate/client-cert.pem'); // const nc = nats.connect({ // servers: ['nats://nanodgx.in:4222'], // token: 'SUADA3R4HRQG5ZEGR7E65P5P2JUQ2LMVLEOGJWEIKLEYOZEPQES2WHW2KU', // tls: { // key: privateKey, // cert: certificate, // }, // connect: function() { // console.log('Connected to NATS server'); // // Subscribe to a subject // const subscription = nc.subscribe('your-subject'); // // Listen for incoming messages // subscription.on('message', function(msg) { // console.log(`Received message: ${msg.getData()}`); // }); // // Publish a message // nc.publish('your-subject', 'Hello NATS!'); // }, // error: function(err) { // console.error(`Error connecting to NATS server: ${err}`); // }, // close: function() { // console.log('Connection to NATS server closed'); // }, // }); const NATS = require('nats'); const sc = NATS.StringCodec(); const seed = new TextEncoder().encode( "SUACFBL4SJNFOYVB6F4AHK7A7VCHDENCKVLKJTTKAH3I47BOTSOE3Z2K7M", ); const servers = [ { servers: "nats://nanodgx.in:4222", authenticator: NATS.nkeyAuthenticator(seed), tls: { keyFile: "certificate_path/client-key.pem", certFile: "certificate_path/client-cert.pem", }, }, ]; servers.forEach(async (v) => { try { // console.log(v); const nc = await NATS.connect(v); // Subscribe to a subject const subscription = await nc.subscribe("server.hpos.HCV-000-3998.ping"); /* (async () => { for await (const msg of subscription) { console.log(`Received message: ${sc.decode(msg.data)}`); // Your custom logic for handling the incoming message goes here } })(); */ nc.publish("server.hpos.HCV-000-3998.ping", "ALIVE"); } catch (err) { console.log(`error connecting to ${JSON.stringify(v)} ${err}`); } });