Einzelne Sonos Player ansteuern

Hallo Zusammen,

könnt mir einer mal erklären was man alles anstellen muss um deinen Sonosplayer zu steuern!?

Mir fehlt gerade die Fantasie und das wissen. Bin noch recht neu hier und noch nicht so begabt im Umgang mit IPS.

Habe keine Ahnung was ich machen muss. Nur soviel…ich muss ein Script in IPS anlegen, das Script vom ersten Betrag einfügen und die IP meines SONOSPlayers eintragen. Und dann!?

Button erstellen im Designer?!
Variablen erstellen in IPS? Was für ein Typ von Variablem?! Überhaupt Variablen erstellen?! Insanzen!?
Verstehe auch nicht was ich in die IPSYMID eingeben muss.

Hab in der DOKU das gefunden:

IPSYMID:

"In diesem Feld kann eine Kennung hinterlegt werden, die man in IP-Symcon-Skripte durch die Systemvariable $IPS_COMPONENT auslesen kann. Hierdurch kann ein Skript seine Trigger-Quelle in Erfahrung bringen.

Aber das Hilft mir auch nicht wirklich weiter!! Wo trage ich das $IPS_COMPONENT ein zum auslesen und was lese ich wo aus!?

Würde mich freuen wenn mir hier jemand mal kurz, knapp und für einen Noch-Laien verständlich erklären könnte was ich machen muss.

Vielen Dank und Grüße aus Hamburg,

Peter

Ps: Nicht vergessen, jeder hat mal angefangen! g

Hallo Peter,

im Feld IPSYMID kannst Du irgendeinen Text hinterlegen, der für Dich eine Bedeutung hat. Nehmen wir an, Du hast im Dashboard mehrere Buttons für die Steuerung eines Players angelegt. Als IPSYMID könntest Du z.B. bei einem der Buttons „Btn_Play“ hinterlegen. Im OnClick-Event dieses Buttons trägst Du das Skript ein, das bei Betätigung getriggert (gestartet) werden soll.

Wenn Du bei allen Buttons beim OnClick-Event das selbe Skript eingetragen hast, wird bei jedem Button-Click genau dieses eine Skript aufgerufen. Du schreibst Dein Skript so, dass alle Buttons darüber abgewickelt werden, jeder in einem eigenen Abschnitt. Mit Hilfe der Variablen $IPS_COMPONENT kann das Skript feststellen, welcher der Buttons betätigt wurde. Die Variable wird von IP-Symcon beim Aufruf automatisch gesetzt. Im o.g. Fall enthält sie den Wert „Btn_Play“. Über eine if-Abfrage oder besser über eine switch-Anweisung kann nun gezielt die Funktion für den Play-Button aufgerufen werden.

Um das Ganze anwenden zu können, musst Du Dich allerdings ein wenig in PHP einarbeiten. Falls Du früher mal etwas Erfahrung in BASIC sammeln konntest (die einfachste aller Programmiersprachen), sollte auch PHP für Dich kein großes Hindernis sein.

Gruß
HJH

…das ist ja schon mal ein Anfang. Aber könntest mir das mal anhand des SCRIPTS vom ersten Beitrag erklären!? Da ist ja ne SWITCH abfrage drin!

Ich weiß nur nicht was ich bei meinem im Designer erstellten Button, z.B „Play“ in die IPSYMID eintragen muss.

Hier mal ein Auszug aus dem Script:



switch($action)

