Hauptmenü

99_myUtils

Begonnen von Stony, 14 Oktober 2015, 01:59:42

Vorheriges Thema - Nächstes Thema

Stony

Hallo, ich habe gerade angefangen in die FHEM Themen vor zu dringen.
Speziell - weil aktuell - Backup von FHEM(Raspi ) auf NAS-LW zu sichern.

manuell - Backup starten - file nach NAS kopieren .... das geht.

Ich hätte das aber gerne mit FHEM automatisiert. Code Beispiel aus dem WIKI:
http://www.fhemwiki.de/wiki/Backup in dem Config File und 99_myUtils
eingebaut (Kopy & Paste) Ergebniss:
Den Raum Server gibts - Backup kann ausgeführt werden... der Datei Pfad passt noch nicht aber es funzt
beim speichern der 99_myUtils Fehler: syntax error at ./FHEM/99_myownUtils.pm line 38, near "1"
auch wenn NEAR eine durchaus variable Angabe ist und das Perl Wiki befragt wurde
-> ich kann nix finden. Der Fehler bleibt.

ich hoffe es weis einer von euch Rat. Gruss Stony

99_myUtils... CODE:
#############################################
# $Id: myUtilsTemplate.pm 7570 2015-01-14 18:31:44Z rudolfkoenig $
#
# Save this file as 99_myUtils.pm, and create your own functions in the new
# file. They are then available in every Perl expression.

package main;

use strict;
use warnings;
use POSIX;

sub myownUtils_Initialize($$)
{
  my ($hash) = @_;
}

# Enter you functions below _this_ line.

#########################################################################
## Funktion......: FHEM Backup
## Besonderheiten: Anzeige der vorhandenen Backups im dummy
#########################################################################
SYS_Backup:* {
fhem("backup");;
opendir DIR, "/mnt/fbbackup/PIBACKUP" or die $!;;
my $mybackups = "";;
while(my $file = readdir DIR){
  next if($file eq "." || $file eq "..");;
  $mybackups = $mybackups."$file
";;
}
closedir DIR;;
fhem("set SYS_Backup ".$mybackups);;
}
#########################################################################
1;

Rince

Zitatsyntax error at ./FHEM/99_myownUtils.pm line 38, near "1"

Der Fehler scheint in der Datei 99_myownUtils.pm zu liegen. Nicht in der von dir geposteten 99_myUtils.pm.  8)
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

Klaus Rubik

Warum so kompliziert?  ;)

Ich habe mir ein NFS-Share an den FHEM Rechner gemaunted und in "Global" das Backupverzeichnis dorthin definiert. Damit läuft jedes Backup auf den NAS Speicher

Das gleiche gilt übrigens auch für das Logverzeichnis ;)

Viele Grüße
FHEM 6.0 auf RPI4 mit CUL868, AEOTEC, RFXTRX 433
CUL_WS  : S300TH              FHT         : FHT80B, FHT80TF
HMS        : HMS100-TF         FBDECT   : DECT!200, FRITZ!Powerline 546E
FS20       : FS20DI10, FS20ST, FS20WS1, FS20DU-2, FS20 FMS

dev0

#3
Rince hat natürlich recht, dass der angezeigte Fehler aus der 99_myownUtils.pm kommt.
Aber davon abgesehen ist der Wiki Artikel mMn falsch, denn der Code, der dort angegeben ist, ist für eine Notify DEF und so in der Form keine Funktion für die myUtils...
@Rudi: liest du hier mit? Der Artikel ist laut Wiki von Dir.

