FHEM Forum

FHEM - Hausautomations-Systeme => Sonstige Systeme => Thema gestartet von: choenig am 11 November 2019, 18:53:50

Titel: Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 11 November 2019, 18:53:50
Hallo zusammen,

in diesem Thread möchte ich die Entwicklung meines Moduls für die ALP-600 (https://www.alphago.de/de/lan-ip-sip-video-tuersprechanlage/lan-ip-sip-video-tuersprechanlage-alp-600) vorantreiben.

Es ist die Fortsetzung der Diskussion von https://forum.fhem.de/index.php/topic,50543.0.html.

Das Modul hängt an diesem Post an (Benutzung auf eigene Gefahr!).

Ich hab' das Modul seit über einem Jahr im Betrieb und bei mir funktioniert es fehlerfrei. Es ist aber noch nicht sehr gut dokumentiert :-/.

Der Code basiert auf dem Modul vom Nuki und verhält sich daher auch ähnlich:
 * Die FHEM-Instanz wird als Callback in der ALP-600 registriert und bekommt dann ring, motion oder beides gepusht (set ALP600 callback [motion|ring|both]
 * Das Modul kann die callbacks dann an den Offiziellen Service von Alphago weiterleiten, damit die ALP-600-App auch klingelt. Bisher weiss ich nur, dass das unter iOS funktioniert. Die Anleitung zum Aktivieren ist in der commandref
 * Es unterstützt einen Ping Mechanismus, den man verwenden kann, um zu reagieren, falls jmd. die Ausseineinheit abklemmt. Die ALP-600 benötigt nämlich ein Netzwerkkabel an der Aussenstation, an welchem sich ein Angreifer Zugriff auf das interne Netzwerk des Hauses erhaschen kann. Ich deaktiviere hier meinen Port im Switch.

Changelog
0.3.0
0.4.0
0.5.0
0.6.0

LG
Christian
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 11 November 2019, 21:09:08
Hi, bin bereiti zu helfen/testen.
schön das du weiter machen willst mit dem Modul-

schön wäre es wie ich es beschrieben habe, sowas wie die HTTPMOD zum auslesen des Kontaktstatus im Device.
Ich mache es so zur zeit:
defmod Door_Relais HTTPMOD http://xx.xx.xx.xx/cgi-bin/controller_cgi?action=get&user=fhem&pwd=xxx
attr Door_Relais userattr reading01Name reading01Regex readingsRegex_Schloss
attr Door_Relais enableControlSet 1
attr Door_Relais enforceGoodReadingNames 1
attr Door_Relais eventMap 1:geöffnet 0:geschlossen
attr Door_Relais reading01Name Schloss
attr Door_Relais reading01Regex Status1=(.*?.)
attr Door_Relais room Eingang
attr Door_Relais showBody 1
attr Door_Relais stateFormat Türöffner: Schloss
attr Door_Relais userReadings Türöffner {ReadingsVal("Door_Relais","Schloss","")}

ich habe einen Standardbenutzer namens fhem angelegt.
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 11 November 2019, 21:35:33
Hi,

 :)

schön wäre es wie ich es beschrieben habe, sowas wie die HTTPMOD zum auslesen des Kontaktstatus im Device.

Das kannte ich nicht, bis Du mich drauf aufmerksam gemacht hast. Das bau' ich auf jeden Fall ein, finde ich ziemlich gut, auch wenn ich, wie gesagt, eher auf push denn auf pull stehe :).

Die Grundidee ist, dass in der ALP600 der FHEM-Server unter "Netzwerk > HTTP Ereignis" konfiguriert wird und die ALP-600 dann beim Klingeln (ring) oder bei Bewegung (motion) FHEM kontaktiert und Du es dann als Ereignis bekommst.

Wie geschrieben, das funktioniert auch, wenn man zusätzlich die original ALP-600 (iOS) App verwenden möchte, ist dann nur ein bissle komplizierter.

[Beides habe ich aus dem Gedächtnis geschrieben, hab' ich seit 'nem Jahr nicht mehr gemacht :)]

