Autor Thema: LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)  (Gelesen 678153 mal)

Offline Malz1902

  • New Member
  • *
  • Beiträge: 27
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5670 am: 17 Juni 2021, 10:03:11 »
Hallo zusammen, gerne würde ich über ein Javaskript das Zeitprogramm ändern. Mein BSB Lan ist via User und PW gesichert. Wie muss der URL Aufruf aussehen?

request('http://ip-bsblan/S501=06:00-22:00_xx:xx-xx:xx_xx:xx-xx:xx'
Dies klappt leider nicht, irgendwie müsste ich noch User/PW mitgeben, aber leider finde ich dazu keine Infos

Offline freetz

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1947
    • GitHub Projektseite für BSB-LAN und Robotan
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5671 am: 17 Juni 2021, 10:09:59 »
Das kommt auf den Browser an, ob das (noch) geht, ansonsten wäre der Aufruf
http://username:password@ip-bsblan/...
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/bsb_lan

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

Offline Malz1902

  • New Member
  • *
  • Beiträge: 27
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5672 am: 17 Juni 2021, 10:17:13 »
das klappt leider nicht, trotzdem danke

Offline freetz

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1947
    • GitHub Projektseite für BSB-LAN und Robotan
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5673 am: 17 Juni 2021, 10:21:09 »
Ja, die meisten Browser haben diese Funktion aus Sicherheitsgründen deaktiviert, weil darüber ja Zugangsdaten im Klartext stehen, und vermutlich klappt das dann auch in JavaScript nicht mehr. Ärgert mich auch, ein Ausweichen wäre der Aufruf eines Scriptes, das dann wiederum BSB-LAN mit den Zugangsdaten kontaktiert und die Ausgabe an das JavaScript weitergibt.
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/bsb_lan

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

Offline sust

  • Jr. Member
  • **
  • Beiträge: 99
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5674 am: 17 Juni 2021, 12:37:07 »
Also das geht bei mir noch in der 2.093 und in der V0.44 auch:

http://<ip-bsblan>/<password>/S500=06:00-22:30

Damit das geht darf der User-Name nicht gesetzt sein.

Stellt sich natürlich die Frage, ob das so für das Vorhaben von Malz1904 "reicht" und ob man sich das Sicherheitsrisiko antun will...

Offline freetz

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1947
    • GitHub Projektseite für BSB-LAN und Robotan
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5675 am: 17 Juni 2021, 12:52:43 »
Das sind zwei verschiedene Sachen, Du beschreibst den Passcode (als Teil der URL), Malz1904 geht es um die HTTP-Authentifizierung.
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/bsb_lan

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

Offline sust

  • Jr. Member
  • **
  • Beiträge: 99
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5676 am: 17 Juni 2021, 17:55:48 »
Ja, das stimmt freetz, mein beschriebener Weg ist ein anderer. und auch wesentlich unsicherer....
Ich hatte den 1. Beitrag von Malz1902 zu dem Thema so verstanden, das es ihm primär um das setzten des 501er per URL geht.
 

Offline Malz1902

  • New Member
  • *
  • Beiträge: 27
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5677 am: 18 Juni 2021, 10:44:03 »
@sust ja es geht um das Setzen von dem Parameter via URL aufruf über ein Javascript, da aber der BSB Lan Zugang mit User/Passwort gesichert ist, müsste ich das an der Stelle irgendwie mit übergeben

Offline sust

  • Jr. Member
  • **
  • Beiträge: 99
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5678 am: 18 Juni 2021, 19:37:27 »
@malz1902 Wenn du an der HTTP Authentification festhalten musst und die Absicherung mit Passcode zu schwach ist, wirds schwierig.
Ich weiß da keinen anderen Weg...
Evtl. gibts ja aber noch irgendwo einen Browser der funktioniert.

Offline tiger42

  • New Member
  • *
  • Beiträge: 3
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5679 am: 19 Juni 2021, 15:25:00 »
Die HTTP Basic Authentifizierung ist eigentlich gar kein Hindernis für JavaScript. Das Problem ist vielmehr, dass der BSB-LAN HTTP Server keinen CORS Header (Access-Control-Allow-Origin) sendet. Dadurch funktioniert kein XMLHttpRequest, der in unserem Fall scheinbar nötig ist, um eine richtige Session aufzubauen.

Zuerst hab ich es mit mit einem Einzelrequest versucht, ohne Erfolg:

const fetchData = async (url, user, password) => {
    const response = await fetch(url, {
        method: 'GET',
        headers: { 'Authorization': 'Basic ' + btoa(`${user}:${password}`) },
        mode: 'no-cors',
    });

    return await response.text();
};

fetchData('http://bsb-lan/...', 'user', 'password')
.then(data => {
    console.log(data);
});

Dann die Version mit Session-Aufbau, die funktioniert bei mir auch nicht:

const fetchData = async (url, user, password) => {
    const xhr = new XMLHttpRequest();
    xhr.open('GET', url, false, user, password);
    xhr.send('');

    const response = await fetch(url, {
        method: 'GET',
    });

    return await response.text();
};

fetchData('http://bsb-lan/...', 'user', 'password')
.then(data => {
    console.log(data);
});

Ich bin mir aber ziemlich sicher, dass letztere Version funktionieren würde, wenn der Server einen "Access-Control-Allow-Origin" Header senden würde. Allerdings müsste man den jeweils spezifisch im Code anpassen, das allgemeine "Access-Control-Allow-Origin: *" dürfte laut Spezifikation nicht funktionieren, weil das im Zusammenspiel mit Credentials nicht erlaubt ist.
Vielleicht baut ja jemand den Header in den BSB-LAN Code ein und probiert das mal aus...

Offline freetz

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1947
    • GitHub Projektseite für BSB-LAN und Robotan
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5680 am: 19 Juni 2021, 16:09:48 »
Danke für die Info, ich erinnere mich, dass wir diesen allgemeinen Header schon aus Gründen der Fernabfrage hinzugefügt hatten, ich kenne mich mit den Details aber nicht so gut aus. Was müsste da konkret stehen, damit das funktioniert?
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/bsb_lan

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

Offline loetmeister

  • Full Member
  • ***
  • Beiträge: 403
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5681 am: 19 Juni 2021, 19:14:47 »
Hi,

müsste das nicht wie in diesem Beispiel funktionieren? Zwei GET Anfragen, die erste wird immer mit 401 beantwortet, die zweite schickt dann basic im header mit...
https://perlmaven.com/basic-authentication-with-lwp-useragent-and-http-request-common

Gruß,
Thomas

Offline tiger42

  • New Member
  • *
  • Beiträge: 3
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5682 am: 21 Juni 2021, 12:12:51 »
Danke für die Info, ich erinnere mich, dass wir diesen allgemeinen Header schon aus Gründen der Fernabfrage hinzugefügt hatten, ich kenne mich mit den Details aber nicht so gut aus. Was müsste da konkret stehen, damit das funktioniert?
Hier ist eine ganz gute Erklärung zur Funktionsweise des Headers: https://www.freecodecamp.org/news/access-control-allow-origin-header-explained/.
Kurz zusammengefasst: Der Header muss die Adresse(n) (inkl. Protokoll) der Seite(n) enthalten, von wo aus der Request per JavaScript erlaubt sein soll. Dies ist natürlich bei jedem anders, daher müsste jeder für sich den Header im BSB-LAN Code anpassen.

Offline n300

  • New Member
  • *
  • Beiträge: 16
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5683 am: 22 Juni 2021, 13:48:39 »
Frage in die Runde:
Was verwendet ihr denn als Signalkabel? Würde wirklich lieber wie beschrieben eher ein solches verlegen anstatt nem LAN-Kabel. Dann könnte ich mir auch ne weitere Steckdose im Heizraum sparen. Des Weiteren ist der "Kabelkanal" schon recht voll, da wäre ein dünnes Kabel auch weit einfacher zu verlegen.
Lt. Anleitung wird ja nen Kabel von min. 2x0,8mm² empfohlen. Verdrillt find ich sowas gar nicht. Wenn es denn nach Datenkabel ausschaut, ist der Querschnitt viel kleiner und meistens auch gleich 4Adrig. Wenn es ein geschirmtes Kabel ist müsste es doch mit nem dünneren Kabel auch passen, oder?
Brauche so ca. 10m, mit etwas Reserve würd ich 15m veranschlagen. Muss sozusagen in den übernächsten Raum, wo dann die nächste RJ45 Buchse ist.

Offline Schotty

  • Hero Member
  • *****
  • Beiträge: 1806
    • Handbuch zur BSB-LAN Hard- & Software (DE)
Antw:LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)
« Antwort #5684 am: 22 Juni 2021, 17:00:24 »
Hi,
wie ich im Handbuch erwähnt habe kommen mehrere Varianten in der Praxis zum Einsatz. Ich persönlich habe u.a. das erwähnte 2x0.75er Lautsprecherkabel sowie ein vieradriges Telefonkabel(?) in Benutzung, beides in etlichen Metern Länge. Funktioniert problemlos.
Bzgl Schirmung&/Verdrillung kommt es m.A.n. darauf an, ob du das Kabel im Kabelkanal meterlang direkt neben stromführende Kabel verlegst, denn das könnte Störungen hervorrufen.
Hast du denn schon/noch irgendwas doppeladriges in der gewünschten Länge und Stärke rumliegen, das noch in den Kabelkanal passen würde? Evtl Lautsprecherkabel? Dann einfach verlegen und testen..

Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

 

decade-submarginal