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

eki

Schnappschüsse in der Syno DS Cam App und in der Surveillance Station funktionieren problemlos. Das Erwähnte Problem mit der Bewegungserkennung ist natürlich ein Synology Thema.

hauwech

Hallo zusammen,

mir ist gestern aufgefallen, daß meine Syno Cams in fhem nicht mehr funktionieren. Im Log habe ich Einträge:
Login of User <user> unsuccessful. Code: 102 - API does not exist - try againDer erste Eintrag ist vom 28.10.24, offenbar direkt nach einem fhem update. Ich hab's aber jetzt erst gemerkt.
Ich habe eben mal testweise auf der der Syno SS einen neuen user angelegt, der kriegt aber den gleichen Fehler.
Hat sich bei SSCAM auf fhem Seite was an der Authentifizierung geändert?

Gruß Roland
Fhem auf Intel NUC11TNKi5+M2 NVMe+32GB RAM mit Ubuntu 22.04 LTS

DS_Starter

@Kai-Alfonso

ZitatMuss man Sonderzeichen im Passwort escapen?

Durchaus möglich. Ich verwende die Bibliothek Net::SMTP.
Informationen dazu sind leider nicht beschrieben.
Du könnest ein "?" z.B. durch "\?" versuchen zu escapen.

LG
Proxmox+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

Kai-Alfonso

Zitat von: DS_Starter am 25 November 2024, 16:14:00@Kai-Alfonso

ZitatMuss man Sonderzeichen im Passwort escapen?

Durchaus möglich. Ich verwende die Bibliothek Net::SMTP.
Informationen dazu sind leider nicht beschrieben.
Du könnest ein "?" z.B. durch "\?" versuchen zu escapen.

LG

Also, mein Passwort hat ein , und ein % als Sonderzeichen. Ein escapen von beiden oder jeweils einem Sonderzeichen bringt leider nix.
Raspi2|nanoCul433|nanoCul868|CCU2
Energie-USBZähler|homebrew HM Devices
DBLog|DBRep|Homematic|Baumarktsteckdosen
Hue|Webcams mit DS-Station (Synology)|Bewegungsmelder|Rollladen|Schalter (IT|HM)

DS_Starter

Gespeichert ist es aber richtig? (get ... storedCredentials)
Proxmox+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

Verzichte besser auf Sonderzeichen % @ $ was in Perl Variablenbezeichner sind.
Möglicherweise stört die Bibliothek sich daran.

LG
Proxmox+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

@Roland

ZitatHat sich bei SSCAM auf fhem Seite was an der Authentifizierung geändert?
Nicht direkt. Eine Änderung ergibt sich evtl. bei einem Update der SVS auf der Syno auf Version 9.2.1

Welche Syno DSM / SVS Version nutzt du?
Proxmox+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

hauwech

Zitat von: DS_Starter am 25 November 2024, 17:27:22@Roland

ZitatHat sich bei SSCAM auf fhem Seite was an der Authentifizierung geändert?
Nicht direkt. Eine Änderung ergibt sich evtl. bei einem Update der SVS auf der Syno auf Version 9.2.1

Welche Syno DSM / SVS Version nutzt du?
- DSM 6.2.4.25556 Update 7
- SVS 9.2.0-9289

Gruß Roland
Fhem auf Intel NUC11TNKi5+M2 NVMe+32GB RAM mit Ubuntu 22.04 LTS

DS_Starter

Die SVS 9.2.0 habe ich auch, allerdings auf DSM 7. Sollte aber egeal sein.

Stell mal verbose 4 im Device ein und führe ein "get .. scanVirgin" aus.

Im Log findest du dann etwa folgendes:

