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

OliS.

FHEM in Debian VM auf DS720+, HMLAN und HMUARTLGW, RFXTRX, Conbee II, Homebridge, Alexa
Geräte: Homematic, Tradfri, Shelly, IT, ESA2000, VU+, Denon-AVR, Sonos, Fritz!Box, Harmony Hub, IP-Cams, Roborock, Automower

DS_Starter

Hab grad mal geschaut, die SVS Version 7.1-4110 ist auch für deine Syno verfügbar.

https://www.synology.com/de-de/releaseNote/SurveillanceStation?model=DS212%2B

Vielleicht liegts dann wohl wirklich an deinem fälligen DSM-Update dass die noch nicht angeboten wird. Lass dir Zeit Oli, ich bastele grade weiter an der Veränderung der Paßwortspeicherung und baue noch die optionale Wahlmöglichkeit DSM oder SVS-Login ein. Aber viel wird heute nicht mehr ....
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

marvin78

Bei Synology ist es häufig so, dass man das Update in vielen Schritten machen muss, weil ein Update auf dem anderen aufbaut. Schaut man also in seinem System nach, kann es durchaus sein, dass dort eine ältere Version angezeigt wird, als die aktuelle. Wenn man dieses Backup dann gemacht hat, steht an der Stelle dann das nächste usw.

OliS.

Zitat von: marvin78 am 20 Januar 2016, 08:52:49
Bei Synology ist es häufig so, dass man das Update in vielen Schritten machen muss, weil ein Update auf dem anderen aufbaut. Schaut man also in seinem System nach, kann es durchaus sein, dass dort eine ältere Version angezeigt wird, als die aktuelle. Wenn man dieses Backup dann gemacht hat, steht an der Stelle dann das nächste usw.

Ja, genau das war es.

Ich bin jetzt auch auf DSM 5.2-4644-1 und SS 7.1-4110. Und das Modul scheint auch bei mir problemlos zu funktionieren.

Oli
FHEM in Debian VM auf DS720+, HMLAN und HMUARTLGW, RFXTRX, Conbee II, Homebridge, Alexa
Geräte: Homematic, Tradfri, Shelly, IT, ESA2000, VU+, Denon-AVR, Sonos, Fritz!Box, Harmony Hub, IP-Cams, Roborock, Automower

forum-merlin

Hallo Leute,

ich habe eine 6.3er Surveillance Station und habe trotz aktuellem 49_SSCam Modul den Fehler: "Errorcode: 105 - Insufficient user privilege"
Ich habe auch geschaut was im Modul in Zeile 911 steht, bzw. in meiner Version ist das wahrscheinlich eher Zeile 928 und da ist die Variante mit der session=SurveillanceStation bereits eingetragen gewesen.
Zeile 928:

  $url = "http://$serveraddr:$serverport/webapi/$apiauthpath?api=$apiauth&version=$apiauthmaxver&method=Login&account=$username&passwd=$password&session=SurveillanceStation&format=\"sid\"";


Meine DSM Version = DSM 5.2-5592 Update 4
Meine Surveillance Version = 6.3-3380
Hier ein verbose 5 Log:

2016.01.24 13:17:47 4: CAM_4 - Disable Camera Cam4
2016.01.24 13:17:47 4: CAM_4 - --- Begin Function getapisites nonblocking ---
2016.01.24 13:17:47 5: CAM_4 - HTTP-Call will be done with httptimeout-Value: 4 s
2016.01.24 13:17:47 4: CAM_4 - URL-Call: http://synology: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
2016.01.24 13:17:47 4: CAM_4 - JSON returned: {
  'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
  'data' => {
              'SYNO.API.Auth' => {
                                   'maxVersion' => 4,
                                   'path' => 'auth.cgi',
                                   'minVersion' => 1
                                 },
              'SYNO.SurveillanceStation.ExternalRecording' => {
                                                                'maxVersion' => 2,
                                                                'path' => 'SurveillanceStation/extrecord.cgi',
                                                                'minVersion' => 1
                                                              },
              'SYNO.SurveillanceStation.PTZ' => {
                                                  'maxVersion' => 3,
                                                  'path' => 'SurveillanceStation/ptz.cgi',
                                                  'minVersion' => 1
                                                },
              'SYNO.SurveillanceStation.Camera' => {
                                                     'maxVersion' => 6,
                                                     'path' => 'SurveillanceStation/camera.cgi',
                                                     'minVersion' => 1
                                                   }
            }
}