Ohne iOS-App:
* define Alp600 ALP600 <IP>
* attr Alp600 basicauth <USER>:<PASSWORD>
* attr webhookFWinstance auf WEB stellen
* und webhookHttpHostname setzen (auf die IP vom FHEM-Server)
* set Alp600 callbacks ring

Sobald Du jetzt klingelts an der ALP-600 bekommst du im Alp600 ein event: ring worauf Du reagieren kannst.

Um es mit iOS-APP zu nutzen, muss es auf allen Handies aktiviert werden, die genutzt werden sollen, bevor die Callbacks gesetzt werden:
* Auf allen Handies in der ALP-600 App das Klingeln aktivieren in den Einstellungen (weiss nicht mehr ganz genau, wie das aussieht)
* set Alp600 callbacks ring
* attr Alp600 notifyOfficialApp ring

Jetzt Informiert die ALP-600 beim klingeln zunächst Dein FHEM unter der angegebenen IP (webhookHttpHostname) und dann informiert Dein FHEM die offizielle ALP-600 APP (unter der IP im Quellcode).

LG
Christian
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 11 November 2019, 22:35:14
ich glaube ich muss noch was am csrfToken machen das ich das reading ring bekomme oder?
bis jetzt passiert nichts.

defmod EingangCam ALP600 IP_ALP
attr EingangCam basicauth fhem:xxx
attr EingangCam icon ring
attr EingangCam pingInterval 60
attr EingangCam webhookFWinstance WEB
attr EingangCam webhookHttpHostname IP_fhem

* set EingangCam callbacks ring  #gesetzt
* set EingangCam notifyOfficialApp ring #gibt es im auswahlfenster nicht

benutze android und fritzfon
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 11 November 2019, 22:39:24
Hi,

ich glaube ich muss noch was am csrfToken machen das ich das reading ring bekomme oder?
bis jetzt passiert nichts.

Gute Punkt, den musst Du deaktivieren.

Ich habe dafür eine zusätzliche WEB Instanz, bei der der csrfToken auf none steht, die ich für zugriff von Nuki und ALP-600 verwende.

defmod EingangCam ALP600 IP_ALP
attr EingangCam basicauth fhem:xxx
attr EingangCam icon ring
attr EingangCam pingInterval 60
attr EingangCam webhookFWinstance WEB
attr EingangCam webhookHttpHostname IP_fhem

* set EingangCam callbacks ring  #gesetzt
* set EingangCam notifyOfficialApp ring #gibt es im auswahlfenster nicht

Mh, sieht gut aus, gibts denn im Auswahlfenster garnichts? Bei mir wird das gelistet, neben both, motion und none.

LG
Christian
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 11 November 2019, 22:43:09
ok mache auch eine neue WEB instanz.
das notifyOfficialApp sehe ich nicht???
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 12 November 2019, 07:54:57
hier die API´s

1. ist von Alphago
2. ist von Sysvideo (API ist gleich) (auf der Webseite gibt es auch die SDK)

Es gibt auch noch von Axis eine API, wo der param.cgi beschrieben ist. Da teste ich aber gerade noch was da geht. Bisher nur das:
/cgi-bin/param.cgi?action=list
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 12 November 2019, 08:17:46

Um es mit iOS-APP zu nutzen, muss es auf allen Handies aktiviert werden, die genutzt werden sollen, bevor die Callbacks gesetzt werden:
* Auf allen Handies in der ALP-600 App das Klingeln aktivieren in den Einstellungen (weiss nicht mehr ganz genau, wie das aussieht)
* set Alp600 callbacks ring
* set Alp600 notifyOfficialApp ring

Jetzt Informiert die ALP-600 beim klingeln zunächst Dein FHEM unter der angegebenen IP (webhookHttpHostname) und dann informiert Dein FHEM die offizielle ALP-600 APP (unter der IP im Quellcode).

Das braucht man nicht mehr, da in der aktuellen Firmware (3.1.14.0.6.18.28) das automatisch von der ALP an die APP (Android) gesendet wird.
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 12 November 2019, 10:00:00
Die neue Firmware hab ich leider noch nicht.

LG
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 12 November 2019, 11:23:54
Die neue Firmware hab ich leider noch nicht.