...
2024.11.25 17:40:56.812 4: CamHE1 - ------- Start of auto adaption section -------
2024.11.25 17:40:56.814 4: CamHE1 - Currently used SVS version is: 920
2024.11.25 17:40:56.816 4: CamHE1 - AUTH adapted -> NAME: SYNO.API.Auth, VER: 6, PATH: webapi/entry.cgi
2024.11.25 17:40:56.818 4: CamHE1 - ------- End of auto adaption section -------
2024.11.25 17:40:56.819 4: CamHE1 - ------- Start of the user-defined section by attribute -------
2024.11.25 17:40:56.821 4: CamHE1 - ------- End of the user-defined section by attribute -------
2024.11.25 17:40:56.824 4: CamHE1 - API completed after retrieval and adaption:
{
  'REC' => {
             'PATH' => 'webapi/entry.cgi',
             'NAME' => 'SYNO.SurveillanceStation.Recording',
             'VER' => 6,
             'MOD' => 'no',
             'mk' => 1
           },
  'PARSET' => 1,
  'EXTEVT' => {
                'VER' => 1,
                'MOD' => 'no',
                'mk' => 1,
                'PATH' => 'webapi/entry.cgi',
                'NAME' => 'SYNO.SurveillanceStation.ExternalEvent'
              },
  'CAM' => {
             'VER' => 9,
             'MOD' => 'no',
             'mk' => 1,
             'PATH' => 'webapi/entry.cgi',
             'NAME' => 'SYNO.SurveillanceStation.Camera'
           },
  'CAMEVENT' => {
                  'mk' => 1,
                  'MOD' => 'no',
                  'VER' => 1,
                  'NAME' => 'SYNO.SurveillanceStation.Camera.Event',
                  'PATH' => 'webapi/entry.cgi'
                },
  'EXTREC' => {
                'mk' => 1,
                'MOD' => 'no',
                'VER' => 3,
                'NAME' => 'SYNO.SurveillanceStation.ExternalRecording',
                'PATH' => 'webapi/entry.cgi'
              },
  'SNAPSHOT' => {
                  'NAME' => 'SYNO.SurveillanceStation.SnapShot',
                  'PATH' => 'webapi/entry.cgi',
                  'MOD' => 'no',
                  'mk' => 1,
                  'VER' => 1
                },
  'LOG' => {
             'PATH' => 'webapi/entry.cgi',
             'NAME' => 'SYNO.SurveillanceStation.Log',
             'VER' => 3,
             'mk' => 1,
             'MOD' => 'no'
           },
  'AUTH' => {
              'MOD' => 'yes',
              'mk' => 0,
              'VER' => '6',
              'NAME' => 'SYNO.API.Auth',
              'PATH' => 'webapi/entry.cgi'
            },
  'SVSINFO' => {
                 'PATH' => 'webapi/entry.cgi',
                 'NAME' => 'SYNO.SurveillanceStation.Info',
                 'VER' => 8,
                 'MOD' => 'no',
                 'mk' => 1
               },
  'VIDEOSTM' => {
                  'VER' => 1,
                  'MOD' => 'no',
                  'mk' => 1,
                  'PATH' => 'webapi/entry.cgi',
                  'NAME' => 'SYNO.SurveillanceStation.VideoStreaming'
                },
  'EVENT' => {
               'mk' => 1,
               'MOD' => 'no',
               'VER' => 5,
               'NAME' => 'SYNO.SurveillanceStation.Event',
               'PATH' => 'webapi/entry.cgi'
             },
  'PTZ' => {
             'VER' => 6,
             'mk' => 1,
             'MOD' => 'no',
             'PATH' => 'webapi/entry.cgi',
             'NAME' => 'SYNO.SurveillanceStation.PTZ'
           },
  'STM' => {
             'VER' => 1,
             'mk' => 1,
             'MOD' => 'no',
             'PATH' => 'webapi/entry.cgi',
             'NAME' => 'SYNO.SurveillanceStation.Stream'
           },
  'HMODE' => {
               'NAME' => 'SYNO.SurveillanceStation.HomeMode',
               'PATH' => 'webapi/entry.cgi',
               'mk' => 0,
               'MOD' => 'no',
               'VER' => 1
             },
  'VIDEOSTMS' => {
                   'VER' => undef,
                   'MOD' => 'no',
                   'mk' => 0,
                   'PATH' => undef,
                   'NAME' => 'SYNO.SurveillanceStation.VideoStream'
                 },
  'PRESET' => {
                'MOD' => 'no',
                'mk' => 1,
                'VER' => 1,
                'NAME' => 'SYNO.SurveillanceStation.PTZ.Preset',
                'PATH' => 'webapi/entry.cgi'
              },
  'INFO' => {
              'mk' => 1,
              'MOD' => 'no',
              'VER' => 1,
              'NAME' => 'SYNO.API.Info',
              'PATH' => 'webapi/entry.cgi'
            },
  'AUDIOSTM' => {
                  'PATH' => undef,
                  'NAME' => 'SYNO.SurveillanceStation.AudioStream',
                  'VER' => undef,
                  'mk' => 0,
                  'MOD' => 'no'
                }
}

