MULTIMEDIA - INCREMENTO VOLUME SONOS CON OGGETTO KNX ON/OFF

Lo script presentato in questo tutorial permette di regolare il volume di una zona SONOS mediante un ingresso KNX ON/OFF, aumentando o diminuendo rispettivamente il volume (di un valore di "step" prefissato) alla ricezione di 1 o di 0.

 

CREAZIONE DELLO SCRIPT

Il primo passo consiste nel creare uno SCRIPT, procedendo come segue:

  • Accedere alla sezione di AMMINISTRAZIONE di IKON SERVER

  • Selezionare la voce "FUNZIONI AVANZATE", quindi "SCRIPTING" ed infine "SCRIPTS"

  • Premere il pulsante "NUOVO" ed assegnare un nome univoco al nuovo script (ad esempio "sonos_increase_volume")

  • Accedere alla scheda del nuovo SCRIPT mediante l'apposito pulsante di MODIFICA (verde)

A questo punto, cancellare il contenuto dello SCRIPT ed inserire il codice seguente:

/*
  This script increases or decreases volume of a given Sonos zone according to input value:
     1 = increase
     0 = decrease

  Please adjust IP address and step 
*/

//Including sonos library
include_library("sonos");

//Binding to a SONOS device with given IP address - Change it accordingly to your configuration!
sonosM::bind("192.168.0.150");

//Initializing step
$step = 5;

//Retrieving volume
$volume_old = sonosM::getVolume();
if($volume_old==null){
   debug("Error connecting to Sonos, skipping");
} else {
   debug("Actual volume is " . $volume_old);

   //Increasing or decreasing volume according to input value
   if( intval( input() ) ==1 ){
      $volume_new = min(100,$volume_old+$step);
   } else {
      $volume_new = max(0,$volume_old-$step);
   }

   //Setting volume if changed
   if($volume_new != $volume_old){
      sonosM::setVolume($volume_new);
      debug("Setting volume to " + $volume_new);
   } else {
      debug("Ignoring volume increase/decrease being already at 0 or 100");
   }
}

output("");

Modificare opportunamente l'indirizzo IP del dispositivo SONOS da controllare, ed eventualmente personalizzare lo step di incremento del volume, quindi salvare mediante l'apposito pulsante SALVA.

 

CREAZIONE DELLO SCRIPT RUNNER

Per ogni zona che si desidera gestire, è necessario configurare un nuovo SCRIPT RUNNER nel seguente modo:

  • Selezionare la voce "RUNNERS" nella sezione "SCRIPTING" del menu di amministrazione

  • Creare un nuovo oggetto mediante il pulsante "AGGIUNGI" della TOOLBAR

  • Accedere alla scheda del nuovo oggetto tramite il pulsante "MODIFICA" della TOOLBAR

A questo punto inserire nella sezione "DATI GENERALI" un nome identificativo per il nuovo oggetto, e selezionare lo SCRIPT creato in precedenza nell'omonimo menu a tendina; lasciare inalterate le altre opzioni della sezione "ASPETTO".

Nella sezione "INGRESSI" trascinare l'oggetto di tipo ON/OFF che, quando va ad 1, deve aumentare il volume, mentre quando va a 0 deve ridurlo; prestare attenzione a indicare "$VAL" come valore.

E' possibile effettuare il debug dello script forzando nella apposita sezione in basso (dopo aver premuto il pulsante "AGGIORNA") rispettivamente i valori 0 e 1; è necessario essere nella stessa rete del sistema SONOS, altrimenti lo script va in errore di timeout.

Questo sito utilizza diversi tipi di cookie, tra cui quelli di profilazione (propri e di altri siti) per inviarti pubblicità in linea con le tue preferenze manifestate nell'ambito della navigazione in rete. Se vuoi saperne di più o negare il consenso a tutti o ad alcuni cookie clicca qui. Se accedi a un qualunque elemento sottostante questo banner acconsenti all'uso dei cookie.
OK