NEWS
Adapter: ioBroker.unifi
-
@thewhobox sagte in Adapter: ioBroker.unifi:
const request = require('request').defaults({ rejectUnauthorized: false });
18:10:40.222 error javascript.0 script.js.Heiko.04Telegram.Unifi: SyntaxError: Unexpected token o in JSON at position 1 18:10:40.222 error javascript.0 at Request.request.get [as _callback] (script.js.Heiko.04Telegram.Unifi:29:31)
-
-
javascript.0 2019-08-26 18:12:12.553 error at endReadableNT (_stream_readable.js:1145:12) javascript.0 2019-08-26 18:12:12.553 error at IncomingMessage.emit (events.js:203:15) javascript.0 2019-08-26 18:12:12.553 error at Object.onceWrapper (events.js:286:20) javascript.0 2019-08-26 18:12:12.553 error at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/iobroker.javascript/node_modules/request/request.js:1083:12) javascript.0 2019-08-26 18:12:12.553 error at Request.emit (events.js:198:13) javascript.0 2019-08-26 18:12:12.553 error at Request.<anonymous> (/opt/iobroker/node_modules/iobroker.javascript/node_modules/request/request.js:1161:10) javascript.0 2019-08-26 18:12:12.553 error at Request.emit (events.js:198:13) javascript.0 2019-08-26 18:12:12.553 error at Request.self.callback (/opt/iobroker/node_modules/iobroker.javascript/node_modules/request/request.js:185:22) javascript.0 2019-08-26 18:12:12.553 error at Request.request.get [as _callback] (script.js.Heiko.04Telegram.Unifi:29:31) javascript.0 2019-08-26 18:12:12.553 error at JSON.parse (<anonymous>:null:null) javascript.0 2019-08-26 18:12:12.552 error script.js.Heiko.04Telegram.Unifi: SyntaxError: Unexpected token o in JSON at position 1 javascript.0 2019-08-26 18:12:12.552 info script.js.Heiko.04Telegram.Unifi: {'statusCode':401,'body':'{\'meta\':{\'rc\':\'error\',\'msg\':\'api.err.LoginRequired\'},\'data\':[]}','headers':{'cache-control':'private','expires':'Thu, 01 Jan 19
-
@thewhobox
falls nützlich: info vor fehlerjavascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN1: {'statusCode':401,'body':'{\'meta\':{\'rc\':\'error\',\'msg\':\'api.err.LoginRequired\'},\'data\':[]}','headers':{'cache-control':'private','expires':'Thu, 01 Jan 1970 00:00:00 GMT','vary':'Origin','access-control-allow-credentials':'true','access-control-expose-headers':'Access-Control-Allow-Origin,Access-Control-Allow-Credentials','x-frame-options':'DENY','content-type':'application/json;charset=UTF-8','content-length':'63','date':'Mon, 26 Aug 2019 16:15:40 GMT','connection':'close'},'request':{'uri':{'protocol':'https:','slashes':true,'auth':null,'host':'192.168.178.157:8443','port':'8443','hostname':'192.168.178.157','hash':null,'search':null,'query':null,'pathname':'/api/s/default/rest/wlanconf/5cadxxxxxxxxxxxxd7e5381','path':'/api/s/default/rest/wlanconf/5cadxxxxxxxxxxdd7e5381','href':'https://192.168.178.157:8443/api/s/default/rest/wlanconf/5cadca8e3b6a3967dd7e5381'},'method':'GET','headers':{}}}
-
@liv-in-sky
@thewhobox
das aus aus dem Log unterm Script26.8.2019, 18:16:40.833 [info ]: javascript.0 Start javascript script.js.Heiko.Unifi.unifi_wifi 26.8.2019, 18:16:40.833 [info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: registered 0 subscriptions and 0 schedules 26.8.2019, 18:16:41.126 [info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: Login war erfolgreich! 26.8.2019, 18:16:41.149 [info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: Status erfolgreich geholt! 26.8.2019, 18:16:41.149 [info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: {'statusCode':401,'body':'{\'meta\':{\'rc\':\'error\',\'msg\':\'api.err.LoginRequired\'},\'data\':[]}','headers':{'cache-control':'private','expires':'Thu, 01 Jan 1970 00:00:00 GMT','vary':'Origin','access-control-allow-credentials':'true','access-control-expose-headers':'Access-Control-Allow-Origin,Access-Control-Allow-Credentials','x-frame-options':'DENY','content-type':'application/json;charset=UTF-8','content-length':'63','date':'Mon, 26 Aug 2019 16:16:41 GMT','connection':'close'},'request':{'uri':{'protocol':'https:','slashes':true,'auth':null,'host':'192.168.180.110:8443','port':'8443','hostname':'192.168.180.110','hash':null,'search':null,'query':null,'pathname':'/api/s/default/rest/wlanconf/5d3c5be0bc96040011365fe5','path':'/api/s/default/rest/wlanconf/5d3c5be0bc96040011365fe5','href':'https://192.168.180.110:8443/api/s/default/rest/wlanconf/5d3c5be0bc96040011365fe5'},'method':'GET','headers':{}}} 26.8.2019, 18:16:41.149 [error]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: SyntaxError: Unexpected token o in JSON at position 1 26.8.2019, 18:16:41.149 [error]: javascript.0 at Request.request.get [as _callback] (script.js.Heiko.Unifi.unifi_wifi:29:31)
-
@dslraser Okay, dann speichert er leider den Login cookie nicht automatisch. Muss ich mir heute Abend nochmal anschauen
-
@dslraser @liv-in-sky Könnte einer von euch mal nach "Login erfolgreich" folgende Zeilen einfügen?
console.log('HEADERS: ' + JSON.stringify(resp.headers)); onsole.log('Cookies: ' + resp.getHeader("Set-Cookie"));
-
moin @thewhobox
-
@liv-in-sky Moin. Danke fürs ausprobieren. Hier nochmal das angepasste Script für die cookies.
Edit: Siehe unten -
@thewhobox - danke fürs programmieren
jetzt kommt der erste fehler wieder
bei "const request = require('request');"
10:08:00.824 info javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN1 10:08:01.924 info javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN1 10:08:01.924 info javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN1: registered 0 subscriptions and 0 schedules 10:08:01.941 info javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN1: Login Fehler! Error: self signed certificate 10:08:03.833 info javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN1
bei "const request = require('request').defaults({ rejectUnauthorized: false });"
-
@thewhobox sagte in Adapter: ioBroker.unifi:
let cookies = [];
bei mir auch10:15:42.843 info javascript.0 script.js.Heiko.Unifi.unifi_wifi: Login war erfolgreich! 10:15:42.843 info javascript.0 script.js.Heiko.Unifi.unifi_wifi: Cookies: ["unifises=GyZZk8h1ERsg5Kn9AeYyD2sL5Lcduutx","csrf_token=dKB4b1jFoeScvPlh97hKMywEdt1oUdBI"] 10:15:42.893 info javascript.0 script.js.Heiko.Unifi.unifi_wifi: Status erfolgreich geholt! 10:15:42.893 info javascript.0 script.js.Heiko.Unifi.unifi_wifi: {'statusCode':200,'body':'{\'meta\':{\'rc\':\'ok\'},\'data\':[{\'_id\':\'5d3c5be0bc96040011365fe5\',\'enabled\':true,\'security\':\'open\',\'wep_idx\':1,\'wpa_mode\':\'wpa2\',\'wpa_enc\':\'ccmp\',\'usergroup_id\':\'5d3b2323bc9604001132d2c5\',\'dtim_mode\':\'default\',\'dtim_ng\':1,\'dtim_na\':1,\'minrate_ng_enabled\':false,\'minrate_ng_advertising_rates\':false,\'minrate_ng_data_rate_kbps\':1000,\'minrate_ng_cck_rates_enabled\':true,\'minrate_na_enabled\':false,\'minrate_na_advertising_rates\':false,\'minrate_na_data_rate_kbps\':6000,\'mac_filter_enabled\':false,\'mac_filter_policy\':\'allow\',\'mac_filter_list\':[],\'bc_filter_enabled\':false,\'bc_filter_list\':[],\'group_rekey\':3600,\'name\':\'Hübis Gäste\',\'is_guest\':true,\'x_passphrase\':\'dashieristprivat\',\'wlangroup_id\':\'5d3b2323bc9604001132d2c6\',\'schedule\':[],\'minrate_ng_mgmt_rate_kbps\':1000,\'minrate_na_mgmt_rate_kbps\':6000,\'minrate_ng_beacon_rate_kbps\':1000,\'minrate_na_beacon_rate_kbps\':6000,\'site_id\':\'5d3b231abc9604001132d2b8\',\'x_iapp_key\':\'0613db2263d118bc9e21936a202a964e\',\'fast_roaming_enabled\':false,\'no2ghz_oui\':true}]}','headers':{'cache-control':'private','expires':'Thu, 01 Jan 1970 00:00:00 GMT','vary':'Origin,Accept-Encoding','access-control-allow-credentials':'true','access-control-expose-headers':'Access-Control-Allow-Origin,Access-Control-Allow-Credentials','x-frame-options':'DENY','content-type':'application/json;charset=UTF-8','content-length':'1000','date':'Tue, 27 Aug 2019 08:15:42 GMT','connection':'close'},'request':{'uri':{'protocol':'https:','slashes':true,'auth':null,'host':'192.168.180.110:8443','port':'8443','hostname':'192.168.180.110','hash':null,'search':null,'query':null,'pathname':'/api/s/default/rest/wlanconf/5d3c5be0bc96040011365fe5','path':'/api/s/default/rest/wlanconf/5d3c5be0bc96040011365fe5','href':'https://192.168.180.110:8443/api/s/default/rest/wlanconf/5d3c5be0bc96040011365fe5'},'method':'GET','headers':{'Cookie':'unifises=GyZZk8h1ERsg5Kn9AeYyD2sL5Lcduutx; csrf_token=dKB4b1jFoeScvPlh97hKMywEdt1oUdBI'}}} 10:15:42.893 error javascript.0 script.js.Heiko.Unifi.unifi_wifi: SyntaxError: Unexpected token o in JSON at position 1 10:15:42.893 error javascript.0 at Request.request.get [as _callback] (script.js.Heiko.Unifi.unifi_wifi:39:31)
-
@liv-in-sky Ja hast recht. Hab den teil vergessen zu ändern.
Hab das Skript oben angepasst. einfach mal dasJSON.parse
weg lassen. -
Unexpected token o in JSON at position 1
Ich habe keine Ahnung davon, aber wenn ich google dazu befrage, dann kommt Sinngemäß oft die Antwort, das es schon ein Objekt ist und man es direkt verwenden kann und nicht parsen braucht ?
Danke für die Mühe.
-
@dslraser Ja das stimmt. Hab das Skript oben angepasst.
-
@thewhobox cool - läuft
könntest du das ein und ausschalten auch noch für uns machen
javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN1: WLAN ist: an
-
@liv-in-sky okay super Kann ich später machen.
-
@thewhobox
klappt10:33:43.645 info javascript.0 script.js.Heiko.Unifi.unifi_wifi: Login war erfolgreich! 10:33:43.645 info javascript.0 script.js.Heiko.Unifi.unifi_wifi: Cookies: ["unifises=JA7z7GVM4cnOB6sZnqkcjBFBFpFzJw5S","csrf_token=GcAjwdvcY6hc58t6E4gLi4X3X7g490mn"] 10:33:43.689 info javascript.0 script.js.Heiko.Unifi.unifi_wifi: Status erfolgreich geholt! 10:33:43.690 info javascript.0 script.js.Heiko.Unifi.unifi_wifi: {'statusCode':200,'body':'{\'meta\':{\'rc\':\'ok\'},\'data\':[{\'_id\':\'5d3c5be0bc96040011365fe5\',\'enabled\':true,\'security\':\'open\',\'wep_idx\':1,\'wpa_mode\':\'wpa2\',\'wpa_enc\':\'ccmp\',\'usergroup_id\':\'5d3b2323bc9604001132d2c5\',\'dtim_mode\':\'default\',\'dtim_ng\':1,\'dtim_na\':1,\'minrate_ng_enabled\':false,\'minrate_ng_advertising_rates\':false,\'minrate_ng_data_rate_kbps\':1000,\'minrate_ng_cck_rates_enabled\':true,\'minrate_na_enabled\':false,\'minrate_na_advertising_rates\':false,\'minrate_na_data_rate_kbps\':6000,\'mac_filter_enabled\':false,\'mac_filter_policy\':\'allow\',\'mac_filter_list\':[],\'bc_filter_enabled\':false,\'bc_filter_list\':[],\'group_rekey\':3600,\'name\':\'Hübis Gäste\',\'is_guest\':true,\'x_passphrase\':\'dashieristprivat\',\'wlangroup_id\':\'5d3b2323bc9604001132d2c6\',\'schedule\':[],\'minrate_ng_mgmt_rate_kbps\':1000,\'minrate_na_mgmt_rate_kbps\':6000,\'minrate_ng_beacon_rate_kbps\':1000,\'minrate_na_beacon_rate_kbps\':6000,\'site_id\':\'5d3b231abc9604001132d2b8\',\'x_iapp_key\':\'0613db2263d118bc9e21936a202a964e\',\'fast_roaming_enabled\':false,\'no2ghz_oui\':true}]}','headers':{'cache-control':'private','expires':'Thu, 01 Jan 1970 00:00:00 GMT','vary':'Origin,Accept-Encoding','access-control-allow-credentials':'true','access-control-expose-headers':'Access-Control-Allow-Origin,Access-Control-Allow-Credentials','x-frame-options':'DENY','content-type':'application/json;charset=UTF-8','content-length':'1000','date':'Tue, 27 Aug 2019 08:33:43 GMT','connection':'close'},'request':{'uri':{'protocol':'https:','slashes':true,'auth':null,'host':'192.168.180.110:8443','port':'8443','hostname':'192.168.180.110','hash':null,'search':null,'query':null,'pathname':'/api/s/default/rest/wlanconf/5d3c5be0bc96040011365fe5','path':'/api/s/default/rest/wlanconf/5d3c5be0bc96040011365fe5','href':'https://192.168.180.110:8443/api/s/default/rest/wlanconf/5d3c5be0bc96040011365fe5'},'method':'GET','headers':{'Cookie':'unifises=JA7z7GVM4cnOB6sZnqkcjBFBFpFzJw5S; csrf_token=GcAjwdvcY6hc58t6E4gLi4X3X7g490mn'}}} 10:33:43.690 info javascript.0 script.js.Heiko.Unifi.unifi_wifi: WLAN ist: an
-
@thewhobox noch ne frage:
kann ich die function getStatus auch dafür benutzen (ohne header) , um mit dem simpleapi adapter eines anderen iobroker zu kommunizieren ? -
@liv-in-sky Jain, da die Funktion nur auf die spezielle zurückgabe vom Unifi Controller angepasst ist.
Du musst das im Callback anpassen und die Header weglassen.
Vereinfacht geht:request.get("http://192.168.0.xxx/get/system.adapter.admin.0.alive", (err, resp) => { if(!err) { let state = JSON.parse(resp); console.log("State hat den Wert: " + state.val); } else { console.log("Es trat ein Fehler auf: " + err); } })
-
@thewhobox danke dir - werd das mal testen