Aller au contenu
Lazer

Quick App - Synology Surveillance Station

Recommended Posts

Je viens de tester cela fonctionne super merci @lazer

 

J'ai juste une petite remarque a faire personnellement j'utilise le port 9900 plutôt que le port 5000 c'est plus logique cela ne change rien dans l'absolu

 

 

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai un petit soucis depuis que j'ai upgradé mon NAS sous DSM7 : le QA ne marche plus....

Voilà le debug :

[18.08.2021] [14:14:03] [TRACE] [QA_SURVSTATION_23]:

[18.08.2021] [14:14:03] [TRACE] [QA_SURVSTATION_23]: QuickApp Synology Surveillance Station - Initialization

[18.08.2021] [14:14:03] [TRACE] [QA_SURVSTATION_23]:

[18.08.2021] [14:14:03] [TRACE] [QA_SURVSTATION_23]: QuickApp Synology Surveillance Station - Initialization - Child device #24 - Camera #3 SS Garage

[18.08.2021] [14:14:03] [TRACE] [QA_SURVSTATION_23]: QuickApp Synology Surveillance Station - Initialization - Child device #25 - Camera #6 SS Entree

[18.08.2021] [14:14:03] [DEBUG] [QA_SURVSTATION_23]: Synology URL : http://192.168.1.199:5000

[18.08.2021] [14:14:03] [DEBUG] [QA_SURVSTATION_23]: Refresh interval : 3 seconds

[18.08.2021] [14:14:03] [TRACE] [QA_SURVSTATION_23]: Request new SID

[18.08.2021] [14:14:03] [ERROR] [QA_SURVSTATION_23]: QuickApp:getSID() : Error #103 Method does not exist

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai installé DSM version 7, même problème...

Après investigations, il semble que le renforcement de sécurité oblige à utiliser un API SYNO.API.Auth de version plus élevée.

Il suffit de changer la version dans la fonction

--
-- Generate new SID
--
function QuickApp:getSID(callback)
    if debug then
        self:debug(tools:args("QuickApp:getSID"))
    end
    self:trace("Request new SID")
    self:getAPI("/webapi/"..self.pathAuth.."?api=SYNO.API.Auth&method=login&version=7&account="..self.User.."&passwd="..self.Password.."&session=SurveillanceStation&format=sid", {
...
 
Cela demanderait bien une gestion dynamique intégrée au code suivant la version du DSM ;-)
 
 

Partager ce message


Lien à poster
Partager sur d’autres sites

En effet, problème connu, déjà remonté page précédente, et sur plusieurs topics, la nouvelle API de DSM 7 a cassé la compatibilité de tous les VD et QA du forum...

 

Merci pour l'astuce, mais on a une doc officielle à jour de l'API sous DSM v7 ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Ah oui, je vois, le truc tout con en fait....

merci :)

 

Partager ce message


Lien à poster
Partager sur d’autres sites

et sinon DSM7 vous êtes contents ? moi par encore fait la mise à jour parce le paquet Java8 n'est pas supporté...  donc j'attends :-)

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour,

Le 18/08/2021 à 18:02, chelson a dit :

Cela demanderait bien une gestion dynamique intégrée au code suivant la version du DSM ;-)

Si la version change il suffit de mettre la version en variable global au QA ! Comme cela, facile de changer ! :D

Et il se peut même que "version=7" fonctionne aussi en DSM6.2 ! :P

Modifié par Kana-chan

Partager ce message


Lien à poster
Partager sur d’autres sites

Je pensais plutôt à une détection automatique, c'est pour ça que je cherche la doc officielle.

Partager ce message


Lien à poster
Partager sur d’autres sites

Je pense que toute l'info est ici. 

https://kb.synology.com/en-uk/search?sources%5B%5D=user_guide&sources%5B%5D=white_paper&sources%5B%5D=developer_guide

 

Je pense que le mieux serait de prendre max version, de l'api Info... 

Partager ce message


Lien à poster
Partager sur d’autres sites

@Cardane tu as raison de te méfier avant de passer en V7. J'ai eu la mauvaise surprise de voir que HomeAssistant ne fonctionnait plus lorsque j'ai eu fini l'upgrade !
Heureusement, la team GitHub associée est top et ils ont déjà mis à disposition une version il y a qq jours, mais elle n'est pas compatible pour tous les NAS (une histoire d'accès root qui n'est pas dispo en fonction de l'architecture du NAS).

Envoyé de mon RMX1993 en utilisant Tapatalk

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

A priori la dernière version de la doc disponible semble être la v3.10 : https://global.download.synology.com/download/Document/Software/DeveloperGuide/Package/SurveillanceStation/All/enu/Surveillance_Station_Web_API.pdf

Mais je ne vois rien qui concerne ce paramètre version=7.


Du coup il ne faudrait pas casser la compatibilité avec les versions précédentes de DSM....

Bref, sans doc à jour, il faudra faire des tests et suppositions, ça ne me plait pas trop... j'étudierai ça plus tard.

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonsoir,

je viens de pousser le quick app en faisant la modif version 7

ca n'a pas fonctionné pour moi.

en  revanche avec version 6 ca passe.

 

A suivre..

 

