Ordnerpfad mit Leerzeichen

Begonnen von Pankbert, 15 März 2017, 20:24:27

Vorheriges Thema - Nächstes Thema

Pankbert

Hallo Zusammen,
ich steh vor folgendem Problem.
Ich habe eine Kamera die mir Bilder auf meinen FTP bei Bewegung speichert.
Jetzt habe ich auf den Ordner auf dem FTP ein Skript laufen das mir diesen Pfad Überwacht und bei einem neuen Bild einen Dummy in FHEM setzt.
Das funktioniert auch soweit gut.
Jetzt wollte ich dieses Event dazu nutzen um mir das Bild per Telegram auf mein Handy zu schicken und benutze folgendes Notify dazu :

Cam.Bewegung:current_file:.* set Telebot sendImage '/var/www/upload/camera/FI9821W V2_00626E512F76/snap/$EVTPART1'

Das Problem das ich habe der Telebot versucht mit auch das Bild zu schicken findet aber den Pfad des Ordners nicht weil in der Ordnerbezeichnung "FI9821W V2_00626E512F76" ein Leerzeichen enthalten ist.

Ich habe auch schon diverse Schreibweisen probiert die alle aber nicht zum erfolg geführt haben.
wie z.B 

Cam.Bewegung:current_file:.* set Telebot sendImage '/var/www/upload/camera/FI9821W\ V2_00626E512F76/snap/$EVTPART1'

oder

Cam.Bewegung:current_file:.* set Telebot sendImage '"/var/www/upload/camera/FI9821W V2_00626E512F76/snap/"$EVTPART1'

Ich kann auch die Ornderbezeichnung nicht ändern weil diese meine Kamera automatisch generiert.

Kennt hier jemand eine Lösung um FHEM zu sagen das hier ein Leerzeichen beachtet werden soll.

Gruß


DeeSPe

Hast Du probiert das Leerzeichen zu escapen?
set Telebot sendImage /var/www/upload/camera/FI9821W\ V2_00626E512F76/snap/$EVTPART1

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Pankbert

#2
Danke für deine Antwort

Ja ich habe es auch schon mit escapen probiert.
Hat aber nichts gebracht

SamNitro

evtl anstelle des Leerzeichen ein %20
(Intel-Nuc Proxmox) (Homematic) (EnOcean) (CUL868) (CUL433) (Zigbee2MQTT) (ESP8266) (Echo) (DUOFERN)

viegener

Zitat von: SamNitro am 15 März 2017, 22:35:51
evtl anstelle des Leerzeichen ein %20

Ja genau - urlescaping wird für Dateinamen unterstützt, kommt auch noch in die Doku ...
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Pankbert

Danke für eure Antworten


OUT.Bewegung:current_file:.* set Telebot sendImage /var/www/upload/camera/FI9821W%20V2_00626E512F76/snap/CREATE.jpg

%20 hat leider auch nicht zum Erfolg geführt.
Hat noch jemand eine Idee

viegener

habe es gerade nochmal bei mir probiert funktioniert mit %20 auch innerhalb eines notify - Ich vermute Dein FHEM hat vielleicht kein Recht auf die Datei zuzugreifen?

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Pankbert

Hmm,
Fhem will dann im Verzeichniss
/var/www/upload/camera/FI9821W%20 suchen.
Berechtigungen sollten eigentlich da sein.

viegener

Zitat von: Pankbert am 19 März 2017, 09:20:00
Hmm,
Fhem will dann im Verzeichniss
/var/www/upload/camera/FI9821W%20 suchen.
Berechtigungen sollten eigentlich da sein.

Woher nimmst Du die Information, dass fhem in dem Verzeichnis suchen will?
Bist Du sicher, dass nach dem %20 kein Leerzeichen hast?
Ist Deine Installation aktuell?
Funktioniert es ohne notify direkt in FHEMweb als Kommando?

Wie gesagt, ich habe es verifiziert, dass es urlescaping unterstützt und auch mit entsprechenden Verzeichnissen bei mir ausprobiert
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Pankbert

#9
ZitatWoher nimmst Du die Information, dass fhem in dem Verzeichnis suchen will?
Aus dem Eventlog

Fhem ist auf dem neusten Stand.

ich gebe folgenden Befehl in die Komandozeile ein
Zitatset Telebot sendImage /var/www/upload/camera/FI9821W%20V2_00626E512F76/snap/CREATE.jpg
Und im Eventlog schreibt er mir
ZitatTelegramBot Telebot sentMsgResult: NonBlockingGet: returned FAILED file :/var/www/upload/camera/FI9821W%20V2_00626E512F76/snap/CREATE.jpg: not found or empty
Die Datei liegt auch in dem Ordner drin.

Ich habs auch schon mit
Zitatset Telebot sendImage /var/www/upload/camera/CREATE.jpg
probiert , da funktionierte es.


viegener

Nur zur Sicherheit: attribut filenameUrlEscape ist gesetzt?

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Pankbert

OK,
daran hat es gelegen.
das muss ich irgendwie überlesen haben.

Vielen Dank für deine Geduld @viegener  ;)