Hallo Uwe,
ich hab hier im Forum ein Script von Rainer gefunden, was für mich perfekt funktioniert.
im case „RING“ bekommt IPS auch das angerufen werden mit.
Hier mal das Script :
Nicht benötigte IF Abfragen kannst du ja löschen…
<?
$box_mac = "00:04:20:27:c0:f6"; // SQB Radio
$sqb_radio = GetValueBoolean(36699 /*[Unsere Wohnung\Multimedia\Geräte\Squeezebox Radio\Radio Rechts\Power]*/);
$incoming = 54945 /*[Unsere Wohnung\Fritzbox\Links\Fritzbox Live!\Eingehender Anruf]*/;
$outgoing = 35674 /*[Unsere Wohnung\Fritzbox\Links\Fritzbox Live!\Ausgehender Anruf]*/;
$lastcalling = 33042 /*[Unsere Wohnung\Fritzbox\Links\Fritzbox Live!\Letzter Anruf]*/;
$number = 55670 /*[Unsere Wohnung\Fritzbox\Links\Fritzbox Live!\Anrufernummer]*/;
$tv = GetValueBoolean(12908 /*[Unsere Wohnung\Multimedia\Geräte\Samsung TV\TV Rechts\Power TV]*/);
$yam = GetValueBoolean(22791 /*[Unsere Wohnung\Multimedia\Geräte\Verstärker\AmpR\Power Verstärker]*/);
$dune = GetValueBoolean(42379 /*[Unsere Wohnung\Multimedia\Geräte\Dune WZ\Dune Rechts\Power Dune]*/);
$mode = GetValueBoolean(20401 /*[Unsere Wohnung\Systemsteuerung\Sys Rechts\Anrufsteuerung\Stille bei Anruf]*/);
// Daten aus Registervariable lesen
$daten = explode(";", $IPS_VALUE);
// Datum/Uhrzeit mit ausgeben
define ("datetime", $daten[0]);
// Nummern ohne Eintrag im öffentlichen Telefonbuch welche aber bekannt sind und übertragen werden ($intern).
// unendlich erweiterbar
$array["Nummer"][1] = "xxxxxxxxxx";
$array["Name"] [1] = "Eve Mobil";
$array["Nummer"][2] = "xxxxxxxxxx";
$array["Name"] [2] = "Sascha Mobil";
$array["Nummer"][3] = "xxxxxxxxxx";
$array["Name"] [3] = "Ilia Forster";
$array["Nummer"][4] = "xxxxx";
$array["Name"] [4] = "Rainer Firma";
$array["Nummer"][5] = "";
$array["Name"] [5] = "Unbekannt";
$array["Nummer"][6] = "xxxxxx";
$array["Name"] [6] = "Ernst ";
// Daten aus Registervariable auswerten
switch($daten[1])
{
case "RING":
If ($mode == True)
{
if ($sqb_radio == True)
{
CSCK_SendText(41329 /*[Squeezboxserver]*/, $box_mac.' button pause 1 '.chr(13));
}
if ($tv == True)
{
IRT_SendOnce(19869 /*[Unsere Wohnung\Hardware\IRTrans LAN]*/,"samsungtv","mute");
SetValueInteger(33355 /*[Unsere Wohnung\Multimedia\Geräte\Samsung TV\TV Links\Volume]*/,0);
}
if ($yam == True)
{
RegVar_SendText(19433 /*[Yamaha Socket\Register Variable]*/, "@MAIN:MUTE=On".chr(13).chr(10));
}
if ($dune == True)
{
IRT_SendOnce(19869 /*[Unsere Wohnung\Hardware\IRTrans LAN]*/,"Dune","pause");
}
}
$Rufnummer = $daten[3];
if(in_array($Rufnummer, $array["Nummer"]))
{
$intern = array_search($Rufnummer, $array["Nummer"]);
SetValue($incoming, "am ".datetime. " von ".$array["Name"][$intern]);
SetValue($lastcalling, "am ".datetime. " von ".$array["Name"][$intern]);
WFC_SendNotification(39346 /*[Standard]*/,'Eingehender Anruf',' von '.$array["Name"][$intern], 'Information', 20);
return;
}
else
{
$Rufnummer = SucheNummer($Rufnummer);
}
break;
case "CALL":
$interneNummer = $daten[4];
if ($interneNummer == 7045747)
{
$interneNummer = "Sascha";
}
else
{
$interneNummer = "Eve";
}
$externeNummer = $daten[5];
SetValue($outgoing, "von ".$interneNummer." zu ".$externeNummer);
break;
case "DISCONNECT":
RegVar_SetBuffer(14936 /*[FRITZ!Box Socket\Register Variable]*/, "");
SetValue($lastcalling, "");
SetValue($outgoing, "");
If ($mode == True)
{
if ($sqb_radio == True)
{
CSCK_SendText(41329 /*[Squeezboxserver]*/, $box_mac.' button play '.chr(13));
}
if ($tv == True)
{
IRT_SendOnce(19869 /*[Unsere Wohnung\Hardware\IRTrans LAN]*/,"samsungtv","mute");
SetValueInteger(33355 /*[Unsere Wohnung\Multimedia\Geräte\Samsung TV\TV Links\Volume]*/,2);
}
if ($yam == True)
{
RegVar_SendText(19433 /*[Yamaha Socket\Register Variable]*/, "@MAIN:MUTE=Off".chr(13).chr(10));
}
if ($dune == True)
{
IRT_SendOnce(19869 /*[Unsere Wohnung\Hardware\IRTrans LAN]*/,"Dune","play");
}
}
return;
break;
}
function SucheNummer($Rufnummer)
{
$url_orig="http://www.klicktel.de/inverssuche/index/search?method=searchSimple&_dvform_posted=1&phoneNumber=#TEL#";
$url = str_replace("#TEL#", $Rufnummer, $url_orig);
$Ausgabe = fopen($url, "r");
if (!$Ausgabe)
{
echo("ERROR : Kann URL nicht öffnen : $url
");
}
$lineNb = 0;
$searchTag0 = 'namelink';
$searchTag1 = '<strong>';
$searchTag2 = '</strong>';
$gefunden = 0;
while(!$gefunden && !feof($Ausgabe))
{
$lineNb++;
$buffer = fgets($Ausgabe);
if (strpos($buffer, $searchTag0) != false)
{
$gefunden = 1;
$startLN = strpos($buffer, $searchTag1) + strlen($searchTag1);
$endeFN = strpos($buffer, $searchTag2) ;
$Name = substr($buffer, $startLN, $endeFN - $startLN) ;
$Name = html_entity_decode($Name);
SetValue($incoming, "am ".datetime. " von ".$Name);
SetValue($lastcalling, "am ".datetime. " von ".$Name);
WFC_SendNotification(39346 /*[Standard]*/,'Eingehender Anruf'," von ".$Name, 20);
echo "Anruf am ".datetime. " von ".$Name;
}
else
{
SetValue($number, $Rufnummer);
WFC_SendNotification(39346 /*[Standard]*/,'Eingehender Anruf'," von ".$Rufnummer, 20);
}
}
fclose($Ausgabe);
return $Name;
}
?>
LG
Sascha