Dahua VTO2000a - Ein Linux Programm welches bei Gong informiert

Hab das durch Sniffern gelernt und dürfte wohl Hardcoded sein. In der Config (bei alten FW'n hat man die komplette Config noch in Klartext gesehn) steht dazu auch nichts konkretes.
Was evtl. mitspielen könnte ist der FTP-Server. Ist dieser auf der VTO auf die IP des RPi's eingestellt?

Tip: Häng mal einen Hub dazwischen und sniffer alles mit, was von der VTO daherkommt, wenn du den Fingerprint benützt.
Kannst mir den Trace gerne zukommen lassen, dann seh ich mir das an.
 
Habs gerade bei mir nochmal mit aktuellster SIP FW (20190305) probiert: Kommt sogar bei "normalen" Druck auf die Klingletaste (SYN 3304->5000), also noch immer Tip-Top.
Könnte aber durchaus sein, dass das nur bei der SIP Firmware funktioniert.
Mittlerweile muss ich aber ohnehin fragen, was gegen die SIP FW sprechen sollte? Wenn man keinen eigenen SIP Server hat, nimmt man halt den der VTO/VTH. Dann ist praktisch nichts anders als bei der non-SIP FW.
 
Bei mir z.B. dass ich in die neuen Firmware meine eigene, nicht übersteuerte Sprachausgabe, einbauen kann. In den VTHs habe ich auch den deutschen Text WAF-kompatibel gemacht. Sehr schade.
 
Hat aber nix mit SIP/non-SIP zu tun, sondern mit den FW-Signaturen. Für mich auch einer der größten Nachteile neuer Versionen, deshalb hab ich produktiv noch immer einen 20170425 SIP mit "meinen" Prompts laufen.
 
Das Paket das von der VTO an den Server auf Port 5000 geschickt wird, schaut übrigens so aus:
Code:
0000   20 00 00 00 44 48 49 50 00 00 00 00 00 00 d1 0a    ...DHIP........
0010   91 00 00 00 00 00 00 00 91 00 00 00 00 00 00 00   ................
0020   7b 22 69 64 22 3a 31 31 31 32 32 32 32 32 32 2c   {"id":111222333,
0030   22 6d 65 74 68 6f 64 22 3a 22 67 6c 6f 62 61 6c   "method":"global
0040   2e 6c 6f 67 69 6e 22 2c 22 70 61 72 61 6d 73 22   .login","params"
0050   3a 7b 22 63 6c 69 65 6e 74 54 79 70 65 22 3a 22   :{"clientType":"
0060   47 55 49 22 2c 22 69 70 41 64 64 72 22 3a 22 31   GUI","ipAddr":"1
0070   39 32 2e 31 36 38 2e 31 38 31 2e 32 32 32 22 2c   92.168.181.222",
0080   22 70 61 73 73 77 6f 72 64 22 3a 22 2a 2a 2a 2a   "password":"****
0090   2a 2a 2a 22 2c 22 75 73 65 72 4e 61 6d 65 22 3a   ***","userName":
00a0   22 22 7d 2c 22 73 65 73 73 69 6f 6e 22 3a 30 7d   ""},"session":0}
00b0   0a
 
Hab das durch Sniffern gelernt und dürfte wohl Hardcoded sein. In der Config (bei alten FW'n hat man die komplette Config noch in Klartext gesehn) steht dazu auch nichts konkretes.
Was evtl. mitspielen könnte ist der FTP-Server. Ist dieser auf der VTO auf die IP des RPi's eingestellt?
Verstehe nicht ganz, was der ftp-server mit dem FP zu tun haben könnte.

Mittlerweile muss ich aber ohnehin fragen, was gegen die SIP FW sprechen sollte? Wenn man keinen eigenen SIP Server hat, nimmt man halt den der VTO/VTH. Dann ist praktisch nichts anders als bei der non-SIP FW.
Dann nochmals für mich bitte :):
Ich kann die VTH/VTO (alle mit SIP) weiter nutzen, auch wenn ich keinen SIP-Server nutze ?

Das Paket das von der VTO an den Server auf Port 5000 geschickt wird, schaut übrigens so aus:
.....
Das werde ich bei Zeit auch mal testen. Dank vorab für die Analyse.
 
Klar, die VTO hat einen SIP Server eingebaut. Den brauchst du nur enablen und dann die VTH's etc. draufhängen.
Funktioniert im Prinzip nicht viel anders als bei der Dahua-Proprietären FW.

Eine detaillierte Anleitung mit Bildern um das mit aktuellster FW zu bewerkstelligen findest du hier: How to configure 1 VTO+1 VTH(SIP 4.3 Baseline)
 
Hi zusammen,

sehr cooles Projekt, vorallem weil ich mir schon ewig den Kopf zermartert habe, wie ich das Klingel Signal abgreifen kann...jetzt scheint es dafür eine gute Lösung zu geben.

Meine Frage/Problem:
Ich würde das Signal gerne in der ioBroker Zentrale verwalten wollen. Ich hätte dazu 2 Lösungsansätze. Da ich kein Vollblutprogrammierer bin, bräuchte ich eure Hilfe.

1. das bestehende .sh Skript von denimjeans/DahuaVTO-Gong so anpassen, dass es an ein Skript (Javascript oder mit Blockly) im ioBroler sendet (quasi eine Lauschfunktion)...das empfangene Signal kann ich dann weiterverarbeiten (für Email, Snapshot, Pushover etc.)

oder mein favourisierte Ansatz

2. Direkt das bestehende Skript in ein Javascript umschreiben...dann kann ich das im ioBroker laufen lassen und habe die "volle Kontrolle" (bzw. alles beisammen). Das hätte auch den Vorteil, das sich andere der ioBroker Comunity recht einfach das Skript bei sich implementieren könnten.

Wäre das möglich? Wäre cool wenn jemand helfen könnte,

Danke und Grüße
Bernhard
 
Hi homification,

Deine 2. Lösung würde auch funktionieren. Einfach mal ausprobieren. Allerdings solltest du beachten, dass nach dem Klingeln das Script mehrfach aufgerufen würde, da die Pakete sehr oft hintereinander kommen. Das geht dann so ca. 30 Sekunden lang. Daher ist in dem Script denimjeans/DahuaVTO-Gong ein kleiner check eingebaut. Also heisst: Wenn das Script ausgelöst wurde, dann weitere 60 Sekunden erneute Auslösung ignorieren. Leider etwas gebastelt, aber habe bisher auch nicht besseres gefunden, was meine Anforderungen abdeckt.

riogrande75 hat noch eine Lösung, ggf ist die besser für dich geeigent falls das hier nicht läuft?

Viel Erfolg und schöne Weihnachten
Denim
 
Zuletzt bearbeitet:
Moin Denim,

danke für Deine Rückmeldung.
Ich werde mal mit meinen laienhafen Programmierskills (kann nur etwas VBA) versuchen etwas in JS bzw. Blockly zusammenzubastelln...

Als Ansatz habe ich diese Dokumentation zu NodeJS UDP/Datagram Sockets gefunden...das scheint mir recht brauchbar...nur weiß ich leider noch nicht ganz wie alles miteinander zusammenhängt (welche IP:port muss ich "abhören", was wird als Ergebnis ausgegeben...ist das ein true Wert? brauche ja eine Art Trigger um ein Snapshot oder ähnliches auszulösen...).

Falls jemand JS programmieren kann, wäre es toll wenn er helfen könnte das bestehdende Script zu "übersetzen". Zur Not kann ich ja auch mal im ioBroker Forum fragen.

Beste Grüße
Bernhard
 
Hallo Bernhard, wenn es dir hilft habe ich gerade ein "minimum Script " Script hochgeladen. Sollte nun übersichtlicher sein. Das ist das was man benötigt um ein Screenshot beim klingeln zu holen.

In proc kannst du dann deine Scripte / Befehle einfügen.

Schöne Weihnachten und viel Erfolg
Denim
 
Hi Denim,
ich danke Dir...hoffe Du bist gut ins neue Jahr gekommen :)

