FRITZBOX - Fritz!Box und Fritz!Fon sprechen - Jetzt auch ohne Telnet

Begonnen von tupol, 28 November 2014, 23:46:54

Vorheriges Thema - Nächstes Thema

Markus M.

Kennt zufällig jemand eine Möglichkeit einen gerade aktiven (Telefon klingelt) Alarm zu stoppen?
Aktuell weder Smarthome noch FHEM vorhanden

frank

Zitat von: tupol am 04 Februar 2015, 15:19:24
Hallo Frank,

warum willst Du es auf dem AB aufnehmen? Dafür ist "call" nicht gedacht und das müßte man erstmal ohne FHEM über die FB-Oberfläche testen und dann in FHEM nachbauen.

es geht um folgendes:
ich bekomme vom landkreis eine erinnerungsmail, die mir sagt, welcher müll morgen kommt. mit dem modul mailcheck bekomme ich ein event in fhem auf die mail und über notify möchte ich meiner frau die nachricht ansagen lassen. wenn sie nicht da ist oder nicht abhebt, soll der anrufbeantworter die nachricht aufzeichnen und am telefon die neue nachricht signalisieren. => dann kann sie sich nicht mehr rausreden, dass sie nicht wusste, dass die müllabfuhr kam.  ;)

mein grösstes problem im augenblick ist aber das klingeln mit dem falschen klingelton (internetradio). das klingeln beendet sich nach den 8s, aber nach dem log siehts aus, dass erst korrekt nach ca 60s aufgelegt wird. ich habe jetzt auch schon mit rufumleitungen rumprobiert. irgendwie wird auch die interne nummer nicht erkannt, sodass entsprechend umgeleitet wird. auch ein call direkt an den anrufbeantworter mit **600 oder an die memo-funktion **605 wird leider nicht, wie erhofft umgesetzt. das könnte aber an einem zu kurzen say-text liegen.

nach meinem verständnis der commandref, sollte die funktion call eine nummer für x-sekunden (default=60) antelefonieren und, wenn abgenommen wird, den say-text abspielen.

seltsamerweise werden in allen internetabhandlungen zum telefonieren mit den shellbefehlen immer 3 befehle in dieser reihenfolge angegeben, zb:

   'telcfg:settings/UseClickToDial' => 1,
   'telcfg:command/Dial'            => $number,
   'telcfg:settings/DialPort'       => $DIAL_PORT, });


haben die alle aus der selben quelle abgeschrieben, oder ist es wichtig? UseClickToDial kann ich in meinem log zb garnicht finden und Dial/Dialport benutzt du genau anders herum. wobei ich deine version eigentlich logischer finde. erst konfigurieren und dann den befehl.

könnte es probleme machen, weil ich keine analogen-/isdn-telefone an der fritzbox angeschlossen habe? ich habe nur ein dect telefon und der telefonanschluss wird über internet bereitgestellt (ip-anschluss).

gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Deathevn

Okay, neues Problem mit der Anwesenheit.
Die Landevice Nummer bleibt zwar beim Reboot gleich, allerdings scheint sich die Reihenfolge doch durch irgendwelche Events zu ändern.

Mein Versuch war der Weg über die myUtils:

package main;
use strict;
use warnings;
use POSIX;

sub
myUtils_Initialize($$)
{
  my ($hash) = @_;
}

# Enter you functions below _this_ line.
sub
fblandevicecheck($)
{
  my $loop = 0;

  do {
    $loop++;
    if (fhem("get FritzBox shellCommand ctlmgr_ctl r landevice settings/landevice$loop/name") eq "Handy-Martin")
    {if (fhem("get FritzBox shellCommand ctlmgr_ctl r landevice settings/landevice$loop/active"))
      {
        $loop = 0;
        return 1;
      }
     else
      {
        $loop = 0;
        return 0
      }
    }
  } until ($loop = 0);
  return 0;
}

1;


Da rennt die Schleife allerdings ins Endlose.
Hat jemand einen Hinweis, was ich hier übersehe?

Viele Grüße
Martin

frank

  } until ($loop == 0);
hier muss eine bedingung stehen, keine zuweisung.
ausserdem wird die do-schleife nie null, wenn kein martin-handy vorhanden ist.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Deathevn

