[Info] VTO Event Empfänger

rani22

Neuer User
Mitglied seit
16 Feb 2018
Beiträge
17
Punkte für Reaktionen
1
Punkte
3
Muss man um diesen Script verwenden zu können P2P aktiviert haben? Möchte eigentlich keine Standleitung nach China aufbauen.
 

riogrande75

Aktives Mitglied
Mitglied seit
30 Okt 2017
Beiträge
1,307
Punkte für Reaktionen
257
Punkte
83
nein
 

riogrande75

Aktives Mitglied
Mitglied seit
30 Okt 2017
Beiträge
1,307
Punkte für Reaktionen
257
Punkte
83
Bitte ersten Post dieses Threads lesen...
 

rani22

Neuer User
Mitglied seit
16 Feb 2018
Beiträge
17
Punkte für Reaktionen
1
Punkte
3
Bitte ersten Post dieses Threads lesen...

Habe beim Suchen nach eine besseren Lösung für den Empfang und die Bearbeitung von Events (Anläuten, FingerPrint, Türöffnen, etc.) meiner VTO2000A die Dahua-JSON-Debug-Console entdeckt.
Nach einigen Anpassungen des Entwicklers (Vielen Dank an bashis) funktioniert das Script auch an VTO's mit aktueller Firmware 4.3.
Auf Basis dessen startet ich meine Forschungen und konnte schnell einen Erfolg verbuchen. User philipp900 programmierte das Script dann in PHP nach und passte es unseren Wünschen an - Vielen Dank Philipp!
Ich habe noch einige kleine Erweiterungen vorgenommen, rausgekommen ist das hier: DahuaEventHandler.php

Jeder kann nun recht einfach Aktionen starten (z.b. Email schicken, Relais Schalten, etc.).
Eventuell stehe ich auf dem Schlauch, ich sehe aber in diesem Post keine Hinweise, warum php und nicht python verwendet wird.
 

fanavity

Neuer User
Mitglied seit
7 Sep 2010
Beiträge
101
Punkte für Reaktionen
10
Punkte
18
Ich habe das Script nun seit einigen Tagen erfolgreich bei mir am Laufen. Ich habe einen Service dafür eingerichtet. Leider werden die Ausgaben nicht geloggt. Kann hier mal jemand drüberschauen und mir sagen was ich falsch mache oder wo ich die Ausgaben finde?

Code:
#! /bin/sh

### BEGIN INIT INFO
# Provides:          dahuaEventHandler
# Required-Start:    $local_fs $remote_fs $network $syslog
# Required-Stop:     $local_fs $remote_fs $network $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: DahuaEventHandler
# Description:       DahuaEventHandler
#                    Installation:
#                    Copy this file to /etc/init.d/ (no file extension allowed)
#                    chmod +x this
#                    sudo update-rc.d <myservice> defaults 91 // because it must start after mysql
### END INIT INFO

NAME=dahuaEventHandler
DESC="DahuaEventHandler"

PIDFILE="/var/run/${NAME}.pid"
LOGFILE="/var/log/${NAME}.log"

DAEMON="/usr/bin/php"
DAEMON_OPTS="/home/pi/Documents/DahuaEventHandler.php"

RUN_AS=pi

START_OPTS="--start --background --chuid ${RUN_AS} --make-pidfile --pidfile ${PIDFILE} --exec ${DAEMON} ${DAEMON_OPTS}"
STOP_OPTS="--stop --pidfile ${PIDFILE}"

. /lib/lsb/init-functions
test -x $DAEMON || exit 0

set -e

do_start()
 

kuzco-ip

Mitglied
Mitglied seit
4 Feb 2019
Beiträge
654
Punkte für Reaktionen
52
Punkte
28
Ich habe mir im php-Script ein Log als *.txt definiert.
Code:
$handle = fopen ($store_s.$logname, "a+");
fwrite ($handle, $logdate." ".$text."\r\n");
.....
 

RobertU

Neuer User
Mitglied seit
19 Mrz 2022
Beiträge
4
Punkte für Reaktionen
0
Punkte
1
Hallo,
ich versuche den Script DahuaEventHandler mit php 8.0.17, leider ohne erfolg.

