2016-11-17 7 views
1

Für mein Hausautomationssystem möchte ich einen NodeJS-Dienst erstellen, der mit net.connect() eine Verbindung zu mehreren Servern herstellen kann.Wie man mehrere Net-Clients in Node.js verwaltet

Ich habe keine Ahnung, wie dieses Projekt zu verwalten, für den Moment kann ich mit einem Server verbinden (senden & empfangen Daten), dieser Teil funktioniert gut.

Jeder Client hat eine ID und einen Namen als Eigenschaften.

Ich denke, ich brauche eine Reihe von Clients, aber ich kann kein gutes Tutorial finden, das funktioniert.

Antwort

1

Ich schaffte es, Dinge zum Laufen zu bringen.

Zuerst erklären etwas Kunden in und die Verbindungsmethode zu speichern:

var nodes = []; 

var node; 
node = new events.EventEmitter(); // Maybe we can use something else ? 

node.connect = function (id, name, host, port) { 
    var node = net.connect({host:host, port:port}); 
    node.id = id; 
    node.name = name; 
    node. 
    on('connect', function() { 
     // we are connected 
     node.is_connected = true; 
    }). 
    on('close', function() { 
     // we are closed 
     node.is_connected = false; 
     node.destroy(); 
    }). 
    on('error', function (err) { 
     // there is an error 
    }). 
    on('data', function (data) { 
     // we have data 
    }); 
    // add thos new node to storage 
    nodes.push(node); 
} 

einen neuen Knoten hinzufügen:

node.connect(id, name, host, port); 

Und man entfernen, können wir vielleicht in einer besseren Art und Weise tun dies, vielleicht bekommen durch Id (?):

Dies funktioniert eigentlich gut für meine projetc, fühlen sich frei zu disc uss diese Lösung, danke für Ihre Hilfe.

Verwandte Themen