Beschreibung:Dieses Skript, das einem Newtork zugewiesen ist, überschreibt die SSID und den Preshared Key eines bestimmten WiFi-Netzwerks mit den Variablen context.vars.SSID context.vars.WPAKey
Das ausgewählte WiFi, das außer Betrieb gesetzt wird, ist SSID_TO_CHANGE. Liste der verwendeten Variablen:Add-in Code:/**
* @param {Config} config
* @param {Context} context
* Do not edit this comment or parameter types. Required for code suggestions
*/
exports.main = function (config, context) {
// Step 1: obtain _single_ ssid reference
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 wlanTable = config.getTableByOid("13.2.20.1");
var wlanPostfix = context.network.configNameLong + "_" + ssid.name;
// Step 2: create iterable list of wifi networks
var rows = wlanTable.getRows();
var list = [];
for (var i = 0; i < rows.length; i++) {
list.push(rows[i]);
}
var encrRef = "ENCRREF";
// Step 3: find matching row that ends with context.network.configNameLong + "_" + ssid.name
list.filter(function (row) {
return row.getByOid("1").endsWith(wlanPostfix);
}).forEach(function (wlanRow) {
// Step 4: change all matching row (by definition this is only one)
wlanRow.setByOid(2, context.vars.SSID);
wlanRow.setByOid(100, context.vars.WPAKey);
wlanRow.setByOid(102, encrRef);
wlanTable.addOrMerge(wlanRow);
var secParamsTable = config.getTableByOid("13.2.20.3");
var secParamsRow = secParamsTable.createNewRow();
secParamsRow.setByOid(1, encrRef);
secParamsRow.setByOid(2, "1");
secParamsRow.setByOid(4, "32");
secParamsRow.setByOid(9, "6");
secParamsRow.setByOid(12, "1");
secParamsRow.setByOid(13, "1");
secParamsRow.setByOid(14, "0");
secParamsRow.setByOid(11, "0");
secParamsRow.setByOid(16, "1");
secParamsRow.setByOid(17, "0");
secParamsRow.setByOid(19, "0");
secParamsRow.setByOid(26, "524288");
secParamsRow.setByOid(20, "");
secParamsRow.setByOid(21, "");
secParamsTable.addOrMerge(secParamsRow);
});
};
|
---|
Add-in als JSON-Datei: View file |
---|
name | ssid_preshared_key_lx.json |
---|
height | 150 |
---|
|
|