2024.11.25 17:40:56.843 4: CamHE1 - Informations related to Surveillance Station retrieved
...

Poste bitte die Ausgabe bei dir. Alternativ geht auch ein "get ... apiInfo" als Screenshot.
Proxmox+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

Morgen früh gibt es ein Update.
Nutzer mit SVS Version 9.2.1 können via attr customSVSversion = 9.2.0 die die letzte V der alten API ansprechen.
Das klappt natürlich nur wenn die alte API in der Diskstation noch aktiv ausgeliefert ist/wurde.

LG
Proxmox+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

hauwech

Hier die Ausgabe von get DS scanVirgin:
2024.11.26 10:12:46.767 4: DS - --- Start Synology logout ---
2024.11.26 10:12:46.768 4: DS - Credentials read from RAM: sscam ********
2024.11.26 10:12:46.768 2: DS - User "sscam" has no valid session, logout is cancelled
2024.11.26 10:12:46.770 4: DS - ####################################################
2024.11.26 10:12:46.770 4: DS - ###    start cam operation getsvsinfo
2024.11.26 10:12:46.771 4: DS - ####################################################
2024.11.26 10:12:46.772 4: DS - --- Start getApiSites ---
2024.11.26 10:12:46.772 4: DS - API imported:
$VAR1 = {
          'CAM' => {
                     'mk' => 1,
                     'NAME' => 'SYNO.SurveillanceStation.Camera'
                   },
          'INFO' => {
                      'PATH' => 'query.cgi',
                      'NAME' => 'SYNO.API.Info',
                      'VER' => 1,
                      'mk' => 1
                    },
          'AUTH' => {
                      'mk' => 1,
                      'NAME' => 'SYNO.API.Auth'
                    },
          'LOG' => {
                     'mk' => 1,
                     'NAME' => 'SYNO.SurveillanceStation.Log'
                   },
          'VIDEOSTMS' => {
                           'NAME' => 'SYNO.SurveillanceStation.VideoStream',
                           'mk' => 0
                         },
          'EXTREC' => {
                        'NAME' => 'SYNO.SurveillanceStation.ExternalRecording',
                        'mk' => 1
                      },
          'CAMEVENT' => {
                          'mk' => 1,
                          'NAME' => 'SYNO.SurveillanceStation.Camera.Event'
                        },
          'EXTEVT' => {
                        'mk' => 1,
                        'NAME' => 'SYNO.SurveillanceStation.ExternalEvent'
                      },
          'AUDIOSTM' => {
                          'mk' => 0,
                          'NAME' => 'SYNO.SurveillanceStation.AudioStream'
                        },
          'EVENT' => {
                       'mk' => 1,
                       'NAME' => 'SYNO.SurveillanceStation.Event'
                     },
          'PRESET' => {
                        'NAME' => 'SYNO.SurveillanceStation.PTZ.Preset',
                        'mk' => 1
                      },
          'SVSINFO' => {
                         'NAME' => 'SYNO.SurveillanceStation.Info',
                         'mk' => 1
                       },
          'STM' => {
                     'NAME' => 'SYNO.SurveillanceStation.Stream',
                     'mk' => 1
                   },
          'REC' => {
                     'NAME' => 'SYNO.SurveillanceStation.Recording',
                     'mk' => 1
                   },
          'SNAPSHOT' => {
                          'NAME' => 'SYNO.SurveillanceStation.SnapShot',
                          'mk' => 1
                        },
          'VIDEOSTM' => {
                          'mk' => 1,
                          'NAME' => 'SYNO.SurveillanceStation.VideoStreaming'
                        },
          'HMODE' => {
                       'mk' => 0,
                       'NAME' => 'SYNO.SurveillanceStation.HomeMode'
                     },
          'PTZ' => {
                     'NAME' => 'SYNO.SurveillanceStation.PTZ',
                     'mk' => 1
                   }
        };
 
... und ergänzend ein list vom DS Device:
Internals:
   CAMNAME    SVS
   COMPATIBILITY 9.2.0
   CREDENTIALS Set
   DEF        SVS 192.168.x.x 5000
   FUUID      5c4ad619-f33f-af18-8f80-6853039b4254dfa9
   FVERSION   49_SSCam.pm:v9.12.0-s29305/2024-10-27
   MODEL      SVS
   NAME       DS
   NR         914
   OPMODE     getsvslog
   PROTOCOL   http
   SERVERADDR 192.168.x.x
   SERVERPORT 5000
   STATE      login Error
   TYPE       SSCam
   eventCount 7
   HELPER:
     ACTIVE     off
     APIPRINTOUT 1
     CREDENTIALS xxxxxxxxxxxxxxx
     HLSSTREAM  inactive
     LOGINRETRIES 3
     OLDPTZHOME
     OLDVALPOLL 0
     OLDVALPOLLNOLOGGING 0
     PACKAGE    FHEM::SSCam
     RECTIME_DEF 15
     SNAPLIMIT  0
     TOTALCNT   0
     VERSION    9.12.0
     VERSION_API 1.4.0
     VERSION_CTZ unused
     VERSION_ErrCodes 1.3.8
     VERSION_SMUtils 1.27.3
     API:
       PARSET     1
       AUDIOSTM:
         MOD        no
         NAME       SYNO.SurveillanceStation.AudioStream
         PATH       
         VER       
         mk         0
       AUTH:
         MOD        yes
         NAME       SYNO.API.Auth
         PATH       webapi/entry.cgi
         VER        6
         mk         0
       CAM:
         MOD        no
         NAME       SYNO.SurveillanceStation.Camera
         PATH       webapi/entry.cgi
         VER        9
         mk         1
       CAMEVENT:
         MOD        no
         NAME       SYNO.SurveillanceStation.Camera.Event
         PATH       webapi/entry.cgi
         VER        1
         mk         1
       EVENT:
         MOD        no
         NAME       SYNO.SurveillanceStation.Event
         PATH       webapi/entry.cgi
         VER        5
         mk         1
       EXTEVT:
         MOD        no
         NAME       SYNO.SurveillanceStation.ExternalEvent
         PATH       webapi/entry.cgi
         VER        1
         mk         1
       EXTREC:
         MOD        no
         NAME       SYNO.SurveillanceStation.ExternalRecording
         PATH       webapi/entry.cgi
         VER        3
         mk         1
       HMODE:
         MOD        no
         NAME       SYNO.SurveillanceStation.HomeMode
         PATH       webapi/entry.cgi
         VER        1
         mk         0
       INFO:
         MOD        no
         NAME       SYNO.API.Info
         PATH       webapi/query.cgi
         VER        1
         mk         1
       LOG:
         MOD        no
         NAME       SYNO.SurveillanceStation.Log
         PATH       webapi/entry.cgi
         VER        3
         mk         1
       PRESET:
         MOD        no
         NAME       SYNO.SurveillanceStation.PTZ.Preset
         PATH       webapi/entry.cgi
         VER        1
         mk         1
       PTZ:
         MOD        no
         NAME       SYNO.SurveillanceStation.PTZ
         PATH       webapi/entry.cgi
         VER        6
         mk         1
       REC:
         MOD        no
         NAME       SYNO.SurveillanceStation.Recording
         PATH       webapi/entry.cgi
         VER        6
         mk         1
       SNAPSHOT:
         MOD        no
         NAME       SYNO.SurveillanceStation.SnapShot
         PATH       webapi/entry.cgi
         VER        1
         mk         1
       STM:
         MOD        no
         NAME       SYNO.SurveillanceStation.Stream
         PATH       webapi/entry.cgi
         VER        1
         mk         1
       SVSINFO:
         MOD        no
         NAME       SYNO.SurveillanceStation.Info
         PATH       webapi/entry.cgi
         VER        8
         mk         1
       VIDEOSTM:
         MOD        no
         NAME       SYNO.SurveillanceStation.VideoStreaming
         PATH       webapi/entry.cgi
         VER        1
         mk         1
       VIDEOSTMS:
         MOD        no
         NAME       SYNO.SurveillanceStation.VideoStream
         PATH       
         VER       
         mk         0
     CL:
     SVSVERSION:
   READINGS:
     2024-11-26 10:12:48   Error           API does not exist
     2024-11-26 10:12:48   Errorcode       102
     2024-11-26 10:12:46   PollState       Inactive
     2024-11-26 10:12:48   state           login Error
   hmccu:
