49_SSCam: Fragen, Hinweise, Neuigkeiten und mehr rund um dieses Modul

Begonnen von DS_Starter, 14 Dezember 2015, 16:19:08

Vorheriges Thema - Nächstes Thema

Depechem

Zitat von: Motivierte linke Hände am 06 November 2017, 09:30:16
Wie zeigst Du denn den Livestream in fhem an?

Ich mache das hier über Weblinks und habe damit eigentlich keine Probleme.

na über das Modul "SSCAM"
Entweder über "set CAM runView live_fw"
oder im Reading "StmKeymjpegHttp" die http Kopieren und im Browser anzeigen lassen.

Dann wird das Video nie flüssig sondern immer nur stockend angezeigt.
Ich Denke es liegt an der Umcodierung von rttsp auf mjpeg!?
RaspberryPi2 / FHEM / 3 Wand-Tablets mit Tablet UI / HM USB / verschiedene HM-Aktoren / JeeLink USB für WS1600 und mehrere LaCrosse Sensoren / HEOS ...

oli82

Neue Kamera, erste Probleme.

Hi Heiko.
Ich habe nun eine weitere Kamera der SS hinzugefügt. Es handelt sich um eine PTZ von Dahua (SD29204T-GN), die laut der Synology Homepage auch kompatibel ist.
Leider klappt in der SS das einbinden schon mal nicht. Testbild in der SS klappt, aber danach zeigt sie getrennt an. in Fhem jedoch kann ich Problemlos Snapshots und Aufnahmen starten (?!).
Also habe ich die Kamera als "Generic ONFIV" angelegt. Dort klappt zumindest die Ansicht in der SS und das Aufnehmen.
Was leider in Fhem nicht klappt, ist das Anfahren von Presets. Hier erhalte ich folgenden Fehler:
2017.11.06 13:24:32 4: Garten.PTZ - Move Camera Garten-PTZ to position "home" with ID "-1" now
2017.11.06 13:24:32 4: Garten.PTZ - ####################################################
2017.11.06 13:24:32 4: Garten.PTZ - ###    start cam operation gopreset         
2017.11.06 13:24:32 4: Garten.PTZ - ####################################################
2017.11.06 13:24:32 4: Garten.PTZ - --- Begin Function sscam_getapisites nonblocking ---
2017.11.06 13:24:32 4: Garten.PTZ - API hashvalues already set - ignore get apisites
2017.11.06 13:24:32 4: Garten.PTZ - --- Begin Function sscam_getcamid nonblocking ---
2017.11.06 13:24:32 4: Garten.PTZ - CAMID already set - ignore get camid
2017.11.06 13:24:32 4: Garten.PTZ - --- Begin Function gopreset nonblocking ---
2017.11.06 13:24:32 5: Garten.PTZ - HTTP-Call will be done with httptimeout-Value: 4 s
2017.11.06 13:24:32 4: Garten.PTZ - Call-Out now: http://192.168.100.110:5000/webapi/entry.cgi?api="SYNO.SurveillanceStation.PTZ"&version="4"&method="GoPreset"&position="-1"&cameraId="3"&_sid="4yAsQW3BGv7dI1690O6N863601"
2017.11.06 13:24:32 5: Garten.PTZ - JSON returned: {
  'error' => {
    'code' => 401,
    'errors' => {
      'param1' => '',
      'param2' => ''
    }
  },
  'success' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' )
}

2017.11.06 13:24:32 2: Garten.PTZ - ERROR - 401 - Parameter invalid in operation gopreset -> try new login
2017.11.06 13:24:32 4: Garten.PTZ - --- Begin Function sscam_login ---
2017.11.06 13:24:32 4: Garten.PTZ - Credentials read from RAM: admin ********
2017.11.06 13:24:32 5: Garten.PTZ - HTTP-Call login will be done with httptimeout-Value: 4 s
2017.11.06 13:24:32 4: Garten.PTZ - Call-Out now: http://192.168.100.110:5000/webapi/auth.cgi?api=SYNO.API.Auth&version=6&method=Login&account=admin&passwd=*****&format="sid"
2017.11.06 13:24:32 5: Garten.PTZ - JSON decoded: {
  'data' => {
    'is_portal_port' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' ),
    'sid' => 'vaXjtUWhAMbHY1690O6N863601'
  },
  'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' )
}