--
-- Generate new SID
--
function QuickApp:getSID(callback)
    if debug then
        self:debug(tools:args("QuickApp:getSID"))
    end
    self:trace("Request new SID")
    self:getAPI("/webapi/"..self.pathAuth.."?api=SYNO.API.Auth&method=login&version=6&account="..self.User.."&passwd="..self.Password.."&session=SurveillanceStation&format=sid", {
...

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour, 

Est-ce que le quick app fonctionne pour quelqu'un ? j'ai remplacé la version Login Login&version=7 ou 3  et en mettant d'autres valeurs ce la ne change rien j'ai toujours ce message. bizarrement cela fonctionne correctement sur ma HC2

https://192.168.50.15:5555/webapi/query.cgi?api=SYNO.API.Info&method=Query&version=1&query=SYNO.API.Auth,SYNO.SurveillanceStation.Camera,SYNO.SurveillanceStation.ExternalRecording,SYNO.SurveillanceStation.PTZ : wrong version number

 

J'ai utilisé la version 5.01 du lua posté dans ce forum. 

Merci pour votre aide

réponse.JPG

Partager ce message


Lien à poster
Partager sur d’autres sites

Version 6 et reboot ton syno car logiquement au bout d'un nbr de tentatives il Blacklist temporairement.

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 14 minutes, jucom a dit :

Version 6 et reboot ton syno car logiquement au bout d'un nbr de tentatives il Blacklist temporairement.

J'y croyais pas trop et pourtant cela a bien fonctionné, dsl d'avoir douté :-D. Merci encore 

Modifié par synthoisfr

Partager ce message


Lien à poster
Partager sur d’autres sites

Hello,
manifestement le changement de méthode fonctionne sur le moment mais n'est pas persistant.

J'ai testé plusieurs version=6 puis 7 etc..
Au bout d'un certain temps on toujours le meme message d'erreur.

06.10.2021] [13:21:31] [ERROR] [QA_SURVSTATION_455]: QuickApp:getCameras() : Error #105 Insufficient user privilege

 

Il y a quelque chose qui varie avec le temps.

 

--
-- Generate new SID
--
function QuickApp:getSID(callback)
    if debug then
        self:debug(tools:args("QuickApp:getSID"))
    end
    self:trace("Request new SID")
    self:getAPI("/webapi/"..self.pathAuth.."?api=SYNO.API.Auth&method=login&version=6&account="..self.User.."&passwd="..self.Password.."&session=SurveillanceStation&format=sid", {

Partager ce message


Lien à poster
Partager sur d’autres sites

Il y a un autre phénomène qui existe depuis longtemps et qui est indépendant de ce QA.
Si le Synology redémarre, il faut relancer le QA, car il perd la connection et la clé.

Envoyé de mon RMX1993 en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

Mais ça n'avait pas été résolu ça ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Ben moi j'ai toujours le problème....

Envoyé de mon RMX1993 en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

Peut être que le problème est réapparu avec DSM v7 alors... car la modif que vous avez faite semble liée au comportement rapporté par @jucom hier : ça marche, puis ça ne marche plus... il doit y avoir une autre modif à faire dans l'URL utilisée pour la connexion.

Je ne peux pas tester, je n'ai pas de DSM v7 à la maison.

Partager ce message


Lien à poster
Partager sur d’autres sites

Il fait que je prenne le temps de faire quelque tests et capturer les log, en redémarrant mon syno pour voir exactement ce qui merde
Mais j'avais déjà ce problème en version 6.

Envoyé de mon RMX1993 en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

Sous DSM v6, je confirme que le bug était bien présent, je l'avais résolu dans la version 5.01 partagée page précédente, décembre dernier.

 

Ensuite je n'ai pas eu de retour (donc pas de nouvelle, bonne nouvelle :D )

Puis ça a enchainé sur les problèmes avec DSM v7, dès le mois de février.

 

Les logs ça serait bien en effet pour comprendre ce qui se passe même avec la modif spécifique pour DSM v7, mais bon là encore je ne pourrai pas tester/reproduire.

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

hello,
si j'ai bien suivi et selon les info que j'ai récupéré lors de la conf avec une précédente box ;

 

Pour que la box puisse se log sur le syno, il faut d'abord qu'elle demande et obtienne un SID.

Une fois obtenu, elle peut s'identifier.

Effectivement quand on reboot le syno,  le sid change donc il faut que la box le demande à nouveau pour pouvoir s'identifier.

 

Je vois dans les log que le SID est bien redemandé par la box mais elle n'arrive plus à se connecter pour une insuffisance de privilèges.

En changeant le fameux "version=x", sur le moment ca ne fonctionne pas car à force d'essayer le syno la blacklist.
A ce moment, quand je reboot le syno la liaison Box / Syno reprend.

 

Je ne sais pas si mon analyse sera utile mais je me demande si il n'y a pas une autre ligne dans le code ou "version=x" serait différent ce qui expliquerai qu'a un certain moment on se retrouve de nouveau avec un insuffisant privilège.

La je suis de nouveau en "version=6" sur la section ci-dessous et ça tient depuis hier.

 
-- Generate new SID
--
function QuickApp:getSID(callback)
    if debug then
        self:debug(tools:args("QuickApp:getSID"))
    end
    self:trace("Request new SID")
    self:getAPI("/webapi/"..self.pathAuth.."?api=SYNO.API.Auth&method=login&version=6&account="..self.User.."&passwd="..self.Password.."&session=SurveillanceStation&format=sid", {
 
  •  

 

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

×