LG

Die bekommst du über den Support. Einfach anrufen. Bei mir war die schon drauf. wenn du willst kann ich mich auch drum kümmern. Brauche da nur deinen Firmwarestand.

ps.: oben sind die API´s angehangen
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 12 November 2019, 21:25:15
Interessant,

als ich Kontakt mit ihnen hatte, sagten sie, ich muss abwarten, das ist aber schon ~3-6 Monate her. Dann werde ich es nochmal versuchen :)

LG
Christian
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 12 November 2019, 21:31:17
ok mache auch eine neue WEB instanz.
das notifyOfficialApp sehe ich nicht???

notifyOfficialApp ist ein Attribut, siehst Du es da auch nicht?
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 12 November 2019, 22:14:17
in der APP kann ich unter Meldungen-> Türklingeln die Benachichtigung einschalten. das selbe bei Bewegung.
in der Weboberfläche könnte ich HTTP-GET Befehle bei Türklingel eintragen/senden...
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 12 November 2019, 22:18:44
was genau macht dein set callback ring Befehl in fhem?
was passiert da? also wie ist der aufgebaut?
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 12 November 2019, 22:36:06
Die Instanz habe ich angelegt
defmod allowed_EingangCam allowed
attr allowed_EingangCam icon message_service
attr allowed_EingangCam validFor EingangCam

EinfangCam ist die ALP.
notifyOfficialApp sehe ich weiterhin nicht.
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: onkeldittmeyer am 14 November 2019, 16:50:20
Moin,

habe die Anlage auch (übrigens sehr gut das Ding) und bin auf Euren Thread gestoßen. Finde ich gut, daß Ihr Euch drum kümmert!

Wollte das Modul auch mal testen: Fehler: "Please install Perl XML::Simple to use module ALP600 "

Perl ist installiert (xmllib), nochmal installieren bringt auch nichts. Woran liegt das wohl?
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 14 November 2019, 22:24:45
Also das hast du?:

XML::Simple -> libxml-simple-perl

Das vielleicht auch (sollte in fhem aber automatisch drin sein):
XML::Parser::Lite -> libxml-parser-lite-perl
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: onkeldittmeyer am 14 November 2019, 23:27:48
libxml-parser-perl.

Ich habe es nochmal mit

apt-get install libxml-parser-perl
probiert.

Ist das das Falsche??

Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 15 November 2019, 09:44:50
Das Modul brauchst du auf jeden fall:

XML::Simple -> libxml-simple-perl


edit:
das könnte Christian auch raus nehmen. er liest halt zur Zeit die config und Daten als XML ein.
er könnte das auch über die Zeile param.cgi wie schonmal vorher von mir beschrieben einlesen. (wenn er will)
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: onkeldittmeyer am 15 November 2019, 23:48:27
Moin,

verstehe ich jetzt nicht so ganz. Also ist nicht das Perl-Paket auf Systemebene gemeint, sondern ein Fhem-Modul, das installiert werden muß?

Zur Zeit habe ich die Alp mal als eigene Website in meinen Fhem-Server eingebunden. Das geht grundsätzlich auch nicht schlecht.

Also das Bild als image geholt mit einsekündigem refresh, dazu einen Türöffner-Knopf.

Nicht perfekt, aber ok. Was mir aufgefallen ist: Ich kann in Fhem - also via Browser - nur mit den Admin-Daten auf das Gerät zugreifen (Türöffner und Image). Vom Handy und vom PC (Windows-Shortcut) reich kurioserweise für den Türöffner der dafür eingerichtete FHEM-Nutzer. Seltsam.
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 16 November 2019, 10:50:11
Moin,

verstehe ich jetzt nicht so ganz. Also ist nicht das Perl-Paket auf Systemebene gemeint, sondern ein Fhem-Modul, das installiert werden muß?

natürlich Systemebene. siehe hier die Erklärung zu libxml-simple-perl:
https://packages.debian.org/buster/libxml-simple-perl (https://packages.debian.org/buster/libxml-simple-perl)
wie versuchst du die Pakete zu installieren? sudo vielleicht mit davor setzen. zeig mal den log...

und zum Normalbenutzer. bei mir geht der Normalbenutzer in FTUI (TabletUI) in dem ALP-Modul musste ich auch zum lesen der Daten den Adminbenutzer eintragen. wie der zusammenhang ist weiß ich auch nicht.

welche Firmware hast du in der ALP?
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 16 November 2019, 11:29:31
in FTUI sieht es bei mir so aus (wird als popup geöffnet):
siehe Anhang
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: onkeldittmeyer am 16 November 2019, 11:46:51
natürlich Systemebene. siehe hier die Erklärung zu libxml-simple-perl:
https://packages.debian.org/buster/libxml-simple-perl (https://packages.debian.org/buster/libxml-simple-perl)
wie versuchst du die Pakete zu installieren? sudo vielleicht mit davor setzen. zeig mal den log...

und zum Normalbenutzer. bei mir geht der Normalbenutzer in FTUI (TabletUI) in dem ALP-Modul musste ich auch zum lesen der Daten den Adminbenutzer eintragen. wie der zusammenhang ist weiß ich auch nicht.

welche Firmware hast du in der ALP?

Tut mir Leid, die ganze Linux-Geschichte ist für mich nicht ganz einfach. Natürlich mit sudo, sonst geht das ja gar nicht. Jedenfalls auf meinem pi. Wie ist denn der korrekte Befehl? Das geht doch dann auch über (sudo) apt-get, oder muß ich die Installationsdatei manuell irgendwo runterladen?

Meine Alp hat FW 3.1.14.0.6.18.28

Über das Modul kannst Du tatsächlich das h264-Video in eine FTUI-Seite einbinden? Da wäre natürlich nicht schlecht. Weil die img-Geschichte ist naturgemäß nicht so flüssig.
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 16 November 2019, 13:06:36
sudo apt-get -y install libxml-simple-perl

und nein den rtsp stream kann man so ohne weiteres nicht einbinden. ich mache das auch mit 1s refresh und jpeg.


siehst du im ALP-Modul das -> notifyOfficialApp am oberen Klapp/Auswahlfenster? (wenn das Modul bei dir läuft)
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 16 November 2019, 15:13:00
wenn ich callback ring aktiviere wird in meiner ALP das unter HTTP Event gesetzt:
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 16 November 2019, 22:05:20
so, habe mal bissl getestet.
ich habe in deinem Modul mal paar Zeilen geändert. ich habe in Zeile 542 das or durch || ersetzt. dadurch konnte ich jetzt das Event ring in der ALP setzen. Jetzt bekomme ich auch das reading ring.
motion und both gehen auch.
Habe noch ein paar mehr Zeilen geändert. die bewirken das die Eventeinträge komplett rückgängig gemacht werden.
jetzt müsste man nur noch das ring Reading wieder löschen/zurücksetzen, wenn es nicht mehr klingelt.
hier ein Auszug der geänderten Zeilen 539 bis 563:
my $ringEventUrl = "http://" . $hash->{IP} . "/cgi-bin/sensor_cgi?"
. "action=set"
. "&channel=0"
. "&HttpSwitch=" . ($type eq "ring" || $type eq "both" ? "open" : "close")
. "&HttpParam=" . ($type eq "ring" || $type eq "both" ? "ring" : "")
;

HttpUtils_NonblockingGet({
url         => $ringEventUrl,
timeout     => 10,
hash        => $hash,
method      => "GET",
user        => $username,
pwd         => $password,
callback    => sub($$$){}
});

my $motionEventUrl = "http://" . $hash->{IP} . "/cgi-bin/motion_cgi?"
. "action=set"
. "&channel=0"
. "&HttpSwitch=" . ($type eq "motion" || $type eq "both" ? "open" : "close")
. "&HttpParam=" . ($type eq "motion" || $type eq "both" ? "motion" : "")
. "&Time1Switch=" . ($type eq "motion" || $type eq "both" ? "open" : "close")
. "&MotionSwitch=" .  ($type eq "motion" || $type eq "both" ? "open" : "close")
;