<** Dahua VTO Eventempfaenger START **>
2022-03-29 05:53:50.000000: Start login
PHP Warning: Undefined property: Dahua_Functions::$username in /temp/Dahua-master/DahuaEventHandler.php on line 171
PHP Fatal error: Uncaught TypeError: fwrite(): Argument #1 ($stream) must be of type resource, bool given in /temp/Dahua-master/DahuaEventHandler.php:100
Stack trace:
#0 /temp/Dahua-master/DahuaEventHandler.php(100): fwrite()
#1 /temp/Dahua-master/DahuaEventHandler.php(176): Dahua_Functions->Send()
#2 /temp/Dahua-master/DahuaEventHandler.php(231): Dahua_Functions->Login()
#3 /temp/Dahua-master/DahuaEventHandler.php(5): Dahua_Functions->Main()
#4 {main}
thrown in /temp/Dahua-master/DahuaEventHandler.php on line 100

Ich vermute, dass es mit version php zu tun hat.
Danke für tips.
 

riogrande75

Aktives Mitglied
Mitglied seit
30 Okt 2017
Beiträge
1,307
Punkte für Reaktionen
257
Punkte
83
Naja, kann sein.
Aber ich denke eher, es liegt an Zeile 4, wo ip, username + passwort von deiner VTO vergeben werden.
Poste mal deine Zeile 4 hier.
 

RobertU

Neuer User
Mitglied seit
19 Mrz 2022
Beiträge
4
Punkte für Reaktionen
0
Punkte
1
Ich habe mir auch gedacht, aber ich denke, dass ich die Zeile 4 richtig habe:

$Dahua = new Dahua_Functions("192.168.39.99", "admin", "tempPass21"); # VTO's IP and user/pwd

192.168.39.99 ist IP VTO
 

pjotr_weliki

Neuer User
Mitglied seit
24 Okt 2017
Beiträge
179
Punkte für Reaktionen
31
Punkte
28
Moin,

ich hätte da noch einige "Unknown event received"
 

Anhänge

  • Unknown event received.zip
    6.6 KB · Aufrufe: 15

HansMagnus

Neuer User
Mitglied seit
7 Aug 2022
Beiträge
16
Punkte für Reaktionen
1
Punkte
3
Hallo zusammen,
ich betreibe ein VTO2202F mit der Firmwareversion 4.511.

Wenn ich den DahuaEventHandler.php ausführe erhalt ich den Error: "Socket open failed".
IP und Passwort ist richtig gesetzt.

Könnte es sein, dass diese Firmware die Verbindung nicht mehr zulässt?
Hat sich eventuell der Port geändert?

Ich habe den Script in der Windows Eingabeaufforderung und PowerShell getestet.
Lohnt es sich das ganze vom Raspy aus zu versuchen?
 
Zuletzt bearbeitet:

fanavity

Neuer User
Mitglied seit
7 Sep 2010
Beiträge
101
Punkte für Reaktionen
10
Punkte
18
Ist es möglich die Lautstärke der VTH über das Script zu verändern? Ich würde das gern in mein Smarthome einbinden. Wenn Rolladen-Kinderzimmer geschlossen -> Klingel lautlos. Das würde mir eine Menge Stress ersparen :p
 

riogrande75

Aktives Mitglied
Mitglied seit
30 Okt 2017
Beiträge
1,307
Punkte für Reaktionen
257
Punkte
83
In der http_api Beschreibung habe ich nichts gefunden, das evtl. passen würde.
Aber mit der DahuaConsole habe ich folgendes gefunden:
1670650861357.png
Denke mit einem geeigneten Script kannst du diese Werte leicht ändern.
Mein DahuaChangeRingtime.php währe wohl als Basis gut zu gebrauchen.
 

fanavity

Neuer User
Mitglied seit
7 Sep 2010
Beiträge
101
Punkte für Reaktionen
10
Punkte
18
Die Werte lassen sich setzen, allerdings muss ich die Lautstärke in der Kategorie "VTO-Klingeln" und nicht in der Kategorie "VTH-Klingeln" ändern. Zumindest hat letzteres keinen Einfluss auf die Lautstärke wenn ich von der VTO den Anruf starte(normales Klingeln)

PS: ES reicht das das Flag SilenceEnable zu setzen!
 
Zuletzt bearbeitet:

Zurzeit aktive Besucher

Neueste Beiträge

Statistik des Forums

Themen
242,253
Beiträge
2,178,338
Mitglieder
367,253
Neuestes Mitglied
Elronmcg
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.