Symcon mit einem Apache Server verbinden

Hallo Leute, ich hätte da eine Frage. Ich bin Azubi in einer kleinen Firma, mein Ausbildungsleiter hat mir eine Spanende Aufgabe geben. Unzwar soll ich eine UI für unsere Symbox in der Firma erstellen. Ich versuche derzeit eine Verbindung mit einem Lokalen Apache Server und der Symbox herzustellen. Könnt ihr mir sagen wie ich das am besten machen soll?

Danke und Gute Nacht :slight_smile:

Hallo, grundsätzlich solltest Du die Aufgabe erst mal genauer definieren was Du machen sollst. Die Symbox mit IP-Symcon ist selber ein PHP Server, daher musst Du eigentlich nicht zusätzlich einen anderen PHP Server anbinden um eine eigene UI zu erstellen.
Schau doch erst mal ob Du nicht mit den Möglichkeiten die IP-Symcon selber mit dem WebFront Editor zur Verfügung stellt eine Oberfläche bauen kannst die die Anforderungen erfüllt.
Wenn Du Dir tatsächlich eine komplett eigene UI bauen willst mit eigenen PHP Seiten dann schaue Dir als Vorlagen Beispiel mal
Hookserve an.
Hier stellt dann IP-Symcon per Webhook die UI zur Verfügung. Da IP-Symcon selber PHP Server ist, bräuchtest Du auch in so einem Szenario keinen separaten Apache Server.
Hier findest Du auch ein Video zur Visualisierung mit IP-Symcon selber.

1 „Gefällt mir“

Hallo @furkan,

zusätzlich zum WebFront kannst Du auch noch coole Dashboards mit zum Beispiel Grafana bauen. Mit dem Grafana Modul und Grafana Cloud geht das sehr simpel. Allerdings kannst Du die Grafana Cloud Dashboards in der Free Version nicht ohne User Anmeldung sharen und in Webseiten einbetten. Aber zum Starten ist die Cloud Version top und wenn Du public Reports ohne Login benötigst kannst Du Subscription Kaufen oder die Open Source Variante on Premise installieren.

Gruß und viel Erfolg!
Dirk

Guten Morgen und Danke erstmal für die Antworten.

Es geht bei diesem Projekt in erster Linie darum, dass wir etwas lernen. Natürlich reicht das Webfront vollkommen für die meisten Sachen. Wir sollen z.B. lernen, wie man Frontend und Backend verbindet. Da wir nicht immer die Möglichkeit haben an Kundenprojekten zu arbeiten, ist das die perfekte Möglichkeit unser gelerntes anzuwenden. Meine Frage wäre: Wenn ich den in der Symbox integrierten Webserver zum laufen kriege, kann ich darauf einfach Scripte laufen lassen, die ohne weiteres funktionieren? Außerdem wie sieht es aus mit verschiedenen Frontend Bibliotheken wie z.B. React oder Bootstrap etc. kann ich diese auf den Server zum laufen bringen?

Ich glaube du lernst am meisten, wenn du es ausprobierst oder dir überlegst, was diese Frontend Bibliotheken denn überhaupt mit dem Backend zu tun haben/oder vom Backend benötigen.

Definitiv cool ist, dass du beim Nutzen von unserem WebServer nicht Tutorial XY abtippen kannst, sondern eine echte Transferleistung erbringen musst, damit das Projekt läuft. :smiley:

Wenn du konkrete Fragen oder Probleme hast, kannst du gerne hier fragen :slight_smile:

paresy

Danke für die Hilfe, ich werde mein bestes geben und bei Fragen mich melden :slight_smile:

Du kannst wie gesagt Vue, Jquery, Bootstrap usw. nutzten wie Du willst, siehe wie gesagt Hookserve als Beispiel.

Hey Leute, ich versuche derzeit mich mit meinem Server per JSONRPC mit der Symbox zu verbinden.
Ich habe das hier schon versucht: Class 'JSONRPC' not found
Aber ich bekomme immer noch diesen Error:
Fatal error : Uncaught Error: Class ‚JSONRPC‘ not found in C:\xampp\htdocs\SymconTest\index.php:5 Stack trace: #0 {main} thrown in C:\xampp\htdocs\SymconTest\index.php on line 5

Wenn ich JSONRPC in der Symcon Konsole laufen lassen will kriege ich diese Warnung:

Warning : file_get_contents(http://xxx/api/): failed to open stream: HTTP request failed! HTTP/1.1 401 Unauthorized in /mnt/symcon/scripts/__rpc.inc.php on line 89

Nimm mal die 127.0.0.1:3777/api/ als Adresse. Dann musst du dich nicht um die Authentifizierung kümmern. Hier noch mal erklärt: Datenaustausch — IP-Symcon :: Automatisierungssoftware

Für JSON RPC auf deinem Apache würde ich dir empfehlen einfach eine beliebige JSON-RPC Bibliothek zu nehmen. Dafür gibt es bestimmt mehr Tutorials.

paresy

Erstmal Danke für die schnelle Antwort, würdest du eine bestimmte Bibliothek empfehlen?

So auf die JSONRPC Klasse kann ich jetzt Zugreifen, aber ich bekomme die selbe Fehlermeldung, wie wenn ich es in der Symcon Konsole laufen lassen würde. Einen Passwort habe ich erstellt und den Server neugestartet.

Warning : file_get_contents(http://xxx:3777/api/): failed to open stream: HTTP request failed! HTTP/1.1 401 Unauthorized in /mnt/symcon/scripts/__rpc.inc.php on line 89

Und im xxx hast du alles korrekt kodiert wie in der Anleitung steht? Hat dein Kennwort hat Sonderzeichen? Diese musst du ggf. auch korrekt kodieren.

paresy

Die URL sieht wie folgt aus:

http://Vorname.Nachname%40Domain.de:Passwort@IP-Adresse:3777/api/

Das Passwort beinhaltet nur Buchstaben und Zahlen.
Die Domain beinhaltet auch Zahlen.

Nach %40 kommt direkt eine Zahl, kann das zu Problemen führen?

Ok ich habe %40 in @ umgeändert, es klappt jetzt in der Konsole und im eigenen PHP-Server, welches im Büro ist. Mit meinem Privaten Rechner klappt es nicht, liegt wahrscheinlich an der Firewall oder?

Hallo @furkan ,

vielleicht hilft Dir dieser Thread hier weiter.

Gruß Dirk