jetzt zu der notifyOfficialApp.
Um es mit iOS-APP zu nutzen, muss es auf allen Handies aktiviert werden, die genutzt werden sollen, bevor die Callbacks gesetzt werden:
* Auf allen Handies in der ALP-600 App das Klingeln aktivieren in den Einstellungen (weiss nicht mehr ganz genau, wie das aussieht)
* set Alp600 callbacks ring
* set Alp600 notifyOfficialApp ring

Jetzt Informiert die ALP-600 beim klingeln zunächst Dein FHEM unter der angegebenen IP (webhookHttpHostname) und dann informiert Dein FHEM die offizielle ALP-600 APP (unter der IP im Quellcode).

LG
Christian
das ist kein set sondern ein attr.
doet ist es bei mir drin (habe es im Modul gelesen). aber wie gesagt, die Benachrichtigung in der APP geht auch so.
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 16 November 2019, 22:09:35
notifyOfficialApp ist ein Attribut, siehst Du es da auch nicht?

Hatte ich hier ja nochmal korrigiert  8)

LG
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 17 November 2019, 10:40:42
Guten Morgen,

ich habe gerade die Version 0.3.0 an den ersten Post gehängt.

Wichtigstes neues Feature: checkOutputInterval
Wenn ihr das auf einen Wert != 0 konfiguriert, fragt das Modul in dem Interval bei der ALP600 den Status der drei relais ab, bei Änderung wird ein event der readings output1, output2 oder output3 generiert. Hier macht es dann vermutlich sinn, die Haltedauer der Relais in der ALP600 auf einen Wert zu konfigurieren, der größer ist, als das Interval. Das kann ich vermutlich auch noch automatisieren, hab' ich aber noch nicht.

Ansonsten habe ich noch alle vorkommen der ors und ands, die eigenltich eher || bzw. && hätten sein sollen, gefixt.

Das XML-Thema habe ich mir noch nicht angeschaut. Sind denn alle Werte, die ich in dem XML-Call bekomme, auch in dem anderen Request enthalten? Wenn wir es wirklich nicht brauchen, bau ich es gerne aus, jetzt bleibt es aber erstmal.

Viel Spaß beim Testen!
Ich habe die Version in meiner DEV-Umgebung getestet, sie läuft noch nicht produktiv bei mir.

Edit:
Ach ja, ich habe nochmal mit Alphago geschrieben, und die sind nicht sehr gewillt, mir die Firmware zu geben, sagen aber, das Update kommt noch dieses Jahr.


LG
Christian
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 17 November 2019, 14:08:30
Version 0.3.0 funktioniert mit den outputs und den setzen der callback-Events. :)

Ich würde jetzt nur gern das ReadingEvent "ring" oder "state" auf z.Bsp.: "wait" ändern lassen, wenn zum Beispiel output1 auf 1 oder nach der Zeit die in der ALP unter SIP als AnrufTimout gesetzt wurde.
man kann das natürlich auch mit doif oder natify machen, könnte man sich aber so ersparen.

mfg Thomas
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 17 November 2019, 18:35:19
Hi Thomas,

Version 0.3.0 funktioniert mit den outputs und den setzen der callback-Events. :)

 :)

Ich würde jetzt nur gern das ReadingEvent "ring" oder "state" auf z.Bsp.: "wait" ändern lassen, wenn zum Beispiel output1 auf 1 oder nach der Zeit die in der ALP unter SIP als AnrufTimout gesetzt wurde.
man kann das natürlich auch mit doif oder natify machen, könnte man sich aber so ersparen.

Das hab' ich leider nicht verstanden, magst Du das nochmal erklären?

LG
Christian
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 17 November 2019, 18:43:58
ok mache ich.

wenn jemand an der Tür klingelt bekomme ich ja das Reading "event" und "ring" per http-get (callback funktion von dir) gesendet.
Dieses Event event und state bleiben auf der Meldung "ring" die ganze Zeit bestehen.
Jetzt würde ich gern, wenn ich den output1 öffne, das sich der Status/Reading ändert in zBsp.: wait, bis das nächste klingeln(http-get) kommt.
hoffe jetzt ist das verständlicher.
würde das umsetzbar sein?