2016.01.24 13:17:47 4: CAM_4 - Path of SYNO.API.Auth selected: auth.cgi
2016.01.24 13:17:47 4: CAM_4 - MaxVersion of SYNO.API.Auth selected: 4
2016.01.24 13:17:47 4: CAM_4 - Path of SYNO.SurveillanceStation.ExternalRecording selected: SurveillanceStation/extrecord.cgi
2016.01.24 13:17:47 4: CAM_4 - MaxVersion of SYNO.SurveillanceStation.ExternalRecording selected: 2
2016.01.24 13:17:47 4: CAM_4 - Path of SYNO.SurveillanceStation.Camera selected: SurveillanceStation/camera.cgi
2016.01.24 13:17:47 4: CAM_4 - MaxVersion of SYNO.SurveillanceStation.Camera: 6
2016.01.24 13:17:47 4: CAM_4 - Path of SYNO.SurveillanceStation.SnapShot undefined - Surveillance Station may be stopped
2016.01.24 13:17:47 4: CAM_4 - MaxVersion of SYNO.SurveillanceStation.SnapShot undefined - Surveillance Station may be stopped
2016.01.24 13:17:47 4: CAM_4 - Path of SYNO.SurveillanceStation.PTZ selected: SurveillanceStation/ptz.cgi
2016.01.24 13:17:47 4: CAM_4 - MaxVersion of SYNO.SurveillanceStation.PTZ: 3
2016.01.24 13:17:48 4: CAM_4 - --- End Function getapisites nonblocking ---
2016.01.24 13:17:48 4: CAM_4 - --- Begin Function serverlogin nonblocking ---
2016.01.24 13:17:48 5: CAM_4 - HTTP-Call will be done with httptimeout-Value: 4 s
2016.01.24 13:17:48 4: CAM_4 - URL-Call: http://synology:5000/webapi/auth.cgi?api=SYNO.API.Auth&version=4&method=Login&account=fhemuser&passwd=myPasswordIshidden!&session=SurveillanceStation&format="sid"
2016.01.24 13:17:48 4: CAM_4 - JSON returned: {
  'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
  'data' => {
              'sid' => '.NSZ.4I6cG0C6MYSERIALxxxx',
              'is_portal_port' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' )
            }
}

2016.01.24 13:17:48 4: CAM_4 - Login of User fhemuser successful - SID: .NSZ.4I6cG0C6MYSERIALxxxx
2016.01.24 13:17:48 4: CAM_4 - --- End Function serverlogin nonblocking ---
2016.01.24 13:17:48 4: CAM_4 - --- Begin Function getcamid nonblocking ---
2016.01.24 13:17:48 5: CAM_4 - HTTP-Call will be done with httptimeout-Value: 4 s
2016.01.24 13:17:48 4: CAM_4 - URL-Call: http://synology:5000/webapi/SurveillanceStation/camera.cgi?api=SYNO.SurveillanceStation.Camera&version=5&method=List&_sid=".NSZ.4I6cG0C6MYSERIALxxxx"
2016.01.24 13:17:48 1: CAM_4 - ERROR - ID of Camera Cam4 couldn't be selected. Errorcode: 105 - Insufficient user privilege
2016.01.24 13:17:48 4: CAM_4 - --- End Function getcamid nonblocking with error ---



Was kann ich denn machen um das zu lösen??

Gruß

Holger

FHEM 5.8 auf RasPi3; CULv3-868; RFXtrx433; HM-Sec-SC-2; HM-CFG-LAN; HM-LC-Bl1-FM; HM-CC-RT-DN; HM-ES-PMSw1-Pl; HM-LC-Sw4-DR; Hunter Ventile; 8ch Relais; ENIGMA2; ONKYO_AVR; SONOS; Harmony; telegram; HM-PB-6-WM55; GPIO; HM-Sen-MDIR-O; HM-SEC-SD; HM-LC-Dim1L-Pl-3;

OliS.

Zitat von: forum-merlin am 24 Januar 2016, 13:29:59
ich habe eine 6.3er Surveillance Station ...

Soweit ich weiß, hat Synology die API von Version 6.x auf 7.x der Surveillance Station geändert. Ich denke, dass Modul wird mit der alten Version nicht funktionieren. Aber Heiko kann da sicher mehr zu sagen.

Oli
FHEM in Debian VM auf DS720+, HMLAN und HMUARTLGW, RFXTRX, Conbee II, Homebridge, Alexa
Geräte: Homematic, Tradfri, Shelly, IT, ESA2000, VU+, Denon-AVR, Sonos, Fritz!Box, Harmony Hub, IP-Cams, Roborock, Automower

DS_Starter

#81
Hallo zusammen, hallo Holger,

wie Oli schon geschrieben hat, habe ich das Modul auf Funktionen der SVS Web API Version 2.0 aufgebaut und mit der Surveillance Station 7  getestet.
Ob die Funktionen mit SVS 6.x alle so laufen kann ich nicht garantieren. Ich würde also empfehlen wenn möglich auf SVS Version 7 zu gehen.

Allerdings, Holger, sieht dein Logauszug garnicht mal so schlecht aus. Es scheitert wohl erstmal nur an den Rechten des verwendeten Users. Hast du ihn im DSM angelegt und der Administrator-Gruppe zugewiesen ?

Wenn nicht, mach das mal und versuche es erneut.

Ansonsten mal bitte eine Stunde warten, ich schreibe nachher noch einen Beitrag und hänge eine neue SSCam-Version hier rein.  ;)

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

DS_Starter

Hallo miteinander,

mit der hier angehängten neuen Version werden Änderungen / Verbesserungen der Passwortsicherheit umgesetzt und auch die Möglichkeit des Sessionaufbaus flexibilisiert und den Möglichkeiten der SVS Web API angepasst.

Die Angabe des Users / Passworts im Define-String wird entfent und durch ein "set <name> credentials <user> <passwort>" ersetzt. Dieses Set-Kommando ist für jede Kamera nach dem Define einmalig zu setzen und bleibt auch nach reboot usw. erhalten. Es kann jederzeit neu gesetzt / überschrieben werden.

Daneben gibt es nun ein neues Attribut "session". Darüber kann ausgewählt werden, ob eine Session mit dem DSM oder der SVS aufgebaut werden soll. Per dafault (nach dem Define eines neuen Gerätes) erfolgt der Sessionaufbau weiterhin mit dem DSM (user mit Admin-Group Zugehörigkeit verwenden !).
Jeder Anwender hat aber nun die Möglichkeit die Nutzerrechte zu beschränken bzw. selektiv zu verfeinern. Lest dazu bitte die Erläuterungen zu der Credentials-Verwendung  unten.

Da ich den Define-String ohnehin anpassen mußte, habe ich ihn auch gleich für weitere Entwicklungen fit gemacht.
Der neue Define-String sieht nun so aus:

       define <name> SSCam <camname> <ServerAddr> <ServerPort>

Beispiel:

      define CamCP1 SSCAM Carport 192.168.2.20 5000

Das ist zwar jetzt mit etwas Aufwand verbunden, aber ich denke wir kriegen das hin.  ;)

Geht also bitte zur Aktualisierung folgendermaßen vor:

      1.   SSCam in FHEM-Verzeichnis einspielen
      2.   shutdown restart
      3.   die Define-Strings wie oben angegeben anpassen
      4.   set <name> credential <username> <passwort>  (für jede eurer definierten Kameras einmalig setzen)

Bei bestehenden Installationenn ist keine weitere Änderung nötig und wird/sollte  wie bisher funktionieren.
Wenn ihr die neuen Funktionen nutzen möchtet, könnt ihr dann weitere Anpassungen vornehmen.

Credentials

Nach dem Definieren des Gerätes müssen zuerst die Zugangsrechte gespeichert werden. Das geschieht mit dem Befehl:

    set <name> credentials <username> <password>

Der Nutzer kann in Abhängigkeit der beabsichtigten einzusetzenden Funktionen einen Nutzer im DSM bzw. in der Surveillance Station einrichten. Ist der DSM-Nutzer der Gruppe Administratoren zugeordnet, hat er auf alle Funktionen Zugriff. Ohne diese Gruppenzugehörigkeit können nur Funktionen mit niedrigeren Rechtebedarf ausgeführt werden. Die benötigten Mindestrechte der Funktionen sind in der Tabelle weiter unten aufgeführt. Alternativ zum DSM-Nutzer kann ein in der SVS angelegter Nutzer verwendet werden. Auch in diesem Fall hat ein Nutzer vom Typ Manager das Recht alle Funktionen auszuführen, wobei der Zugriff auf bestimmte Kameras/ im Privilegienprofil beschränkt werden kann (siehe Hilfefunktion in SVS).

