Skip to content

Instantly share code, notes, and snippets.

@THWillert
Last active June 5, 2021 11:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save THWillert/fde4def3196fef7d278252df1e11243a to your computer and use it in GitHub Desktop.
Save THWillert/fde4def3196fef7d278252df1e11243a to your computer and use it in GitHub Desktop.
Send FRITZ!Box call list as CSV file via e-mail V2.0.

FRITZ!Box call list as CSV file via e-mail.

The FRITZ!Box shows a maximum of 400 entries in the call list. For a regular, automatic backup of them, I have developed the following flow.

Flow

Customization to your own system

  • Match the inject node with the parameters for the FRITZ!Box, regarding the frequency and number of data.
  • Match the configuration of the Fritz Box.
  • Perhaps change the parameters in the node "Parameters".
  • Configure the parameters to send the email.

Homepage


Update:

V2.0: Replaced node fastcsv with csv.

[
{
"id": "5954d7e4.e1f548",
"type": "e-mail",
"z": "e294d8d7.17e738",
"server": "mail.gmx.net",
"port": "465",
"secure": true,
"tls": true,
"name": "thorsten.willert@gmx.de",
"dname": "",
"x": 590,
"y": 1540,
"wires": []
},
{
"id": "ed6806cf.8f69c",
"type": "fritzbox-calllist",
"z": "e294d8d7.17e738",
"device": "",
"name": "",
"action": "GetCallList",
"listurl": "NewCallListURL",
"max": "400",
"maxdays": "8",
"x": 350,
"y": 1460,
"wires": [
[
"5f57a0d7.424b88"
]
]
},
{
"id": "c362a96b.6d28d8",
"type": "json",
"z": "e294d8d7.17e738",
"name": "",
"property": "payload.Call",
"action": "obj",
"pretty": false,
"x": 130,
"y": 1540,
"wires": [
[
"5a5d832a.effcec"
]
]
},
{
"id": "db45ac56.b7ed08",
"type": "change",
"z": "e294d8d7.17e738",
"name": "Parameter",
"rules": [
{
"t": "set",
"p": "attachments",
"pt": "msg",
"to": "{\t \"filename\":\"FRITZ!Box Anrufliste.csv\",\t \"content\": msg.payload,\t \"contentType\":\"text/plain\"\t}",
"tot": "jsonata"
},
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "\"FRITZ!Box Anrufliste vom \" & $now()",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 390,
"y": 1540,
"wires": [
[
"5954d7e4.e1f548"
]
]
},
{
"id": "5f57a0d7.424b88",
"type": "change",
"z": "e294d8d7.17e738",
"name": "",
"rules": [
{
"t": "move",
"p": "payload.Call",
"pt": "msg",
"to": "payload",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 570,
"y": 1460,
"wires": [
[
"c362a96b.6d28d8"
]
]
},
{
"id": "5938121b.4af2fc",
"type": "inject",
"z": "e294d8d7.17e738",
"name": "Mo. 0:00",
"props": [
{
"p": "payload"
}
],
"repeat": "",
"crontab": "00 00 * * 1",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "",
"payloadType": "date",
"x": 170,
"y": 1460,
"wires": [
[
"ed6806cf.8f69c"
]
]
},
{
"id": "5a5d832a.effcec",
"type": "csv",
"z": "e294d8d7.17e738",
"name": "",
"sep": ";",
"hdrin": true,
"hdrout": "all",
"multi": "one",
"ret": "\\n",
"temp": "Id,Type,Caller,Called,CalledNumber,Name,Numbertype,Device,Port,Date,Duration,Count,Path",
"skip": "0",
"strings": true,
"include_empty_strings": "",
"include_null_values": "",
"x": 250,
"y": 1540,
"wires": [
[
"db45ac56.b7ed08"
]
]
}
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment