Temat: 3ginfo - Przyciski włączania i wyłączania połączenia
Czasem trzeba rozłączyć połączenie modemu 3G/LTE aby wybrał on inny nadajnik. Na przykład obecnie po restarcie mojego routera modem nagminnie wybiera technologię HSPA+. Jeśli rozłączę połączenie na 20 sekund, to modem przełącza się na LTE na czym mi oczywiście zależy.
Aby ułatwić sobie życie dodałem 2 przyciski do rozłączenia i połączenia modemu w pluginie 3ginfo. Jeśli ktoś też chciałby je mieć, to wystarczy zalogować się przez ssh na router i np. przy pomocy edytora vi:
1. w pliku /www/3ginfo.sh dodać kod HTML przycisków w wybranym przez nas miejscu np. obok statusu połączenia:
<input type='button' class='default_button' value='Connect' onclick='runShellCommandX("ifup wan")' />
<input type='button' class='default_button' value='Disconnect' onclick='runShellCommandX("ifdown wan")' />2. na początku pliku /www/js/3ginfo.js dodać nową linię i poniższy kod JavaScript:
//Runs one or more commands in router shell.
//commandParam: can be one command or many commands joined by "\n" character
//todo: multiple commands not tested
function runShellCommandX(commandParam) {
var t = getParameterDefinition("commands", commandParam) + "&"
+ getParameterDefinition("hash", document.cookie.replace(/^.*hash=/, "").replace(/[\t ;]+.*$/, ""));
var n = function (e) {
};
runAjax("POST", "utility/run_commands.sh", t, n)
}W podobny sposób można dodawać inne przyciski wykonujące jakąś akcję na routerze. Nie jestem do końca pewien czy funkcja runShellCommandX nie obniża w jakiś sposób bezpieczeństwa routera. Może ktoś podpowie mi czy wszystko z nią w porządku i ew. czy coś można poprawić.