Attributes:
   alias      DS
   event-on-change-reading .*
   httptimeout 5
   icon       it_nas
   room       Cams,Technikraum
   userattr   mqttAlias:textField-long mqttDefaults:textField-long mqttDisable:both,incoming,outgoing mqttForward:all,none mqttPublish:textField-long mqttSubscribe:textField-long
   verbose    4
   webCmd     homeMode
   webCmdLabel HomeMode

Gruß Roland
Fhem auf Intel NUC11TNKi5+M2 NVMe+32GB RAM mit Ubuntu 22.04 LTS

DS_Starter

Hallo Roland,

das sieht eigentlich gut aus, kann kein Problem erkennen.

Führe im Broswer bitte aus:

http://<Synoadresse>:<SynoPort>/webapi/query.cgi?api=SYNO.API.Info&method=Query&version=1&query=ALL

Es kommt ein JSON zurück mit einer Menge Daten. Ziemlich weit oben muß es einen Eintrag "SYNO.API.Auth" geben.
Den bitte aufklappen und Screenshot posten wie im angehängten Beispiel.

LG,
Heiko
Proxmox+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

hauwech

Mein Browser erkennt das nicht als json, da kommt nur plain text. Ich hab mal die erste Zeile rauskopiert:
{"data":{"SYNO.AME.Pack":{"maxVersion":1,"minVersion":1,"path":"entry.cgi","requestFormat":"JSON"},"SYNO.API.Auth":{"maxVersion":6,"minVersion":1,"path":"auth.cgi"},"SYNO.API.Auth.Key":{"maxVersion":7,"minVersion":7,"path":"entry.cgi","requestFormat":"JSON"},"SYNO.API.Encryption":
Gruß Roland
Fhem auf Intel NUC11TNKi5+M2 NVMe+32GB RAM mit Ubuntu 22.04 LTS

DS_Starter

Danke, jetzt ist das Problem zu erkennen.

Bei mir:  path   "entry.cgi"
Bei dir:  path "auth.cgi"

für die SYNO.API.Auth.

Dann gibt es also Diskstation und/oder DSM Version abhängig Unterschiede diesbezüglich.
Setze mich dran und melde mich wieder.

LG
Proxmox+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

hauwech

Hallo Heiko,

vielen Dank erstmal. Ich hoffe, ich habe Dir Deinen Urlaub nicht versaut :(

Gruß Roland
Fhem auf Intel NUC11TNKi5+M2 NVMe+32GB RAM mit Ubuntu 22.04 LTS