Mute-Leiseregelung Mediaplayer

Wer mehrere Player im Einsatz hat und mal schnell leise stellen muss, ist meistens nicht auf der richtigen Seite im Webfront.

Hier eine kleine Steuerung dafür. Der Schalter dafür, ist ein Widget welcher den aktuell laufenden Player bedient.
Benötigt wird eine bool und integer Variable. Der Rest sollte aus den Bildern ersichtlich sein.

<?
if($IPS_SENDER == "Execute")
{
    echo "Script kann nicht von Hand gestartet werden!";
    return;
}

$letzteLautstaerke = GetValue(15305 /*[Automatische Lautstärkeregelung Mediaplayer\letzteLautstaerke]*/);

foreach(IPS_GetInstanceListByModuleID("{2999EBBB-5D36-407E-A52B-E9142A45F19C}") as $id)
{
    //$list = IPS_GetStatusVariableIdents($id);
   if(IPS_StatusVariableExists($id, "StatusVar"))
    {
        //$var = IPS_GetStatusVariable($id, "StatusVar");
        //$player = IPS_GetObject($var['VariableID']);
        $status = GetValue(IPS_GetStatusVariableID($id, "StatusVar"));
        //$name = IPS_GetName(IPS_GetParent($player['ParentID']));
    }
    if((IPS_StatusVariableExists($id, "VolumeVar")) && ($status == 1))
    {
       $vol = GetValue(IPS_GetStatusVariableID($id, "VolumeVar"));
       SetValue(15305 /*[Automatische Lautstärkeregelung Mediaplayer\letzteLautstaerke]*/, $vol);
    }
    if(($IPS_VALUE) && ($status == 1))
    {
       WAC_SetVolume($id, 5);
    }
    if((!$IPS_VALUE) && ($status == 1))
    {
       WAC_SetVolume($id, $letzteLautstaerke);
    }
}

?>

SetMute

<?
if(!GetValue(26564 /*[Automatische Lautstärkeregelung Mediaplayer\Mute]*/))
{
    SetValue(26564 /*[Automatische Lautstärkeregelung Mediaplayer\Mute]*/, true);
}
else
{
   SetValue(26564 /*[Automatische Lautstärkeregelung Mediaplayer\Mute]*/, false);
}

?>

widgetMute.png