Das Modul gestattet es über das Attribut "session" auszuwählen, ob das Login in das DSM oder die SVS erfolgen soll. Erfolgt das Login in das DSM, stehen neben der SVS Web-API auch darüber hinaus gehende API Zugriffe zur Verfügung die unter Umständen zur Verarbeitung benötigt werden.

Nach der Gerätedefinition ist die Grundeinstellung "Login in das DSM", d.h. es können Credentials mit Admin-Berechtigungen genutzt werden um zunächst alle Funktionen der Kameras testen zu können. Danach können die Credentials z.B. in Abhängigkeit der benötigten Funktionen auf eine SVS-Session mit entsprechend beschränkten Privilegienprofil umgestellt werden.

Die nachfolgende Aufstellung zeigt die Mindestanforderungen der jeweiligen Modulfunktionen an die Nutzerrechte.

* set ... on              session: ServeillanceStation - Betrachter mit erweiterten Privileg "manuelle Aufnahme"
* set ... off              session: ServeillanceStation - Betrachter mit erweiterten Privileg "manuelle Aufnahme"
* set ... snap               session: ServeillanceStation - Betrachter
* set ... disable         session: ServeillanceStation - Manager
* set ... enable          session: ServeillanceStation - Manager
* set ... credentials  -
* get ... caminfoall   session: ServeillanceStation - Betrachter

neues Attribut

* session - Auswahl der Login-Session. Nicht gesetzt oder "DSM" -> session wird mit DSM aufgebaut (Standard). "SurveillanceStation" -> Session-Aufbau erfolgt mit SVS

Wünsche euch viel Erfolg mit der Anpassung und Spaß bei der Verwendung.
Wenn sich die neue Version etabliert hat, kann ich mich wieder Funktionserweiterungen zuwenden.

Schönes WE und meldet euch bitte ob / wie ihr zurechtkommt !

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

forum-merlin

Hallo!!

Ich habe mal die neue Version des Moduls installiert und bin so vorgegangen wie Heiko es beschrieben hatte

Ich habe meinem User "fhemuser" in DSM in die AdminGroup getan, und auch in der Surveillance Station habe ich den User dann noch in die Manager Group getan.

Dann habe ich eine weitere CAM eingebunden. in FHEM heisst diese "GA.Cam2" und in der Surveillance Station einfach nur "Cam2".

Dann noch nach dem neuen Stil die credentials gesetzt und dann alles noch zur Sicherheit mit save gespeichert.
Dann noch verbose 5 gesetzt, und den disable ausgelöst

Leider bekomme ich immernoch den 105er Fehler.
Hier das Log:


2016.01.24 16:18:43 4: GA.Cam2 - Disable Camera Cam2
2016.01.24 16:18:43 4: GA.Cam2 - --- Begin Function getapisites nonblocking ---
2016.01.24 16:18:43 5: GA.Cam2 - HTTP-Call will be done with httptimeout-Value: 4 s
2016.01.24 16:18:44 4: GA.Cam2 - URL-Call: http://synology: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
2016.01.24 16:18:44 4: GA.Cam2 - JSON returned: {
  'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
  'data' => {
              'SYNO.API.Auth' => {
                                   'maxVersion' => 4,
                                   'path' => 'auth.cgi',
                                   'minVersion' => 1
                                 },
              'SYNO.SurveillanceStation.ExternalRecording' => {
                                                                'maxVersion' => 2,
                                                                'path' => 'SurveillanceStation/extrecord.cgi',
                                                                'minVersion' => 1
                                                              },
              'SYNO.SurveillanceStation.PTZ' => {
                                                  'maxVersion' => 3,
                                                  'path' => 'SurveillanceStation/ptz.cgi',
                                                  'minVersion' => 1
                                                },
              'SYNO.SurveillanceStation.Camera' => {
                                                     'maxVersion' => 6,
                                                     'path' => 'SurveillanceStation/camera.cgi',
                                                     'minVersion' => 1
                                                   }
            }
}