mfg Thomas
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 17 November 2019, 19:13:03
Ah, ok.

Du möchtest, dass der state/event auf wait steht, so lange nichts passiert. Sobald jemand klingelt, geht es auf ring, bis jemand output1 auf 1 setzt oder die Tür geöffnet wird.

event zeit ja auch motion an, das kollidiert damit.

Ich könnte mir also vorstellen, das wait nur im state zu setzen. Ich muss mir nur noch überlegen, wie man das konfigurierbar macht.

Wofür benutzt du die 3 Outputs?

LG
Christian
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 17 November 2019, 19:26:48
Also ich benutze nur output1 zum tür öffnen.
ich denke das würde mit einem if gehen.
also if ring set ring elseif output1 1 || SIPTimeout abgelaufen set state wait else set state wait.
irgendwie so vielleicht???

ich kann auch nur bissl C durch Arduino & co und probieren.
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: onkeldittmeyer am 18 November 2019, 17:24:18
sudo apt-get -y install libxml-simple-perl

und nein den rtsp stream kann man so ohne weiteres nicht einbinden. ich mache das auch mit 1s refresh und jpeg.


siehst du im ALP-Modul das -> notifyOfficialApp am oberen Klapp/Auswahlfenster? (wenn das Modul bei dir läuft)

Was bewirkt denn der Parameter "y"?

OK, 1s refresh nutze ich zur Zeit auch. Zudem Links auf eine Kamera-App auf dem Tablet. Klappt ganz gut.
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 18 November 2019, 17:54:06
Was bewirkt denn der Parameter "y"?

Hi. das -y ist ein automatisches yes (Bestätigung).

funktioniert jetzt das ALP600 Modul bei dir?

wie sicherst du deinen LAN Anschluss zum Schutz von aussen?
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: onkeldittmeyer am 19 November 2019, 19:07:11
Ich habe es bislang noch nicht probiert. Ich bin froh, mein FTUI jetzt erstmal hingefrickelt zu haben. Wenn in den nächsten Tagen wieder Luft ist (muß erstmal was arbeiten), dann versuche ich die Opteration noch einmal. Wobei in Deinem Link oben von Simple-XML ja abgeraten wird. Trotzdem bedenkenlos?

Bei der Sicherung des LAN-Kabels habe ich keinen besonderen Aufwand betrieben.

Die Grundannahme ist mal, daß sich keiner mit einem Laptop in mein Vorhäuschen setzt und von dort versucht, meine Systeme zu hacken. Trotzdem habe ich im Managed Switch "Port Security" aktiviert, der Switch aktzeptiert also auf dem Port der ALP nur die MAC der ALP. Sicher nicht unknackbar, aber besser als nix.
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 19 November 2019, 19:09:00
Hi,

wenn Du Dich noch etwas geduldest, hab' ich eine Version, die kein XML benötigt. Hab' gestern damit angefangen, heute bekomm ich es aber nicht fertig, vielleicht morgen. :)

LG
Christian
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 19 November 2019, 21:42:50
... dann versuche ich die Opteration noch einmal. Wobei in Deinem Link oben von Simple-XML ja abgeraten wird. Trotzdem bedenkenlos?

ist bedenkenlos.
Aber Christian will es ja eh raus nehmen...
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: onkeldittmeyer am 20 November 2019, 17:08:48
Ah, ok, ich warte es einfach mal ab.  :D
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 20 November 2019, 17:20:07
@Christian
hi, habe mal ne andere Frage. ich habe mal bissl getestet mit userreadings das event ring zu löschen, wenn event auf ring steht und ich den output1 auf 1 stelle, dann kann ich es löschen mit folgenden Code:
wait {if(ReadingsVal("EingangCam","output1","") eq "1" and (ReadingsVal("EingangCam","event","") eq "ring")) {fhem "deletereading EingangCam event"}}Das funktioniert auch.
Wenn ich aber statt: {fhem "deletereading EingangCam event"}
diesen perl-code nehme: {fhem "setreading EingangCam event warten"},
dann hängt sich fhem komplett auf.
in der Kommandozeile wird der code ausgeführt ( setreading EingangCam event warten ) .
weisst du warum?
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 22 November 2019, 21:07:11
Hi,