Ich werde zum Testem erst mal das bisherige C-Script mit deinem sh-Skript auf dem Raspi versuchen zum Laufen zu bringen. Falls das funktionieren sollte, werde ich mich mal an das Erstellen der JS-Skript Version wagen...Sobald es Erfolge zu verzeichnen gibt, werde ich hier meine Lösung posten.

Bis dahin...keep yout heads up :)

VG Bernhard
 
Bin gerade am forschen, ob's dafür nicht doch eine schönere Lösung gibt.
Hab deshalb wieder viel mitgesniffert und hab das DHIP Protokoll, welches auf Port 5000 TCP auf den Dahua Geräten läuft, ein wenig erforscht.
Ich sehe da riesiges Potential, diesen Wunsch (Gong) und noch viele andere zusätzliche Funktionen zu realisieren.
Dafür werde ich aber einen neuen Thread aufmachen - hoffe auf fleissige Mitarbeit. Vor allem die Python Jünger könnte ich dabei gut gebrauchen, "spreche" selbst nur ein wenig PHP.
 
  • Like
Reaktionen: kuzco-ip
Dafür werde ich aber einen neuen Thread aufmachen - hoffe auf fleissige Mitarbeit. Vor allem die Python Jünger könnte ich dabei gut gebrauchen, "spreche" selbst nur ein wenig PHP.
Hast Du hier evtl. schon eine Beta ? Gerne auch als persönliche Nachricht.
Bin sehr an einer Lösung interessiert.
Wo ich kann würde ich natürlich helfen.
 
