FritzBox und Callmonitor

Hallo Forum,
benutze seit einiger Zeit erfolgreich den Callmonitor in IPS.:smiley:
Folgende „Codes“ stehen ja bei eingehenden Anruf zur Verfuegung:
[0] Datum Uhrzeit
[1] RING
[2] 0 oder 1
[3] Anrufer-Nr.
[4] die angerufene MSN
[5] ISDN

Nun zu meinem Problem::frowning:
Der Anrufmonitor von AVM meldet auch ausgehende Rufe!
Wie bekomme ich diese in den Callmonitor in IPS:confused:
Suche im Forum hat mich bisher nicht weiter gebracht.

Fuer eure Hilfe vielen Dank

Gruss aus Bayern
Werner

Wenn ich mich richtig entsinne ändert sich [1] z.B. in CALL.
Von ist dann [4] und Ziel [5].
Michael

Gesendet von meinem GT-I5800 mit Tapatalk 2

Hallo Michael,

Danke fuer deine Hilfe, das mit „CALL“ hatte ich ohne Erfolg getestet.
Was mir fehlte war die [5].
Jetzt klappt es.:smiley:

Gruss aus Bayern
Werner

Hallo Gemeinde,

schon ein älterer thread, aber ich versuche so etwas auch bei mir umzusetzen…bisher ohne erfolg, was aber mit meinen PHP Kentnissen zusammenhängt…

Über die Registervariable bekomme ich schon tolle sachen angezeigt…

Könntet ihr mir ein Script zeigen, mit dem ich die Werte in IPS bekomme ?

AB schalten,Anruferliste anzeigen/löschen, wlan und alles andere, was mich interesiert habe ich schon.
Mir geht es nur noch um die „Live“ Anzeige. (Aktuelle Anrufe, ein und abgehend in echtzeit)

Fritzbox 7490
OS 6.05
Port 1012 offen

Vielen Lieben Dank
Sascha

Edit: Vielen Dank, ich habe das Problem durch Rainers Script gelöst…so erspare ich mir auch den Callmonitor zu installieren.

Hallo Sascha,

wenn du im Webfront bist, kannst du dir abgehende und ankommende Anrufe als Meldung einblenden lassen. Auch geht es mit der Änderung von Variablen im IPS in Echtzeit, und dadurch erfolgt dann eine Anzeige im Webfront.

Hi,

habe die 7390 FW.6.03, und gleich mal die Türfreisprechstelle eingerichtet. Soweit alles OK. Aber wenn jetzt einer klingelt
bekomme ich im Debugfenster nichts angezeigt. Hat das vielleicht irgendjemand hinbekommen? Eingehende sowie Ausgehende Anrufe werden ohne Probleme angezeigt. Hintergrund ist das ich eine Umleitung schalten wollte wenn jemand klingelt,
ist aber schlecht möglich wenn IPS nichts davon mitbekommt.

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

Hallo Sascha,

ja das ist klar, nur gibt es im Monitor keine RING Eingänge für Interntelefonie oder Türsprechstelle.

Mit Umweg schon.
Man legt im Telefonbuch einen Eintrag mit einer nichtexistenten VOIP-Verbindung an:
Beispielsweise: Gartentor mit Rufnummer gartentor@127.0.0.1.
Diesem Telefonbucheintrag weist man eine Kurzwahl zu, in meinem Fall **799.

Wenn man dann dafür sorgt, dass die Türsprechstelle diese Kurzwahl wählt, wird der Anruf über den Callmonitor signalisiert und man kann beliebige Aktionen auslösen.

Ok, werde es am WE testen. Danke

Türfreistelle zu Telefon ist doch eine interne Verbindung, oder? Soweit ich weiß, werden diese Verbindung nicht angezeigt. Der Vorschlag per VOIP ist mal eine weiterere Idee. Vielleicht auf einen Asterisken (z.B. auf Raspberry PI) und dann wieder in die Fritzbox als SIP-Provider. Dann müßte ich das Gespräch als externes im IPS haben.