puh, das kann ich nicht beantworten, sorry.

Aber ich habe gerade die 0.4.0 an den ersten Post gehängt, in der sind jetzt Net::Ping und XML::Simple optional. Wenn sie nicht da sind, sind die zugehörigen Features disabled (insb. Ping).

LG
Christian
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 25 November 2019, 20:59:23
Aber ich habe gerade die 0.4.0 an den ersten Post gehängt, in der sind jetzt Net::Ping und XML::Simple optional. Wenn sie nicht da sind, sind die zugehörigen Features disabled (insb. Ping).

Hi,
habe jetzt alles auf dein Modul 0.4.0 umgestellt. Läuft stabil.  ;D

könntest du jetzt noch versuchen wie oben beschrieben, den state ändern zu lassen wenn event:"ring"  und output1:"1" ist in wait?
zur Zeit mache ich es mit DOIF.
(([EingangCam:output1] eq "1") and ([EingangCam:state] eq "ring")) (setreading EingangCam state wait)
Ich bin aber eher ein Freund von "Allles Inklusive".

mfg Thomas
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 29 November 2019, 18:48:27
Hi, irgenwas haut doch noch nicht hin in der 0.4.0.

2019.11.29 18:35:18 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:21 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:21 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:21 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:24 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:24 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:24 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:24 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:28 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:28 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:28 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:31 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:31 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:34 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:34 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:34 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:37 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:37 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:37 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:40 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:40 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:50 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:51 3: ALP600 (EingangCam) - error in controller_cgi

geht immer so weiter...
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 30 November 2019, 07:29:55
Guten Morgen,

Hi, irgenwas haut doch noch nicht hin in der 0.4.0.

2019.11.29 18:35:18 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:21 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:21 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:40 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:40 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:50 3: ALP600 (EingangCam) - error in controller_cgi
2019.11.29 18:35:51 3: ALP600 (EingangCam) - error in controller_cgi

geht immer so weiter...

Kannst Du mal bitte im Modul die Zeile
Log3 $name, 3, "ALP600 ($name) - error in controller_cgi";
durch folgende ersetzen
Log3 $name, 3, "ALP600 ($name) - error in controller_cgi: $err";

Ich habe irgendwie verpeilt, den '$err' mit auszugeben  ???

Dann können wir sehen, was für ein Fehler vorherrscht.

LG
Christian
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 30 November 2019, 09:23:53
Hi,

ich habe gerade eine 0.6.0 in den ersten Post released.

Wichtig: Das Passwort wird jetzt nicht mehr im Attribut gespeichert, sondern in einer Datei. Das muss manuell migriert werden (Wie, steht im ersten Post).

Zusätzlich enhält sie eine very basic implementation für 'wait' @mr_petz :). Guck bitte mal, ob dir das für's erste reicht. Im Moment reagiert es nur auf output1. Das würde ich gerne konfigurierbar machen. Dann frag' ich mich noch, wie es mit 'motion' zusammenspielen soll. Und zu guter Letzt würde ich auch gerne noch einen Türsensor unterstützen, der auch auf 'wait' stellt, sobald die Tür geöffnet wird.

LG und ein schönes WE
Christian
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 30 November 2019, 15:32:51
ok. habe jetzt die 0.6.0 am laufen. bisher kommt der Fehler nicht mehr.
"wait" funktioniert auch :D. Danke.
hier mal meine conf:
defmod EingangCam ALP600 < IP >
attr EingangCam eventMap /1:offen /0:geschlossen /ring:es klingelt /wait:warten auf klingeln /
attr EingangCam icon ring
attr EingangCam outputCheckInterval 1
attr EingangCam pingInterval 10
attr EingangCam room Eingang
attr EingangCam stateFormat Status: Call <br> Türöffner: Schloss
attr EingangCam useWait 1
attr EingangCam userReadings Schloss {ReadingsVal("EingangCam","output1","")}, Call {ReadingsVal("EingangCam","state","")}
attr EingangCam username < username >
attr EingangCam webhookFWinstance WEB
attr EingangCam webhookHttpHostname < IP >

