Hallo,
ich würde gerne das Popup Widget verwenden wenn ein Anruf reinkommt, das soll das PopUp automatisch auf Popen und den Namen und das Anruferbild anzeigen, allerdings bekomme ich das noch nicht umgesetzt,
ich habe es mal so versucht:
<!-- =========Anrufe PopUp================= -->
<!-- ====================================== -->
<div class="dialog">
<header>Anruf</header>
<div>Anruf</div>
</div>
<div data-type="popup"
data-device="Anruferliste"
data-get-on="1-state"
data-states="<="
data-get-off="off"
data-height="50px"
data-width="150px"
data-get="1-number"
data-path="http://192.168.188.47:8085/fhem/www/tablet/Anrufe/"
data-suffix=".jpg">
</div>
Die Anruferliste kommt aus dem FB_CALLLIST Modul unter dem data-path liegen die Anruferbilder
Allerdings fehlt mir noch das passende data-get-off welches das PopUp schließt wenn das gespräch zu ende ist.
Hoffe ihr könnt mir da helfen.
Danke
Was soll data-states sein?
Wenn müßte es Data-get-on sein.
data-get-on steht ja auch drin, mit dem entsprechenden reading, aber das reading kann ja verschiedene Werte haben, dafür data-states, so funktioniert es zumindest mit dem IMage Widged
data-get Name des Readings, das den Trigger zum Öffnen des Popups liefert
data-get-on Wert, bei dem das Popup geöffnet wird
In 1-number steht niemals 1-state
Ok, hab es jetzt mal so abgeändert
<!-- =========Anrufe PopUp================= -->
<!-- ====================================== -->
<li data-row="5" data-col="1" data-sizex="3" data-sizey="3">
<div class="dialog">
<header>Anruf</header>
<div>Anruf</div>
</div>
<div data-type="popup"
data-device="Anruferliste"
data-get="1-state"
data-get-on="<="
data-get-off="off"
data-height="50px"
data-width="50px"
data-get="1-number"
data-path="http://192.168.188.47:8085/fhem/www/tablet/Anrufe/"
data-suffix=".jpg">
</div>
</li>
Allerdings ist meine ganze FTUI Seite dann verschoben, und es kommt auch kein PopUp.
Im Broweser bekomme ich auch noch folgenden Fehler:
Error
widget_popup.js:185
TypeError: Cannot read property 'top' of undefined
Du musst dich schon entscheiden was in data-get stehen soll.
Und dann steht im Wiki auch noch:
Es muss ein <div class="dialog"> innerhalb des Widgets gefunden werden. Siehe #Struktur.
Danke für deine Hinweise, damit hat es jetzt funktioniert:-)
<!-- =========Anrufe PopUp================= -->
<!-- ====================================== -->
<div data-type="popup"
data-device="Anruferliste"
data-get="1-state"
data-get-on="=> ((o))"
data-get-off="=> X"
data-height="500px"
data-width="500px">
<div class="dialog">
<header>Anruf</header>
<div data-type="image"
data-device="Anruferliste"
data-get="1-number"
data-path="http://192.168.188.47:8085/fhem/www/tablet/Anrufe/"
data-suffix=".jpg"
data-height="400px"
data-width="400px"></div>
<div data-type="label"
data-device="Anruferliste"
data-get="1-name"></div>
<div data-type="label"
data-device="Anruferliste"
data-get="1-number"></div>
</div>
</div>
Muss dann hier doch nochmal Nachfragen, da das PopUp nicht selbstständig schließt, die aktuelle definition sieht so aus:
Ich denke es liegt daran das ich beim "off" zwei Werte habe, da es zwei Staten geben kann wo das PopUp geschlossen werden soll, oder wie muss ich das lösen?
<!-- =========Anrufe PopUp================= -->
<!-- ====================================== -->
<div data-type="popup"
data-device="Anruferliste"
data-get="1-state"
data-get-on="=> ((o))"
data-get-off='[=> X,=>]'
data-height="500px"
data-width="500px">
<div class="dialog">
<header>Anruf</header>
<div data-type="image"
data-device="Anruferliste"
data-get="1-number"
data-path="http://192.168.188.47:8085/fhem/www/tablet/Anrufe/"
data-suffix=".jpg"
data-height="400px"
data-width="400px"></div>
<div data-type="label"
data-device="Anruferliste"
data-get="1-name"></div>
<div data-type="label"
data-device="Anruferliste"
data-get="1-number"></div>
</div>
</div>
Danke
Hi, keiner eine Idee was ich falsch mache?
Gesendet von iPhone mit Tapatalk
Ausprobiert habe ich es nicht, aber als Array müsste data-get-off wahrscheinlich eher so aussehen:
data-get-off='["=> X","=>"]'
Alternativ könnte es aber vielleicht auch so funktionieren:
data-get-off="(=> X|=>)"
Das zugehörige Wiki schweigt sich derzeit noch aus, ob data-get-off neben einem einzelnen Wert auch ein Array bzw. einen regulären Ausdruck verarbeiten kann.
Hi,
danke für den Hinweis, werde die Varianten mal testen.
Moin zusammen,
auch ich habe Interesse an diesem Popup, allerdings mit einem kleinen Zusatzfeature: Ich möchte auch darüber telefonieren können.
Eine theoretische Open-Source Lösung gibt es ja schon:
https://www.doubango.org/sipml5/ (https://www.doubango.org/sipml5/)
https://sipjs.com/guides/make-call/ (https://sipjs.com/guides/make-call/)
Aber ich bekomme es einfach nicht gebacken... :-[
Habt Ihr da mehr Fähigkeiten? *Hoffnung stirbt zuletzt
Gruss
Sailor
Moin.
Hier mal mein Anruf-PopUp. Zwar ohne Bild (kommt noch) aber vielleicht hilft es.
<div data-type="popup"
data-device="FritzBoxCallMonitor"
data-get="event"
data-get-on="(ring|call)"
data-get-off="disconnect"
data-mode="fade"
data-width="300"
data-height="300">
<div class="dialog" id="call">
<header>ANRUF</header>
<table>
<tr>
<td>
<div data-type="symbol"
data-device="FritzBoxCallMonitor"
data-get="event"
data-states='["ring","connect","call"]'
data-icons='["mi-ring_volume fa-blink","mi-phone_in_talk","mi-call fa-blink"]'
data-colors='["firebrick","#aa6900","#32a054"]'
class="bigger top-space">
</div>
</td>
<td>
<div data-type="symbol"
data-device="FritzBoxCallMonitor"
data-get="direction"
data-states='["incoming","outgoing"]'
data-icons='["mi-call_received","mi-call_made"]'
data-colors='["#0088CC","#0088CC"]'
class="bigger top-space">
</div>
</td>
</tr>
<tr>
<td colspan="2">
<div data-type="label"
data-device="FritzBoxCallMonitor"
data-get="external_number"
class="bigger top-space">
</div>
</td>
</tr>
<tr>
<td colspan="2">
<div data-type="label"
data-device="FritzBoxCallMonitor"
data-get="external_name"
class="bigger top-space">
</div>
</td>
</tr>
</table>
</div>
</div>
Grüße^^
Zitat von: Sailor am 11 Januar 2019, 06:01:47
allerdings mit einem kleinen Zusatzfeature: Ich möchte auch darüber telefonieren können.
Das klingt sehr verlockend... habe ich nur leider keine Zeit zu im Moment.
Sollte ich das mal an's laufen bringen mach ich nen Thread auf^^
Grüße^^
Hallo Roman
Zitat von: roman1528 am 11 Januar 2019, 10:45:57
Das klingt sehr verlockend... habe ich nur leider keine Zeit zu im Moment.
Sollte ich das mal an's laufen bringen mach ich nen Thread auf^^
Super!!! ;D
Gruss
Sailor
Zitat von: OdfFhem am 11 Januar 2019, 04:51:23
Ausprobiert habe ich es nicht, aber als Array müsste data-get-off wahrscheinlich eher so aussehen:
data-get-off='["=> X","=>"]'
Alternativ könnte es aber vielleicht auch so funktionieren:
data-get-off="(=> X|=>)"
Das zugehörige Wiki schweigt sich derzeit noch aus, ob data-get-off neben einem einzelnen Wert auch ein Array bzw. einen regulären Ausdruck verarbeiten kann.
Funktioniert leider beides nicht
Ich habe es gerade mal selbst ausprobiert und folgende Variante funktioniert bei mir ohne Probleme:
<div data-type="popup"
data-device="Anrufliste"
data-get="1-state"
data-get-on="=> ((o))"
data-get-off="(=> X|=>)"
data-height="500px"
data-width="500px">
<div class="dialog">
.
.
.
</div>
</div>
Bei einem eingehenden Anruf geht das Popup unmittelbar auf und nach dem Beenden des Gesprächs (angenommen bzw. verpasst) verschwindet das Popup wieder.
Es sieht also so aus, dass reguläre Ausdrücke verwendet werden können ...
Hast recht, damit funktioniert es jetzt.
Danke für die Hilfe
Zitat von: Sailor am 11 Januar 2019, 06:01:47
Moin zusammen,
auch ich habe Interesse an diesem Popup, allerdings mit einem kleinen Zusatzfeature: Ich möchte auch darüber telefonieren können.
Eine theoretische Open-Source Lösung gibt es ja schon:
https://www.doubango.org/sipml5/ (https://www.doubango.org/sipml5/)
https://sipjs.com/guides/make-call/ (https://sipjs.com/guides/make-call/)
Aber ich bekomme es einfach nicht gebacken... :-[
Habt Ihr da mehr Fähigkeiten? *Hoffnung stirbt zuletzt
Gruss
Sailor
Habe auch nach intensiver Recherche NICHTS (realisiertes) gefunden.
Möchte über ein Popup, welches auf dem Wand-Tablet (FTUI) erscheint wenn ein "Klingelknopf" der 2N IP Verso gedrückt wird, das Gegensprechen ermöglichen. Ich denke dafür müsste in fhem eine SIP-SoftPhone Funktionalität implementiert werden. Anscheinend hat das noch niemand realisiert bzw. es ist einfach nicht möglich???
Beste Grüße in die Runde
Vieleicht bringt dich das weiter?
https://wiki.fhem.de/wiki/SIP-Client
@Tommy82, gute Idee wird aber mmartinez nicht zum Ziel führen da das SIP Modul kein Telefon ist.
Also entweder eine SIP Phone Andorid App benutzen oder warten bis pah seine Version der FHEM Türsprechstelle fertig hat :
https://forum.fhem.de/index.php/topic,105483.0.html
Zitat von: Wzut am 15 Februar 2020, 17:55:55
@Tommy82, gute Idee wird aber mmartinez nicht zum Ziel führen da das SIP Modul kein Telefon ist.
Also entweder eine SIP Phone Andorid App benutzen oder warten bis pah seine Version der FHEM Türsprechstelle fertig hat :
https://forum.fhem.de/index.php/topic,105483.0.html
Korrekt, aber auch PAHs Ansatz scheint darauf hinauszulaufen, den RasPi, auf dem der fhem-Server läuft auch gleichzeitig als SIP Telefon zu nutzen.
Aber das ist ja genau das, was wir nicht wollen: Wir wollen durch einen x-beliebigen Rechner aus per Browser telefonieren, welcher eben gerade nicht identisch ist mit dem Host für den fhem-Server.
Gruss
Sailor
Ja, der Ansatz von PAH ist leider nicht die Lösung!
Die Lösung besteht aus einem Asterisk auf dem Raspberry und einem WebRTC-tauglichen Javascript SIP-Client den man im TUI-PopUp oder auf einer beliebigen html-Seite im Browser zum Gegensprechen verwenden würde.
Asterisk habe ich installiert und jetzt kann man mit diversen SoftPhone-Apps über Asterisk miteinander telefonieren. Dann haben wir es mit den Javascript SIP-Clients SIPML5 und ctxSIP versucht - leider ohne Erfolg.
Hat jemand Erfahrung mit Javascript SIP-Clients???
Hallo zusammen,
vielleicht ist hier ein guter Ansatz für das Themahttps://github.com/Bonze255/smarthomeNG_plugins/tree/master/doorbird