NEWS
Unifi Steuern ohne Adapter (Script,SSH)
-
Mist, hast recht, ich schalte den POE, aber dafuer gibts n Datenpunkt, der geht auch..
Dann hilft nur das schalten per ssh, das geht auf jeden Fall.
Das schoene, hier sind die commands ziemlich gleich den von Cisco, man muss sich nicht umgewoehnen..SSH muss in der UDM Pro aktiviert werden, dann einfach in den Switch einloggen, und wie gewohnt:
Edit:
telnet localhost
enable
conf
interface x/x
shutoder no shut und der port ist wieder up..
mit show interface siehst du die config
-
@ilovegym Kann man über ssh auch voucher für gästewlan generieren?
-
Keine Ahnung, ich kenne nur die Switch commands…
Voucher werden ja von der UDM gemacht, und da sollte es über die API gehen..
-
@ilovegym
Und die internen Temperaturen der AP´s? Es soll ja wohl auch SNMP gehen, aber ohne Doku kommt man da ja auch nicht weiterHab einen AP in Garten gehängt und würde gern dessen Temp mal im Hochsommer / Winter überwachen.
-
@ilovegym: API bzw. über den Adapter geht es leider schon seit einen Jahr nicht mehr. Ob Ubiquiti da den Hahn abgedreht hat oder der Adapter ein Problem hat, keine Ahnung. Issue in GitHub ist auf, aber leider keine Reaktion
-
wenn ich mal Zeit hab, schalt ich snmp ein und lass mal n MIB drueber laufen.. dann halt mal durchklicken und schauen, welche States dargestellt werden und welche man setzen kann.. vielleicht geht damit ja auch recht easy Port-up/down etc..
Der iobroker hat ja n faehigen snmp adapter.
-
@draexler sagte in Adapter: ioBroker.unifi:
@ilovegym Kann man über ssh auch voucher für gästewlan generieren?
teste mal das - da kannst du angeblich vouchers anlegen - habe die nicht aktiviert, daher kann ich nicht testen
du musst die node-unifi in die zusätzlichen npm module in der js.instanz eintragen
const Unifi = require('node-unifi'); const unifi = new Unifi.Controller({hostname:"192.168.178.xx",port:'8443', sslverify: false}); (async () => { try { // LOGIN const loginData = await unifi.login('user', 'password!'); console.log('login: ' + loginData); //const switchmac="b4:fb:e4:f3:96:63" // Get data from a specific unifi device based on MAC address //const deviceData = await unifi.getAccessDevices(switchmac); // Console.log('getAccessDevices: ' + JSON.stringify(deviceData)); // Get device id //const deviceId = deviceData[0]._id; //console.log('deviceId: ' + deviceId + ' ip: ' + deviceData[0].ip); // GET SITE STATS // const sites = await unifi.getSitesStats(); // console.log('getSitesStats: ' + sites[0].name + ':' + sites.length); // console.log(JSON.stringify(sites)); // GET SITE SYSINFO // const sysinfo = await unifi.getSiteSysinfo(); // console.log('getSiteSysinfo: ' + sysinfo.length); //console.log(JSON.stringify(sysinfo)); // GET CLIENT DEVICES // const clientData = await unifi.getClientDevices(); // console.log('getClientDevices: ' + clientData.length); // console.log(JSON.stringify(clientData)); // GET ALL USERS EVER CONNECTED //const usersData = await unifi.getAllUsers(); //console.log('getAllUsers: ' + usersData.length); //console.log(JSON.stringify(usersData)); const clientVoucher = await unifi.createVouchers(123,1,0,"testthis"); // LOGOUT const logoutData = await unifi.logout(); console.log('logout: ' + JSON.stringify(logoutData)); } catch (error) { console.log('ERROR: ' + error); } })();
-
@liv-in-sky Hört sich schon mal gut an. Also trage ich einfach in der js.instanz bei den npm Komponenten "node-unifi" ein? Wenn ja, wie geht es dann weiter? Arbeite wie die meisten hier nur mit Blockly...
-
@draexler sagte in Adapter: ioBroker.unifi:
Also trage ich einfach in der js.instanz bei den npm Komponenten "node-unifi" ein?
ja
eintragen und enter drücken - sonst wird es nicht angenommen - die instanz startet dann neuansschliessend script anlegen und hostname (zeile3) und user und kennwort (zeile8) anpassen
dann:
aufrufen und im voucher-admin nachsehen, ob was angekommen ist -
hier siehst du was in die klammer der funktion createVouchers kommen muss
es müßte reichen, wenn du minutes,count,quota und note einträgst createVouchers(180,1,0,"testthisvoucher");
-
ich frage mal direkt dazwischen ob man den voucher code auch irgendwo abgreifen kann damit ich den irgendwo darstellen kann und nicht im portal schauen muss
-
das selbe script nur mit der funktion - teste mal -- ich hoffe es stimmt so
const myVouchers = await unifi.getVouchers(); console.log("vouchers: "+ myVouchers)
-
mh ich bekomme aktuell Error: failed to detect UniFiOS status
-
ich nutze die controller auf linux installiert - hast du den auch
-
ne ich hab ne udm pro
-
das ist die seite, wo ich die infos her habe - https://github.com/jens-maus/node-unifi
laut diesem issue, sollte es theoretisch funktionieren https://github.com/jens-maus/node-unifi/issues/227
-
wer interesse hat, was alles gehen sollte
https://github.com/jens-maus/node-unifi/blob/master/unifi.js
bei mir werden rechts die ganzen funktionen angezeigt:
-
bei mir sind wohl noch alte vouchers im system
mit diesem script sehe ich sie und könnte sie dann in der vis anzeigen ode rüber telegram versenden ...
log:
script.js.MYSTUFF.ALLERLEI.AAAUNIFI.unifi-wlan-schalten3: vouchers: [{"duration":123,"qos_overwrite":false,"note":"testthis","code":"6566218181","for_hotspot":false,"create_time":1717058841,"quota":0,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"66583d19108fed3b1dc7283c","admin_name":"e","used":0,"status":"VALID_MULTI","status_expires":0},{"duration":123,"qos_overwrite":false,"note":"testthis","code":"7113118220","for_hotspot":false,"create_time":1717058021,"quota":0,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"665839e5108fed3b1dc72722","admin_name":"e","used":0,"status":"VALID_MULTI","status_expires":0},{"duration":123,"qos_overwrite":false,"note":"testthis","code":"4515536233","for_hotspot":false,"create_time":1717057059,"quota":0,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"66583623108fed3b1dc725f0","admin_name":"e","used":0,"status":"VALID_MULTI","status_expires":0},{"duration":5760,"qos_overwrite":false,"note":null,"code":"8241421156","for_hotspot":false,"create_time":1650354689,"quota":1,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"625e6a0197578402ac2db67c","admin_name":"e","used":0,"status":"VALID_ONE","status_expires":0},{"duration":5760,"qos_overwrite":false,"note":null,"code":"7446834263","for_hotspot":false,"create_time":1650354689,"quota":1,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"625e6a0197578402ac2db67b","admin_name":"e","used":0,"status":"VALID_ONE","status_expires":0},{"duration":525600,"qos_overwrite":false,"note":null,"code":"7358319725","for_hotspot":false,"create_time":1650354660,"quota":1,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"625e69e497578402ac2db679","admin_name":"e","used":0,"status":"VALID_ONE","status_expires":0},{"duration":1440,"qos_overwrite":false,"note":null,"code":"2729460620","for_hotspot":false,"create_time":1627921177,"quota":1,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"61081b1997578402177f7096","admin_name":"e","used":0,"status":"VALID_ONE","status_expires":0},{"duration":1440,"qos_overwrite":false,"note":null,"code":"1795017450","for_hotspot":false,"create_time":1627921177,"quota":1,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"61081b1997578402177f7095","admin_name":"e","used":0,"status":"VALID_ONE","status_expires":0},{"duration":1440,"qos_overwrite":false,"note":null,"code":"2281225310","for_hotspot":false,"create_time":1627921177,"quota":1,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"61081b1997578402177f7094","admin_name":"e","used":0,"status":"VALID_ONE","status_expires":0},{"duration":1440,"qos_overwrite":false,"note":null,"code":"0356279115","for_hotspot":false,"create_time":1627921177,"quota":1,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"61081b1997578402177f7093","admin_name":"e","used":0,"status":"VALID_ONE","status_expires":0},{"duration":1440,"qos_overwrite":false,"note":null,"code":"3544056744","for_hotspot":false,"create_time":1627921177,"quota":1,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"61081b1997578402177f7092","admin_name":"e","used":0,"status":"VALID_ONE","status_expires":0},{"duration":1440,"qos_overwrite":false,"note":null,"code":"6426769406","for_hotspot":false,"create_time":1627921177,"quota":1,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"61081b1997578402177f7091","admin_name":"e","used":0,"status":"VALID_ONE","status_expires":0},{"duration":1440,"qos_overwrite":false,"note":null,"code":"2298091277","for_hotspot":false,"create_time":1627921177,"quota":1,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"61081b1997578402177f7090","admin_name":"e","used":0,"status":"VALID_ONE","status_expires":0},{"duration":1440,"qos_overwrite":false,"note":null,"code":"8878654311","for_hotspot":false,"create_time":1627921177,"quota":1,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"61081b1997578402177f708f","admin_name":"e","used":0,"status":"VALID_ONE","status_expires":0},{"duration":1440,"qos_overwrite":false,"note":null,"code":"6946187591","for_hotspot":false,"create_time":1627921177,"quota":1,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"61081b1997578402177f708e","admin_name":"e","used":0,"status":"VALID_ONE","status_expires":0},{"duration":1440,"qos_overwrite":false,"note":null,"code":"0579279641","for_hotspot":false,"create_time":1627921177,"quota":1,"site_id":"5cadc7f53b6a3967dd7e5369","_id":"61081b1997578402177f708d","admin_name":"e","used":0,"status":"VALID_ONE","status_expires":0}]
im log ist der erste eintrag ein test mit 123... - wurde wohl angelegt - damit funktioniert es wohl
-
die info mit dem port dazu müsste ich ja den code ändern.
die letzte info mit den funktionen ist nützlich. wie bekommst die anzeige hin? mir wird das in github nicht angezeigt
-
@kmxak
das weiß ich nichtwar einfach da - wie sieht es bei dir aus