2016.01.24 16:18:44 4: GA.Cam2 - Path of SYNO.API.Auth selected: auth.cgi
2016.01.24 16:18:44 4: GA.Cam2 - MaxVersion of SYNO.API.Auth selected: 4
2016.01.24 16:18:44 4: GA.Cam2 - Path of SYNO.SurveillanceStation.ExternalRecording selected: SurveillanceStation/extrecord.cgi
2016.01.24 16:18:44 4: GA.Cam2 - MaxVersion of SYNO.SurveillanceStation.ExternalRecording selected: 2
2016.01.24 16:18:44 4: GA.Cam2 - Path of SYNO.SurveillanceStation.Camera selected: SurveillanceStation/camera.cgi
2016.01.24 16:18:44 4: GA.Cam2 - MaxVersion of SYNO.SurveillanceStation.Camera: 6
2016.01.24 16:18:44 4: GA.Cam2 - Path of SYNO.SurveillanceStation.SnapShot undefined - Surveillance Station may be stopped
2016.01.24 16:18:44 4: GA.Cam2 - MaxVersion of SYNO.SurveillanceStation.SnapShot undefined - Surveillance Station may be stopped
2016.01.24 16:18:44 4: GA.Cam2 - Path of SYNO.SurveillanceStation.PTZ selected: SurveillanceStation/ptz.cgi
2016.01.24 16:18:44 4: GA.Cam2 - MaxVersion of SYNO.SurveillanceStation.PTZ: 3
2016.01.24 16:18:44 4: GA.Cam2 - --- End Function getapisites nonblocking ---
2016.01.24 16:18:44 4: GA.Cam2 - --- Begin Function serverlogin nonblocking ---
2016.01.24 16:18:44 4: GA.Cam2 - Credentials read from RAM: fhemuser myPasswordIshidden!
2016.01.24 16:18:44 5: GA.Cam2 - HTTP-Call will be done with httptimeout-Value: 4 s
2016.01.24 16:18:44 4: GA.Cam2 - Credentials read from RAM: fhemuser myPasswordIshidden!
2016.01.24 16:18:44 4: GA.Cam2 - URL-Call: http://synology:5000/webapi/auth.cgi?api=SYNO.API.Auth&version=4&method=Login&account=fhemuser&passwd=myPasswordIshidden!&format="sid"
2016.01.24 16:18:44 4: GA.Cam2 - JSON returned: {
  'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
  'data' => {
              'sid' => 'd66gC7AGqKsS6MYSERIALxxxx',
              'is_portal_port' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' )
            }
}

2016.01.24 16:18:44 4: GA.Cam2 - Login of User fhemuser successful - SID: d66gC7AGqKsS6MYSERIALxxxx
2016.01.24 16:18:44 4: GA.Cam2 - --- End Function serverlogin nonblocking ---
2016.01.24 16:18:44 4: GA.Cam2 - --- Begin Function getcamid nonblocking ---
2016.01.24 16:18:44 5: GA.Cam2 - HTTP-Call will be done with httptimeout-Value: 4 s
2016.01.24 16:18:44 4: GA.Cam2 - URL-Call: http://synology:5000/webapi/SurveillanceStation/camera.cgi?api=SYNO.SurveillanceStation.Camera&version=5&method=List&_sid="d66gC7AGqKsS6MYSERIALxxxx"
2016.01.24 16:18:44 1: GA.Cam2 - ERROR - ID of Camera Cam2 couldn't be selected. Errorcode: 105 - Insufficient user privilege
2016.01.24 16:18:44 4: GA.Cam2 - --- End Function getcamid nonblocking with error ---




Es wäre echt genial wenn das gehen würde mit meiner 6er, denn ich kann nicht upgraden auf die 7er.

Ich weiss nicht in wie weit das hilfreich ist, oder erlaubt ist, einen Link zu Posten aber hier habe ich noch etwas was vielleicht hilft eine Version zu bauen wo man zwischen SS6 und SS7 umschalten kann.
http://www.dbuschke.de/blog/synology-surveillance-station-kamera-ueber-http-deaktivieren/

Vielleich kann man das im Modul umschaltbar machen? Also per attribut oder so??
Ich kenn mich da nicht so aus, aber ich könnte mir sowas vorstellen wie LOREDO es beim Onkyo Modul gemacht hat, wo er pre2013 eingebaut hat wo es darum geht dass es quasi einmal AV Verstärker gibt die VOR 2013 entwickelt wurde und welche die danach entwicklet wurden. So wie ich das damals verstanden hatte ging es dabei auch genau darum dass man verschiedene "Befehlssätze" damit ansteuert.

Danke

Holger
FHEM 5.8 auf RasPi3; CULv3-868; RFXtrx433; HM-Sec-SC-2; HM-CFG-LAN; HM-LC-Bl1-FM; HM-CC-RT-DN; HM-ES-PMSw1-Pl; HM-LC-Sw4-DR; Hunter Ventile; 8ch Relais; ENIGMA2; ONKYO_AVR; SONOS; Harmony; telegram; HM-PB-6-WM55; GPIO; HM-Sen-MDIR-O; HM-SEC-SD; HM-LC-Dim1L-Pl-3;

DS_Starter

#84
Hi Holger,

ich will nicht sagen man könnte das Modul nicht anpassbar machen. Allerdings würde es mich überfordern für jede erdenkliche SVS-Version Testscenarien vorzuhalten an denen ich die Entwicklungen austesten könnte. Das kann ich leider als Einzelperson nicht erbringen.
Vielleicht kann hier jemand unterstützen um meine Entwicklungen auf die SVS 6.x zu portieren.

Aber laut deinem Log kann es eigentlich momentan nur an den Userrechten liegen. Der darf keinen List aller Kameras durchführen.

Hast du in der neuen SSCam-Version mal das Attribut "session" = SurveillanceStation" gesetzt nachdem du den User in der SVS angelegt hast und ihm Managerrechte zugewiesen hast ?

Edit: Nachdem ich dein Log noch einmal genauer angeschaut und die HTTP-Calls mit den 6.x Aufrufen aus dem angegeben Link verglichen habe sollte die Kompatibilität sogar passen da ich die API-Pfade vorher dynamisch ermittle. Insofern dürfte SSCam m.M. nach mit SVS 6.x sogar funktionieren.

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

forum-merlin

#85
Hallo Heiko,

ich glaube inzwischen auch, dass es noch an einer anderen Stelle hakt.
Denn ich habe mal in FHEM für diese GA.Cam2 die credentials auf den lokalen admin user des NAS umgesetzt, und es ging trotzdem nicht.
Ich habe weiterhin den 105er bekommen.

inzwischen habe ich mir auch mal den API Guide angeschaut, und versucht zu verstehen was da so alles gemacht wird.
Und ich kann auch einen Teil der URLs absetzen, aber eben nicht alles.
Teilweise bekomme ich da Ausgaben ala "success":false wo ich es nicht erwartet hätte...

Das einzige was ich nämlich unbedingt machen wollte war, anhand vom Alaramanlagenstatus und in Verbindung mit Presence die CAM deaktivieren, oder einfach nur die Bewegungserkennung deaktivieren oder umschalten auf die CAM anstatt sie Surveillance Station.
Unter dem Motto:
"Wenn Presence eq "present" and alarm.status eq "scharf.anwesend" then set CAM4.innen Bewegungserkennung to cam instead of SurveillanceStation"

EDIT:
Ach ja, und um Deine Frage zu beantworten...
Ich habe auch versucht mal die session auf SurveillanceStation umzustellen und auch wieder zur DSM.
Hat beides nicht geholfen.
FHEM 5.8 auf RasPi3; CULv3-868; RFXtrx433; HM-Sec-SC-2; HM-CFG-LAN; HM-LC-Bl1-FM; HM-CC-RT-DN; HM-ES-PMSw1-Pl; HM-LC-Sw4-DR; Hunter Ventile; 8ch Relais; ENIGMA2; ONKYO_AVR; SONOS; Harmony; telegram; HM-PB-6-WM55; GPIO; HM-Sen-MDIR-O; HM-SEC-SD; HM-LC-Dim1L-Pl-3;

DS_Starter

Hallo Holger,

vielleicht habe ich eine Idee. Ich mache mal eine kleine Änderung die ich dir nachher hier hinstelle.
Ist aber nur eine Vermutung, kann es wie gesagt nicht testen.

Bischen Geduld .....
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

Hallo Holger,

