Hallo Horst,
leider funzt das nicht.
Was ich sicher weiss, ist dass die Kommunikation funktioniert. Es gibt noch eine weitere Adresse, mit der ich gewisse Basisdaten abfragen kann. Damit bekomme ich auch eine Ausgabe am Ausgang des Web-Request-Bausteins.
Weiter komme ich aber noch nicht. Selbst bei der Authentifizierung bekomme ich nichts raus.
Gibt es eine einfache Möglichkeit diese Authentifizierungs-Geschichte irgendwo einzugeben? Im Chrome funktioniert es schon mal nicht....
Vielleicht hilft ja noch ein "Javascript example for ioBroker"
1 var TimeInterval = setInterval ( MyJavascript ,5000) ;
2
3 function MyJavascript () {
4 var request = require (’request ’) ;
5 var user = " hycube ";
6 var password = " hycube ";
7 var options = {
8 url : ’http ://10.1.1.51/ auth /’,
9 headers : {
10 " Authorization ": Buffer . from (" Basic " + user + ":" + password ) . toString (’base64 ’)
11 } ,
12 body : ’ [...] ’
13 };
14 request . post ( options , function (error , response , body ) {
15 if ( error ) {
16 console .log ("Ein Fehler ist aufgetreten ")
17 } else {
18
19 var auth_token = body ;
20
21
22 var url = require (’request ’) ;
23 var options = {
24 url : ’http ://10.1.1.51/ get_values /’,
25 headers : {
26 " Authorization ": auth_token
27 } ,
28 body : ’ [...] ’
29 };
30
31 url . post ( options , function (error , response , body ) {
32 if ( error ) {
33 console .log ("Ein Fehler ist aufgetreten ")
34 } else {
35 var result = JSON . parse ( body ) ; 36
37
38
39 var GridPower = ( result [" Grid_P "]) ; 8
40 var BatteryPower = result [" Battery_P "];
41 var HausPower = result [" Home_P "];
42 var solar = result [" solar1_P "];
43
44 setState (’HyWeb . Batterie ’, BatteryPower ) ;
45 setState (’HyWeb . Grid ’, GridPower ) ;
46 setState (’HyWeb . Hausverbrauch ’, HausPower ) ;
47 setState (’HyWeb . Solar ’, solar ) ;
48
49 }
50 }) ;
51
52
53
54
55 }
56 }) ;
57
58
59 }
leider funzt das nicht.
Was ich sicher weiss, ist dass die Kommunikation funktioniert. Es gibt noch eine weitere Adresse, mit der ich gewisse Basisdaten abfragen kann. Damit bekomme ich auch eine Ausgabe am Ausgang des Web-Request-Bausteins.
Weiter komme ich aber noch nicht. Selbst bei der Authentifizierung bekomme ich nichts raus.
Gibt es eine einfache Möglichkeit diese Authentifizierungs-Geschichte irgendwo einzugeben? Im Chrome funktioniert es schon mal nicht....
Vielleicht hilft ja noch ein "Javascript example for ioBroker"
1 var TimeInterval = setInterval ( MyJavascript ,5000) ;
2
3 function MyJavascript () {
4 var request = require (’request ’) ;
5 var user = " hycube ";
6 var password = " hycube ";
7 var options = {
8 url : ’http ://10.1.1.51/ auth /’,
9 headers : {
10 " Authorization ": Buffer . from (" Basic " + user + ":" + password ) . toString (’base64 ’)
11 } ,
12 body : ’ [...] ’
13 };
14 request . post ( options , function (error , response , body ) {
15 if ( error ) {
16 console .log ("Ein Fehler ist aufgetreten ")
17 } else {
18
19 var auth_token = body ;
20
21
22 var url = require (’request ’) ;
23 var options = {
24 url : ’http ://10.1.1.51/ get_values /’,
25 headers : {
26 " Authorization ": auth_token
27 } ,
28 body : ’ [...] ’
29 };
30
31 url . post ( options , function (error , response , body ) {
32 if ( error ) {
33 console .log ("Ein Fehler ist aufgetreten ")
34 } else {
35 var result = JSON . parse ( body ) ; 36
37
38
39 var GridPower = ( result [" Grid_P "]) ; 8
40 var BatteryPower = result [" Battery_P "];
41 var HausPower = result [" Home_P "];
42 var solar = result [" solar1_P "];
43
44 setState (’HyWeb . Batterie ’, BatteryPower ) ;
45 setState (’HyWeb . Grid ’, GridPower ) ;
46 setState (’HyWeb . Hausverbrauch ’, HausPower ) ;
47 setState (’HyWeb . Solar ’, solar ) ;
48
49 }
50 }) ;
51
52
53
54
55 }
56 }) ;
57
58
59 }
Kommentar