This commit is contained in:
Zaid Abdulla committed 2013-12-02 23:31:23 +03:00
commit 58a9adaa52
1 file changed
+34 -3
@@ -119,6 +119,18 @@ var parsePairs = function(pairsString) {
} }
exports.set = function(deviceId, args, callback) { exports.set = function(deviceId, args, callback) {
executeSet(deviceId, args, ['set'], callback);
};
exports.dset = function(deviceId, args, callback) {
executeSet(deviceId, args, ['dset'], callback);
};
exports.setdset = function(deviceId, args, callback) {
executeSet(deviceId, args, ['dset', 'set'], callback);
};
var executeSet = function(deviceId, args, method, callback) {
var tmp = args.split('-'); var tmp = args.split('-');
var defaultBandwidth = tmp[0]; var defaultBandwidth = tmp[0];
var pairs = parsePairs(tmp[1]); var pairs = parsePairs(tmp[1]);
@@ -127,10 +139,16 @@ exports.set = function(deviceId, args, callback) {
getDeviceIp(deviceId, function(ip) { getDeviceIp(deviceId, function(ip) {
var client = telnetConnect(ip, function(err) { var client = telnetConnect(ip, function(err) {
//return callback(null, "ok"); var telnet_cmd = "sncfg " + method[0];
telnetExecute("sncfg set WMX_FREQ_BANDWDITH_FL '" + defaultBandwidth + "-" + bandwidthsString + "'", client, "\n# ", function(err, response) { telnetExecute(telnet_cmd + " WMX_FREQ_BANDWDITH_FL '" + defaultBandwidth + "-" + bandwidthsString + "'", client, "\n# ", function(err, response) {
if (err) return callback(err); if (err) return callback(err);
telnetExecute("sncfg set WMX_FREQ_LIST '" + frequenciesString + "'", client, "\n# ", function(err, response) { telnetExecute(telnet_cmd + " WMX_FREQ_LIST '" + frequenciesString + "'", client, "\n# ", function(err, response) {
if (err) return callback(err);
if (method.length > 1) {
telnet_cmd = "sncfg " + method[1];
telnetExecute(telnet_cmd + " WMX_FREQ_BANDWDITH_FL '" + defaultBandwidth + "-" + bandwidthsString + "'", client, "\n# ", function(err, response) {
if (err) return callback(err);
telnetExecute(telnet_cmd + " WMX_FREQ_LIST '" + frequenciesString + "'", client, "\n# ", function(err, response) {
if (err) return callback(err); if (err) return callback(err);
telnetExecute("sncfg commit", client, "\n# ", function(err, response) { telnetExecute("sncfg commit", client, "\n# ", function(err, response) {
if (err) return callback(err); if (err) return callback(err);
@@ -142,6 +160,19 @@ exports.set = function(deviceId, args, callback) {
}); });
}); });
}); });
}
else {
telnetExecute("sncfg commit", client, "\n# ", function(err, response) {
if (err) return callback(err);
// log out
telnetExecute("exit", client, null, function(err, response) {
client.end();
return callback(null, args);
});
});
}
});
});
}); });
client.on("error", function(err) { client.on("error", function(err) {