edit1:
oben im set ... Auswahlfenster (FhemWeb) fehlt das output (also die Auswahl zum öffnen der Ausgänge).
mit "set EingangCam activateOutput 1" geht der auf 1.
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 30 November 2019, 17:42:45
Nabend,

ok. habe jetzt die 0.6.0 am laufen. bisher kommt der Fehler nicht mehr.
"wait" funktioniert auch :D. Danke.

 :)

edit1:
oben im set ... Auswahlfenster (FhemWeb) fehlt das output (also die Auswahl zum öffnen der Ausgänge).
mit "set EingangCam activateOutput 1" geht der auf 1.

Mist, das hab' ich kaputt gemacht. Ist mir nicht aufgefallen. Danke für die Info.
Wenn Du das benötigst, kann ich gerne einen Fix fertig machen, wenn es nicht eilig ist, würde ich es in der nächsten regulären Version fixen. Sag bescheid.

LG
Christian
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 30 November 2019, 18:46:33
musst du jetzt nicht fixen da ja :
set EingangCam activateOutput 1
weiterhin geht. das benutze ich nur in TabletUI.
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 10 Dezember 2019, 07:29:25
Hi Christian,

nächste bitte. wenn jetzt jemand klingelt und die Tür nicht geöffnet wird, dann steht der state ja weiter auf ring.
könntest du auch eine einstellbare Zeit mit reinnehmen, wo es nach Ablauf der Zeit im state auf wait geht?
kannst du ja auch per attr konfigurierbar machen.

Info:
zu dem Problem mit der "error in controller_cgi".
Wenn zu viele Zugriffe (egal ob FHEM oder per WEB) auf der ALP sind, dann kommt ein TimeOut.
Der erholt sich aber dann wieder nach paar Sekunden.

mfg Thomas
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 23 Dezember 2019, 12:31:07
Hi,

ich bin gerade dabei, die "wait" Funktionalität zu erweitern:

* Timeout: Nach einem einstellbaren Timeout geht der state wieder auf 'wait'
* Kontakt: Sobald ein konfigurierbarer Türkontakt auf 'open' geht, geht der state wieder auf 'wait'

Hab' heute die grobe Implementierung fertig gemacht, die ist aber noch nicht rund. Ich gehe davon aus, dass ich das bis Ende des Jahres veröffentlichen kann :).

LG
Christian
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 23 Dezember 2019, 21:01:43
Hört sich gut an. Super.
Bin gespannt auf die neue Version.
und keine hektik... soll ja gut werden...
Ich wünsche ruhige Feiertage...
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 15 Januar 2020, 18:37:07
Hi Christian,

Gibt es Probleme bei der Umsetzung?
Soll ich was testen oder helfen?
Ist nur für mich eine Statusmeldungsanfrage... :)

mfg Thomas
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: choenig am 16 Januar 2020, 20:44:49
Danke der Nachfrage,

ich hab' so viele Baustellen, hab' noch nicht weiter gemacht, sorry  :-\

Wenn's Dir zu lange dauert, frag gerne nochmal nach  ::)

LG
Christian
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 18 Januar 2020, 17:24:15
Danke, setze es um wie du Zeit hast.
Die aktuelle Version läuft ja gut...
mfg Thomas
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: hjkim am 04 Februar 2020, 00:16:34
Hallo choenig,
vielen Dank, dass du das Modul zur Verfügung stellst!!! Ich habe auch die ALP-600 bin sehr zufrieden damit (bis auf das Design ), nur hat mir die Anbindung im FHEM gefehlt. Werde mich in die Materie einarbeiten und berichten, wie es bei mir läuft.
Danke!!!
Titel: Antw:Entwicklung/Forschung rund um die ALP-600 Sprechanlage
Beitrag von: mr_petz am 04 Februar 2020, 19:54:19
Hi hjkim,

wenn du Hilfe brauchst sag Bescheid. Christian hat viel um die Ohren.
Da könnte ich auch bei der Einrichtung aushelfen.
mfg Thomas