+ Antworten
Seite 2 von 4 ErsteErste 1 2 3 4 LetzteLetzte
Ergebnis 11 bis 20 von 36
  1. #11
    Registriert seit
    Jan 2012
    Beiträge
    54

    Cool Erste Schritte

    Hallo Mathias!

    Ich habe mir heute Naachmnittag mal ein wenig Zeit genommen.

    Zu deiner Antwort:
    Verstehe ich das richtig, dass deine Sonos im Gang quasi Tag und Nacht durchläuft und nur gemutet wird? Wie ist das im mitm Stromverbrauch?
    Das ist richtig. All meine Sonos Boxen laufen 24/7, wenn sie nicht eingeschalten sind, auf Standby. Die Play1 von mir nimmt 3,8W im Standby auf. Somit kostet mich eine Sonos Play1 in Österreich nichteinmal ganz 2,50€ im Jahr, wenn diese 24/7 im Standby wäre. Das ist mir der Komfort wert, dass ich immer sofort Musik habe und nicht jedesmal 1 Minute warten muss. Bei einem Besuch auf dem WC wäre ich da mit pinkeln schon fast fertig bevor die Musik einschaltet.
    Somit läuft auf meinem "Master" im Gang immer ein Radio bzw. Playlist und dieser wird lediglich mit Mute und Unmute geschalten. Alle anderen werden dann der Gruppe hinzugefügt bzw. entfernt oder laufen alleine.
    Das ist jedoch Ansichtssache und jedem selbst überlassen.
    Bei meinen Skripten ist genau dieses vorgesehen, wenn du diese wirklich wegschalten willst können wir das ja später noch einbauen.

    Wäre es also für mich nicht so am besten:

    Taste 1+2 für Start/Stop (Langer Druck) sowie Lauter/Leiser (Kurzer Druck)
    Taste 3 für Quellwahl (Gruppe) (Dabei gibt es getrennte Gruppen für EG und OG)
    Taste 4 für Quellwahl Einzelner Raum (Favoritenumschalten der 4 Radiosender)
    Ich habe das soweit vorbereitet:
    Taste 1+2 sollte als dimmen in der ETS konfiguriert werden Ein/Aus (Kurzer Tastendruck) - Lauter/Leiser (Langer Tastendruck) wie beim dimmen einer Lampe
    Für die Quellenwahl muss ich dir später nochmal was basteln.
    Welches Modul verwendest du? wie verwirklichst du die Favouritenumschaltung? Kannst du das Skript bitte online stellen, dann kann ich es dir probieren anzupassen.

    Ich habe mal ein paar Sachen zusammengestellt, speziel auf dich zugeschnitten.

    Ich arbeite auf der Basis von dem Modul tkugelberg/SymconSonos.

    Schritt 1:
    Sonos Instanz für jeden Raum anlegen - Hast du ja bereits

    Schritt 2:
    KNX Instanzen mit den GA für jeden Raum anlegen.
    • KNX Instanz für E/A (EIS1 Switch - Boolean)
    • KNX Instanz für Lauter/Leiser ( EIS2 DimControl - Integer)


    Schritt 3:
    Übergeordente Skripten anlegen:

    Skript "Sonos Adressen"
    PHP-Code:
    <?

    // In diesem Skript gibst du alle deine Sonosboxen bzw. Instanzen ein. Dieses Skript wird in den Nachfolgenden miteinbezogen. Somit musst du nicht immer all deine Skripte individuell anpassen.

    $Sonos_Kueche=37870//Sonos Instanz Küche Statt 37870 eingeben
    $Sonos_Hauptbad=38616//Sonos Instanz Hauptbad Statt 38616 eingeben
    $Sonos_GaesteWC=32765//Sonos Instanz Gäste WC Statt 32765 eingeben
    $Sonos_Buero=13637//Sonos Instanz Büro Statt 13637 eingeben
    $Sonos_Duschbad=43928//Sonos Instanz Duschbad Statt 43928 eingeben

    $Sonos_HauptEG=$Sonos_Kueche// Hier wird angegeben wer im EG der Gruppenmaster sein soll.
    $Sonos_HauptOG=$Sonos_Buero// Hier wird angegeben wer im OG der Gruppenmaster sein soll.

    ?>
    Skript "Vorlage für alle Sonosinstanzen für Lautstärke":
    PHP-Code:
    <?

            
    // In diesem Skript behandeln wir Global wie jede Sonosbox beim Dimm-befehl über KNX die Lautstärke ändern soll.
            
            //Vorgabe Lauter Leiser in % pro Abfrage
            
    $Lauter=2// hier wird die Prozentzahl eingegeben um wieviel sich die Lautstärke in einem Step (hier im Beispiel 300ms) erhöhen soll
            
    $Leiser=-2// hier wird die Prozentzahl eingegeben um wieviel sich die Lautstärke in einem Step (hier im Beispiel 300ms) veringern soll
            
            // In den folgenden Schritten wird der Dimm-KNX Wert aus dem Auslöseskript abgefragt und dementsprechend die Aktion auf der Sonosinstanz ausgeführt.
            
            
            
    if($KNX_Wert == 9)
            {
                
    //Timer anschalten = Der Timer läuft so lange der KNX Taster gedrückt wird.
                
    IPS_SetScriptTimer($_IPS['SELF'], 1); // setzt den Timer auf 1 sekunde. Das Heisst das dieses Skript alle 1s neu aufgerufen wird.
                //Sonos Lauter
                
    SNS_ChangeVolume($Sonos$Lauter);
            }
            elseif (
    $KNX_Wert == 1)
            {
                
    //Timer anschalten = Der Timer läuft so lange der KNX Taster gedrückt wird.
                
    IPS_SetScriptTimer($_IPS['SELF'], 1);
                
    //Sonos Leiser
                
    SNS_ChangeVolume($Sonos$Leiser);
            }
            elseif (
    $KNX_Wert == 0)
            {
                
    //Timer ausschalten = Der Timer wird zurückgesetzt wenn der KNX Taster losgelassen wird.
                
    IPS_SetScriptTimer($_IPS['SELF'], 0); // Der Skripttimer wird hier wieder auf 0 gesetzt.
            
    }

            
    ips_sleep(300); // Hier wird die Zeit in ms angegeben wie lange es dauern soll bis die nächste erhöhung bzw. veringerung der Lautstärke stattfindet. 300ms ist aus meinen Erfahrungen Perfekt.
            
            // Ab hier wird das ganze wiederholt. Der Skripttimer ist auf 1s gestellt. die Pause zwischen den Befehlen beträgt 300ms. Demnach wiederhole ich den Befehl 3mal. 3x300ms=900ms. Nach 1 Sekunde fängt das ganze wieder von vorne an bis der KNX-Taster losgelassen wird.

            
    $KNX_Wert;

            if(
    $KNX_Wert == 9)
            {
                
    SNS_ChangeVolume($Sonos$Lauter);
            }
            elseif (
    $KNX_Wert == 1)
            {
                
    SNS_ChangeVolume($Sonos$Leiser);
            }
            elseif (
    $KNX_Wert == 0)
            {
                return;
            }
            
             
    ips_sleep(300);

            
    $KNX_Wert;

            if(
    $KNX_Wert == 9)
            {
                
    SNS_ChangeVolume($Sonos$Lauter);
            }
            elseif (
    $KNX_Wert == 1)
            {
                
    SNS_ChangeVolume($Sonos$Leiser);
            }
            elseif (
    $KNX_Wert == 0)
            {
                return;
            }
        
            
    ?>
    Schritt 4:
    Merker für jeden Raum anlegen:
    Dazu in jedem Raum eine neue Variable vom Typ Boolean anlegen und dementsprechend benennen. Siehe auch auf Bild 1.

    Schritt 5:
    Skript "Sonosinstanz Ein/Aus" für jeden Raum anlegen der nicht der Gruppenmaster im EG oder OG sein soll.

    PHP-Code:
            <?
            
    // Id`s aus dem Skript "Sonos Adressen" holen. Nur einmal die ID des Skriptes "Sonos Adressen" eintragen. Bleibt dann für alle gleich.
            
    include "31534.ips.php"// ID des Skriptes "Sonos Adressen" eingeben.
            
            //Werte zum Verändern
            
            //Wert von KNX Taster schalten holen
            
    $KNX_Wertswitch=GetValue(10748); // ID des KNX-Befehl "Boolean" Ein/Aus angeben. Hier wird der aktuelle Wert des KNX-Taster abgerufen.
            
            //Instanz Sonos Komponente
            
    $Sonos=$Sonos_Hauptbad//Gibt an welche Instanz gesteuert werden soll.
            
            // Gibt an welche Instanz für das "Vorlagenskript EIN/AUS" als Gruppenadmin genommen werden soll.        
            
    $Sonos_Haupt=$Sonos_HauptEG// Hier wird bestimmt in welche Gruppe sich die Instanz bei Multiroom eingliedern soll. Im OG einfach die Variable $Sonos_HauptOG angeben.
            
            // Hier wird der Merker für den Raum der Sonosinstanz bestimmt um unterscheiden zu können ob die Quellenauswahl nur für diese Instanz oder für die komplette Gruppe wirken soll.
            
    $Sonos_Merker=45540// Hier die ID des Merkers (erstellte Merker Variable vom Typ Boolean) angeben.
            

            // Nicht ändern.
            
            
    if($KNX_Wertswitch == true// Wenn der KNX Befehl "Ein" aus dem Auslöseskript erfolgt
            
    {
                
    SNS_SetDefaultVolume($Sonos); // Setzt die Lautstärke der Sonosinstanz auf default, welche in der Distanz selber angegeben werden kann.
                
    SNS_SetGroup($Sonos$Sonos_Haupt); // Gruppiert die Sonosbox in die Gruppe des Gruppenmasters
                
    SetValueBoolean($Sonos_Merkertrue); // Setzt einen Merker um zu wissen ob bei Auswahl einer Quelle nur diese Instanz oder die Gruppe gewechselt werden soll.
            
    }
            if(
    $KNX_Wertswitch == false// Wenn der KNX Befehl "Aus" aus dem Auslöseskript erfolgt
            
    {
                 
    SNS_SetGroup($Sonos0); //entfernt die Sonosbox wieder aus der Gruppe.
                 
    SetValueBoolean($Sonos_Merkerfalse); // Setzt einen Merker wieder auf 0 um zu wissen ob bei Auswahl einer Quelle nur diese Instanz oder die Gruppe gewechselt werden soll.
            
    }
            
            
    ?>
    Diesem Skript ein Ereignis hinzufügen:
    • Ereignis - bei Variablenaktualisierung des Values Boolean für E/A (KNX) des Raumes skript ausführen




    Schritt 6:
    Skript "Sonosinstanz Mute/Unmute" für die Räume anlegen die Gruppenmaster im EG oder OG sein soll.

    PHP-Code:
            <?
            
    // Id`s aus dem Skript "Sonos Adressen" holen. Nur einmal die ID des Skriptes "Sonos Adressen" eintragen. Bleibt dann für alle gleich.
            
    include "31534.ips.php"// ID des Skriptes "Sonos Adressen" eingeben.
            
            //Werte zum Verändern
            
            //Wert von KNX Taster schalten holen
            
    $KNX_Wertswitch=GetValue(10748); // ID des KNX-Befehl "Boolean" Ein/Aus angeben. Hier wird der aktuelle Wert des KNX-Taster abgerufen.
            
            //Instanz Sonos Komponente
            
    $Sonos=$Sonos_Kueche//Gibt an welche Instanz gesteuert werden soll.
            
            // Hier wird der Merker für den Raum der Sonosinstanz bestimmt um unterscheiden zu können ob die Quellenauswahl nur für diese Instanz oder für die komplette Gruppe wirken soll.
            
    $Sonos_Merker=21078// Hier die ID des Merkers (erstellte Merker Variable vom Typ Boolean) angeben.
            

            // Nicht ändern.
            
            
    if($KNX_Wertswitch == true// Wenn der KNX Befehl "Ein" aus dem Auslöseskript erfolgt
            
    {
                
    SNS_SetMute($Sonosfalse); // Setzt die Instanz auf Unmute also Laut
                
    SetValueBoolean($Sonos_Merkertrue); // Setzt einen Merker um zu wissen ob bei Auswahl einer Quelle nur diese Instanz oder die Gruppe gewechselt werden soll.
            
    }
            if(
    $KNX_Wertswitch == false// Wenn der KNX Befehl "Aus" aus dem Auslöseskript erfolgt
            
    {
                 
    SNS_SetMute($Sonostrue); // Setzt Die Instanz auf Mute
                 
    SNS_SetDefaultVolume($Sonos_Kueche); // Setzt das Volume wieder auf default damit beim nächsten mal einschalten keiner an einem Herzinfarkt stirbt -:)
                 
    SetValueBoolean($Sonos_Merkerfalse); // Setzt einen Merker wieder auf 0 um zu wissen ob bei Auswahl einer Quelle nur diese Instanz oder die Gruppe gewechselt werden soll.
            
    }
            
            
    ?>
    Diesem Skript ein Ereignis hinzufügen:
    • Ereignis - bei Variablenaktualisierung des Values Boolean für E/A (KNX) des Raumes skript ausführen


    Schrit 7:

    Skript "Sonosinstanz Lauter/Leiser" für jeden Raum anlegen.

    PHP-Code:
            <?
            
    // Id`s aus dem Skript "Sonos Adressen" holen
            
    include "31534.ips.php"// ID des Skriptes "Sonos Adressen" eingeben. Nur einmal ID anpassen.
            
            //Werte zum Verändern
            
            //Wert von KNX Taster dimmen holen
            
    $KNX_Wert=GetValue(15496); // ID des KNX Befehls des Tasters dimmen "Integer" angeben.
            
            //Instanz Sonos Komponente
            
    $Sonos=$Sonos_Hauptbad// Angeben welche Instanz gesteuert werden soll (hier z.B. $Sonos_Hauptbad). Diese Variable muss mit der in dem Skript "Sonos Adressen" überinstimmen.

            // NICHT ändern (Nur einmal die ID anpassen)
            //Vorlagenskript Lauter Leiser Global ausführen
            
            
    include(IPS_GetScriptFile(28067)); // ID des Skriptes "Vorlage für alle Sonosinstanzen für Lautstärke" eingeben.
            
            
    ?>
    Diesem Skript ein Ereignis hinzufügen:
    • Ereignis - bei Variablenänderung des Values Integer für Lauter/Leiser des Raumes skript ausführen


    Schritt 8:
    Skript für Quellenänderung folgt noch.

    Im Anhang findest du noch ein Bild von meinem dazu gebastelten Stammbaum.

    Habe kurz getestet, funktioniert soweit.

    Das kannst du ja mal testen und schauen ob dir das so gefallen würde. Dann können wir ja weiter auf deine Wünsche eingehen.
    Aber bitte kurz testen.
    Denn falls du ein anderes Modul oder doch andere Vorstellungen hast, müssen wir umschwenken.

    Ich hoffe das hilft dir ein wenig weiter.
    Bei Fragen einfach melden.

    Gruß Dani
    Angehängte Grafiken Angehängte Grafiken  

  2. #12
    Registriert seit
    Nov 2018
    Beiträge
    25

    Wow, ich weiß gar nicht was ich sagen soll! Danke!

    Ich muss mir das jetzt die Tage mal genau ansehen, was du da machst und werde dann hoffentlich Anfang nächster Woche damit beginnen können, das einzuarbeiten. Am Wochenende schaffe ich es voraussichtlich leider nicht.

    Nur kurz ein paar Punkte:

    Vorweg, ich nutze auch das Sonos Modul von TKugelberg

    Bzgl. der Standby-Problematik:

    Das Thema mit dem Komfort verstehe ich, geht mir nicht anders.
    Ich will die auch gar nicht erst immer einschalten müssen, wenn ich sie nutzen will.
    Viel eher denke ich da an das Thema Abwesenheit oder Schlafen. Tagsüber, wenn jemand zu Hause ist, hab ich kein Problem damit, dass die alle im Standby hängen.
    Dann sollte es doch auch kein Problem geben, oder?
    Ich würde das wohl einfach über eine Logik KNX-Intern lösen.
    Das Haus erkennt bereits komplette Abwesenheit, bzw. wenn einer oder beide Schlafen. Über ne Einfache Logik könnte ich die dann Ein-/Ausschalten.
    Wenn die dann wieder im Netz hängen, funktioniert die Verbindung mit IPS ja automatisch oder?

    Bzgl. meiner Favoritenwahl:

    Ich sende bei Tastendruck über eine GA abwechselnd die Werte 1 bis 4. Zusätzlich habe ich noch die Taste so programmiert, dass bei langem Tastendruck immer die 1 gesendet wird.
    Für die 4 Werte habe ich dann 4 Skripte erstellt, welche den jeweiligen Sender und danach ein Play ausführen. (Siehe Bild anbei)
    Das Skript lasse ich über ein Ereignis ausführen, wenn bei der Instanz mit der KNX-GA die jeweilige Zahl aufgerufen wird.
    Da ich mich mit PHP noch gar nicht auskenne, hab ich das eben so über 4 Skripte gelöst, weil ich nicht wusste, wie ich die KNX-GA sonst dem jeweiligen Part des Skriptes zuweisen müsste, wenn ich alle 4 Skripte in eines packen würde

    Noch ein paar Fragen:

    - Wie verhält es sich eigentlich, wenn ich Im Bad meinetwegen über die Quellenwahl "Einzeln" einen anderen Sender ausgewählt habe und diesen Client nun wieder der EG-Gruppe hinzufügen will?
    Muss ich dann einfach am Taster im Bad die Quelle für die Gruppe wählen und er wird automatisch wieder der Gruppe hinzugefügt?

    - Was passiert anders rum, wenn ich im Bad einzeln einen Sender laufen habe und meine Frau ändert in der Küche die Quelle für die Gruppe?
    Meinem Verständnis nach sollte das im Bad ja keine Auswirkung haben, da ich die Instanz durch die eigen Quelle ja zwischenzeitlich aus der Gruppe genommen habe?

    - Da ich die 2 Play1 fürs Gäste-WC und Duschbad noch nicht integriert habe, bekomme ich da mit den Skripten jetzt dann Probleme? Denn ich hab die einer Verwandten in der Schweiz zum Ausprobieren geliehen und bekomme die erst März/April wieder zurück.

    Ansonsten nochmal vielen, vielen Dank für deine Mühe!

    Ich bin ja wirklich schon in vielen Foren unterwegs gewesen, aber diese Hilfsbereitschaft wie hier findet man nicht so oft...

    Beste Grüße und schönes Wochenende!

    Gruß Mathias
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Favorienwahl.jpg 
Hits:	36 
Größe:	45.6 KB 
ID:	47574   Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Favorienwahl-Ereignis.jpg 
Hits:	36 
Größe:	67.1 KB 
ID:	47575  

  3. #13
    Registriert seit
    Jan 2012
    Beiträge
    54

    Thumbs up Weitere Vorgehensweise

    Hallo Mathias!

    Mir wurde in dem Forum auch schon etliche male geholfen. Jetzt bin ich froh dass ich mal was zurückgeben kann.

    Keine Angst vor den Skripten. Ich habe alles genau beschrieben damit du auch verstehst was genau mit jeder Zeile passiert.
    Ich habe nämlich auch oft das Problem, dass ich zwar Skripte kopiere aber den hintergrund nicht immer ganz checke. Somit wird es wirklich hart wenn man selber noch daran basteln will.
    Ich hoffe das ich dich so ein wenig in die Skript geschichte einweihe und du die Angst davor verlierst.

    Zu deinen Fragen:
    Viel eher denke ich da an das Thema Abwesenheit oder Schlafen. Tagsüber, wenn jemand zu Hause ist, hab ich kein Problem damit, dass die alle im Standby hängen.
    Dann sollte es doch auch kein Problem geben, oder?
    Das sollte dann kein Problem geben. Jedoch sollten wir noch ein Skript einarbeiten das wenn du diese einschaltest automatisch nach einer Minute die Master in "Mute" gehen und im Hintergrund deinen Favouriten Radio spielen. Dann könnte der BWM im Gäste WC deine Sonos auch aktivieren wenn in der Küche keine Musik läuft, falls gewünscht.

    Wenn die dann wieder im Netz hängen, funktioniert die Verbindung mit IPS ja automatisch oder?
    Ja das funktioniert normalerweise tadellos.

    Für die 4 Werte habe ich dann 4 Skripte erstellt, welche den jeweiligen Sender und danach ein Play ausführen.
    Bitte schicke mir alle 4 Skripte, dann kann ich dir eines bauen wo alle 4 Radiosender vorhanden sind.

    - Wie verhält es sich eigentlich, wenn ich Im Bad meinetwegen über die Quellenwahl "Einzeln" einen anderen Sender ausgewählt habe und diesen Client nun wieder der EG-Gruppe hinzufügen will?
    Muss ich dann einfach am Taster im Bad die Quelle für die Gruppe wählen und er wird automatisch wieder der Gruppe hinzugefügt?
    In dieser Variante was ich gebastelt habe, wird die Sonos im Bad durch einen "KNX - EIN" Befehl der Gruppe zugeordnet und durch einen "KNX - AUS" Befehl wieder von der Gruppe getrennt.
    D.h. Wenn du auf "Aus" drückst ist die Box für sich alleine und du kannst die Quelle auswählen welche dann nur im Bad gespielt wird bis du entweder wieder auf "AUS" drückst (Dann ist sie wieder AUS) oder du auf "EIN" drückst dann geht sie in die Gruppe und spielt das gleiche wie in der Küche.

    Das ganze habe ich mit einer Taste für die Quellenauswahl gebastelt. Somit brauchst du nicht 2 Tasten (Allein und Gruppe) sondern die Quellenauswahl funktioniert automatisch je nachdem welcher Modus gerade aktiv ist. (Allein oder Gruppe).

    Somit hättest du dann noch eine Taste frei zur Verfügung um evtl. weitere Favouriten (z.B. Playlist) oder Play/Pause...... zu realisieren.

    Was passiert anders rum, wenn ich im Bad einzeln einen Sender laufen habe und meine Frau ändert in der Küche die Quelle für die Gruppe?
    Meinem Verständnis nach sollte das im Bad ja keine Auswirkung haben, da ich die Instanz durch die eigen Quelle ja zwischenzeitlich aus der Gruppe genommen habe?
    Das ist richtig. Die Auswahl in der Küche hat keinen Einfluss auf das Bad wenn diese im "Stand alone" Betrieb ist.

    Da ich die 2 Play1 fürs Gäste-WC und Duschbad noch nicht integriert habe, bekomme ich da mit den Skripten jetzt dann Probleme? Denn ich hab die einer Verwandten in der Schweiz zum Ausprobieren geliehen und bekomme die erst März/April wieder zurück.
    Das ist auch kein Problem, du kannst die entweder erst später einpflegen, oder du bereitest diese gleich schon vor.
    Dann müsstest du nur noch Bei der Sonosinstanz die IP und RICON eintragen und das ganze sollte dann auch schon funktionieren.

    Ich werde schauen, dass ich heute noch dazu komme um das ganze weiter zu basteln.
    Also bitte wenn möglich noch die 4 Skripte von deinen Radiosendern schicken und ich Pflege diese noch ein.

    Soll die zukünftige Sonos im Gäste WC immer bei Bewegung spielen oder wirklich nur wenn in der Küche Musik läuft?

    Dir auch noch ein schönes Wochenende.

    Schöne Grüße aus Tirol

    Dani

  4. #14
    Registriert seit
    Nov 2018
    Beiträge
    25

    Guten Morgen,

    Prinzipiell soll die im Gäste-WC dann immer angehen, wenn jemand drinnen ist. Ausschlüsse kann ich ja dann wieder über ne Logik in KNX realisieren, dass er z.b. aus bleibt, wenn der TV läuft usw.

    Anbei noch die 4 Skripte:

    Bei Wert 1:

    Code:
    <?
    SNS_SetRadio(54999, "ROCK ANTENNE");
    SNS_Play(54999); //Start writing your scripts between the brackets
    
    ?>
    Bei Wert 2:

    Code:
    <?
    SNS_SetRadio(54999, "Rockit Radio Switzerland");
    SNS_Play(54999); //Start writing your scripts between the brackets
    
    ?>
    Bei Wert 3:

    Code:
    <?
    
    SNS_SetRadio(54999, "FFH Rock");
    SNS_Play(54999); //Start writing your scripts between the brackets
    
    ?>
    Bei Wert 4:

    Code:
    <?
    
    SNS_SetRadio(54999, "sunshine live");
    SNS_Play(54999); //Start writing your scripts between the brackets
    
    ?>
    Anbei auch noch ein weiteres Beispiel der Auslösung, ich hoffe das reicht dir als Infos.

    Danke und Grüße
    Angehängte Grafiken Angehängte Grafiken  

  5. #15
    Registriert seit
    Nov 2018
    Beiträge
    25

    Ich bin nun doch schon dabei, das mal zu testen.

    Als ersten Schritt habe ich mal in der Küche angefangen:

    Da dies ja der Admin im EG wird, soll der ja nur stumm oder laut geschaltet werden. Das funktioniert soweit auch schon, nur komm ich bei der Lautstärke nicht klar.
    Diese wird immer nur verringert, egal, welche der beiden Tasten ich drücke?!?

    Da ich dir ja keinen Fehler in deinem Skript unterstellen möchte, hast du ne Ahnung, woran das liegen könnte?

    Ich bin mir nicht ganz sicher, ob das nicht vl sogar am KNX liegt?
    Wenn ich nämlich im Gruppenmonitor die Befehle verfolge schaut das so aus:

    Bei Beginn der Lautstärkeerhöhung
    Code:
    $09 | Erhöhen, 100 %
    Bei Ende
    Code:
    $00 | Verringern, Stopp
    Bei Beginn der Lautstärkeverringerung
    Code:
    $01 | Verringern, 100 %
    Bei Ende
    Code:
    $00 | Verringern, Stopp
    Ich kenne mich da nicht so aus, aber es verwundert mich etwas dass er bei der Erhöung am Ende ein "Verringern, Stopp" sendet und kein "Erhöhen, Stopp".

    Ist das so richtig?

    Wenn ich das nämlich dann in IPS Betrachte sendet der bei Erhöhung zwar schon ein "Increase" auf den Boolean-Wert, allerdings schaltet der sofort auf "Decrease" um, wenn ich die Taste los lasse. (Siehe Bild)
    Bei Leiser funktioniert alles wie es soll.

    Danke für deine Hilfe!

    Grüße und schönen Abend.
    Angehängte Grafiken Angehängte Grafiken  

  6. #16
    Registriert seit
    Jan 2012
    Beiträge
    54

    Cool Weiter im geschehen!

    Hallo Mathias!

    Ich habe ein wenig weiter gebastelt.

    Als erstes bitte das Skript aus Schritt 6 durch dieses ersetzen. Da wird jetzt automatisch der Gruppenadmin hergenommen Also dieses Skript für Küche EG und Büro OG zum Ein/Aus schalten hernehmen.

    PHP-Code:
            <?
            
    // Id`s aus dem Skript "Sonos Adressen" holen. Nur einmal die ID des Skriptes "Sonos Adressen" eintragen. Bleibt dann für alle gleich.
            
    include "31534.ips.php"// ID des Skriptes "Sonos Adressen" eingeben.
            
            //Werte zum Verändern
            
            //Wert von KNX Taster schalten holen
            
    $KNX_Wertswitch=GetValue(10748); // ID des KNX Befehl "Boolean" Ein/Aus angeben. Hier wird der aktuelle Wert des KNX Taster abgerufen.
            
            //Instanz Sonos Komponente
            
    $Sonos=$Sonos_HauptEG//Gibt an welche Instanz gesteuert werden soll.
            
            // Hier wird der Merker für den Raum der Sonosinstanz bestimmt um unterscheiden zu können ob die Quellenauswahl nur für diese Instanz oder für die komplette Gruppe wirken soll.
            
    $Sonos_Merker=21078// Hier die ID des Merkers (erstellte Merker Variable vom Typ Boolean) angeben.
            

            // Nicht ändern.
            
            
    if($KNX_Wertswitch == true// Wenn der KNX Befehl "Ein" aus dem Auslöseskript erfolgt
            
    {
                
    SNS_SetMute($Sonosfalse); // Setzt die Instanz auf Unmute also Laut
                
    SetValueBoolean($Sonos_Merkertrue); // Setzt einen Merker um zu wissen ob bei Auswahl einer Quelle nur diese Instanz oder die Gruppe gewechselt werden soll.
            
    }
            if(
    $KNX_Wertswitch == false// Wenn der KNX Befehl "Aus" aus dem Auslöseskript erfolgt
            
    {
                 
    SNS_SetMute($Sonostrue); // Setzt Die Instanz auf Mute
                 
    SNS_SetDefaultVolume($Sonos); // Setzt das Volume wieder auf default damit beim nächsten mal einschalten keiner an einem Herzinfarkt stirbt -:)
                 
    SetValueBoolean($Sonos_Merkerfalse); // Setzt einen Merker wieder auf 0 um zu wissen ob bei Auswahl einer Quelle nur diese Instanz oder die Gruppe gewechselt werden soll.
            
    }
            
            
    ?>
    Dann habe ich das Skript für die Quellenauswahl geschrieben. Dieses Skript mit einem Ereignis "Variablenaktualisierung" auslösen. Und zwar von deinem KNX Taster mit welchem du die Werte 1-4 schickst. Dieses in allen Räumen anlegen und anpassen.

    PHP-Code:
               <?
            
            
    // Id`s aus dem Skript "Sonos Adressen" holen
            
    include "31534.ips.php"// ID des Skriptes "Sonos Adressen" eingeben.
            
            //Werte zum Verändern
            
            //Wert von KNX Taster holen
            
    $KNX_Wert=GetValue(12287// ID von KNX Taster "Quelle auswählen" von Typ "Integer" eintragen.
            
    $Sonos_Merker_Quelle=GetValue(45540);  // Merker vom jeweiligen Raum auswählen um zu wissen ob "Stand alone" oder Gruppe
            
            //Instanz Sonos Komponente
            
    $Sonos=$Sonos_Hauptbad// Variablen (hier z.B. $Sonos_Hauptbad) aus dem Skript Sonos Adressen nachsehen und dem entsprechenden Raum anpassen.
            
            //Instanz des Gruppenmasters
            
    $Sonos_Haupt=$Sonos_HauptEG// Hier angeben wer der Gruppenmaster ist EG oder OG
            
            
            // Skript welches normalerweise nicht verändert werden muss, außer es kommt was dazu oder die Sender sollen sich ändern.
            
            
            
    if($Sonos_Merker_Quelle == true// Wenn vom KNX Taster der EIN Befehl aktiv ist und die Sonosbox in der Gruppe ist werden die Befehle an den Gruppenmaster übergeben.
            
    {
                if(
    $KNX_Wert == 1)
                {
                     
    SNS_SetRadio($Sonos_Haupt"ROCK ANTENNE");
                        
    SNS_Play($Sonos_Haupt);
                }
                elseif(
    $KNX_Wert == 2)
                {
                    
    SNS_SetRadio($Sonos_Haupt"Rockit Radio Switzerland");
                        
    SNS_Play($Sonos_Haupt);
                }
                elseif(
    $KNX_Wert == 3)
                {
                    
    SNS_SetRadio($Sonos_Haupt"FFH Rock");
                        
    SNS_Play($Sonos_Haupt);
                }
                elseif(
    $KNX_Wert == 4)
                {
                    
    SNS_SetRadio($Sonos_Haupt"sunshine live");
                        
    SNS_Play($Sonos_Haupt);
                }
            }
            
            elseif(
    $Sonos_Merker_Quelle == false// Wenn vom KNX Taster der AUS Befehl aktiv ist und die Sonosbox "Stand alone" ist werden die Befehle an die Sonos im Raum übergeben.
            
    {
                if(
    $KNX_Wert == 1)
                {
                     
    SNS_SetRadio($Sonos"ROCK ANTENNE");
                        
    SNS_Play($Sonos);
                }
                elseif(
    $KNX_Wert == 2)
                {
                    
    SNS_SetRadio($Sonos"Rockit Radio Switzerland");
                        
    SNS_Play($Sonos);
                }
                elseif(
    $KNX_Wert == 3)
                {
                    
    SNS_SetRadio($Sonos"FFH Rock");
                        
    SNS_Play($Sonos);
                }
                elseif(
    $KNX_Wert == 4)
                {
                    
    SNS_SetRadio($Sonos"sunshine live");
                        
    SNS_Play($Sonos);
                }
            }
            
    ?>
    Dann noch das Skript welches aufgerufen werden sollte wenn du im Haus wieder "Anwesend" bist und die Sonoskomponenten wieder mit Strom versorgt werden. Diese Skript schaltet nach 60 sekunden die Gruppenadmins auf Mute und auf Rock Antenne. Somit ist in allen anderen Räumen "Rock Antenne" aktiv sobald Sie in die Gruppe eingeglidert werden. (z.B. BWM Gäste WC).

    Dieses Skript ebenfalls mit einem Ereignis aufrufen. Und zwar mit dem bestimmten EIN-Befehl für die Steckdosen der Sonoskomponenten.

    PHP-Code:
    <?
        
    //Zu verändern:

         // Id`s aus dem Skript "Sonos Adressen" holen
        
    include "31534.ips.php"// ID des Skriptes "Sonos Adressen" eingeben. 
        
        // Eigentlich nicht zu verändern 

         
    IPS_Sleep(60000); // 60 sekunden warten (Zeit ist angenommen und muss unter umständen noch angepasst werden.)
        
        
    SNS_SetMute($Sonos_HauptEGtrue); // Setzt Die Instanz auf Mute
        
    SNS_SetDefaultVolume($Sonos_HauptEG); // Setzt das Volume wieder auf default damit beim nächsten mal einschalten keiner an einem Herzinfarkt stirbt -:)
        
        
    SNS_SetMute($Sonos_HauptOGtrue); // Setzt Die Instanz auf Mute
        
    SNS_SetDefaultVolume($Sonos_HauptOG); // Setzt das Volume wieder auf default damit beim nächsten mal einschalten keiner an einem Herzinfarkt stirbt -:)
        
        
        
    IPS_Sleep(2000); // 2 sekunden warten
        
    SNS_SetRadio($Sonos_HauptEG"ROCK ANTENNE");
        
    SNS_Play($Sonos_HauptEG);
        
        
    SNS_SetRadio($Sonos_HauptOG"ROCK ANTENNE");
        
    SNS_Play($Sonos_HauptOG);

    ?>
    Ich hoffe du kommst damit klar und gibst mir Rückmeldung.

    Falls Fragen oder Probleme auftauchen sollten bitte melden.
    Ein schönes Wochende.

    Gruß Dani

  7. #17
    Registriert seit
    Jan 2012
    Beiträge
    54

    Standard Problem Lautstärke

    Hallo Mathias!

    Vom KNX aus passt das soweit. Die Werte sind auch laut Skript ok. Siehe Skript Vorlage für Lauter Leiser Zeile 12/19/26.

    Dein Problem scheint deine Instanz bzw. Value im IP Symcon zu sein. Diese muss wie in Schritt 2 beschrieben eine Integer mit EIS 2 DIMM Value sein

    Schritt 2:
    KNX Instanzen mit den GA für jeden Raum anlegen.

    KNX Instanz für E/A (EIS1 Switch - Boolean)
    KNX Instanz für Lauter/Leiser ( EIS2 DimControl - Integer)
    Gruß Dani

  8. #18
    Registriert seit
    Jan 2012
    Beiträge
    54

    Zur Erklärung:

    Eine Boolean Variable kann nur 2 Zustände (0 und 1). Diese kann mit dem Wert 9 vom KNX nichts anfangen. Für die Boolean Variable bedeutet der Wert 9 Automatisch 1.

    Eine Integer vom Typ EIS2 dimmen hat den Bereich 0-15. Mit diesem wird der Wert 9 vom KNX auch richtig an das Skript übergeben.

    Gruß Dani

  9. #19
    Registriert seit
    Nov 2018
    Beiträge
    25

    Guten Morgen!

    Also die Küche läuft schonmal

    Ich hab ne Zeit gebraucht bis ich die richtige Instanz für Lauter/Leiser gefunden hatte. Bisher habe einfach immer unter dem Hersteller KNX den jeweiligen Datenpunkt ausgewählt und angelegt - äquivalent zum DPT in der ETS.
    Nun habe ich aber unter dem Hersteller KNX/EIB das Gerät "KNX/EIB Device" gefunden. Dort kann ich den von dir beschriebenen DPT "EIS2 DimControl" auswählen.
    Was ist da der Unterschied? Sollte ich vl sogar alle meine KNX-Instanzen auf solche KNX/EIB-Geräte ändern?

    Da mir das mit Lauter/Leiser aber zu schnell ging, habe ich die Werte jetzt von 2% auf 1% geändert.
    Allerdings ist mir das immer noch bisschen zu schnell. Wie kann ich das noch weiter verlangsamen? über die Zeit? Welche Variablen müsste ich in dem Skript denn nun verändern? Denn wenn ich die 300ms einfach auf 500ms ändere, dauert ja ein Turnus 1,5s und der Timer startet ja schon nach 1s das Skript neu.
    Würde ich sozusagen die 2. Erhöhung dadurch komplett aussperren und hätte nur noch 1 Erhöhung je Zyklus?

    Code:
    <? 
    
            // In diesem Skript behandeln wir Global wie jede Sonosbox beim Dimm-befehl über KNX die Lautstärke ändern soll. 
             
            //Vorgabe Lauter Leiser in % pro Abfrage 
            $Lauter=1; // hier wird die Prozentzahl eingegeben um wieviel sich die Lautstärke in einem Step (hier im Beispiel 300ms) erhöhen soll 
            $Leiser=-1; // hier wird die Prozentzahl eingegeben um wieviel sich die Lautstärke in einem Step (hier im Beispiel 300ms) veringern soll 
             
            // In den folgenden Schritten wird der Dimm-KNX Wert aus dem Auslöseskript abgefragt und dementsprechend die Aktion auf der Sonosinstanz ausgeführt. 
             
             
            if($KNX_Wert == 9) 
            { 
                //Timer anschalten = Der Timer läuft so lange der KNX Taster gedrückt wird. 
                IPS_SetScriptTimer($_IPS['SELF'], 1); // setzt den Timer auf 1 sekunde. Das Heisst das dieses Skript alle 1s neu aufgerufen wird. 
                //Sonos Lauter 
                SNS_ChangeVolume($Sonos, $Lauter); 
            } 
            elseif ($KNX_Wert == 1) 
            { 
                //Timer anschalten = Der Timer läuft so lange der KNX Taster gedrückt wird. 
                IPS_SetScriptTimer($_IPS['SELF'], 1); 
                //Sonos Leiser 
                SNS_ChangeVolume($Sonos, $Leiser); 
            } 
            elseif ($KNX_Wert == 0) 
            { 
                //Timer ausschalten = Der Timer wird zurückgesetzt wenn der KNX Taster losgelassen wird. 
                IPS_SetScriptTimer($_IPS['SELF'], 0); // Der Skripttimer wird hier wieder auf 0 gesetzt. 
            } 
    
            ips_sleep(500); // Hier wird die Zeit in ms angegeben wie lange es dauern soll bis die nächste erhöhung bzw. veringerung der Lautstärke stattfindet. 300ms ist aus meinen Erfahrungen Perfekt. 
             
            // Ab hier wird das ganze wiederholt. Der Skripttimer ist auf 1s gestellt. die Pause zwischen den Befehlen beträgt 300ms. Demnach wiederhole ich den Befehl 3mal. 3x300ms=900ms. Nach 1 Sekunde fängt das ganze wieder von vorne an bis der KNX-Taster losgelassen wird. 
    
            $KNX_Wert; 
    
            if($KNX_Wert == 9) 
            { 
                SNS_ChangeVolume($Sonos, $Lauter); 
            } 
            elseif ($KNX_Wert == 1) 
            { 
                SNS_ChangeVolume($Sonos, $Leiser); 
            } 
            elseif ($KNX_Wert == 0) 
            { 
                return; 
            } 
             
             ips_sleep(500); 
    
            $KNX_Wert; 
    
            if($KNX_Wert == 9) 
            { 
                SNS_ChangeVolume($Sonos, $Lauter); 
            } 
            elseif ($KNX_Wert == 1) 
            { 
                SNS_ChangeVolume($Sonos, $Leiser); 
            } 
            elseif ($KNX_Wert == 0) 
            { 
                return; 
            } 
         
            ?>

    Dein Skript für die Favoritenwahl habe ich auch eingepflegt, das geht nun auch.
    Wie läuft das jetzt ab mit der Quellenwahl Gruppe vs. Einzelne Instanz? Meinem Verständnis nach muss ich eine neu GA in ETS anlegen, welche mir meinetwegen den Favoriten für "Gruppe EG" sendet.
    Danach erstelle ich in IPS wieder ein Skript mit dem Inhalt der Favoritenwahl, dort trage ich dann allerdings nicht die Sonosinstanz ein, sondern den Gruppenmaster?
    Um meinetwegen das einzeln laufende Bad wieder der EG-Gruppe zuzuweisen muss ich ja nur kurz Aus/Ein Schalten. Aber wenn ich dann am Taster im Bad den Sender im ganzen EG ändern will, bräuchte ich diese Funktion dann ja, oder?

    Ich werde mich nun ans Hauptbad machen, sollte ja nun alles schon bisschen besser flutschen.

    Wieder mal vielen Dank für deine Arbeit, echt klasse!

    Grüße

  10. #20
    Registriert seit
    Jan 2012
    Beiträge
    54

    Cool Lautstärke und Quellenwahl

    Hallo Mathias!

    Schön zu hören dass du fortschritte machst.
    Ich benutze bei mir Nur die Instanz KNX/EIB Device. Bin mit dem immer gut gefahren. Aber im Grunde genommen sollte es eigentlich egal sein wenn du die richtige DPT auswählst. Ich finde die Device feiner zu konfigurieren, einfach anlegen und auswählen.

    Zum Thema Lautstärke:
    Du kannst den Timer auf 2 sekunden setzten und die Pause auf 500 ms. und unten nochmal einen part dazunehmen. sieht dann so aus:

    PHP-Code:
    <?

            
    // In diesem Skript behandeln wir Global wie jede Sonosbox beim Dimm-befehl über KNX die Lautstärke ändern soll.
            
            //Vorgabe Lauter Leiser in % pro Abfrage
            
    $Lauter=1// hier wird die Prozentzahl eingegeben um wieviel sich die Lautstärke in einem Step (hier im Beispiel 500ms) erhöhen soll
            
    $Leiser=-1// hier wird die Prozentzahl eingegeben um wieviel sich die Lautstärke in einem Step (hier im Beispiel 500ms) veringern soll
            
            // In den folgenden Schritten wird der Dimm KNX Wert aus dem Auslöseskript abgefragt und dementsprechend die Aktion auf der Sonosinstanz ausgeführt.
            
            
            
    if($KNX_Wert == 9
            {
                
    //Timer anschalten = Der Timer läuft so lange der KNX Taster gedrückt wird.
                
    IPS_SetScriptTimer($_IPS['SELF'], 2); // setzt den Timer auf 2 sekunden. Das Heisst das dieses Skript alle 1s neu aufgerufen wird.
                //Sonos Lauter
                
    SNS_ChangeVolume($Sonos$Lauter);
            }
            elseif (
    $KNX_Wert == 1)
            {
                
    //Timer anschalten = Der Timer läuft so lange der KNX Taster gedrückt wird.
                
    IPS_SetScriptTimer($_IPS['SELF'], 2);
                
    //Sonos Leiser
                
    SNS_ChangeVolume($Sonos$Leiser);
            }
            elseif (
    $KNX_Wert == 0)
            {
                
    //Timer ausschalten = Der Timer wird zurückgesetzt wenn der KNX Taster losgelassen wird.
                
    IPS_SetScriptTimer($_IPS['SELF'], 0); // Der Skripttimer wird hier wieder auf 0 gesetzt.
            
    }

            
    ips_sleep(500); // Hier wird die Zeit in ms angegeben wie lange es dauern soll bis die nächste erhöhung bzw. veringerung der Lautstärke stattfindet. 300ms ist aus meinen Erfahrungen Perfekt.
            
            // Ab hier wird das ganze wiederholt. Der Skripttimer ist auf 1s gestellt. die Pause zwischen den Befehlen beträgt 300ms. Demnach wiederhole ich den Befehl 3mal. 3x300ms=900ms. Nach 1 Sekunde fängt das ganze wieder von vorne an bis der KNX Taster losgelassen wird.

            
    $KNX_Wert;

            if(
    $KNX_Wert == 9)
            {
                
    SNS_ChangeVolume($Sonos$Lauter);
            }
            elseif (
    $KNX_Wert == 1)
            {
                
    SNS_ChangeVolume($Sonos$Leiser);
            }
            elseif (
    $KNX_Wert == 0)
            {
                return;
            }
            
             
    ips_sleep(500);

            
    $KNX_Wert;

            if(
    $KNX_Wert == 9)
            {
                
    SNS_ChangeVolume($Sonos$Lauter);
            }
            elseif (
    $KNX_Wert == 1)
            {
                
    SNS_ChangeVolume($Sonos$Leiser);
            }
            elseif (
    $KNX_Wert == 0)
            {
                return;
            }
            
             
    ips_sleep(500);

            
    $KNX_Wert;

            if(
    $KNX_Wert == 9)
            {
                
    SNS_ChangeVolume($Sonos$Lauter);
            }
            elseif (
    $KNX_Wert == 1)
            {
                
    SNS_ChangeVolume($Sonos$Leiser);
            }
            elseif (
    $KNX_Wert == 0)
            {
                return;
            }
        
            
    ?>
    Zum Thema Quellenwahl:

    Wie läuft das jetzt ab mit der Quellenwahl Gruppe vs. Einzelne Instanz? Meinem Verständnis nach muss ich eine neu GA in ETS anlegen, welche mir meinetwegen den Favoriten für "Gruppe EG" sendet.
    Nein, du musst keine 2te GA anlegen. Ich habe das intern über eine Logik gelöst damit wir uns einen Taster sparen.
    In mienem Skript wird in jedem Raum ein Merker verwendet welcher gesetzt wird wenn die Sonosbox einer Gruppe zugeschalten wird.
    Skript "Sonosinstanz Ein/Aus" bzw "Sonosinstanz Mute/Unmute".
    PHP-Code:
    SetValueBoolean($Sonos_Merkertrue); // Setzt einen Merker um zu wissen ob bei Auswahl einer Quelle nur diese Instanz oder die Gruppe gewechselt werden soll. 
    Dieser Merker wird bei dem Skript "Quellenauswahl" wieder abgefragt und je nach zustand wird automatisch entweder die Gruppe oder die Sonosinstanz selbst gewechselt. (Zeile 22 und 46)
    PHP-Code:
    if($Sonos_Merker_Quelle == true// Wenn vom KNX Taster der EIN Befehl aktiv ist und die Sonosbox in der Gruppe ist werden die Befehle an den Gruppenmaster übergeben.

    elseif($Sonos_Merker_Quelle == false// Wenn vom KNX Taster der AUS Befehl aktiv ist und die Sonosbox "Stand alone" ist werden die Befehle an die Sonos im Raum übergeben. 
    D.h.: Wenn du in einem Raum am KNX-Taster "EIN" drückst dann wird diese Sonos der Gruppe hinzugefügt und die Quellenauswahle gilt automatisch für die Gruppe.
    Wenn du in einem Raum am KNX-Taster "AUS" drückst wird die Sonos wieder aus der Gruppe entfernt. Wenn du jetzt die Quellenauswahl betätigst sollte diese nur für die eine Sonos gelten. Auschalten der Box dann einfach wieder über den Befehl "AUS".

    Du hast in der Küche angefangen. Da diese Sonos als Gruppenadmin fürs EG in dem Skript "Sonos Adressen" angegeben ist wirkt sich eine änderung der Quelle in diesem Raum immer für die ganze Gruppe aus.

    Und vergiss nicht: Die 2 Instanzen welche du gerne als Gruppenadmin hättest (Küche und Büro) sollten mit dem Skript "Mute / Unmute" Ein und ausgeschalten werden, alle anderen mit dem Skript "Ein/AUS".

    Wenn du die Instanz im Hauptbad fertig hast, kannst du dieses Szenario mal testen.

    Ich hoffe ich konnte das halbwegs Plausiebel erklären.

    Gruß Dani

Ähnliche Themen

  1. Vistapool // Pool-Steuerung über IPS
    Von Bayaro im Forum Anleitungen / Nützliche PHP Skripte
    Antworten: 28
    Letzter Beitrag: 28.07.19, 12:23
  2. IPS Nachrichten über Sonos abspielen
    Von McFly im Forum Anleitungen / Nützliche PHP Skripte
    Antworten: 10
    Letzter Beitrag: 04.09.13, 05:46
  3. Starthilfe: RGB-Steuerung (IPS-DALI-KNX/EIB)
    Von djtark im Forum Skripte, PHP, SQL
    Antworten: 7
    Letzter Beitrag: 13.11.10, 18:35
  4. Steuerung KeyMatic (r) über IPS
    Von DIVERMARIO im Forum Bastel-Ecke
    Antworten: 37
    Letzter Beitrag: 15.08.10, 10:54
  5. IPS Steuerung über Internet
    Von superflip im Forum Allgemeine Diskussion (2.x/3.x)
    Antworten: 51
    Letzter Beitrag: 04.02.10, 13:49

Stichworte