This script, assigned to a newtork, overrides a specific WiFi networks SSID and Preshared Key with the variables
context.vars.SSID
context.vars.WPAKey
The selected WiFi that will be overridden is SSID_TO_CHANGE
.
exports.main = function (config, context) {
var ssid = context.network.ssids["SSID_TO_CHANGE"];
if (!ssid) {
config.abort("SSID missing");
}
if (!context.vars.SSID) {
config.abort("variable SSID not set");
}
if (!context.vars.WPAKey) {
config.abort("variable WPAKey not set");
}
var ifcNumbers = [];
for (var i = 0; i < ssid.ifcNumber.length; i++) {
ifcNumbers.push(ssid.ifcNumber[i]);
}
var wlantable = config.getTableByOid("1.2.23.20.1");
var encrtable = config.getTableByOid("1.2.23.20.3");
for (var i = 0; i < ifcNumbers.length; i++) {
var rowWlan = wlantable.getFirstRowByOid("1", ifcNumbers[i]);
if (rowWlan) {
rowWlan.setByOid("2", context.vars.SSID);
wlantable.addOrMerge(rowWlan);
}
var rowEncr = encrtable.getFirstRowByOid("1", ifcNumbers[i]);
if (rowEncr) {
rowEncr.setByOid("6", "" + context.vars.WPAKey);
encrtable.addOrMerge(rowEncr);
}
}
};
|
---|