2017.11.06 13:24:32 4: Garten.PTZ - Login of User admin successful - SID: vaXjtUWhAMbHY1690O6N863601
2017.11.06 13:24:32 4: Garten.PTZ - ####################################################
2017.11.06 13:24:32 4: Garten.PTZ - ###    start cam operation gopreset         
2017.11.06 13:24:32 4: Garten.PTZ - ####################################################
2017.11.06 13:24:32 4: Garten.PTZ - --- Begin Function sscam_getapisites nonblocking ---
2017.11.06 13:24:32 4: Garten.PTZ - API hashvalues already set - ignore get apisites
2017.11.06 13:24:32 4: Garten.PTZ - --- Begin Function sscam_getcamid nonblocking ---
2017.11.06 13:24:32 4: Garten.PTZ - CAMID already set - ignore get camid
2017.11.06 13:24:32 4: Garten.PTZ - --- Begin Function gopreset nonblocking ---
2017.11.06 13:24:32 5: Garten.PTZ - HTTP-Call will be done with httptimeout-Value: 4 s
2017.11.06 13:24:32 4: Garten.PTZ - Call-Out now: http://192.168.100.110:5000/webapi/entry.cgi?api="SYNO.SurveillanceStation.PTZ"&version="4"&method="GoPreset"&position="-1"&cameraId="3"&_sid="vaXjtUWhAMbHY1690O6N863601"
2017.11.06 13:24:32 5: Garten.PTZ - JSON returned: {
  'error' => {
    'code' => 401,
    'errors' => {
      'param1' => '',
      'param2' => ''
    }
  },
  'success' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' )
}

2017.11.06 13:24:32 2: Garten.PTZ - ERROR - 401 - Parameter invalid in operation gopreset -> try new login
2017.11.06 13:24:32 4: Garten.PTZ - --- Begin Function sscam_login ---
2017.11.06 13:24:32 4: Garten.PTZ - Credentials read from RAM: admin ********
2017.11.06 13:24:32 5: Garten.PTZ - HTTP-Call login will be done with httptimeout-Value: 4 s
2017.11.06 13:24:32 4: Garten.PTZ - Call-Out now: http://192.168.100.110:5000/webapi/auth.cgi?api=SYNO.API.Auth&version=6&method=Login&account=admin&passwd=*****&format="sid"
2017.11.06 13:24:33 5: Garten.PTZ - JSON decoded: {
  'data' => {
    'is_portal_port' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' ),
    'sid' => '2GwJODKDf4aKY1690O6N863601'
  },
  'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' )
}

2017.11.06 13:24:33 4: Garten.PTZ - Login of User admin successful - SID: 2GwJODKDf4aKY1690O6N863601
2017.11.06 13:24:33 4: Garten.PTZ - ####################################################
2017.11.06 13:24:33 4: Garten.PTZ - ###    start cam operation gopreset         
2017.11.06 13:24:33 4: Garten.PTZ - ####################################################
2017.11.06 13:24:33 4: Garten.PTZ - --- Begin Function sscam_getapisites nonblocking ---
2017.11.06 13:24:33 4: Garten.PTZ - API hashvalues already set - ignore get apisites
2017.11.06 13:24:33 4: Garten.PTZ - --- Begin Function sscam_getcamid nonblocking ---
2017.11.06 13:24:33 4: Garten.PTZ - CAMID already set - ignore get camid
2017.11.06 13:24:33 4: Garten.PTZ - --- Begin Function gopreset nonblocking ---
2017.11.06 13:24:33 5: Garten.PTZ - HTTP-Call will be done with httptimeout-Value: 4 s
2017.11.06 13:24:33 4: Garten.PTZ - Call-Out now: http://192.168.100.110:5000/webapi/entry.cgi?api="SYNO.SurveillanceStation.PTZ"&version="4"&method="GoPreset"&position="-1"&cameraId="3"&_sid="2GwJODKDf4aKY1690O6N863601"
2017.11.06 13:24:33 5: Garten.PTZ - JSON returned: {
  'error' => {
    'code' => 401,
    'errors' => {
      'param1' => '',
      'param2' => ''
    }
  },
  'success' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' )
}

2017.11.06 13:24:33 2: Garten.PTZ - ERROR - 401 - Parameter invalid in operation gopreset -> try new login
2017.11.06 13:24:33 4: Garten.PTZ - --- Begin Function sscam_login ---
2017.11.06 13:24:33 4: Garten.PTZ - Credentials read from RAM: admin ********
2017.11.06 13:24:33 5: Garten.PTZ - HTTP-Call login will be done with httptimeout-Value: 4 s
2017.11.06 13:24:33 4: Garten.PTZ - Call-Out now: http://192.168.100.110:5000/webapi/auth.cgi?api=SYNO.API.Auth&version=6&method=Login&account=admin&passwd=*****&format="sid"
2017.11.06 13:24:33 5: Garten.PTZ - JSON decoded: {
  'data' => {
    'is_portal_port' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' ),
    'sid' => 'EGCySj0hXvDpY1690O6N863601'
  },
  'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' )
}

2017.11.06 13:24:33 4: Garten.PTZ - Login of User admin successful - SID: EGCySj0hXvDpY1690O6N863601
2017.11.06 13:24:33 4: Garten.PTZ - ####################################################
2017.11.06 13:24:33 4: Garten.PTZ - ###    start cam operation gopreset         
2017.11.06 13:24:33 4: Garten.PTZ - ####################################################
2017.11.06 13:24:33 4: Garten.PTZ - --- Begin Function sscam_getapisites nonblocking ---
2017.11.06 13:24:33 4: Garten.PTZ - API hashvalues already set - ignore get apisites
2017.11.06 13:24:33 4: Garten.PTZ - --- Begin Function sscam_getcamid nonblocking ---
2017.11.06 13:24:33 4: Garten.PTZ - CAMID already set - ignore get camid
2017.11.06 13:24:33 4: Garten.PTZ - --- Begin Function gopreset nonblocking ---
2017.11.06 13:24:33 5: Garten.PTZ - HTTP-Call will be done with httptimeout-Value: 4 s
2017.11.06 13:24:33 4: Garten.PTZ - Call-Out now: http://192.168.100.110:5000/webapi/entry.cgi?api="SYNO.SurveillanceStation.PTZ"&version="4"&method="GoPreset"&position="-1"&cameraId="3"&_sid="EGCySj0hXvDpY1690O6N863601"
2017.11.06 13:24:33 5: Garten.PTZ - JSON returned: {
  'error' => {
    'code' => 401,
    'errors' => {
      'param1' => '',
      'param2' => ''
    }
  },
  'success' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' )
}

2017.11.06 13:24:33 2: Garten.PTZ - ERROR - 401 - Parameter invalid in operation gopreset -> try new login
2017.11.06 13:24:33 4: Garten.PTZ - --- Begin Function sscam_login ---
2017.11.06 13:24:33 4: Garten.PTZ - Credentials read from RAM: admin ********
2017.11.06 13:24:33 2: Garten.PTZ - ERROR - Login or privilege of user admin unsuccessful


Kannst du dir das erklären? Auffällig ist das Preset "-1". Hast du evtl einen Kontakt, an den ich mich wenden kann, falls du mir nicht weiter helfen kannst?
Danke, Oli

Motivierte linke Hände

Zitat von: Depechem am 06 November 2017, 13:11:27
na über das Modul "SSCAM"
Entweder über "set CAM runView live_fw"
oder im Reading "StmKeymjpegHttp" die http Kopieren und im Browser anzeigen lassen.

Dann wird das Video nie flüssig sondern immer nur stockend angezeigt.
Ich Denke es liegt an der Umcodierung von rttsp auf mjpeg!?

Ich mache das über einen Weblink und setze den Link für den Zugriff auf die Syno selbst zusammen, angelehnt an SurveillanceMjpegHtml wie im Wiki gepostet, aber jeweils nur für einen Kamerastream. Ob die Methode einen Unterschied macht, weiß ich nicht, aber Du könntest ja einfach mal einen so zusammengesetzten Link manuell erstellen und in Deinem Browser testen. Auch dabei kommt jedenfalls ein mjpeg Stream heraus - der hier allerdings flüssig läuft. Du wüsstest dann zumindest, ob das Problem im SSCAM-Modul liegt oder nicht.

Wenn es nicht am SSCAM-Modul liegen sollte: Ich habe die Erfahrung gemacht, dass eine etwas schwachbrüstige Synology auch zu den "tollsten" Bildfehlern führen kann. Hast Du mal die CPU-Auslastung auf Deiner Synology beobachtet? Schon kleine Spitzen zu 100% haben hier größeren Murks verursacht, weswegen ich letztens das Modell gewechselt habe (von ARM auf Atom). Seitdem sind die Darstellungsprobleme weg.

Zitat von: oli82 am 06 November 2017, 13:27:17
Hast du evtl einen Kontakt, an den ich mich wenden kann, falls du mir nicht weiter helfen kannst?

Der Synology-Support (über die Weboberfläche der Synology - Support Center - erreichbar, ist einer der besten Supports, die ich kenne: Sie antworten recht zügig, und es sitzen dort Menschen mit Ahnung, nicht Menschen mit der Aufgabe, andere Menschen abzuwimmeln.

Grüße Christian
FHEM 6 in einer KVM VM mit Ubuntu
HM-CFG-USB2, 2xHM-CFG-HMLAN, HM-HMUARTLGW mit 100+ HomeMatic Devices, Geofencing, Fritzbox, Unifi, HUE, Harmony-Hub, Denon-Receiver-Modul, Calendar, GardenaSmartDevice, Shelly, MQTT (zigbee2mqtt, Tasmota und Shelly) und ein wenig 1Wire.

oli82

Danke für die Info.
Dann teste ich mal weiter und schreibe parallel dem Support.

Der Umstieg von ARM auf Atom hat bei mir auch wunder bewirkt  8)

Depechem

Zitat von: Motivierte linke Hände am 06 November 2017, 14:09:25
Ich mache das über einen Weblink und setze den Link für den Zugriff auf die Syno selbst zusammen, angelehnt an SurveillanceMjpegHtml wie im Wiki gepostet, aber jeweils nur für einen Kamerastream.

d.h. ich muss laut Wiki eine Subroutine in 99_myUtils erstellen? oder wie kann ich testweise am schnellsten einen Weblink für eine Cam erstellen?
RaspberryPi2 / FHEM / 3 Wand-Tablets mit Tablet UI / HM USB / verschiedene HM-Aktoren / JeeLink USB für WS1600 und mehrere LaCrosse Sensoren / HEOS ...

Motivierte linke Hände

Zitat von: Depechem am 06 November 2017, 14:14:24
d.h. ich muss laut Wiki eine Subroutine in 99_myUtils erstellen? oder wie kann ich testweise am schnellsten einen Weblink für eine Cam erstellen?

Der entscheidende Code ist der Teil:

my $webapi = sprintf('http://%s:%d/webapi/entry.cgi?api=SYNO.SurveillanceStation.VideoStreaming&version=1&method=Stream&format=mjpeg&cameraId=%d&StmKey="%s"',
      $defs{$devCam}{SERVERADDR},
      $defs{$devCam}{SERVERPORT},
      $defs{$devCam}{CAMID},
      $StmKey);


Wenn Du das einmal manuell umsetzt, hast Du einen Link, der in Deinem Browser funktionieren sollte.

also http://<Adresse>:<Port>/webapi/entry.cgi?api=SYNO.SurveillanceStation.VideoStreaming&version=1&method=Stream&format=mjpeg&cameraId=<Kamera>&StmKey="<StmKey>"
FHEM 6 in einer KVM VM mit Ubuntu
HM-CFG-USB2, 2xHM-CFG-HMLAN, HM-HMUARTLGW mit 100+ HomeMatic Devices, Geofencing, Fritzbox, Unifi, HUE, Harmony-Hub, Denon-Receiver-Modul, Calendar, GardenaSmartDevice, Shelly, MQTT (zigbee2mqtt, Tasmota und Shelly) und ein wenig 1Wire.

Depechem

#876
Zitat von: Motivierte linke Hände am 06 November 2017, 14:17:48
Der entscheidende Code ist der Teil:

my $webapi = sprintf('http://%s:%d/webapi/entry.cgi?api=SYNO.SurveillanceStation.VideoStreaming&version=1&method=Stream&format=mjpeg&cameraId=%d&StmKey="%s"',
      $defs{$devCam}{SERVERADDR},
      $defs{$devCam}{SERVERPORT},
      $defs{$devCam}{CAMID},
      $StmKey);


Wenn Du das einmal manuell umsetzt, hast Du einen Link, der in Deinem Browser funktionieren sollte.

also http://<Adresse>:<Port>/webapi/entry.cgi?api=SYNO.SurveillanceStation.VideoStreaming&version=1&method=Stream&format=mjpeg&cameraId=<Kamera>&StmKey="<StmKey>"

tut mir leid aber ich weis nicht was du mit "Manuell Umsetzen meinst :-(
Kannst bitte nochmal genauer erklären
Dank dir

Achso jetzt weis ich was du meinst, den Link erzeugt das SSCAM Modul doch automatisch.
Wenn ich diesen im Browser aufrufe wird der Stream extrem zerhackt, also nicht flüssig angezeigt
RaspberryPi2 / FHEM / 3 Wand-Tablets mit Tablet UI / HM USB / verschiedene HM-Aktoren / JeeLink USB für WS1600 und mehrere LaCrosse Sensoren / HEOS ...

oli82

Zitat von: Motivierte linke Hände am 06 November 2017, 14:17:48
Wenn Du das einmal manuell umsetzt, hast Du einen Link, der in Deinem Browser funktionieren sollte.

also http://<Adresse>:<Port>/webapi/entry.cgi?api=SYNO.SurveillanceStation.VideoStreaming&version=1&method=Stream&format=mjpeg&cameraId=<Kamera>&StmKey="<StmKey>"

Kommt das aber nicht auch aus dem Reading "StmKeymjpegHttp"? In Der SS kann man dazu noch die Gültigkeit des StmKeys auf dauerhaft stellen.

Motivierte linke Hände

Hi, ich meine, dass Du für die betreffende Kamera die Daten in diese Adresse eintragen sollst:

http://<Adresse>:<Port>/webapi/entry.cgi?api=SYNO.SurveillanceStation.VideoStreaming&version=1&method=Stream&format=mjpeg&cameraId=<Kamera>&StmKey="<StmKey>"

<Adresse> ist die Adresse der Synology
Findest Du im Internal SERVERADDR der Cam in fhem

<Port> ist der Port der Synology
Meist 5000, findest Du im Internal SERVERPORT der Cam in fhem

<Kamera> ist die KameraID der betreffenden Kamera
Findest Du im Internal CAMID der Cam in fhem

<StmKey> ist im Reading StmKey

Das Ergebnis sieht dann vmtl. so ähnlich wie das da aus:

[url="http://192.168.x.y:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.VideoStreaming&version=1&method=Stream&format=mjpeg&cameraId=4&StmKey="blubbel""]http://192.168.x.y:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.VideoStreaming&version=1&method=Stream&format=mjpeg&cameraId=4&StmKey="blubbel"[/url]

Werte Eintragen, Link in Browser kopieren und gucken, ob es läuft.

Zitat von: oli82 am 06 November 2017, 14:26:43
Kommt das aber nicht auch aus dem Reading "StmKeymjpegHttp"? In Der SS kann man dazu noch die Gültigkeit des StmKeys auf dauerhaft stellen.

Weiß ich nicht :) Ich habe diese Zusatzreadings hier nicht eingeschaltet, habe sie noch nicht gebraucht, meine Implementierung stammt aus der Zeit davor.

Mir geht es dort nur darum zu schauen, was passiert, wenn man den Link (wo immer man ihn dann auch hernimmt) direkt mal in den fraglichen Browser pastet.
FHEM 6 in einer KVM VM mit Ubuntu
HM-CFG-USB2, 2xHM-CFG-HMLAN, HM-HMUARTLGW mit 100+ HomeMatic Devices, Geofencing, Fritzbox, Unifi, HUE, Harmony-Hub, Denon-Receiver-Modul, Calendar, GardenaSmartDevice, Shelly, MQTT (zigbee2mqtt, Tasmota und Shelly) und ein wenig 1Wire.

DS_Starter

Hallo zusammen,

bin gerade im Urlaub und kann mich erst wieder danach etwas mehr einklinken. Bitte habt dafür Verständnis  ;)

Aber für Oli hätte ich bzgl. Ptz den Tipp es mit dem Attr simu... eine ältere SS version zu simulieren und schauen ob es damit klappt. Allgemein sollte aber die cam in der ss problemlos mit allen funktionen arbeiten bevor die fhem integration an den start geht.

LG
Heiko
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Depechem

