FB_CALLMONITOR das Event wird zweimal aufgerufen!?!

Begonnen von pi-user, 18 Februar 2017, 19:45:34

Vorheriges Thema - Nächstes Thema

pi-user

Hallo zusammen,

wenn jemand mich anruft, dann wird das Event zweimal aufgerufen! Dadurch bekomme ich zwei Benachrichtigungen!?! Wie kann ich es verhindern, dass das Event nur einmal ausgelöst wird bzw. nur eine Benachrichtigung rausgeschickt wird? Ich möchte pro Anruf nur eine Benachrichtigung mit der Rufnummer des Anrufers.

define Anrufer notify Anrufliste {\
my $extNr = ReadingsVal("Anrufliste","external_number","");;\
fhem ("set WhatsApp send $extNr");;\
}


Vielen Dank im Voraus für die Hilfe. :)

Thorsten Pferdekaemper

Hi,
zeig mal den Event Monitor wenn jemand anruft.
Gruß,
   Thorsten
FUIP

pi-user

Ich habe gerade wieder getestet. Ich habe mit dem Handy zuhause angerufen und drei mal klingel lassen und anschließend habe ich aufgelegt. Danach habe ich wieder zwei Nachrichten bekommen!?! 


defmod Anrufliste FB_CALLMONITOR 192.168.1.1
attr Anrufliste event-on-change-reading event
attr Anrufliste local-area-code <mein Vorwahl>
attr Anrufliste reverse-search klicktel.de,dasoertliche.de
attr Anrufliste reverse-search-cache 1
attr Anrufliste reverse-search-cache-file /opt/fhem/log/reverse_search.txt

setstate Anrufliste opened
setstate Anrufliste 2017-02-18 20:35:45 call_duration 0
setstate Anrufliste 2017-02-18 20:35:45 call_id 0
setstate Anrufliste 2017-02-18 20:35:45 direction incoming
setstate Anrufliste 2017-02-18 20:35:45 event disconnect
setstate Anrufliste 2017-02-18 20:35:45 external_connection SIP1
setstate Anrufliste 2017-02-18 20:35:45 external_name unknown
setstate Anrufliste 2017-02-18 20:35:45 external_number <Die Rufnummer des Anrufers>
setstate Anrufliste 2017-02-17 17:13:04 internal_connection DECT_5
setstate Anrufliste 2017-02-18 20:35:45 internal_number <Meine Telefonnummer von Zuhause>
setstate Anrufliste 2017-02-18 20:35:45 missed_call <Die Rufnummer des Anrufers
setstate Anrufliste 2017-02-18 20:20:21 state opened

pi-user

Vielleicht liegt es an:

event-on-change-reading event

Vielleicht muss man anderes Event nehmen!

pi-user

Also, wenn ich das Ganze umstelle auf:

define Anrufer notify Anrufliste:event:.ring

dann bekomme ich nur eine Benachrichtigung. :) Ich gehe davon aus, dass man auf das Event ring, also: event:.ring reagieren muss, sonst wird das Event zweimal ausgelöst, aber warum?

Thorsten Pferdekaemper

Na wenn Du uns einen Auszug aus dem Event Monitor gegeben hättest, dann hätte man vielleicht das sagen können.
Gruß,
  Thorsten
FUIP

pi-user

Ich dachte, die Liste, die ich geschickt habe, war der Auszug aus dem Event Monitor! Ich werde heute einen neuen Auszug reinstellen. Aber vorher werde ich das Ganze wieder rückgängig machen, damit wir sehen können, was da passiert.

KölnSolar

ist eigentlich recht simpel(sieht man auch im event monitor  ::) ) Es werden mehrere events ausgelöst  :o nämlich ring, connect/disconnect... Folglich löst ein Anrufliste:event:.ring nur einmal aus und  notify Anrufliste  mehrfach.
Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Ma_Bo

Mit diesem hier reagierst du auf jedes EVENT bei dem Reading event von deiner Anrufliste.
Da es ein EVENT beim ANRUFEN (ring) und ein EVENT beim AUFLEGEN (disconnect) gibt, bekommst du 2 Nachrichten.

Zitat von: pi-user am 18 Februar 2017, 19:45:34
define Anrufer notify Anrufliste {\
my $extNr = ReadingsVal("Anrufliste","external_number","");;\
fhem ("set WhatsApp send $extNr");;\
}


Vielen Dank im Voraus für die Hilfe. :)
attr Anrufliste event-on-change-reading event

Wenn du nur ne Nachricht beim ANRUFEN haben möchtest musst du dein notify so ändern wie du es beschrieben hast:

Zitatdefine Anrufer notify Anrufliste:event:ring

Wenn du nur ne Nachricht beim AUFLEGEN haben möchtest musst du dein notify so ändern:

Zitatdefine Anrufer notify Anrufliste:event:disconnect


Grüße Marcel
NUC mit FHEM, HM Heizungsthermostate, HM Wandthermostate, Intertechno Funksteckdosen, 10" Tablet als Wanddisplay, KeyMatic, Fensterkontakte, Fensterkontakte umgebaut als Wassermelder und Briefkastenmelder, Aussenthermostat, Anwesenheitssteuerung über Fritz Box, Google Home usw. usw.

Thorsten Pferdekaemper

Zitat von: pi-user am 19 Februar 2017, 10:10:45
Ich dachte, die Liste, die ich geschickt habe, war der Auszug aus dem Event Monitor!
Der Event Monitor ist das, was kommt, wenn man im FHEMWEB-Menu auf "Event monitor" klickt.
SCNR,
   Thorsten
FUIP

pi-user

Ihr lag goldrichtig.  ;) Ich habe auf Event Monitor zwei Events bei einem Anruf gesehen. Einmal das Event Ring und einmal Disconnect.

Ich danke Euch vielmals.  :)