anbei eine Version extra für dich  ;).
Bitte nach download umbenennen.
Dann nochmal mit verbose=5 testen und posten wenn nötig.

ACHTUNG:  alle anderen Mitstreiter bitte die Version aus #82 downloaden und einbauen, NICHT diese hier !!!

viele 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

forum-merlin

Hallo Heiko!

Danke dass Du für mich eine Extrawurst machst!

Hier das verbose 5 Log mit session auf DSM und user = admin


2016.01.24 18:12:54 4: GA.Cam2 - Disable Camera Cam2
2016.01.24 18:12:54 4: GA.Cam2 - --- Begin Function getapisites nonblocking ---
2016.01.24 18:12:54 5: GA.Cam2 - HTTP-Call will be done with httptimeout-Value: 4 s
2016.01.24 18:12:54 4: GA.Cam2 - URL-Call: http://synology: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
2016.01.24 18:12:54 4: GA.Cam2 - JSON returned: {
  'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
  'data' => {
              'SYNO.API.Auth' => {
                                   'maxVersion' => 4,
                                   'path' => 'auth.cgi',
                                   'minVersion' => 1
                                 },
              'SYNO.SurveillanceStation.ExternalRecording' => {
                                                                'maxVersion' => 2,
                                                                'path' => 'SurveillanceStation/extrecord.cgi',
                                                                'minVersion' => 1
                                                              },
              'SYNO.SurveillanceStation.PTZ' => {
                                                  'maxVersion' => 3,
                                                  'path' => 'SurveillanceStation/ptz.cgi',
                                                  'minVersion' => 1
                                                },
              'SYNO.SurveillanceStation.Camera' => {
                                                     'maxVersion' => 6,
                                                     'path' => 'SurveillanceStation/camera.cgi',
                                                     'minVersion' => 1
                                                   }
            }
}

2016.01.24 18:12:54 4: GA.Cam2 - Path of SYNO.API.Auth selected: auth.cgi
2016.01.24 18:12:54 4: GA.Cam2 - MaxVersion of SYNO.API.Auth selected: 4
2016.01.24 18:12:54 4: GA.Cam2 - Path of SYNO.SurveillanceStation.ExternalRecording selected: SurveillanceStation/extrecord.cgi
2016.01.24 18:12:54 4: GA.Cam2 - MaxVersion of SYNO.SurveillanceStation.ExternalRecording selected: 2
2016.01.24 18:12:54 4: GA.Cam2 - Path of SYNO.SurveillanceStation.Camera selected: SurveillanceStation/camera.cgi
2016.01.24 18:12:54 4: GA.Cam2 - MaxVersion of SYNO.SurveillanceStation.Camera: 6
2016.01.24 18:12:54 4: GA.Cam2 - Path of SYNO.SurveillanceStation.SnapShot undefined - Surveillance Station may be stopped
2016.01.24 18:12:54 4: GA.Cam2 - MaxVersion of SYNO.SurveillanceStation.SnapShot undefined - Surveillance Station may be stopped
2016.01.24 18:12:54 4: GA.Cam2 - Path of SYNO.SurveillanceStation.PTZ selected: SurveillanceStation/ptz.cgi
2016.01.24 18:12:54 4: GA.Cam2 - MaxVersion of SYNO.SurveillanceStation.PTZ: 3
2016.01.24 18:12:54 4: GA.Cam2 - --- End Function getapisites nonblocking ---
2016.01.24 18:12:54 4: GA.Cam2 - --- Begin Function serverlogin nonblocking ---
2016.01.24 18:12:54 4: GA.Cam2 - Credentials read from RAM: admin myPasswordIshidden!
2016.01.24 18:12:54 5: GA.Cam2 - HTTP-Call will be done with httptimeout-Value: 4 s
2016.01.24 18:12:55 4: GA.Cam2 - Credentials read from RAM: admin myPasswordIshidden!
2016.01.24 18:12:55 4: GA.Cam2 - URL-Call: http://synology:5000/webapi/auth.cgi?api=SYNO.API.Auth&version=4&method=Login&account=admin&passwd=myPasswordIshidden!&format="sid"
2016.01.24 18:12:55 4: GA.Cam2 - JSON returned: {
  'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
  'data' => {
              'sid' => 'gU8hWcKMkT5SIMYSERIALxxxx',
              'is_portal_port' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' )
            }
}

