'Nabend,
Ich benutze seit einiger Zeit FB_Calllist, und alles funktioniert sehr gut! :D
Jedoch nach einem 'shutdown restart' ist die Liste immer leer. :(
Lässt sich das irgendwie verhindern?
fhem ist uptodate.
Grüße Wolfgang
Schau mal in dein fhem-Logfile, dort dürfte eine Fehlermeldung stehen, immer dann, wenn ein Gespräch stattgefunden hat. Ich tippe darauf, in die Datei uniqueId nicht geschrieben werden kann.
Gruß
Markus
Hallo Markus
Ich habe die gleiche Situation, sobald ich einen FHEM Neustadt mache ist die Anrufliste leer.
Kann nicht feststellen dass er nicht in die UniqueID schreiben kann.
Grüsse Eric
Auszug aus dem Log:
2015.08.20 10:24:47 4: FB_CALLLIST (Anrufliste) - start processing event call for Call-ID 1
2015.08.20 10:24:47 5: FB_CALLLIST (Anrufliste) - created new data hash: HASH(0x47a00c0)
2015.08.20 10:24:47 4: FB_CALLLIST (Anrufliste) - cleaning up call list
2015.08.20 10:24:47 5: FB_CALLLIST (Anrufliste) - inform all FHEMWEB clients
2015.08.20 10:24:47 5: FB_CALLLIST (Anrufliste) - start dumping of list to file
2015.08.20 10:24:47 5: FB_CALLLIST (Anrufliste) - found Compress::Zlib module, compressing dump
2015.08.20 10:24:47 5: FB_CALLLIST (Anrufliste) - saving list dump: compressed:eJzt........
2015.08.20 10:24:54 4: FB_CALLLIST (Anrufliste) - start processing event disconnect for Call-ID 1
2015.08.20 10:24:54 5: FB_CALLLIST (Anrufliste) - found old data hash: HASH(0x47a00c0)
2015.08.20 10:24:54 5: FB_CALLLIST (Anrufliste) - processed disconnect event for call id 1
2015.08.20 10:24:54 4: FB_CALLLIST (Anrufliste) - cleaning up call list
2015.08.20 10:24:54 5: FB_CALLLIST (Anrufliste) - inform all FHEMWEB clients
2015.08.20 10:24:54 5: FB_CALLLIST (Anrufliste) - start dumping of list to file
2015.08.20 10:24:54 5: FB_CALLLIST (Anrufliste) - found Compress::Zlib module, compressing dump
2015.08.20 10:24:54 5: FB_CALLLIST (Anrufliste) - saving list dump: .......
Hallo Markus,
Hier der Logauszug von einem nicht angenommenen Anruf (Verbose 5)
2015.08.20 20:47:30 4: FB_CALLLIST (fb_Anrufliste) - start processing event ring for Call-ID 1513e6f8b5491629ec8b68b05b163abd
2015.08.20 20:47:30 5: FB_CALLLIST (fb_Anrufliste) - created new data hash: HASH(0x4fff290)
2015.08.20 20:47:30 4: FB_CALLLIST (fb_Anrufliste) - cleaning up call list
2015.08.20 20:47:30 5: FB_CALLLIST (fb_Anrufliste) - inform all FHEMWEB clients
2015.08.20 20:47:30 5: FB_CALLLIST (fb_Anrufliste) - start dumping of list to file
2015.08.20 20:47:30 5: FB_CALLLIST (fb_Anrufliste) - found Compress::Zlib module, compressing dump
2015.08.20 20:47:30 5: FB_CALLLIST (fb_Anrufliste) - saving list dump: compressed:eJylkj1PwzAQhvf+Cm9ZqsqOP2IPMLEwwFKYI38cYCm9SE6CEFX/O6GBUlXELcKr77n37t53uyCkYEJQapSQdFWVpizI1TXZjh8zr/C2aeoY9nUFk4yDetJOCsNUacBrp7Sj0jHFrQvFMtMJ3npIaJsah42DNHWkY5tKqFIJnYXTgBjxuf4cZ0+yXHVju76GV8B+UkkjetlsvkUE38cWJ/J2fXOfJSP+spVhnFOW5UJMxzoRfbu5eEq0G5i4R+wgkbV/sf17MYfulj/OU671SlZanLX+H1eZM7ss5eg31zIP7zMXhmQPikrr88R3SqXlwnqvFXAPwrKgnQ/ayMpYK4HxvPhpdkLsvta/dOODOQ9pCJHcQew6HG+QxU/y0A79c3smD0fh+7tB87mlszkiu8Vu8QHsTvDF
2015.08.20 20:47:46 4: FB_CALLLIST (fb_Anrufliste) - start processing event disconnect for Call-ID 1513e6f8b5491629ec8b68b05b163abd
2015.08.20 20:47:46 5: FB_CALLLIST (fb_Anrufliste) - found old data hash: HASH(0x4fff290)
2015.08.20 20:47:46 5: FB_CALLLIST (fb_Anrufliste) - processed disconnect event for call id 1513e6f8b5491629ec8b68b05b163abd
2015.08.20 20:47:46 4: FB_CALLLIST (fb_Anrufliste) - cleaning up call list
2015.08.20 20:47:46 5: FB_CALLLIST (fb_Anrufliste) - inform all FHEMWEB clients
2015.08.20 20:47:46 5: FB_CALLLIST (fb_Anrufliste) - start dumping of list to file
2015.08.20 20:47:46 5: FB_CALLLIST (fb_Anrufliste) - found Compress::Zlib module, compressing dump
2015.08.20 20:47:46 5: FB_CALLLIST (fb_Anrufliste) - saving list dump: compressed:eJylk7tOwzAUhvc+hTcvVWXHl9gDTCwMsBTmyJdDsZQ4UuIgRNV3J7QUKmgcLl59Pv/HPp+3C4Qw5ZwQLbkgq7LQBUYXl2g7bkwsXJs+VfAEMe1LsQ+9a2MEl/AygzlT11XwB4YKykA+KCu4prLQ4JSVyhJhqWTG+vmT/NCZFNq4P4/kyuE5QRdNXcWhsdAdGiBjasllIbnKZn3A71c8JuLr9dVtlmxC34Ov3prdEzRXHOKZHjVljNBsiA/daVMhurYJcfOzK0XTwIG7jz10aO0eTXrBU+hu+WkLYUqtRKn4rC7/eMKp0RWFGKfHlMjD3zWRSs0TR0WFYdw4pyQwB9xQr6zzSotSGyOAsnz43z7J2eHcdYMP6AZGn+L4Bln8iw/tkDbtjA8n8v1+QNPekkmP0G6xW7wCg1n8sw==
Vielleicht kannst du daraus was sehen?
Fhem läuft zur Zeit als root.
Wolfgang
Hallo zusammen,
aus den Logs kann man nichts besonderes raus erkennen. Wenn es einen Fehler beim Speichern gäbe (falsche Rechte der Datei, falscher Owner, etc.) so wäre das hier sichtbar.
Steht denn der Dump auch so wie er im Log auftaucht in der Datei uniqueID drin? (zu finden unter FHEM/FhemUtils/uniqueId)
Gruß
Markus
Zeigt mal bitte wie ihr die FB_CALLLIST in der fhem.cfg definiert habt.
Hallo, ich hatte auch das Problem mit der Anrufliste. Wie sind die Rechte für opt/fhem/FHEM/FhemUtils/uniqeID ?? Bei mir hatte die Datei keine Schreibrechte.
Gruß
Jürgen K.
Hallo Markus
Die Schreibrechte auf der UniqueID sind vorhanden.
Grüsse
Eric
Der Eintrag in der CFG:
define Anrufliste FB_CALLLIST Fritz_Box
attr Anrufliste connection-mapping {'ISDN' => 'Büro', 'DECT_1' => 'Wohnzimmer' , 'Answering_Machine_1' => 'AB' }
attr Anrufliste create-readings 1
attr Anrufliste event-on-change-reading .*
attr Anrufliste language de
attr Anrufliste number-of-calls 10
attr Anrufliste show-icons 1
attr Anrufliste verbose 5
Ist denn in der Datei auch eine Zeile vorhanden, welche mit dem Namen der CALLLIST-Definition beginnt?
Hallo Markus
In der uniqueID hat es eine Zeile die wie folgt beginnt:
FB_CALLLIST-Anrufliste:compressed:eJztlstu.......
Grüsse
Eric
Macht mal bitte einen Neustart von FHEM. Dann schaut im Log bitte nach ob es während des Start-Vorgangs Log-Meldungen von FB_CALLLIST gibt.
Desweiteren führt bitte direkt nach dem Start ein "list <Name>" in der FHEM Kommandozeile aus (Bitte Telefonnummern unkenntlich machen!).
Hallo Markus
Nach Neustart von FHEM habe ich nichts im Log bezüglich FB_CALLIST.
Wenn ich list <name> ausführe, dann habe ich schön alle Verbindungen aufgelistet.
Bei der auflistung kommt nach 1- dann 10- da ich auf 10 Anrufe eingestellt habe, danach kommt 2- ect., das ist aufgrund der Sortierung so.
Grüsse
Eric
2015-08-20 15:51:24 1-connection Wohnzimmer
2015-08-20 15:51:24 1-duration 00:02:56
2015-08-20 15:51:24 1-external ISDN
2015-08-20 15:51:24 1-internal xxxxx
2015-08-20 15:51:24 1-name xxxxx
2015-08-20 15:51:24 1-number xxxxx
2015-08-20 15:51:24 1-row 1
2015-08-20 15:51:24 1-state =>
2015-08-20 15:51:24 1-timestamp Thu, 20 Aug 2015 15:48:13
2015-08-13 17:51:21 10-connection Wohnzimmer
2015-08-13 17:51:21 10-duration 00:00:01
2015-08-13 17:51:21 10-external ISDN
2015-08-13 17:51:21 10-internal xxxxx
Hallo Eric,
gib mir bitte mal den gesamten Output von dem list. Bitte wieder mit unkenntlich gemachten Nummern. Das was du meinst sind die Readings. Ich will aber wissen, ob die Hash-internen Daten alle richtig sind.
Vielen Dank
Gruß
Markus
Hallo Markus,
Schreibrechte in der UniqueID sind vorhanden.
Letzte Änderung der Datei heute um 11:22
hier meine definition aus der cfg
define fb_Anrufliste FB_CALLLIST FB_Callmonitor
attr fb_Anrufliste language de
attr fb_Anrufliste number-of-calls 20
attr fb_Anrufliste room 0_Überblick
attr fb_Anrufliste verbose 5
Im Log keine Einträge von Calllist nach restart:
Hier die Ausgabe von 'list fb_Anrufliste' direkt nach Neustart:
Internals:
DEF FB_Callmonitor
FB FB_Callmonitor
NAME fb_Anrufliste
NOTIFYDEV FB_Callmonitor
NR 614
NTFY_ORDER 50-fb_Anrufliste
STATE Initialized
TYPE FB_CALLLIST
Helper:
DEFAULT_COLUMN_ORDER row,state,timestamp,name,number,internal,external,connection,duration
Attributes:
language de
number-of-calls 20
room 0_Überblick
verbose 5
Schönen Samstag Nachmittag
Wolfgang
macht mal bitte einen Fhem-Start mit gesetztem "attr global verbose 5" in eurer Config. Aus euren Logs/Daten lässt sich nichts ungewöhnliches erkennen.
Am besten ein wenig warten, bis die Oberfläche wieder normal reagiert und dann direkt wieder ausschalten.
Gruß
Markus
Hallo Markus,
das Log was ich dann bekomme ist sehr umfangreich,
kannst du mir sagen worauf ich besonders achten soll,
oder soll ich das gesamte Log ab Neustart posten??
Hier alles auf global verbose 5 mit Calllist oder fb_Anrufliste in der Zeile:
2015.08.23 19:19:42 5: Cmd: >define fb_Anrufliste FB_CALLLIST FB_Callmonitor<
2015.08.23 19:19:42 5: Loading ./FHEM/72_FB_CALLLIST.pm
2015.08.23 19:19:42 5: FB_CALLLIST (fb_Anrufliste) - loading old call list from file
2015.08.23 19:19:42 5: FB_CALLLIST (fb_Anrufliste) - found compressed list dump in file
2015.08.23 19:19:42 5: FB_CALLLIST (fb_Anrufliste) - importing list...
2015.08.23 19:19:42 5: Cmd: >attr fb_Anrufliste language de<
2015.08.23 19:19:42 5: Cmd: >attr fb_Anrufliste number-of-calls 20<
2015.08.23 19:19:42 5: Cmd: >attr fb_Anrufliste room 0_Überblick<
2015.08.23 19:19:42 5: Cmd: >attr fb_Anrufliste verbose 5<
Da steht was von
loading old call list from file
was für ein file soll das denn sein?
in der UniqueID ist jedenfalls die Zeile
FB_CALLLIST-fb_Anrufliste:compressed:XXXk7tOwzAUhvc8RbYsVWU7tmMPMLGw........
enthalten.
Wann schreibt FB_CALLLIST denn in die Datei, nach jedem Anruf, oder nur bei shutdown?
ein ratloser
Wolfgang
Habe mal getestet, nach einem Anruf ist nach Zeitstempel in die UniqueID sofort geschrieben worden,
allerdings hat sich der Inhalt der Datei, jedenfalls der Zeile von FB_CALLLIST nicht verändert.
? ? ?
Zitat von: TecCheck am 23 August 2015, 20:43:54
Da steht was von
loading old call list from file
was für ein file soll das denn sein?
Das ist genau die Datei "uniqueId" im FhemUtils-Ordner. Ursprünglich hatte diese Datei nur die uniqueId beinhaltet für fheminfo. Im Zuge von einigen Änderungen am update-Kommando wurde mit Revision 7346 (http://sourceforge.net/p/fhem/code/7346/) und 7528 (http://sourceforge.net/p/fhem/code/7528/) diese Datei für die Allgemeinheit aufgebohrt, so das man als User, sowie als Modulautor damit Daten ablegen kann, die einen Neustart überdauern.
FB_CALLLIST nutzt diesen Mechanismus um die Liste bei Änderungen dauerhaft abzulegen, damit sie bei einem Neustart in der zuletzt bekannten Form wieder vorliegt.
Zitat von: TecCheck am 23 August 2015, 20:43:54
in der UniqueID ist jedenfalls die Zeile
FB_CALLLIST-fb_Anrufliste:compressed:XXXk7tOwzAUhvc8RbYsVWU7tmMPMLGw........
enthalten.
Wann schreibt FB_CALLLIST denn in die Datei, nach jedem Anruf, oder nur bei shutdown?
ein ratloser
Wolfgang
Nach jedem Anruf-Event, welches verarbeitet wurde, wird die Liste in der Datei uniqueId gesichert.
Da offenbar die Daten geschrieben werden konnten, sowie die Daten auch in der Datei erscheinen, wundert es mich um so mehr.
Nächster Vorschlag: Bitte Zeile 819 in der Datei 72_FB_CALLLIST.pm ändern in:
Log3 $name, 5, "FB_CALLLIST ($name) - importing list...\n$dump");
Dann nochmal genau wie zuletzt ein Neustart mit global verbose 5 und dann nur die Zeilen die FB_CALLLIST enthalten posten.
Ich hoffe ich konnte dich ein wenig ratloser machen ;-)
Viele Grüße
Markus
Hallo, kann es sein das da eine Klammer fehlt?
. . . oder soll das so?
bekomme diese Ausgabe im Log:
2015.08.23 21:31:17 5: Cmd: >define fb_Anrufliste FB_CALLLIST FB_Callmonitor<
2015.08.23 21:31:17 5: Loading ./FHEM/72_FB_CALLLIST.pm
2015.08.23 21:31:17 1: reload: Error:Modul 72_FB_CALLLIST deactivated:
syntax error at ./FHEM/72_FB_CALLLIST.pm line 819, near ""FB_CALLLIST ($name) - importing list...\n$dump")"
2015.08.23 21:31:17 0: syntax error at ./FHEM/72_FB_CALLLIST.pm line 819, near ""FB_CALLLIST ($name) - importing list...\n$dump")"
Du hast recht, bin noch ratloser :(
Wolfgang
PS:
Habe mal getestet, nach einem Anruf ist nach Zeitstempel in die UniqueID sofort geschrieben worden,
ALLERDINGS hat sich der Inhalt der Datei, jedenfalls IN der Zeile von FB_CALLLIST NICHT verändert.
Sollte sich die Zeile nach einem neuen Anruf nicht ändern?
Nee, da war eine zuviel :-/
Log3 $name, 5, "FB_CALLLIST ($name) - importing list...\n$dump";
So ist's richtig. Einfach hinten die Klammer wegnehmen.
Hallo Markus,
die Logausgabe
2015.08.23 22:30:03 5: Cmd: >define Anruferliste FB_CALLLIST FB_Callmonitor<
2015.08.23 22:30:03 5: Loading ./FHEM/72_FB_CALLLIST.pm
2015.08.23 22:30:04 5: FB_CALLLIST (Anruferliste) - loading old call list from file
2015.08.23 22:30:04 5: FB_CALLLIST (Anruferliste) - found compressed list dump in file
2015.08.23 22:30:04 5: FB_CALLLIST (Anruferliste) - importing list...
{
'1440361346.21649' => {
'internal_number' => '91xxxxx',
'call_duration' => 0,
'external_number' => '0160xxxxxx',
'call_id' => '108842a2c81406b0e092a7b58c8f1091',
'external_connection' => 'ISDN',
'missed_call' => 1,
'direction' => 'incoming',
'last_event' => 'disconnect',
'external_name' => 'Wolfgang Altes Handy'
}
}
. . . sieht ja so aus als ob der Anruf wieder eingelesen wird,
aber in der Weboberfläche von fhem ist die Liste leer.
Wolfgang
Ok, das ist sehr interessant. Normalerweise sollte das ganze so aussehen:
$hash->{helper}{DATA} = {
'1440361346.21649' => {
'internal_number' => '91xxxxx',
'call_duration' => 0,
'external_number' => '0160xxxxxx',
'call_id' => '108842a2c81406b0e092a7b58c8f1091',
'external_connection' => 'ISDN',
'missed_call' => 1,
'direction' => 'incoming',
'last_event' => 'disconnect',
'external_name' => 'Wolfgang Altes Handy'
}
}
Welche Perl Version nutzt du?
Du kannst die Änderungen und das Logging über global und FB_CALLLIST wieder rückgängig machen.
Gruß
Markus
:~# perl -v
This is perl 5, version 20, subversion 2 (v5.20.2) built for arm-linux-gnueabihf-thread-multi-64int
(with 42 registered patches, see perl -V for more detail)
Ok Danke, ich schau mal und ändere ein bisschen was.
Ich danke DIR schon mal . . . ;)
und wünsche eine Gute Nacht.
Wolfgang
Bitte mal mit dem morgigen update probieren.
Danke
Gruß
Markus
Hallo Markus
Also nach dem Update nochmals getestet.
Die Anrufliste ist weiterhin leer.
Perlversion v5.14.2 arm-linux-gnueabihf-thread-multi-64int
Den Auszug als log habe ich beigelegt.
Grüsse
Eric
Hallo Eric,
bitte nach einem erfolgten Neustart erst mal wieder ein paar Anrufevents provozieren, damit die Liste wieder ein paar Einträge hat.
Dann nochmal neustarten und schauen, ob die Einträge wieder da sind und das Logfile wieder posten.
Danke
Gruß
Markus
Hallo Markus,
Heureka!
Nach Update Anrufereignisse produziert und was soll ich weiter sagen...
Nach erneutem restart ist die Liste erhalten geblieben!
SUPER! ;D
VIELEN DANK
Wolfgang
Hallo Markus
Ok, gemäss deinen Angaben, habe ich neue Anrufe generiert und auch danach neu gestartet.
Die Liste ist jetzt gefüllt, und korrekt.
Besten dank für deinen Großen Einsatz. Einfach perfekt.
Beste Grüsse
Eric
Auszug:
2015.08.24 12:23:51 5: FB_CALLLIST (Anrufliste) - loading old call list from file
2015.08.24 12:23:51 5: FB_CALLLIST (Anrufliste) - found compressed list dump in file
2015.08.24 12:23:52 5: FB_CALLLIST (Anrufliste) - importing list...
$hash->{helper}{DATA} = {
'1440411673.88742' => {
'call_duration' => 0,
'call_id' => '1',
'direction' => 'outgoing',
'external_connection' => 'ISDN',
'external_name' => 'Eric',
'external_number' => 'xxxxxxx',
'internal_connection' => 'ISDN',
'internal_number' => 'xxxxxxx',
'last_event' => 'disconnect',
'missed_call' => 1
},
'1440411707.60788' => {
'call_duration' => 0,
'call_id' => '1',
'direction' => 'outgoing',
'external_connection' => 'ISDN',
'external_name' => 'Eric',
'external_number' => 'xxxxxxx',
'internal_connection' => 'ISDN',
'internal_number' => 'xxxxxxxx',
'last_event' => 'disconnect',
'missed_call' => 1
}
};
Super, dann war es das, wie ich vermutet hatte.
Gruß
Markus