{

   case "Pause":

    $content = $content_pause;

    break;

   case "Play":

    $content = $content_play;

    break;

   case "SetVolume":

    $content = $content_setvolume;

    break;

   case "Next":

    $content = $content_next;

    break;

   case "Previous":

    $content = $content_previous;

    break;

Das muss ja eine Standartaktion sein. Die wird ja nicht bei jedem anders sein wenn das SCRIPT vom ersten Betrag nimmt oder doch!?

Danke für die Hilfe!!

Habe hier mal ein ähnliches Projekt für „Homebot“ gefunden, vielleicht hilft das ja etwas…

CeBotics • View topic - Calling Sonos users

Und hier ist ein Sonos .NET Projekt

norrbom.nu | dev zone - home of the Sonos .NET Class Library by Carl R. Norrbom

Ich geb ja keine ´ruh !

Hier auch noch ein kleines Sonos „Command Line“ Projekt

ZonePlayer Command Line Tool - Sonos Forums

… ja, nee soweit so gut. Danke für die Hinweise!
Das „Command Line“ Projekt funktioniert.
Was mir nur noch fehlt zu meinem Glück: wie wechsle ich den Radiosender?
Oder habe ich etwas übersehen.

Dank & Gruß

MST

Des weiß ich auch nicht.

Aber der „unlink“ Befehl ist ja schon mal ganz prima, wenn das verlinken von mehreren Zonen schon nicht funktioniert.

So.
-Jetzt kann man auch verschiedene Radiostationen setzen (SetRadio). Nicht vergessen Play hinterher auszuführen.
-Der Abspielmodus kann verändert werden über SetPlayMode
.Außerdem kann man direkt über die IPSYMID die Befehle starten oder über eine Trigger Variable mit dem passenden Inhalt wie z.B. Play

paresy

IP-Symcon-Radio

The prime tune for the finest musik in your one four walls :rolleyes:

Perfekt,

so finden sehr gute Produkte zusammen.

:slight_smile:

Viele Grüße
Dieter

Na das doch schon mal was …

Fehlt noch :

  • ZP als Instanz bzw. Sonos als Modul
  • Zusammenfügen und Trennen verschiedener Zonen
  • Musik Browsen (Lokal, Napster, Last.FM, Deezer) intergrieren
  • Quellen Auswahl integrieren

Meine Traum-Wunschliste :o

Habe etwas neues aufgestöbert :

SonosWatcher

Dieser überwacht - auf einem Rechner installiert - den gesamten Befehlstraffic unter den Sonos Komponenten und kann bei bestimmten Ereignissen (PLAY/PAUSE/STOP/MUTE etc.) eine .bat, .vbs, .exe usw. Datei ausführen.

Genial zum Starten von Verstärken oder ähnlichem.

CeBotics • View topic - Calling Sonos users

ClearQueue, AddToQueue, RemoveFromQueue, SetTrack

-> Hinzugefügt.

paresy

das wird ja langsam was, cool ! :slight_smile:

Denke das das größte Praxis problem immo noch folgendes ist :

Zonen sind zusammengefügt und ich gebe Wohnzimmer z.B. einen Play Befehl, dann tut sich ja leider nix…

Moin,

kann man sich eigentlich auch den aktuell abgespielten Track anzeigen lassen!?

Wenn JA, wie!?

Danke für Info.

Peter

Da eine komplette Sonos Anbindung in IPS wohl in nächster Zeit nicht ansteht, habe ich mir mal weitere Gedanken zum Thema IPS Durchsagen über mein bestehendes SONOS / Deckenlautsprecher System gemacht.

Zusätzliche Lautsprecher - zu Durchsagezwecken - kamen bei mir aus Designgründen nicht in Frage.

Durchsagen über Sonos sind wohl nicht ganz ohne, man müsste abgespreicher WAV Dateien über Sonos aufrufen, damit zerhaut man sich die aktuelle Playlist, die Trennung und das Zusammenlegen von Zonen funktioniert z.Zt. noch nicht, etc.
Wird also -unabhängig von der IPS Integration - schwer Sonos direkt mit in die Durchsagen einzubinden.
Man müsste NACH Sonos anfangen.

Also dachte ich daran immer mindestens 50% der im Raum verbauten LS per Dodocus LS-Automatik-Umschalter für IPS Durchsagen abzuzweigen.

So könnte - im Fall das Sonos spielt - auf der hälfte der LS eine Durchsage erfolgen.

Die Idee muss man sicherlich noch ein wenig weiter spinnen, aber was haltet Ihr davon ? :confused:

+++++ BITTE MAL VERSCHIEBEN IN DIE 2.0er ECKE !!! +++++

Ich stehe mal wieder auf dem Schlauch :frowning:

Ich hab mir eine Play 1 besorgt. Grundsätzlich funktioniert das auch. Ich würde die Box aber jetzt gerne über die IPS steuern! Script erstellt, ausgeführt OK! Aber ich finde nicht den Punkt wie ich die Box ansteuern kann ?!

Bin ich zu doof ?

Moin…

… welches Skript nutzt du denn? Das aus dem 1. Post oder das verbesserte mit der PHPSonos.inc.php?

Gruß,
Peter

Das aus dem ersten Post!

Ich will ja erst mal langsam starten! :wink: