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

Fhemeinsteiger

Hallo in die Runde,
Mein System ist Aktuell -FHEM sowie SurveillanceStation(7.2.4-4683)
SSCam habe ich eingebunden. Alle Kameras werden erkannt.
Bei allen Kameras kann die Aufnahme angestoßen werden.
Allerdings gelingt mir nirgends der Schnappschuss.
In der Station wird kein Schnappschuss angestoßen, der Ordner @Snapshot bleibt leer.
hier der log mit verbose 4:
2016.10.26 11:48:25 4: CamCP - Take Snapshot of Camera Carport
2016.10.26 11:48:25 4: CamCP - --- Begin Function getapisites nonblocking ---
2016.10.26 11:48:25 4: CamCP - Call-Out now: http://192.168.1.*:5000/webapi/query.cgi?api=SYNO.API.Info&method=Query&version=1&query=SYNO.API.Auth,SYNO.SurveillanceStation.ExternalRecording,SYNO.SurveillanceStation.Camera,SYNO.SurveillanceStation.SnapShot,SYNO.SurveillanceStation.PTZ,SYNO.SurveillanceStation.Info,SYNO.SurveillanceStation.Camera.Event,SYNO.SurveillanceStation.Event,SYNO.SurveillanceStation.VideoStreaming,SYNO.SurveillanceStation.ExternalEvent,SYNO.SurveillanceStation.Streaming
2016.10.26 11:48:27 4: CamCP - JSON returned: $VAR1 = {
          'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
          'data' => {
                      'SYNO.SurveillanceStation.ExternalRecording' => {
                                                                        'requestFormat' => 'JSON',
                                                                        'maxVersion' => 3,
                                                                        'path' => 'entry.cgi',
                                                                        'minVersion' => 1
                                                                      },
                      'SYNO.SurveillanceStation.PTZ' => {
                                                          'requestFormat' => 'JSON',
                                                          'maxVersion' => 5,
                                                          'path' => 'entry.cgi',
                                                          'minVersion' => 1
                                                        },
                      'SYNO.SurveillanceStation.Camera.Event' => {
                                                                   'requestFormat' => 'JSON',
                                                                   'maxVersion' => 1,
                                                                   'path' => 'entry.cgi',
                                                                   'minVersion' => 1
                                                                 },
                      'SYNO.SurveillanceStation.VideoStreaming' => {
                                                                     'requestFormat' => 'JSON',
                                                                     'maxVersion' => 1,
                                                                     'path' => 'entry.cgi',
                                                                     'minVersion' => 1
                                                                   },
                      'SYNO.SurveillanceStation.Streaming' => {
                                                                'maxVersion' => 2,
                                                                'path' => 'SurveillanceStation/streaming.cgi',
                                                                'minVersion' => 1
                                                              },
                      'SYNO.SurveillanceStation.SnapShot' => {
                                                               'requestFormat' => 'JSON',
                                                               'maxVersion' => 1,
                                                               'path' => 'entry.cgi',
                                                               'minVersion' => 1
                                                             },
                      'SYNO.API.Auth' => {
                                           'maxVersion' => 6,
                                           'path' => 'auth.cgi',
                                           'minVersion' => 1
                                         },
                      'SYNO.SurveillanceStation.ExternalEvent' => {
                                                                    'requestFormat' => 'JSON',
                                                                    'maxVersion' => 1,
                                                                    'path' => 'entry.cgi',
                                                                    'minVersion' => 1
                                                                  },
                      'SYNO.SurveillanceStation.Camera' => {
                                                             'requestFormat' => 'JSON',
                                                             'maxVersion' => 8,
                                                             'path' => 'entry.cgi',
                                                             'minVersion' => 1
                                                           },
                      'SYNO.SurveillanceStation.Info' => {
                                                           'requestFormat' => 'JSON',
                                                           'maxVersion' => 6,
                                                           'path' => 'entry.cgi',
                                                           'minVersion' => 1
                                                         },
                      'SYNO.SurveillanceStation.Event' => {
                                                            'requestFormat' => 'JSON',
                                                            'maxVersion' => 5,
                                                            'path' => 'entry.cgi',
                                                            'minVersion' => 1
                                                          }
                    }
        };

2016.10.26 11:48:27 4: CamCP - Path of SYNO.API.Auth selected: auth.cgi
2016.10.26 11:48:27 4: CamCP - MaxVersion of SYNO.API.Auth selected: 6
2016.10.26 11:48:27 4: CamCP - Path of SYNO.SurveillanceStation.ExternalRecording selected: entry.cgi
2016.10.26 11:48:27 4: CamCP - MaxVersion of SYNO.SurveillanceStation.ExternalRecording selected: 3
2016.10.26 11:48:27 4: CamCP - Path of SYNO.SurveillanceStation.Camera selected: entry.cgi
2016.10.26 11:48:27 4: CamCP - MaxVersion of SYNO.SurveillanceStation.Camera: 8
2016.10.26 11:48:27 4: CamCP - Path of SYNO.SurveillanceStation.SnapShot selected: entry.cgi
2016.10.26 11:48:27 4: CamCP - MaxVersion of SYNO.SurveillanceStation.SnapShot: 1
2016.10.26 11:48:27 4: CamCP - Path of SYNO.SurveillanceStation.PTZ selected: entry.cgi
2016.10.26 11:48:27 4: CamCP - MaxVersion of SYNO.SurveillanceStation.PTZ: 5
2016.10.26 11:48:27 4: CamCP - Path of SYNO.SurveillanceStation.Info selected: entry.cgi
2016.10.26 11:48:27 4: CamCP - MaxVersion of SYNO.SurveillanceStation.Info: 6
2016.10.26 11:48:27 4: CamCP - Path of SYNO.SurveillanceStation.Camera.Event selected: entry.cgi
2016.10.26 11:48:27 4: CamCP - MaxVersion of SYNO.SurveillanceStation.Camera.Event: 1
2016.10.26 11:48:27 4: CamCP - Path of SYNO.SurveillanceStation.Event selected: entry.cgi
2016.10.26 11:48:27 4: CamCP - MaxVersion of SYNO.SurveillanceStation.Event: 5
2016.10.26 11:48:27 4: CamCP - Path of SYNO.SurveillanceStation.VideoStreaming selected: entry.cgi
2016.10.26 11:48:27 4: CamCP - MaxVersion of SYNO.SurveillanceStation.VideoStreaming: 1
2016.10.26 11:48:27 4: CamCP - Path of SYNO.SurveillanceStation.ExternalEvent selected: entry.cgi
2016.10.26 11:48:27 4: CamCP - MaxVersion of SYNO.SurveillanceStation.ExternalEvent selected: 1
2016.10.26 11:48:27 4: CamCP - Path of SYNO.SurveillanceStation.Streaming selected: SurveillanceStation/streaming.cgi
2016.10.26 11:48:27 4: CamCP - MaxVersion of SYNO.SurveillanceStation.Streaming selected: 2
2016.10.26 11:48:27 4: CamCP - saved SVS version is:
2016.10.26 11:48:27 4: CamCP - ------- Begin of simulation section -------
2016.10.26 11:48:27 4: CamCP - no simulations done !
2016.10.26 11:48:27 4: CamCP - ------- End of simulation section -------
2016.10.26 11:48:27 4: CamCP - ------- Begin of adaption section -------
2016.10.26 11:48:27 4: CamCP - no adaptions done !
2016.10.26 11:48:27 4: CamCP - ------- End of adaption section -------
2016.10.26 11:48:27 4: CamCP - --- End Function getapisites nonblocking ---
2016.10.26 11:48:27 4: CamCP - --- Begin Function serverlogin nonblocking ---
2016.10.26 11:48:27 4: CamCP - Credentials read from RAM:***z ********
2016.10.26 11:48:27 4: CamCP - Call-Out now: http://192.168.1.*:5000/webapi/auth.cgi?api=SYNO.API.Auth&version=6&method=Login&account=***z&passwd=*****&format="sid"
2016.10.26 11:48:31 4: CamCP - Credentials read from RAM: ***z ********
2016.10.26 11:48:31 4: CamCP - JSON decoded: $VAR1 = {
          'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
          'data' => {
                      'sid' => 'YysQPh1RsKoooCBKON03133',
                      'is_portal_port' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' )
                    }
        };

2016.10.26 11:48:31 4: CamCP - Login of User ***z successful - SID: YysQPh1RsKoooCBKON03133
2016.10.26 11:48:31 4: CamCP - --- End Function serverlogin nonblocking ---
2016.10.26 11:48:31 4: CamCP - --- Begin Function getcamid nonblocking ---
2016.10.26 11:48:31 4: CamCP - Call-Out now: http://192.168.1.*:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.Camera&version=8&method=List&basic=true&streamInfo=true&camStm=true&_sid="YysQPh1RsKoooCBKON03133"
2016.10.26 11:48:33 4: CamCP - Detection Camid successful - Carport ID: 3
2016.10.26 11:48:33 4: CamCP - --- End Function getcamid nonblocking ---
2016.10.26 11:48:33 4: CamCP - --- Begin Function Snap nonblocking ---
2016.10.26 11:48:33 4: CamCP - Call-Out now: http://192.168.1.*:5000/webapi/entry.cgi?api="SYNO.SurveillanceStation.SnapShot"&dsId="0"&method="TakeSnapshot"&version="1"&camId="3"&blSave="true"&_sid="YysQPh1RsKoooCBKON03133"
2016.10.26 11:48:37 1: CamCP - error while requesting http://192.168.1.*:5000/webapi/entry.cgi?api="SYNO.SurveillanceStation.SnapShot"&dsId="0"&method="TakeSnapshot"&version="1"&camId="3"&blSave="true"&_sid="YysQPh1RsKoooCBKON03133" - read from http://192.168.1.5:5000 timed out
2016.10.26 11:48:37 4: CamCP - --- End Function Snap nonblocking with error ---
2016.10.26 11:48:37 4: CamCP - --- Begin Function logout nonblocking ---
2016.10.26 11:48:39 4: CamCP - Credentials read from RAM: ***z ********
2016.10.26 11:48:39 4: CamCP - URL-Call: http://192.168.1.*:5000/webapi/auth.cgi?api=SYNO.API.Auth&version=6&method=Logout&_sid=YysQPh1RsKoooCBKON03133
2016.10.26 11:48:39 4: CamCP - JSON returned: $VAR1 = {
          'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' )
        };

2016.10.26 11:48:39 4: CamCP - Session of User ***z has ended - SID: YysQPh1RsKoooCBKON03133 has been deleted
2016.10.26 11:48:39 4: CamCP - --- End Function logout nonblocking ---


und in Fhem steht:read from http://192.168.1.*:5000 timed out
ich komme immo nicht weiter?

DS_Starter

#556
Solche Timeout Fehler kannst du versuchen mit dem Attribut "httptimeout" zu beseitigen.
Probiere es mal aus. Der Standard sind 4s. 
Stelle z.B httptimeout 15 ein für 15s.

Edit: die IP 192.168.1.* ist aber von dir editiert oder ?  .* darf hier nicht erscheinen sondern natürlich die komplette DS Adresse.
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

Fhemeinsteiger

Danke für die schnelle Antwort

ZitatEdit: die IP 192.168.1.* ist aber von dir editiert oder ?

ist von mir editiert- wie gesagt Aufnahme anstoßen funktioniert problemlos

ZitatProbiere es mal aus. Der Standard sind 4s. 
Stelle z.B httptimeout 15 ein für 15s.

als Error Meldung kommt jetzt "Execution failed" und Errorcode "400"

und auf der File Station unter surveillance/@Snapshot wird kein Bild erzeugt, wobei es aber mit der  SurveillanceStation funktioniert.



DS_Starter

#558
Ok, dann ahne ich woran es liegen könnte. Setze testweise simu_svsversion = 7.1-xxxx. Dein Reading SVSversion ist leer nach deinem Log zu urteilen. Hat dein verwendeter User auch genügend Rechte ?
Wenn du damit nicht weiter kommst mache bitte auch noch ein list <cam>.

Gruss
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

Fhemeinsteiger

Danke,
eine meiner Camlist:
Internals:
   CAMID      3
   CAMNAME    Carport
   CREDENTIALS Set
   DEF        Carport 192.168.1.*
   NAME       camcp
   NR         89
   OPMODE     Getptzlistpatrol
   SERVERADDR 192.168.1.*
   SERVERPORT 5000
   STATE      off
   TYPE       SSCam
   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 8
     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
     APIINFO    SYNO.API.Info
     APIPTZ     SYNO.SurveillanceStation.PTZ
     APIPTZMAXVER 4
     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
     CREDENTIALS WL[6hlp�OGo7TWK>
     OLDVALPOLLNOLOGGING 0
     RECTIME_DEF 15
     Allpatrols:
     Allpresets:
     Svsversion:
       BUILD      4683
       MAJOR      7
       MINOR      2
   Readings:
     2016-10-26 18:50:33   Availability    enabled
     2016-10-26 18:50:33   CamExposureControl Unknown
     2016-10-26 18:50:33   CamExposureMode Unknown
     2016-10-26 18:50:33   CamIP           192.168.1.**
     2016-10-26 18:50:33   CamLiveMode     Liveview from DS
     2016-10-26 18:50:33   CamModel        Generic_ONVIF
     2016-10-26 18:50:33   CamPort         1018
     2016-10-26 18:50:33   CamPreRecTime   5
     2016-10-26 18:50:33   CamPtSpeed      3
     2016-10-26 18:50:33   CamRecShare     surveillance
     2016-10-26 18:50:33   CamRecVolume    /volume2
     2016-10-26 18:50:33   CamVendor       ONVIF
     2016-10-26 18:50:33   CamVideoFlip    1
     2016-10-26 18:50:33   CamVideoMirror  1
     2016-10-26 18:50:33   CamblPresetSpeed 0
     2016-10-26 18:50:48   CapAudioOut     0
     2016-10-26 18:50:48   CapChangeSpeed  1
     2016-10-26 18:50:48   CapPTZAbs       0
     2016-10-26 18:50:48   CapPTZAutoFocus 0
     2016-10-26 18:50:48   CapPTZDirections 8
     2016-10-26 18:50:48   CapPTZFocus     false
     2016-10-26 18:50:48   CapPTZHome      0
     2016-10-26 18:50:48   CapPTZIris      false
     2016-10-26 18:50:48   CapPTZPan       support continuous operation
     2016-10-26 18:50:48   CapPTZTilt      support continuous operation
     2016-10-26 18:50:48   CapPTZZoom      support continuous operation
     2016-10-26 18:50:33   DeviceType      PTZ
     2016-10-26 18:51:12   Error           none
     2016-10-26 18:51:12   Errorcode       none
     2016-10-26 18:50:33   LastUpdateTime  26.10.2016 / 18:50:33
     2016-10-26 18:51:12   Patrols
     2016-10-26 18:49:55   PollState       Inactive
     2016-10-26 18:50:58   Presets
     2016-10-26 18:50:33   Record          Stop
     2016-10-26 18:50:18   SVSlicenseNumber 3
     2016-10-26 18:50:18   SVSuserPriv     Admin
     2016-10-26 18:50:18   SVSversion      7.2-4683
     2016-10-26 18:50:33   UsedSpaceMB     9.936
     2016-10-26 18:50:33   VideoFolder     /volume2/surveillance/Carport
     2016-10-26 18:50:33   state           off
Attributes:
   webCmd     on:off:snap:enable:disable


ich denke es passt so?
der Ordner surveillance hat die entspr. Rechte.
Muss noch mehr meine Rechte haben auf dem NAS?

DS_Starter

Also es sieht alles gut und richtig aus. Mit Userrechten meinte ich eher die Rechte des Users der die Session aufbaut. Aber in deinem Fall ist der User Mitglied der Admin-Gruppe wenn ich es richtig sehe und du verwendest auch die DSM-Session, das passt so.
Lege dir mal bitte einen User in der SVS an und gib ihm Admin-Rechte, vor allem auch Anlegen eines Snapshots wie in dem Anhang zu sehen. Dann setze für das FHEM-device das Attribut session=SurveillanceStation (die Credentials mit set ebenfalls richtig setzen).

Hilfreich wäre auch noch ein verbose 4 Log von der Snapshot-Funktion (jetzt nachdem timeout nicht mehr kommt).

VG
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

DS_Starter

Mir ist gerade noch eingefallen dass es mit INSTAR-Cams einen Bug in der API gibt (siehe #460).
Ob das evtl. bei dir auch vorliegt, kannst du mit der Handy App DSCAM testen. Wenn dir damit ein Schnappschuß auch nicht gelingt, liegt das gleiche Problem vor. Welche Cams hast du eigentlich ?  Du hast Generic eingebunden. Kannst du nicht den richtigen Typ angeben ? Vllt. klappt der Snap mit Generic über die API auch nicht.
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

Fhemeinsteiger

mmm, in der Handy App DSCAM funktioniert es auch nicht.
Steht da "Aktion nicht ausgeführt"
Ich habe trotzdem mal die log mit verbose 4 angehängt:

2016.10.27 11:50:10 4: camcp - Take Snapshot of Camera Carport
2016.10.27 11:50:10 4: camcp - --- Begin Function getapisites nonblocking ---
2016.10.27 11:50:10 4: camcp - Call-Out now: http://192.168.1.5:5000/webapi/query.cgi?api=SYNO.API.Info&method=Query&version=1&query=SYNO.API.Auth,SYNO.SurveillanceStation.ExternalRecording,SYNO.SurveillanceStation.Camera,SYNO.SurveillanceStation.SnapShot,SYNO.SurveillanceStation.PTZ,SYNO.SurveillanceStation.Info,SYNO.SurveillanceStation.Camera.Event,SYNO.SurveillanceStation.Event,SYNO.SurveillanceStation.VideoStreaming,SYNO.SurveillanceStation.ExternalEvent,SYNO.SurveillanceStation.Streaming
2016.10.27 11:50:12 4: camcp - JSON returned: $VAR1 = {
          'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
          'data' => {
                      'SYNO.SurveillanceStation.ExternalRecording' => {
                                                                        'requestFormat' => 'JSON',
                                                                        'maxVersion' => 3,
                                                                        'path' => 'entry.cgi',
                                                                        'minVersion' => 1
                                                                      },
                      'SYNO.SurveillanceStation.PTZ' => {
                                                          'requestFormat' => 'JSON',
                                                          'maxVersion' => 5,
                                                          'path' => 'entry.cgi',
                                                          'minVersion' => 1
                                                        },
                      'SYNO.SurveillanceStation.Camera.Event' => {
                                                                   'requestFormat' => 'JSON',
                                                                   'maxVersion' => 1,
                                                                   'path' => 'entry.cgi',
                                                                   'minVersion' => 1
                                                                 },
                      'SYNO.SurveillanceStation.VideoStreaming' => {
                                                                     'requestFormat' => 'JSON',
                                                                     'maxVersion' => 1,
                                                                     'path' => 'entry.cgi',
                                                                     'minVersion' => 1
                                                                   },
                      'SYNO.SurveillanceStation.Streaming' => {
                                                                'maxVersion' => 2,
                                                                'path' => 'SurveillanceStation/streaming.cgi',
                                                                'minVersion' => 1
                                                              },
                      'SYNO.SurveillanceStation.SnapShot' => {
                                                               'requestFormat' => 'JSON',
                                                               'maxVersion' => 1,
                                                               'path' => 'entry.cgi',
                                                               'minVersion' => 1
                                                             },
                      'SYNO.API.Auth' => {
                                           'maxVersion' => 6,
                                           'path' => 'auth.cgi',
                                           'minVersion' => 1
                                         },
                      'SYNO.SurveillanceStation.ExternalEvent' => {
                                                                    'requestFormat' => 'JSON',
                                                                    'maxVersion' => 1,
                                                                    'path' => 'entry.cgi',
                                                                    'minVersion' => 1
                                                                  },
                      'SYNO.SurveillanceStation.Camera' => {
                                                             'requestFormat' => 'JSON',
                                                             'maxVersion' => 8,
                                                             'path' => 'entry.cgi',
                                                             'minVersion' => 1
                                                           },
                      'SYNO.SurveillanceStation.Info' => {
                                                           'requestFormat' => 'JSON',
                                                           'maxVersion' => 6,
                                                           'path' => 'entry.cgi',
                                                           'minVersion' => 1
                                                         },
                      'SYNO.SurveillanceStation.Event' => {
                                                            'requestFormat' => 'JSON',
                                                            'maxVersion' => 5,
                                                            'path' => 'entry.cgi',
                                                            'minVersion' => 1
                                                          }
                    }
        };

2016.10.27 11:50:12 4: camcp - Path of SYNO.API.Auth selected: auth.cgi
2016.10.27 11:50:12 4: camcp - MaxVersion of SYNO.API.Auth selected: 6
2016.10.27 11:50:12 4: camcp - Path of SYNO.SurveillanceStation.ExternalRecording selected: entry.cgi
2016.10.27 11:50:12 4: camcp - MaxVersion of SYNO.SurveillanceStation.ExternalRecording selected: 3
2016.10.27 11:50:12 4: camcp - Path of SYNO.SurveillanceStation.Camera selected: entry.cgi
2016.10.27 11:50:12 4: camcp - MaxVersion of SYNO.SurveillanceStation.Camera: 8
2016.10.27 11:50:12 4: camcp - Path of SYNO.SurveillanceStation.SnapShot selected: entry.cgi
2016.10.27 11:50:12 4: camcp - MaxVersion of SYNO.SurveillanceStation.SnapShot: 1
2016.10.27 11:50:12 4: camcp - Path of SYNO.SurveillanceStation.PTZ selected: entry.cgi
2016.10.27 11:50:12 4: camcp - MaxVersion of SYNO.SurveillanceStation.PTZ: 5
2016.10.27 11:50:12 4: camcp - Path of SYNO.SurveillanceStation.Info selected: entry.cgi
2016.10.27 11:50:12 4: camcp - MaxVersion of SYNO.SurveillanceStation.Info: 6
2016.10.27 11:50:12 4: camcp - Path of SYNO.SurveillanceStation.Camera.Event selected: entry.cgi
2016.10.27 11:50:12 4: camcp - MaxVersion of SYNO.SurveillanceStation.Camera.Event: 1
2016.10.27 11:50:12 4: camcp - Path of SYNO.SurveillanceStation.Event selected: entry.cgi
2016.10.27 11:50:12 4: camcp - MaxVersion of SYNO.SurveillanceStation.Event: 5
2016.10.27 11:50:12 4: camcp - Path of SYNO.SurveillanceStation.VideoStreaming selected: entry.cgi
2016.10.27 11:50:12 4: camcp - MaxVersion of SYNO.SurveillanceStation.VideoStreaming: 1
2016.10.27 11:50:12 4: camcp - Path of SYNO.SurveillanceStation.ExternalEvent selected: entry.cgi
2016.10.27 11:50:12 4: camcp - MaxVersion of SYNO.SurveillanceStation.ExternalEvent selected: 1
2016.10.27 11:50:12 4: camcp - Path of SYNO.SurveillanceStation.Streaming selected: SurveillanceStation/streaming.cgi
2016.10.27 11:50:12 4: camcp - MaxVersion of SYNO.SurveillanceStation.Streaming selected: 2
2016.10.27 11:50:12 4: camcp - saved SVS version is:
2016.10.27 11:50:12 4: camcp - ------- Begin of simulation section -------
2016.10.27 11:50:12 4: camcp - no simulations done !
2016.10.27 11:50:12 4: camcp - ------- End of simulation section -------
2016.10.27 11:50:12 4: camcp - ------- Begin of adaption section -------
2016.10.27 11:50:12 4: camcp - no adaptions done !
2016.10.27 11:50:12 4: camcp - ------- End of adaption section -------
2016.10.27 11:50:12 4: camcp - --- End Function getapisites nonblocking ---
2016.10.27 11:50:12 4: camcp - --- Begin Function serverlogin nonblocking ---
2016.10.27 11:50:12 4: camcp - Credentials read from RAM: fhem ********
2016.10.27 11:50:12 4: camcp - Call-Out now: http://192.168.1.5:5000/webapi/auth.cgi?api=SYNO.API.Auth&version=6&method=Login&account=fhem&passwd=*****&session=SurveillanceStation&format="sid"
2016.10.27 11:50:15 4: camcp - Credentials read from RAM: fhem ********
2016.10.27 11:50:15 4: camcp - JSON decoded: $VAR1 = {
          'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
          'data' => {
                      'sid' => 'FqIA0QIphkgZsCBKON03133',
                      'is_portal_port' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' )
                    }
        };

2016.10.27 11:50:15 4: camcp - Login of User fhem successful - SID: FqIA0QIphkgZsCBKON03133
2016.10.27 11:50:15 4: camcp - --- End Function serverlogin nonblocking ---
2016.10.27 11:50:15 4: camcp - --- Begin Function getcamid nonblocking ---
2016.10.27 11:50:15 4: camcp - Call-Out now: http://192.168.1.5:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.Camera&version=8&method=List&basic=true&streamInfo=true&camStm=true&_sid="FqIA0QIphkgZsCBKON03133"
2016.10.27 11:50:17 4: camcp - Detection Camid successful - Carport ID: 3
2016.10.27 11:50:17 4: camcp - --- End Function getcamid nonblocking ---
2016.10.27 11:50:17 4: camcp - --- Begin Function Snap nonblocking ---
2016.10.27 11:50:17 4: camcp - Call-Out now: http://192.168.1.5:5000/webapi/entry.cgi?api="SYNO.SurveillanceStation.SnapShot"&dsId="0"&method="TakeSnapshot"&version="1"&camId="3"&blSave="true"&_sid="FqIA0QIphkgZsCBKON03133"
2016.10.27 11:50:22 4: camcp - JSON returned: $VAR1 = {
          'success' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' ),
          'error' => {
                       'errors' => {
                                     'param2' => '',
                                     'param1' => ''
                                   },
                       'code' => 400
                     }
        };

2016.10.27 11:50:22 1: camcp - ERROR - Operation Snap of Camera Carport was not successful. Errorcode: 400 - Execution failed
2016.10.27 11:50:22 4: camcp - --- End Function Snap nonblocking with error ---
2016.10.27 11:50:22 4: camcp - --- Begin Function logout nonblocking ---
2016.10.27 11:50:23 4: camcp - Credentials read from RAM: fhem ********
2016.10.27 11:50:23 4: camcp - URL-Call: http://192.168.1.5:5000/webapi/auth.cgi?api=SYNO.API.Auth&version=6&method=Logout&session=SurveillanceStation&_sid=FqIA0QIphkgZsCBKON03133
2016.10.27 11:50:23 4: camcp - JSON returned: $VAR1 = {
          'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' )
        };

2016.10.27 11:50:23 4: camcp - Session of User fhem has ended - SID: FqIA0QIphkgZsCBKON03133 has been deleted
2016.10.27 11:50:23 4: camcp - --- End Function logout nonblocking ---


Nun ja meine Kameras sind Kameras unbekannter Herkunft (China) ONVIF ist aber bei denen Standart und deshalb mit Generic eingebunden.
Was mich nur wundert, in der Live Ansicht der Surveillance Stadion funktioniert Schnappschuss!?
Deshalb hatte ich angenommen die Schnappschüsse werden in der SVN erzeugt.
Wenn es halt nicht geht muss ich mich von meiner Idee die Bilder über Telegram zu versenden verabschieden.Schade
Aber meine Hochachtung für dein Modul
Danke

oli82

Habe gerade mal mit meiner Generic ONVIF getestet und da werden Snapshots erzeugt.
Mein User Fhem hat Adminrechte für die SS

DS_Starter

#564
Hi, Oli schön dass es offensichtlich mit ONVIF nicht grundsätzlich zum Problem führt. Vermutlich hängt es vom Cam Typ ab. Da es mit DSCAM auch nicht funktioniert hat sieht es ganz nach dem mit Martin ergründeten Bug aus. Aber es besteht Hoffnung  ;)
Ich hatte den Bug an Syno gemeldet. Man hätte mir mitgeteilt ihn mit Version 8 (kommt jetzt in Kürze raus) zu fixen.
Ist natürlich schade dass du keine offiziell unterstützte Cam hast.
Aber ich würde vorschlagen du meldet das Problem an den Syno Support mit dem Hinweis dass der Snap mit DSCAM und ONVIF nicht klappt. Vllt. kommt noch ein Bugfix. Von FHEM wissen die natürlich nichts.

Was haltet ihr davon ?

Sonst kann ich auch meinen Kontakt bei Syno darauf ansprechen...

Edit: noch eine Kleinigkeit, die SVS wird intern die API nicht verwenden, deshalb klappt der Snap dort. Das Modul und offensichtlich auch DSCam nutzen die API. Als Workaround kannst du auch versuchen mit set ... extevent zu arbeiten. Schau dir mal die Erläuterungen dazu an. Probiert habe ich es zu diesem speziellen Einsatz noch nicht.
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

Motivierte linke Hände

Interessant, wie viele Probleme angeblich mit der schon länger "gleich" rauskommenden Version 8 gefixt sein sollen. Auch mir haben sie Fixes in Aussicht gestellt...

Ich bin gespannt - auch, ob dann SSCam noch so gut funktioniert wie aktuell!
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

Ja schauen wir mal ob auch nichts "verschlimmbessert" wird. Aber sollte es Probleme nach dem Update geben bemühe ich mich die dann zügig wieder auszuräumen. Brauche dann ggf. nur etwas Testunterstützung durch euch / die Community.
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

Fhemeinsteiger

Hallo und Danke,
ZitatAber ich würde vorschlagen du meldet das Problem an den Syno Support mit dem Hinweis dass der Snap mit DSCAM und ONVIF nicht klappt

werde ich genau so machen.
Je mehr Nutzer sich beim Support melden, desto besser.

fhemeinsteiger

dt2510

Die Integration meiner SVS hat schonmal reibungslos funktioniert. Jetzt versuche ich allerdings das Live-Bild einer Kamera in meiner Visualisierung (Tablet UI) darzustellen.
Das funktioniert auch wenn die URL zum Stream kopiere und einfach als <img> Tag in der html-Datei eintrage:

<img height="300" width="400" src=http://192.168.220.240:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.VideoStreaming&version=1&method=Stream&cameraId=1&format=mjpeg&_sid="o0zRMpSN2MQOM1650O6N731801" />

Mein Problem ist nur, daß die SID sich ja ändert und die URL irgendwann nicht mehr aktuell ist. Die URL selbst finde ich wenn ich das Device aufliste unter Helper/LINK:

Internals:
   CAMID      1
   CAMNAME    Haustuer
   CREDENTIALS Set
   DEF        Haustuer 192.168.220.240
   NAME       N5DL
   NR         118
   OPMODE     runliveview
   SERVERADDR 192.168.220.240
   SERVERPORT 5000
   STATE      off
   TYPE       SSCam
   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 8
     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
     APIINFO    SYNO.API.Info
     APIPTZ     SYNO.SurveillanceStation.PTZ
     APIPTZMAXVER 4
     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
     CREDENTIALS T[WzdY6yd6V~_[TwlksIiJL3N]B6QXK@
     LINK       http://192.168.220.240:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.VideoStreaming&version=1&method=Stream&cameraId=1&format=mjpeg&_sid="o0zRMpSN2MQOM1650O6N731801"
     OLDVALPOLLNOLOGGING 0
     OPENWINDOW 0
     RECTIME_DEF 15
     SID        o0zRMpSN2MQOM1650O6N731801
     SID_STRM   o0zRMpSN2MQOM1650O6N731801
     WLTYPE     image
     Allpatrols:
     Allpresets:
       home       -1
     Svsversion:
       BUILD      4683
       MAJOR      7
       MINOR      2
   Readings:
     2016-11-23 17:18:43   Availability    enabled
     2016-11-23 17:18:43   CamExposureControl Unknown
     2016-11-23 17:18:43   CamExposureMode Unknown
     2016-11-23 17:18:43   CamIP           192.168.220.200
     2016-11-23 17:18:43   CamLiveMode     Liveview from DS
     2016-11-23 17:18:43   CamModel        Generic_ONVIF
     2016-11-23 17:18:43   CamPort         80
     2016-11-23 17:18:43   CamPreRecTime   5
     2016-11-23 17:18:43   CamPtSpeed      3
     2016-11-23 17:18:43   CamRecShare     surveillance
     2016-11-23 17:18:43   CamRecVolume    /volume1
     2016-11-23 17:18:43   CamVendor       ONVIF
     2016-11-23 17:18:43   CamVideoFlip    true
     2016-11-23 17:18:43   CamVideoMirror  true
     2016-11-23 17:18:43   CamblPresetSpeed false
     2016-11-23 17:18:45   CapAudioOut     false
     2016-11-23 17:18:45   CapChangeSpeed  true
     2016-11-23 17:18:45   CapPTZAbs       false
     2016-11-23 17:18:45   CapPTZAutoFocus false
     2016-11-23 17:18:45   CapPTZDirections 8
     2016-11-23 17:18:45   CapPTZFocus     false
     2016-11-23 17:18:45   CapPTZHome      true
     2016-11-23 17:18:45   CapPTZIris      false
     2016-11-23 17:18:45   CapPTZPan       support continuous operation
     2016-11-23 17:18:45   CapPTZTilt      support continuous operation
     2016-11-23 17:18:45   CapPTZZoom      support continuous operation
     2016-11-23 17:18:43   DeviceType      PTZ
     2016-11-24 14:39:16   Error           none
     2016-11-24 14:39:16   Errorcode       none
     2016-11-23 17:18:43   LastUpdateTime  23.11.2016 / 17:18:43
     2016-11-23 17:18:49   Patrols
     2016-11-23 17:18:13   PollState       Inactive
     2016-11-23 17:18:47   Presets         home
     2016-11-23 17:18:43   Record          Stop
     2016-11-23 17:18:41   SVSlicenseNumber 2
     2016-11-23 17:18:41   SVSuserPriv     Admin
     2016-11-23 17:18:41   SVSversion      7.2-4683
     2016-11-23 17:18:43   UsedSpaceMB     9.997
     2016-11-23 17:18:43   VideoFolder     /volume1/surveillance/Haustuer
     2016-11-24 14:39:16   state           off
Attributes:
   group      Kamera
   room       Eingang
   webCmd     on:off:snap:enable:disable


Wenn ich diesen Wert als Reading auslesen könnte, wäre eine Integration in Tablet UI folgendermassen möglich:

<div data-type="image" data-device="N5DL" data-get="LINK" data-size=400 class="cell"></div>

Aktuell funktioniert das leider nicht. Gibt es noch eine andere Möglichkeit den Stream anzuzeigen (ich habe eine Jovision N5DL, die hat leider nur einen rtsp Stream)

DS_Starter

Hallo,

Setzte dir mal das Attr showStmInfoFull. Damit werden die Streamlink als Readings dargestellt. Unter anderem auch der rtsp Stream und die Streamkey-Url. Ein paar Seiten weiter vorn hatten wir uns mit diesem Thema beschäftigt.
Ich bin mir nicht sicher ob ich dazu schon etwas ins Wiki geschrieben habe.

Schau mal ob du damit weiterkommst. Bin grad unterwegs und kann leider nicht gut supporten. Vielleicht hilft noch ein anderer User.

Grüße
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