Vielen Dank!
Jetzt funktioniert es.
Mittels folgender myUtils kann ich den Verbindungs-Status eines Gerätes auf der Fritzbox abfragen:
package main;
use strict;
use warnings;
use POSIX;

sub
myUtils_Initialize($$)
{
  my ($hash) = @_;
}

# Enter you functions below _this_ line.
sub
fblandevicecheck($)
{
  my ($device) = @_;
  my $loop = 0;

  do {
    if (fhem("get FritzBox shellCommand ctlmgr_ctl r landevice settings/landevice$loop/name") eq $device)
    {if (fhem("get FritzBox shellCommand ctlmgr_ctl r landevice settings/landevice$loop/active"))
      {
        $loop = 0;
        return 1;
      }
     else
      {
        $loop = 0;
        return 0
      }
    }
    else
    {
      $loop++;
    }
  } until ($loop == 0);
}

1;


(Haken ist, wie du gesagt hattest, das Gerät muss entsprechend vorhanden sein - hab hier aber spontan keine Idee, wie ich das noch geschickt abfangen könnte.)

Und im Presence-Modul entsprechend z.B. mittels:
function {fblandevicecheck("Handy-Martin")} 600 600

das Ganze verwenden.

Jetzt bin ich zufrieden mit meiner Anwesenheitserkennung.

Kurze Frage noch zu Perl:
Springt er bei "return" direkt aus der Funktion oder setzt er lediglich den Return-Wert und arbeitet den Code noch ab? Im ersten Fall könnte ich mir ja das "$loop = 0;" jeweils vorm return noch sparen.

frank

ZitatSpringt er bei "return" direkt aus der Funktion oder setzt er lediglich den Return-Wert und arbeitet den Code noch ab? Im ersten Fall könnte ich mir ja das "$loop = 0;" jeweils vorm return noch sparen.
soweit ich weiss, erfolgt eine sofortige rückkehr. am besten immer eine oder mehrere logausgaben einbauen.  ;)

hier die theorie, "return" eingeben http://perldoc.perl.org/. je nach version eventuell unterschiedlich. deswegen sind debug ausgaben sehr viel besser, besonders bei unvorhergesehenen aktionen.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

volschin

Hallo zusammen,
ich suche nach einer Möglichkeit, bei Abwesenheit nur das 5GHz WLAN abzuschalten. Das 2,4GHz WLAN soll weiterlaufen, das dort meine Remote-RasPi's angebunden sind. In der FritzBox kann ich das ja manuell tun. Das sind dann rund 10% weniger Energieverbrauch in der FritzBox.

Gibt es so eine Möglichkeit aus dem Modul? Ich benutze den Remote-Modus per Telnet.

Danke und Gruß
Veit
Intel NUC+Ubuntu 24.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7690, Echo Dots+Show8, HomeBridge

Elektrolurch

Hallo Tupol,

seit dem heutigen Update habe ich alle 5 Minuten folgenden Eintrag im log:
2015.02.08 17:51:27 1: FRITZBOX fritzbox: Readout_Start.620 Old readout process still running. Killing old process HASH(0x15b99a8)

Ich habe schon mal
attr fritzbox disable 1
gesetzt und dann sind die Eintragungen im log natürlich weg.
Beim Aktivieren kommen sie dann auch regelmäßig wieder.

Was hat das zu bedeuten und kann man was dagegen tun?

Gruß

Elektrolurch

configDB und Windows befreite Zone!

tupol

Ich brauche bitte ein verbose 5 log

Zitat von: Elektrolurch am 08 Februar 2015, 17:55:05
Hallo Tupol,

seit dem heutigen Update habe ich alle 5 Minuten folgenden Eintrag im log:
2015.02.08 17:51:27 1: FRITZBOX fritzbox: Readout_Start.620 Old readout process still running. Killing old process HASH(0x15b99a8)

Ich habe schon mal
attr fritzbox disable 1
gesetzt und dann sind die Eintragungen im log natürlich weg.
Beim Aktivieren kommen sie dann auch regelmäßig wieder.

Was hat das zu bedeuten und kann man was dagegen tun?

Gruß

Elektrolurch

tupol

Warum nutzt Du nicht Ping von Presence. Die Fritzbox reagiert öfters zeitverzögert.

Zitat von: Deathevn am 06 Februar 2015, 14:22:14
Vielen Dank!
Jetzt funktioniert es.
Mittels folgender myUtils kann ich den Verbindungs-Status eines Gerätes auf der Fritzbox abfragen:...

Deathevn

Der Ping ist bei Windows Phone nicht zuverlässig. Die Geräte antworten im Standby anscheinend nur, wenn sie gerade synchronisieren. Darum der Umweg über die Fritzbox. Das funktioniert bisher sehr gut.

Klaus1956

Hallo Tupol,

auch ich bekomme seit dem heutigen Update ein 620 Old readout process still running. Killing old process HASH(0xe88050)
hier die letzten Zeilen mit Verbose 5

cul|dect1_intern||dect1||dect1_manufacturer||dect1_intRingTone||dect1_alarmRingTone||dect1_radio||dect1_imagePath||dect1_custRingTone||dect1_custRingToneName||dect1_fwVersion||dect1_model||fon1|Telefon|fon1_out|83xxxxx#|fon2|Türsprechanlage|fon2_out||fon1_intern|1|fon2_intern|2|tam1|Anrufbeantworter|tam1_state|on|tam1_newMsg|0|tam1_oldMsg|1|user01|(guest)|user01_thisMonthTime|0:00|user01_todayTime|0:00|user01_todaySeconds|0|user01_type|Guest|diversity1|0|diversity1_state|on|diversity1_dest|01754xxxxxxxx|box_wlan_2.4GHz|on|box_wlan_5GHz|on|box_guestWlan|off|box_guestWlanRemain|0|box_dect|off|box_moh|default|box_powerRate|46|alarm1|Wecker 1|alarm1_state|off|alarm1_time|00:00|alarm1_target|FON 1|alarm1_wdays|daily|alarm2|Wecker 2|alarm2_state|off|alarm2_time|00:00|alarm2_target|FON 1|alarm2_wdays|daily|alarm3|Wecker 3|alarm3_state|off|alarm3_time|00:00|alarm3_target|FON 1|alarm3_wdays|daily|readoutTime|9.00
2015.02.09 01:50:16 1: FRITZBOX fritzbox: Readout_Start.620 Old readout process still running. Killing old process HASH(0xe88050)

Gruß
Klaus
1xFb7390(84.06.23), 1xRaspberry B mit CUL868,1xEM,3xFHTTK, 6xFS20, 9xFHT80, 1xKS300, 6xRM100-2, FritzBox, FHEM2FHEM, Pushover, Mail, Callmanager,
1xRaspberry B+ mit HM, 6xHM-SEC-SC, 2xHM-ES-PMSw1-Pl, 2xHM_WDS30_OT2, 3xHM-LC-Bl1PBU-FM, PRESENCE, HM-LC-SW1-PL2, 3xHM-CC-RT-DN, Withings, WetterOnline,

tupol

Hmm. Da kann ich leider nichts erkennen. Hast Du ein shutdown restart gemacht? Was ist Deine Konfiguration?

tupol

Aha. Wahrscheinlich ist dann die Verzögerung der Fritzbox von Vorteil, weil die WLAN-Verbindung immer mal wieder abgebrochen wird.

Hast Du mal im LOG der Fritzbox nachgeschaut, ob die WLAN Verbindung zu Deinen Windows Phone während dem Standby abgebrochen wird?

Zitat von: Deathevn am 08 Februar 2015, 21:35:25
Der Ping ist bei Windows Phone nicht zuverlässig. Die Geräte antworten im Standby anscheinend nur, wenn sie gerade synchronisieren. Darum der Umweg über die Fritzbox. Das funktioniert bisher sehr gut.

Elektrolurch

Hallo Tupol,

zu dieser Meldung:
2015.02.09 01:50:16 1: FRITZBOX fritzbox: Readout_Start.620 Old readout process still running. Killing old process HASH(0xe88050)

Die kommt erst seit der letzten Version.
Die kommt auch nach einem Neustart.
Die Werte werden nicht mehr aktualisiert, so wie das aussieht. Zumindest steht für Gast-Lan was undefiniertes drin, obwohl das ausgeschaltet ist.
Habe mal mit attr fritzbox INTERVALL "herumgespielt", hat aber keinen Einfluß auf die Meldung, bzw. sie kommt entsprechend des eingesteltlen Intervalls, also z.B. alle 15 Min. (1800).

Gruß

Elektrolurch
configDB und Windows befreite Zone!