paviro / MMM-FRITZ-Box-Callmonitor

This an extension for the MagicMirror. It provides a callmonitor for FRITZ!Box users alerting them about incoming calls.
28 stars 22 forks source link

Try reloading if connection to FRITZ!Box is not up, when the mirror starts #19

Closed Jopyth closed 7 years ago

Jopyth commented 7 years ago

Currently the connection to the FRITZ!Box sometimes fails, e.g. if the WLAN is not connected on startup. Most modules just load after a few minutes, when the connection is established, however the loading contacts thing is currently one time only.

I will make a PR soon, to fix this, by catching the Error returned from the python script:

MMM-FRITZ-Box-Callmonitor error while accessing FRITZ!Box: Traceback (most recent call last):
[...]
IOError: Error reading file 'http://192.168.178.1:49000/igddesc.xml': failed to load external entity "http://192.168.178.1:49000/igddesc.xml"
paviro commented 7 years ago

Thanks! Maybe it would be worth considering loading it multiple times anyway? Say every hour or so in case new contacts are added?

Am 01.10.2016 um 13:31 schrieb Jopyth notifications@github.com:

Currently the connection to the FRITZ!Box sometimes fails, e.g. if the WLAN is not connected on startup. Most modules just load after a few minutes, when the connection is established, however the loading contacts thing is one time only.

I will make a PR soon, to fix this, by catching the Error returned from the python script:

MMM-FRITZ-Box-Callmonitor error while accessing FRITZ!Box: Traceback (most recent call last): [...] IOError: Error reading file 'http://192.168.178.1:49000/igddesc.xml': failed to load external entity "http://192.168.178.1:49000/igddesc.xml" — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.

Jopyth commented 7 years ago

Good idea. Its funny how, when the original reason for only doing one update at start up vanished (the bugged npm library), I still did not think about doing this regularly. Now it is even possible to do the check via the API, whether a missed call was really missed, instead of doing this based on the call length.