Chris,
danke wieder für deine Hilfe!
	
		
			
			
				
	
pagejump funktioniert bei mir NUR in der Navbar. Dort allerdings perfekt. Innerhalb der Seite - ob 2d oder normales Layout - funktioniert es nicht. 
Ich nutze die neueste SVN-Version und das metal-Design. Meine custom.css habe ich zum Testen wegverschoben, kann also keinen Einfluss haben.
	
		
			
			
				
	
Liebend gerne. 
Mein Schema für die Namenskürzel funktioniert so:
(Beispiel Hauswirtschaftsraum)
Licht schalten = LI_HW
Schaltzustand = LS_HW
Dimmwert setzen = LD_HW
Dimmwert abfragen = LE_HW
Diese Kürzel sind immer das jeweils erste Wort der GA-Bezeichnung. Meine eibga.conf sieht dann so aus (Ausschnitt):
	Wie man erkennen kann, steht in der Langbezeichnung auch noch weitere Information: die Dali-Kabelbezeichnung, die Kanalnummer, die Wattzahl, der Ort. Warum das Ganze? Mein Perl-Skript liest das ein und generiert einen  dimmbaren Lichtschalter auf der Visu-Seite des Hauswirtschaftsraums.
Und noch was: der wiregate-Daemon liest die eibga.conf ebenfalls ein und speichert zB folgendes ab:
	Das kann man wiederum in Logiken verwenden. Beispiel: der MDT-Dali-Gateway kann für Dali-Einzelkanäle nur Dimmwerte direkt setzen. Er kann weder relativ dimmen, noch Dimmwerte lesen, noch schalten usw. Das Problem gibt es natürlich bei allen Dali-Einzelkanälen, und dafür gibt es dann eine Gruppe von Logiken im Logikprozessor, die diese Funktionen alle ersetzen. Das liest sich zB folgendermaßen:
	In der letzten Logik (Präsenzmelder) nutze ich noch eine weitere Datei: die eibpa.conf. Diese besteht aus einer Liste von physikalischen Adressen und Bezeichnungen:
	Auch hier steckt wieder ein Code drin: alle Präsenzmelder fangen mit "P_" an. Der Logikprozessor liest diese Datei ein und stellt den Logiken den Namen des Senders als Text in $msg{sender} zur Verfügung.
Alles, um den Code lesbarer zu machen (und fehlerärmer, und leichter zu warten, ...).
VG; Fry
					danke wieder für deine Hilfe!
					Zitat von Chris M.
					
						
						
							
							
							
							
								
								
								
								
									Beitrag anzeigen
								
							
						
					
				
				
			
		Ich nutze die neueste SVN-Version und das metal-Design. Meine custom.css habe ich zum Testen wegverschoben, kann also keinen Einfluss haben.
					Zitat von Chris M.
					
						
						
							
							
							
							
								
								
								
								
									Beitrag anzeigen
								
							
						
					
				
				
			
		Mein Schema für die Namenskürzel funktioniert so:
(Beispiel Hauswirtschaftsraum)
Licht schalten = LI_HW
Schaltzustand = LS_HW
Dimmwert setzen = LD_HW
Dimmwert abfragen = LE_HW
Diese Kürzel sind immer das jeweils erste Wort der GA-Bezeichnung. Meine eibga.conf sieht dann so aus (Ausschnitt):
Code:
	
	[1/2/20] DPTId = 1 DPTSubId = 1.001 name = LI_HW Schalten (Dali G Kanal 2 324W) KG Hauswirtschaft ...
Und noch was: der wiregate-Daemon liest die eibga.conf ebenfalls ein und speichert zB folgendes ab:
Code:
	
	$eibgaconf{'1/2/20'}{short}='LI_HW';
$eibgaconf{'1/2/20'}{name}='LI_HW Schalten (Dali G Kanal 2 324W) KG Hauswirtschaft';
$eibgaconf{'LI_HW'}{ga}='1/2/20';
$eibgaconf{'1/2/20'}{DPTSubId}='1.001';
Code:
	
	for my $LI (grep /^LI_\S*$/, keys %eibgaconf)
{
    my $name=$eibgaconf{$LI}{name};
    my $licht=$LI; $licht=~s/^LI_//;
    my ($LS,$LD,$LE)=('LS_'.$licht,'LD_'.$licht,'LE_'.$licht);
    if($name=~/Dali.*Kanal/i)
    {
        # Auf einen Schaltbefehl auf einem Einzelkanal einen Wert senden
        $logic{$LI.'_LD'} = { receive=>$LI, transmit=>$LD,
                              translate => sub {
                                  return 0 unless int($input)>0;
                                  return 80;
                              },
        };
        # Auf einen Relativdimmbefehl hin den Absolutwert senden
        $logic{$LR.'_LD'} = { receive=>$LR, transmit=>$LD,
                              translate => sub { $state=0 unless defined $state;
                                                 return limit(0,$state-int($input*3.125),100);
                              },
        };
        # Auf einen Dimmbefehl die Rueckmeldung des Schaltzustandes und Dimmwertes senden (sendet das Gateway nicht selbst)
        $logic{$LD.'_LS'} = { receive=>$LD, transmit=>$LS,
                              translate => sub { int($input)>0 } };
        $logic{$LD.'_LE'} = { receive=>$LD, transmit=>$LE,
                              translate => sub { return $input; } };
        # Auf einen Anschaltbefehl eines Praesenzmelders nachts einen reduzierten Dimmwert hinterherschicken
        $logic{$LD.'_pm_dim'} = { receive=>$LD, transmit=>$LD,
                                  translate => sub {
                                      return undef unless $msg{sender}=~m/^P_/ && $night && int($input)>0;
                                      return undef if int($input)<=5;
                                      return 5;
                                  },
        };
    }
    elsif($name=~/Dali.*Gruppe/i)
   {
....
}
Code:
	
	... A_MDT_J3 1.0.11 A_MDT_HZ1 1.0.12 A_MDT_HZ2 1.0.13 S_Wetter 1.0.14 B_Strom1 1.0.15 P_E 1.0.27 P_HW 1.0.28 P_F1 1.0.29 P_D1 1.0.30 ...
Alles, um den Code lesbarer zu machen (und fehlerärmer, und leichter zu warten, ...).
VG; Fry



 Sehr schön! 
Kommentar