Zitat von: Stony am 14 Oktober 2015, 01:59:42
#########################################################################
## Funktion......: FHEM Backup
## Besonderheiten: Anzeige der vorhandenen Backups im dummy
#########################################################################
SYS_Backup:* {
fhem("backup");;
opendir DIR, "/mnt/fbbackup/PIBACKUP" or die $!;;
...

Hollo

Zitat von: Stony am 14 Oktober 2015, 01:59:42
...beim speichern der 99_myUtils Fehler: syntax error at ./FHEM/99_myownUtils.pm line 38, near "1" ...

Speicher die Datei doch bitte mal unter dem Namen 99_myownUtils ab.

Andernfalls schlägt auch die Initialisierung fehl
sub myownUtils_Initialize($$)
{
  my ($hash) = @_;
}

FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"

ph1959de

Zitat von: dev0 am 14 Oktober 2015, 08:50:31
Rince hat natürlich recht, dass der angezeigte Fehler aus der 99_myownUtils.pm kommt.
Aber davon abgesehen ist der Wiki Artikel mMn falsch, denn der Code, der dort angegeben ist, ist für eine Notify DEF und so in der Form keine Funktion für die myUtils...
@Rudi: liest du hier mit? Der Artikel ist laut Wiki von Dir.
Die angesprochene Änderung (mit dem SYS_Backup:*) im Wiki ist nicht von Rudi, sondern am 14.12.2014 von Docb gemacht worden.

Peter
Aktives Mitglied des FHEM e.V. | Moderator im Forenbereich "Wiki"

dev0

OK, hab docb per pm gebeten mal diesen Thread zu schauen.

Stony

Hallo, erstmal danke für die prompten Reaktionen.

und das File 99_myownUtils.pm endstand so:

-> FHEM Editor : 99_myUtils laden
-> teile aus dem Howto in 99_myUtils einfügen (nach #enter you functions below)
-> save as  99_myownUtils.pm

dann erschien besagter fehler....

rum gesucht .... nix gefunden ... müede .. post hier.
seht mir bitte nach das ich bezüglich des Filenamens nicht mehr so den genauen Stiel eingehalten habe.
so lange die Initialisierung und der Filename stimmt ist der Name im Post und in den Komentaren ....()

ich habe natürlich Probleme mit dem SYS_Backup:* das ist schon eine geschachtelte Anweisung - wow.
könnte schon an dieser Zeile liegen:
opendir DIR, "/mnt/fbbackup/PIBACKUP" or die $!;;
da fehlen nach meiner meinung ein paar klammern. Aber da dies als Argument der SYS_Backup zu sehen ist kanns natürlich auch richtig sein.

- natürlich habe ich auch schon backups über das NAS gefahren. Aber einbinden in das FHEM?
Ich such mal in der Referenz doch .... wie geht das ?

Gruss Stony

Stony

Zitat von: Klaus Rubik am 14 Oktober 2015, 08:42:22
Warum so kompliziert?  ;)

Ich habe mir ein NFS-Share an den FHEM Rechner gemaunted und in "Global" das Backupverzeichnis dorthin definiert. Damit läuft jedes Backup auf den NAS Speicher

Das gleiche gilt übrigens auch für das Logverzeichnis ;)

Viele Grüße
Hallo Klaus ... backupdir ... gefunden , danke für den Tip.

Der eigendliche Gag an dem Howto ist die Erweiterung das Backup zu einem Zeitpunkt automatisch anstoßen zu können. nur wollt ich zunächst den ersten Teil testen und dann die Automatik angehen.

Es gäbe ja auch die Möglichkeit das unter Linux zu automatisieren. da ich eh in FHEM auch den Brenner
einbeziehen wollte war der Einstieg in FHEM aber klar. Deshalb zum lernen üben-üben-üben.
Vieleicht war das zu Anfang ein zu großes Ziel. Na ja mal sehen.

Grüße Stony

webturtle

Gibt es hier was neues?
Bei mir kommt der selber Fehler wenn ich diese Funktion in der 99myUtils speichern will.
Es sieht wirklich nicht so aus, als ob es eine Funktion wäre die dort definiert wird. Aber ich weiss auch nicht so recht wo man es hinkopierten soll...

Chris

dev0

Wenn Du diesen Code meinst,

#########################################################################
## Funktion......: FHEM Backup
## Besonderheiten: Anzeige der vorhandenen Backups im dummy
#########################################################################
SYS_Backup:* {
fhem("backup");;
...

dann gehört das in die Definition eines notify.

webturtle

Okay. Teste ich aus.
Also kommt es in die fhem.conf und nicht in die 99myUtils.pm

Sollte im Wiki korrigiert werden.

Chris

dev0

Besser ist es, wenn Du den DEF Editor des notify benutzt und nicht die fhem.cfg direkt bearbeitest.
Teste es aus und korregiere das Wiki, wenn es funktioniert.

ph1959de

Zitat von: dev0 am 01 Dezember 2015, 11:35:12
Besser ist es, wenn Du den DEF Editor des notify benutzt und nicht die fhem.cfg direkt bearbeitest.
Teste es aus und korregiere das Wiki, wenn es funktioniert.
Da ist meiner Ansicht nach im Wiki nichts zu korrigieren. Vor dem Passus steht eindeutig, dass es in die Konfiguration muss. Der Teil, der in die 99_myUtils.pm muss, ist ganz klar gegen den Rest abgegrenzt.

@webturtle: bitte noch mal die Informationen über "Konfiguration" und 99_myUtils im Wiki lesen.

Peter
Aktives Mitglied des FHEM e.V. | Moderator im Forenbereich "Wiki"

franky08

ZitatBesser ist es, wenn Du den DEF Editor des notify benutzt

Dann aber die ; nicht verdoppeln!
Debian Bookworm auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
mit FHEM aktuell (fhem.pl:28849/2024-05-07)
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...