Für alle die gern einen "rtsp" Stream auf dem Tablet haben wollen, habe ich übergangsweise eine vorrübergehende Möglichkeit gefunden.
Ich besitze Tablets mit Tablet UI und möchte wenn die Haustür klingelt eine bestimmte Kamera für 30s anzeigen lassen.

Ich habe es so gelößt:
Grundlegend sei gesagt das mein TabletUI mit dem Fullybrowser läuft und der rtsp-Stream mit der Android App(RTSP Player) und in FHEM AMAD zur Steuerung läuft

man setzt in AMAD folgendes attr: attr setOpenUrlBrowser org.rtspplr.app,de
Ich habe ein notify erstellt:
Klingel:on set WandTabletWohnzimmer openURL rtsp://syno:....:554/Sms=1.unicast;sleep 25;set WandTabletWohnzimmer openApp de.ozerov.fully


Wie gesagt, ganz optmal ist das noch nicht aber vorerst geht es.
Es wäre schön wenn man da noch irgendetwas ins SSCAM-Modul integrieren kann da die Funktion "LiveStreamUrl" in http Umformen leider hoche Qualitätsverluste sowie noch schlimmer extreme Verzögerungen und keine flüssigen Videos anzeigt.
Gruß Thomas
RaspberryPi2 / FHEM / 3 Wand-Tablets mit Tablet UI / HM USB / verschiedene HM-Aktoren / JeeLink USB für WS1600 und mehrere LaCrosse Sensoren / HEOS ...

oli82

Zitat von: DS_Starter am 06 November 2017, 17:46:30
Aber für Oli hätte ich bzgl. Ptz den Tipp es mit dem Attr simu... eine ältere SS version zu simulieren und schauen ob es damit klappt. Allgemein sollte aber die cam in der ss problemlos mit allen funktionen arbeiten bevor die fhem integration an den start geht.

Danke für die Info.
Das Problem konnte ich aber gerade lösen.
Man muss die PTZ Presets anpassen bzw mehr als "home" setzen. Danach klappt das auch. Muss man erstmal drauf kommen...
Das die Kamera nur per ONVIF funktioniert und nicht bei Wahl des Models ist ein anderes Thema und liegt ja nicht am Modul.

Alchemi

Hallo zusammen,

meine Kameras innen sind bei Anwesenheit <disabled> und zur Wand gedreht. Bei Abwesenheit werden sie <enabled> und zur Aufnahmepositon geschwenkt. Gesteuert wird das mittels Residents und DOIF.

Vor Kurzem habe ich festgestellt, dass nach einem FHEM "shutdown restart" das <goPreset> nicht mehr funktioniert.

Eventmonitor bei FHEM-Restart:

2017.11.10 16:52:36 3 : IK_fl - no session ID found - get new one
2017.11.10 16:52:38 3 : IK_fl - Informations related to Surveillance Station retrieved
2017.11.10 16:52:38 3 : IK_fl - Informations of camera Flur retrieved
2017.11.10 16:52:39 3 : IK_fl - Snapinfos of camera Flur retrieved
2017.11.10 16:52:40 3 : IK_fl - Capabilities of camera Flur retrieved
2017.11.10 16:52:43 3 : IK_fl - PTZ Patrols of camera Flur retrieved


Eventmonitor bei "aktivieren" der Kamera durch ein DOIF nach FHEM-Restart:

2017.11.10 16:54:19 3 : IK_fl - Camera Flur has been enabled successfully
2017.11.10 16:54:38 2 : IK_fl - ERROR - goPreset to position "Abwesend" of Camera Flur can't be executed - Presetname and PresetID not found in Hash
2017.11.10 16:54:40 3 : IK_fl - Camera Flur exposure mode was set to "auto"


Die Kamera ist zum Zeitpunkt des FHEM-Restart generell <disabled>.
Erst nach einem (manuellen) "get caminfoall" oder "get scanVirgin" bei Kamera <enabled> lässt sich "goPreset" wieder benutzen.

Leider kann ich nicht sagen, seit welcher SSCAM-Version das nicht mehr geht. An den Einstellungen bei Residents und dem DOIF habe ich jedenfalls seit Monaten nichts geändert.

Fragen:
Ist das evtl. ein Bug im Modul?
Oder ist das einer Änderung in der SVS-API geschuldet?
Oder habe ich irgendwelche Änderungen im Modul verpasst, die ich nicht angepasst habe?
Oder habe ich einen grundlegenden Fehler in meiner Config?

Hier ein List der Kamera:

Internals:
   CAMID      6
   CAMNAME    Flur
   CREDENTIALS Set
   DEF        Flur 192.168.x.x
   MODEL      CAM
   NAME       IK_fl
   NR         39
   OPMODE     Disable
   SERVERADDR 192.168.x.x
   SERVERPORT xxxx
   STATE      disabled
   TYPE       SSCam
   VERSION    3.2.3
   HELPER:
     ACTIVE     off
     APIAUTH    SYNO.API.Auth
     APIAUTHMAXVER 6
     APIAUTHPATH auth.cgi
     APICAM     SYNO.SurveillanceStation.Camera
     APICAMEVENT SYNO.SurveillanceStation.Camera.Event
     APICAMEVENTMAXVER 1
     APICAMEVENTPATH entry.cgi
     APICAMMAXVER 9
     APICAMPATH entry.cgi
     APIEVENT   SYNO.SurveillanceStation.Event
     APIEVENTMAXVER 5
     APIEVENTPATH entry.cgi
     APIEXTEVT  SYNO.SurveillanceStation.ExternalEvent
     APIEXTEVTMAXVER 1
     APIEXTEVTPATH entry.cgi
     APIEXTREC  SYNO.SurveillanceStation.ExternalRecording
     APIEXTRECMAXVER 3
     APIEXTRECPATH entry.cgi
     APIHM      SYNO.SurveillanceStation.HomeMode
     APIHMMAXVER 1
     APIHMPATH  entry.cgi
     APIINFO    SYNO.API.Info
     APILOG     SYNO.SurveillanceStation.Log
     APILOGMAXVER 2
     APILOGPATH entry.cgi
     APIPARSET  1
     APIPTZ     SYNO.SurveillanceStation.PTZ
     APIPTZMAXVER 5
     APIPTZPATH entry.cgi
     APISNAPSHOT SYNO.SurveillanceStation.SnapShot
     APISTM     SYNO.SurveillanceStation.Streaming
     APISTMMAXVER 2
     APISTMPATH SurveillanceStation/streaming.cgi
     APISVSINFO SYNO.SurveillanceStation.Info
     APISVSINFOMAXVER 6
     APISVSINFOPATH entry.cgi
     APITAKESNAPMAXVER 1
     APITAKESNAPPATH entry.cgi
     APIVIDEOSTM SYNO.SurveillanceStation.VideoStreaming
     APIVIDEOSTMMAXVER 1
     APIVIDEOSTMPATH entry.cgi
     CAMLASTRECID
     CREDENTIALS xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
     EXPMODE    day
     GOPRESETNAME Anwesend
     KEYWORD    Flur
     LOGINRETRIES 0
     OLDVALPOLLNOLOGGING 0
     PTZACTION  gopreset
     RECTIME_DEF 15
     SID        xxxxxxxxxxxxxxxxxxxxxxxxxx
     SNAPIMGSIZE 0
     SNAPLIMIT  1
     ALLPATROLS:
     ALLPRESETS:
       Abwesend   2
       Anwesend   1
       Standard   0
       home       -1
     SVSVERSION:
       BUILD      5408
       MAJOR      8
       MINOR      1
       SMALL      1
   READINGS:
     2017-11-10 17:06:50   Availability    disabled
     2017-11-10 17:06:17   CamEventNum     0
     2017-11-10 17:06:18   CamExposureControl Auto
     2017-11-10 17:06:18   CamExposureMode Auto
     2017-09-24 22:00:05   CamForceEnableMulticast 0
     2017-11-10 17:06:18   CamIP           192.168.x.x
     2017-09-11 19:12:58   CamLastRec      20170911PM/Flur20170911-191234-1505149954.mp4
     2017-09-11 19:12:58   CamLastRecTime  11.09.2017 / 19:12:34 - 19:12:55
     2017-11-10 17:06:18   CamLiveMode     Liveview from DS
     2017-11-10 17:06:18   CamModel        FI9826P V2
     2017-11-10 17:06:20   CamMotDetSc     disabled
     2017-11-10 17:06:18   CamPort         xx
     2017-11-10 17:06:18   CamPreRecTime   5
     2017-11-10 17:06:18   CamPtSpeed      3
     2017-11-10 17:06:18   CamRecShare     surveillance
     2017-11-10 17:06:18   CamRecVolume    /volume1
     2017-11-10 17:06:18   CamVendor       FOSCAM
     2017-11-10 17:06:18   CamVideoFlip    1
     2017-11-10 17:06:18   CamVideoMirror  1
     2017-11-10 17:06:18   CamVideoRotate  false
     2017-11-10 17:06:18   CamblPresetSpeed 0
     2017-11-10 17:06:21   CapAudioOut     0
     2017-11-10 17:06:21   CapChangeSpeed  0
     2017-11-10 17:06:21   CapPTZAbs       0
     2017-11-10 17:06:21   CapPTZAutoFocus 0
     2017-11-10 17:06:21   CapPTZDirections 8
     2017-11-10 17:06:21   CapPTZFocus     false
     2017-11-10 17:06:21   CapPTZHome      1
     2017-11-10 17:06:21   CapPTZIris      false
     2017-11-10 17:06:21   CapPTZPan       support continuous operation
     2017-11-10 17:06:21   CapPTZTilt      support continuous operation
     2017-11-10 17:06:21   CapPTZZoom      support continuous operation
     2017-11-10 17:06:18   DeviceType      PTZ
     2017-11-10 17:06:50   Error           none
     2017-11-10 17:06:50   Errorcode       none
     2017-11-10 17:06:22   LastSnapFilename n.a.
     2017-11-10 17:06:22   LastSnapId      n.a.
     2017-11-10 17:06:22   LastSnapTime    n.a.
     2017-11-10 17:06:18   LastUpdateTime  10.11.2017 / 17:06:18
     2017-11-10 17:06:19   Patrols
     2017-11-10 16:52:27   PollState       Inactive
     2017-11-10 17:06:19   Presets         Abwesend,Anwesend,Standard,home
     2017-11-10 17:06:18   Record          Stop
     2017-11-10 17:06:19   SVSlicenseNumber 3
     2017-11-10 17:06:19   SVSuserPriv     Manager
     2017-11-10 17:06:19   SVSversion      8.1.1-5408
     2017-11-10 17:06:24   StmKey          xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
     2017-11-10 17:06:18   UsedSpaceMB     0
     2017-11-10 17:06:18   VideoFolder     /volume1/surveillance/Flur
     2017-11-10 17:06:50   state           disabled
Attributes:
   absolute   ST_IK_all
   absolute_map Availability
   httptimeout 60
   loginRetries 2
   rectime    0
   relative   ST_IK_all
   room       Sicherheit
   session    SurveillanceStation
   userattr   Kameras Kameras_map absolute absolute_map relative relative_map structexclude
   webCmd     on:off:snap:enable:disable


Egal weshalb das bei mir nicht mehr funktioniert, SSCAM ist ein klasse Modul!! Und ich wollte das nur mal "gemeldet" haben.
Wenn "working as intended" und ich keinen Anwenderfehler gemacht habe, "bastel" ich mir eben ein DOIF für den FHEM-Restart.  :)

In diesem Sinne,
Gruß
Alchemi

DS_Starter

Hi Alchemi,

bin zur Zeit im Urlaub und kümmere mich um die gemeldeten Probleme/Verbesserungen wenn ich wieder an Bord bin.
Eigentlich sollten die Presets genau wie die Patrols beim Start von fhem abgerufen werden. Ich schau mir das dann mal an.
Auch dervStaus der Cam (enabled/disabled) wird beim Start vom fhem ermittelt und wird den letzten Status der Cam enthalten. Das erfolgt etwas zeitverzögert ... etwa 5 bis 30 Sekunden nach fhem- Start.
Ich bin noch ein bisschen unterwegs, eventuell behelfe dir erstmal mit einem workaround. Das ermiteln der Presets wird dann wieder automatisiert eingebaut. Irgendwo muss mir da wohl ein Fehler unterlaufen sein.

Grüsse
Heiko
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Alchemi

Hallo Heiko,

kein Problem. Habe mir bis zu Deiner Anpassung ein workaround gebastelt. Falls noch ein Anfänger, wie ich, das gebrauchen kann:


define DI_Restart_IK DOIF ([global:?INITIALIZED]) (set [@"^IK_"] enable) (get [@"^IK_"] caminfoall) (set [@"^IK_"] disable)
attr DI_Restart_IK wait 3,20,5


Genieße Deinen Urlaub!
Alchemi