This an extension for the MagicMirror. It provides a callmonitor for FRITZ!Box users alerting them about incoming calls.
- Navigate into your MagicMirror's
modules
folder and executegit clone https://github.com/paviro/MMM-FRITZ-Box-Callmonitor.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',
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 Possible values: any int or float Default value: 30 |
any | Font size of the phone number displayed in the alert. |
vCard Possible values: string Default value: false |
VCF | Absolute path to a .vcf file for number to name conversion. |
minimumCallLength Possible values: time in seconds Default value: 0 |
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. |
password Possible values: string Default value: "" |
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. |
username Possible values: string Default value: "" |
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). |
reloadContactsInterval Possible values: time in minutes Default value: 30 |
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. |
deviceFilter Possible values: array of strings Default value: [] |
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"] . |
showContactsStatus Possible values: true or false Default value: false |
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. |
maximumCallDistance Possible values: time in min Default value: 60 |
any | Time after which calls get removed from the list. |
maximumCalls Possible values: any int Default value: 5 |
any | Maximum number of calls to be shown in the list. |
showOutgoing Possible values: true or false Default value: false |
any | Whether to show outgoing calls in list |
colorEnabled Possible values: true or false Default value: false |
any | Whether to use colors (missed call as red) |
fritzIP Possible values: IP Address Default value: 192.168.178.1 |
any | IP Adress of your FRITZ!Box. |
fritzPort Possible values: any int Default value: 1012 |
any | Port of your FRITZ!Box callmonitor (you should not have to change that) |
fade Possible values: true or false Default value: true |
any | Fade old calls to black. (Gradient) |
fadePoint Possible values: 0 (top of the list) - 1 (bottom of list) Default value: 0.25 |
any | Where to start fade? |
debug Possible values: true or false Default value: false |
any | Should debug information be displayed in case of errors? |
- 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.