2016.01.24 18:12:55 4: GA.Cam2 - Login of User admin successful - SID: gU8hWcKMkT5SIMYSERIALxxxx
2016.01.24 18:12:55 4: GA.Cam2 - --- End Function serverlogin nonblocking ---
2016.01.24 18:12:55 4: GA.Cam2 - --- Begin Function getcamid nonblocking ---
2016.01.24 18:12:55 5: GA.Cam2 - HTTP-Call will be done with httptimeout-Value: 4 s
2016.01.24 18:12:55 4: GA.Cam2 - URL-Call: http://synology:5000/webapi/SurveillanceStation/camera.cgi?api=SYNO.SurveillanceStation.Camera&version=6&method=List&_sid=gU8hWcKMkT5SIMYSERIALxxxx
2016.01.24 18:12:55 5: GA.Cam2 - JSON returned: {
  'success' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
  'data' => {
              'cameras' => [
                             {
                               'status' => 2,
                               'name' => 'Cam1',
                               'host' => '192.168.111.241',
                               'ownerDsId' => 0,
                               'id' => 1,
                               'privilege' => 15,
                               'enabled' => $VAR1->{'success'},
                               'recStatus' => 0
                             },
                             {
                               'status' => 2,
                               'name' => 'Cam4',
                               'host' => '192.168.111.244',
                               'ownerDsId' => 0,
                               'id' => 2,
                               'privilege' => 15,
                               'enabled' => $VAR1->{'success'},
                               'recStatus' => 0
                             },
                             {
                               'status' => 0,
                               'name' => 'Cam2',
                               'host' => '192.168.111.242',
                               'ownerDsId' => 0,
                               'id' => 3,
                               'privilege' => 15,
                               'enabled' => $VAR1->{'success'},
                               'recStatus' => 0
                             },
                             {
                               'status' => 0,
                               'name' => 'Cam3',
                               'host' => '192.168.111.243',
                               'ownerDsId' => 0,
                               'id' => 4,
                               'privilege' => 15,
                               'enabled' => $VAR1->{'success'},
                               'recStatus' => 0
                             }
                           ],
              'total' => 4,
              'offset' => 0
            }
}

2016.01.24 18:12:55 4: GA.Cam2 - Detection Camid successful - Cam2 ID: 3
2016.01.24 18:12:55 4: GA.Cam2 - --- End Function getcamid nonblocking ---
2016.01.24 18:12:55 4: GA.Cam2 - --- Begin Function cam: Disable nonblocking ---
2016.01.24 18:12:55 5: GA.Cam2 - HTTP-Call will be done with httptimeout-Value: 4 s
2016.01.24 18:12:55 4: GA.Cam2 - URL-Call: http://synology:5000/webapi/SurveillanceStation/camera.cgi?api=SYNO.SurveillanceStation.Camera&version=6&method=Disable&cameraIds=3&_sid="gU8hWcKMkT5SIMYSERIALxxxx"
2016.01.24 18:12:55 1: GA.Cam2 - ERROR - Operation Disable of Camera Cam2 was not successful. Errorcode: 105 - Insufficient user privilege
2016.01.24 18:12:55 4: GA.Cam2 - --- End Function cam: Disable nonblocking with error ---



gruß

Holger
FHEM 5.8 auf RasPi3; CULv3-868; RFXtrx433; HM-Sec-SC-2; HM-CFG-LAN; HM-LC-Bl1-FM; HM-CC-RT-DN; HM-ES-PMSw1-Pl; HM-LC-Sw4-DR; Hunter Ventile; 8ch Relais; ENIGMA2; ONKYO_AVR; SONOS; Harmony; telegram; HM-PB-6-WM55; GPIO; HM-Sen-MDIR-O; HM-SEC-SD; HM-LC-Dim1L-Pl-3;

DS_Starter

Hi Holger,

keine Ursache. Das sieht schon garnicht schlecht aus. Wenn du das Log anschaust, siehst du dass das Listing der Cams nun schon funktioniert:

URL-Call: http://synology:5000/webapi/SurveillanceStation/camera.cgi?api=SYNO.SurveillanceStation.Camera&version=6&method=List&_sid=gU8hWcKMkT5SIMYSERIALxxxx
............


Anbei nochmal eine Änderung.  Schauen wir mal wie es damit aussieht ....

Gruß
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