Pfad wird nicht korrekt übernommen bei editFileList

Begonnen von igami, 12 Dezember 2016, 07:19:32

Vorheriges Thema - Nächstes Thema

igami

Hi zusammen,

um nicht zu vergessen was ich wann geänder habe, habe ich mir ein changelog angelegt.

defmod changelog_FileLog FileLog ./log/changelog-%Y.log igami.*.*
attr changelog_FileLog room changelog

defmod igami dummy
attr igami group changelog
attr igami room changelog
attr igami stateFormat {return ""}
attr igami userReadings state {delete $defs{$name}->{READINGS}{state};; return;;}

Nun wollte ich gerne das changelog auch manuell bearbeiten können und habe im FHEMWEB das Attribut editFileList vergeben

attr WEB editFileList Own modules and helper files:$MW_dir:^(.*sh|[0-9][0-9].*Util.*pm|98_archetype.pm|.*cfg|.*holiday|myUtilsTemplate.pm|.*layout)$\
changelogs:"./log":^changelog.*log$\
Gplot files:$FW_gplotdir:^.*gplot$\
Styles:$FW_cssdir:^.*(css|svg|js)$\
Modules:$MW_dir:^([0-8][0-9]|9[0-9]).*.pm$\

Bei Edit files wird auch alles korrekt angezeigt. Klicke ich dann aber auf das changelog bekomme ich die Fehlermeldung "Can't open ./FHEM/changelog-2016.log: No such file or directory". Hier ist der Pfad nicht mehr "./log" sondern "./FHEM".

Das ist bestimmt nicht so gewollt.

Grüße
igami
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

rudolfkoenig

ZitatDas ist bestimmt nicht so gewollt.
Das ist diskussionswuerdig. Aus Sicherheitsgruenden werden fuer die Anzeige/Bearbeitung
- *.js/*.css/*_defs.svg Dateien aus www/pgm2
- *.png/*.svg aus www/images
- *.gplot aus www/gplot
- alles andere aus dem FHEM
Verzeichnis genommen. Dass auch die Auflistung diese Regel folgen sollte, ist eine andere Baustelle.

igami

Dann eine andere Frage:
Wofür ist das Attribut dann gedacht, wenn ich nur eine Liste bekomme die Dateien aber weder einsehen, noch bearbeiten kann?
Den Pfad gebe ich ja mit an.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

rudolfkoenig

ZitatWofür ist das Attribut dann gedacht, wenn ich nur eine Liste bekomme die Dateien aber weder einsehen, noch bearbeiten kann?
Um die Default-Liste kuerzen zu koennen.
Dass jemand Log-Dateien editieren will, daran habe ich nicht gedacht.

igami

Spricht denn etwas dagegen das so zu bauen, dass es auch für neue Pfade möglich ist? Gibt hier ja auch einige Threads wo user gerne die Dateien für die Tablet UI direkt aus FHEM heraus bearbeiten möchten, das wäre damit ja dann möglich.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

rudolfkoenig

Habe keine konkrete Idee, wie ich das etwas an Sicherheit mit Flexibilitaet verbinden soll.
Kannst du mal ein Patch dafuer bauen?

igami

Ich kann mal schauen ob ich eine Idee habe, aber einen patch kann ich nicht erstellen, da ich mit SVN nicht umgehen kann.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED


igami

Danke, das kannte ich noch nicht, ist ja wirklich einfach :)
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

JoeALLb

Zitat von: igami am 13 Dezember 2016, 12:50:35
Spricht denn etwas dagegen das so zu bauen, dass es auch für neue Pfade möglich ist? Gibt hier ja auch einige Threads wo user gerne die Dateien für die Tablet UI direkt aus FHEM heraus bearbeiten möchten, das wäre damit ja dann möglich.

Ich schließe mich dem an, vorallem ftui-Konrigurationsseiten wären schön, wenn man auch am Handy kleinere Änderungen vornehmen könnte.

Die Sicherheitsaspekte teile ich nur bedingt: Ich kann mit fhem so viel sicherheitsrelevanten Quatsch machen, dass es auf diese Stelle meiner Meinung nach nicht ankommt....
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

Rampler

#10
Hallo zusammen,
gibts da schon was neues ? Hätte da auch Interesse....
Log Dateien, aber auch meine tempList in /opt/FHEM/hminfo/ wären nett.

Merkwürdig ist, angelistet werden die Dateien, jedoch editieren oder ansehen geht nicht...
Temperatur Liste:"./hminfo":^tempList$
Log Files:"./log":^.*log$


bis die Tage
  Klaus

EDIT:
tempList habe ich mit einem smybolic link gelöst, bei den log's fällt mir leider nix ein ..
ln -s /opt/fhem/hminfo/tempList /opt/fhem/FHEM/tempList
3 HMUART (2 via ESP8266), 1 DUOFERN, 9 ESP8266, RPI2 (Bullseye), ZWAVE, HM-Classic, und hoch zufrieden ...
Danke an alle, die was dazu beigetragen haben !!

betateilchen

spätestens wenn jemand mit configDB arbeitet, wird das Ganze höchstwahrscheinlich scheitern... (ohne das jetzt geprüft zu haben)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

JoeALLb

FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

betateilchen

#13
Quatsch. Das ist doch kein ursächliches Problem der eingesetzten Speichervariante.

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

hartenthaler

Zitat von: hartenthaler am 26 Januar 2017, 22:37:33
Mit dem Attribut editFileList kann man bestimmen was im Menü unter "Edit files" angezeigt werden soll. Der zweite Parameter pro Block/Zeile ist der Dateipfad. In der commandref sind drei Beispiele genannt, etwa $MW_dir. Ich bekomme es aber nicht hin Dateien anzuzeigen, die in /opt/fhem/FHEM/rivescript/ liegen. Also beim folgenden Inhalt des Attributes editFileList funktionieren die Zeilen 1 und 3 bis 5, aber nicht die Zeile 2 (der Block wird angezeigt, aber er ist immer leer und das liegt nicht am regulären Ausdruck im dritten Parameter und auch nicht an den Dateirechten)

Konfiguration:$MW_dir:^(.*cfg)$
Chatbot:/opt/fhem/FHEM/rivescript/:^(.*rive|.*rs)$
Hilfsdateien:$MW_dir:^(.*sh|[0-9][0-9].*Util.*pm|.*holiday|myUtilsTemplate.pm|.*layout)$
Diagramme:$FW_gplotdir:^.*gplot$
Formatvorlagen:$FW_cssdir:^.*(css|svg)$


Ich habe ohne Erfolg als Pfadangabe im zweiten Parameter folgendes versucht

/opt/fhem/FHEM/rivescript
/opt/fhem/FHEM/rivescript/
rivescript
$MW_dir/rivescript
$MW_dir/rivescript/


Wie muss der Pfad spezifiziert werden?

igami hat mich darauf aufmerksam gemacht, dass das Thema bereits hier diskutiert wird. Ich habe meine Rivescript-Konfigurationsdateien in einem Unterverzeichnis von FHEM abgelegt (FHEM/rivescript). Da ich an diesen Dateien ständig arbeite (Chatbot-Dialog) möchte ich sie gerne über "Edit files" erreichen. Schaffe es aber noch nicht einmal, dass die Dateien in diesem Unterverzeichnis sichtbar werden. Ein Sicherheitsproblem kann ich hier nicht erkennen. Warum funktioniert das Attribut nicht so wie es in der commandref beschrieben ist?
fhem 5.8 auf RaspberryPi 3 mit HMLAN und CCU2, ZWave, JeeLink, FHZ1000 für FS20, HMS, Fritz!Box, Fritz!DECT200, Harmony, Sonos, hue, netatmo, SSCam, Wetter- und Verkehrsmodule, Chat-Bot mit RiveScript/Telegram, IFTTT, pushover, ...