Hab nun einen kleinen Durchbruch mit solch einen Programm: Das Python-Script nutzt das DHIP Protkoll (so wie z.b. SmartPSS) und empfängt Alle Events des Gerät's in Klartext.
Damit bekommt es z.b. mit, dass die Kamera eine Bewegung erkannt hat (VideoMotion), die Tür geöffnet wurde (Relais 1/2 schaltet) oder eben jemand angeläutet hat. Es geht nun nur mehr ab, eine entsprechende Aktion auszuführen, wie z.b. SendeEmail, schalte Relais für ext. Glocke, etc..

Mein Aufruf gilt jemanden der sich zutraut, mich da ein wenig zu unterstützen. Er sollte auf jeden Fall gut Python "spechen", weil ich das eben nicht kann und das Script komplett in Python ist.
Ich bitte um Kontaktaufnahme per PN, will hier nicht den ganzen Thread zumüllen. Wenn es fertig ist, dann werde ich das hier klarerweise posten.
 
  • Like
Reaktionen: Odi-Fr
HI Riogrande,

ist schon ein kleines Bisschen her. Konnte den Thread nicht weiter verfolgen.
Bist du weitergekommen? Deine Erkenntnisse mit dem Port 5000 sehen vielversprechend aus.
Gibt es einen Thread dazu zufällig?
Viele Grüße, (ist ja schon wieder bald Weihnachten:) )
Oktay
 
Zuletzt bearbeitet:
Klar - guxdu hier.
 
cool, danke. Sieht schonmal sehr viel versprechend aus.
 
Hallo ihr lieben,

kann mir einer mal eine todo Liste geben was ich machen muss ?
ich hane ein Laptop linux Unbuntu und möchte gerne wenn es klingelt es per Telegramm bekommen. Ich verstehe es nicht ganz und Hilfe wäre sehr nett.
Iobroker wäre auch schön wenn das geht.
 
Zuletzt bearbeitet:
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.