This an extension for the MagicMirror. It provides a callmonitor for FRITZ!Box users alerting them about incoming calls.
The original version has not been maintained for many years. Especially, it relied on python2. This fork should work with python3 and the MagicMirror version 2.22.
- Navigate into your MagicMirror's
modules
folder and executegit clone https://github.com/drtorchwood/MMM-FRITZ-Box-Callmonitor-py3.git
. A new folder will appear navigate into it. - Execute
npm install
to install the dependencies. - (Optional) Execute
sudo apt-get install python-dev libxml2-dev libxslt1-dev zlib1g-dev && sudo pip install fritzconnection
to allow access to your FRITZ!Box phone book and recent calls. This can take a few minutes. - Activate the callmonitor of your FRITZ!Box by calling
#96*5*
on a connected phone (Fritz Fon App won't work).
To use this module, add it to the modules array in the config/config.js
file:
modules: [
{
module: 'MMM-FRITZ-Box-Callmonitor-py3',
position: 'top_right', // This can be any of the regions. Best results in left or right regions.
header: "Recent calls", // This is optional
config: {
// See 'Configuration options' for more information.
}
}
]
There are currently two different ways to get this module to displays the name of the caller, rather than the number. They are both optional, and you can combine them.
- Load a .vcf file, for example exported contacts from your phone (see options marked with VCF)
- Access your FRITZ!Box contacts via the TR-064 API (see options marked with API)
The latter will also load recently missed calls, which happened before you started your mirror.
If you are interested in having a list with all active calls as well, check out MMM-Callmonitor-Current-Call.
The following properties can be configured:
Option | Method | Description |
---|---|---|
numberFontSize |
any | Font size of the phone number displayed in the alert. Possible values: any int or float
Default value: 30
|
vCard |
VCF | Absolute path to a .vcf file for number to name conversion. Possible values: string
Default value: false
|
minimumCallLength |
any | There is no real way to tell whether a call was missed or not because voice mails count as connected calls. You can however change the time a call has to be for it to be considered not missed. You should probably use a value as long as your voice mail. Default 0 means any call gets added to the history.If you enter a time larger than `0`, any call that is longer than that time, is not added to the list. Possible values: time in seconds
Default value: 0
|
password |
API | Password to access the FritzBox API. (optional) If you enter this, it directly loads your phonebook(s) and recently missed calls from the FritzBox. If you have specified a username for your access to the FritzBox, see below. You can also create a different user from the one you use for accessing the FritzBox (see this guide: en / de). You will need to check View and edit FRITZ!Box settings for this user. Possible values: string
Default value: ""
|
username |
API | Username to access the FritzBox API. (optional) Specify the username if you have one set up for the FritzBox access (see password option). Leave out if you have no username (default). Possible values: string
Default value: ""
|
reloadContactsInterval |
API | How often contacts are reloaded from the FRITZ!Box. Set to 0 to disable reloading contacts, they are only loaded once after the start of the mirror. Possible values: time in minutes
Default value: 30
|
deviceFilter |
API | You can enter the names of your real phone devices here (optional). You should be redirected to the list after you login here. Example: deviceFilter: ["firstphone", "secondphone"] .
Possible values: array of strings
Default value: []
|
showContactsStatus |
any | If no recent calls are displayed, a small symbol shows how many contacts are loaded in your phonebook. A small warning sign appears if any error occurs when importing contacts from vCard or the FRITZ!Box. Possible values: true or false
Default value: false
|
maximumCallDistance |
any | Time after which calls get removed from the list. Possible values: time in min
Default value: 60
|
maximumCalls |
any | Maximum number of calls to be shown in the list. Possible values: any int
Default value: 5
|
fritzIP |
any | IP Adress of your FRITZ!Box. Possible values: IP Address Default value: 192.168.178.1
|
fritzPort |
any | Port of your FRITZ!Box callmonitor (you should not have to change that) Possible values: any int
Default value: 1012
|
fade |
any | Fade old calls to black. (Gradient) Possible values: true or false
Default value: true
|
fadePoint |
any | Where to start fade? Possible values: 0 (top of the list) - 1 (bottom of list)
Default value: 0.25
|
debug |
any | Should debug information be displayed in case of errors? Possible values: true or false
Default value: false
|
- node-fritzbox-callmonitor (installed by
npm install
) - phone-formatter (installed by
npm install
) - python-shell (installed by
npm install
) - vcard-json (installed by
npm install
) - xml2js: (installed by
npm install
) - fritzconnection: (installed by
sudo apt-get install python-dev libxml2-dev libxslt1-dev zlib1g-dev && sudo pip install fritzconnection
)
Copyright © 2016 Paul-Vincent Roll
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
The software is provided “as is”, without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software.