Plugin Reolink (en beta)

@BorisTS : Afin de pourvoir identifier la source du problème (je pense, première supposition, que c’est lié à la modif que j’ai fait parvenir à @Jezza34000 sur la correction des erreurs -16), actives le mode debug des journaux et fait nous suivre le log « Reolink » contenant cette erreur.

Merci

@mnpg @BorisTS Oui c’est la modification de l’envoi des commandes par bloc qui provoque cette erreur.
Cela ne gêne pas le fonctionnement.
Pas besoin des logs, merci
Je corrige ça dès que j’ai 2 mniutes…

1 « J'aime »

Je le savais (pas besoin de log) :wink: merci pour ce super boulot, je vois qu’il y a les retour des réglages maintenant. Au top ce plugin

@Jezza34000,
panni probleme… thanks

je te fais suivre le problème que j’ai depuis peu : le démon qui se mets en erreur et le redémarrage auto (activé) n’arrive pas à le relancer. seule une relance manuelle de ce dernier fonctionne. voila l’erreur:

NB: tu trouveras, en fin de log, la relance manuelle qui fonctionne (à partir de 15h34)

[2022-04-01 15:25:07][INFO] : Start demond
[2022-04-01 15:25:07][INFO] : Log level : debug
[2022-04-01 15:25:07][INFO] : Socket port : 44009
[2022-04-01 15:25:07][INFO] : Socket host : localhost
[2022-04-01 15:25:07][INFO] : PID file : /tmp/jeedom/reolink/deamon.pid
[2022-04-01 15:25:07][INFO] : Apikey : YbwbCweJ3qKWnPXaHNhwJJcY*****
[2022-04-01 15:25:07][INFO] : Device : auto
[2022-04-01 15:25:07][INFO] : Write creds file for camhook
Traceback (most recent call last):
File "/var/www/html/plugins/reolink/resources/demond/reolinkd.py", line 185, in <module>
with open('jeedomcreds', 'w') as f:
PermissionError: [Errno 13] Permission denied: 'jeedomcreds'
[2022-04-01 15:30:09][INFO] : Start demond
[2022-04-01 15:30:09][INFO] : Log level : debug
[2022-04-01 15:30:09][INFO] : Socket port : 44009
[2022-04-01 15:30:09][INFO] : Socket host : localhost
[2022-04-01 15:30:09][INFO] : PID file : /tmp/jeedom/reolink/deamon.pid
[2022-04-01 15:30:09][INFO] : Apikey : YbwbCweJ3qKWnPXaHNhwJJcY*****
[2022-04-01 15:30:09][INFO] : Device : auto
[2022-04-01 15:30:09][INFO] : Write creds file for camhook
Traceback (most recent call last):
File "/var/www/html/plugins/reolink/resources/demond/reolinkd.py", line 185, in <module>
with open('jeedomcreds', 'w') as f:
PermissionError: [Errno 13] Permission denied: 'jeedomcreds'
[2022-04-01 15:34:29][INFO] : Start demond
[2022-04-01 15:34:29][INFO] : Log level : debug
[2022-04-01 15:34:29][INFO] : Socket port : 44009
[2022-04-01 15:34:29][INFO] : Socket host : localhost
[2022-04-01 15:34:29][INFO] : PID file : /tmp/jeedom/reolink/deamon.pid
[2022-04-01 15:34:29][INFO] : Apikey : YbwbCweJ3qKWnPXaHNhwJJcY*****
[2022-04-01 15:34:29][INFO] : Device : auto
[2022-04-01 15:34:29][INFO] : Write creds file for camhook
[2022-04-01 15:34:29][DEBUG] : Writing PID 2226 to /tmp/jeedom/reolink/deamon.pid
[2022-04-01 15:34:29][INFO] : Starting webhook...
[2022-04-01 15:34:29][DEBUG] : Socket interface started
[2022-04-01 15:34:29][DEBUG] : LoopNetServer Thread started
[2022-04-01 15:34:29][DEBUG] : Listening on: [localhost:44009]
[2022-04-01 15:34:29][DEBUG] : Using selector: EpollSelector
[2022-04-01 15:34:30][DEBUG] : Init request module v2.21.0
INFO:     Started server process [2233]
[2022-04-01 15:34:30][INFO] : Started server process [2233]
INFO:     Waiting for application startup.
[2022-04-01 15:34:30][INFO] : Waiting for application startup.
INFO:     Application startup complete.
[2022-04-01 15:34:30][INFO] : Application startup complete.
INFO:     Uvicorn running on http://0.0.0.0:5555 (Press CTRL+C to quit)
[2022-04-01 15:34:30][INFO] : Uvicorn running on http://0.0.0.0:5555 (Press CTRL+C to quit)

Idem pour moi

INFO pour ceux qui possèdent une caméra avec Zoom :

Reolink ne nous aidant pas pour avoir de la cohérence dans le fonctionnement avec l’API,

Le paramétrage défini par défaut dans le plugin pour les valeurs max des commandes d’action de Zoom et de Focus est basé sur un modèle de caméra (ici la E1Zoom, zoom max : 32, focus max : 248).

Ces valeurs max ne sont pas identiques d’un modele de caméra à un autre.

Si vous souhaitez les ajuster pour correspondre à votre modèle, voici la commande curl qui vous permettra de récupérer cette information de valeur max (Zoom et Focus)

  • Sous Linux :
    curl -s -k -X POST -H "Content-Type : application/json" -d "[{\"cmd\":\"GetZoomFocus\",\"action\":1,\"param\":{\"channel\":#id#}}]" "https://#IP#/cgi-bin/api.cgi?user=#username#&password=#password#"
    Remplacer #IP#, #username# et #password# par vos propres valeurs; Pour la valeur #id# de l’argument channel, la mettre à 0 -si vous n’avez pas de NVR-

  • Sous Windows :
    curl.exe -s -k -X POST -H "Content-Type : application/json" -d "[{\"cmd\":\"GetZoomFocus\",\"action\":1,\"param\":{\"channel\":#id#}}]" "https://#IP#/cgi-bin/api.cgi?user=#username#&password=#password#"
    Remplacer #IP#, #username# et #password# par vos propres valeurs; Pour la valeur #id# de l’argument channel, la mettre à 0 -si vous n’avez pas de NVR-

Dans le résultat retourné par la commande, c’est dans la partie range que l’information se situe :

  • Pour le Zoom : range > ZoomFocus > zoom > pos > max
  • Pour le Focus : range > ZoomFocus > focus > pos > max

Exemple pour la E1-Outdoor (zoom max : 27, focus max : 156)

[
   {
      "cmd" : "GetZoomFocus",
      "code" : 0,
      "initial" : {
         "ZoomFocus" : {
            "channel" : 0,
            "focus" : {
               "pos" : 119
            },
            "zoom" : {
               "pos" : 27
            }
         }
      },
      "range" : {
         "ZoomFocus" : {
            "channel" : 0,
            "focus" : {
               "pos" : {
                  "max" : 156,
                  "min" : 0
               }
            },
            "zoom" : {
               "pos" : {
                  "max" : 27,
                  "min" : 0
               }
            }
         }
      },
      "value" : {
         "ZoomFocus" : {
            "channel" : 0,
            "focus" : {
               "pos" : 119
            },
            "zoom" : {
               "pos" : 27
            }
         }
      }
   }
]

Hello à tous,

Les erreurs :

Format du payload POST n'est pas un JSON valide, envoi commande échoué
PermissionError: [Errno 13] Permission denied: 'jeedomcreds'

Sont corrigées dans la dernière version présente sur le market.
Bon dimanche à tous

1 « J'aime »

:+1: :muscle:. Thanks @Jezza34000. A toi aussi, bon dimanche.

Salut,

Est-ce que tu as intégré dans la dernière version le hostname sur la fonction de notification ?

Merci

Oui tu peux tester et me dire si c’est ok pour toi? @f4ctz

Malheureusement non ça ne fonctionne pas.

J’ai fait la mise à jour, j’ai mis le hostname, sauvegardé, puis test de communication OK + recréation des commandes et redémarrage du démon. Les détections ne remontent pas.

Si je remet l’IP ensuite et simplement j’enregistre, les détections fonctionnent à nouveau.

Merci pour ton aide.

@f4ctz Peux tu mettre en débug et me donner les log du daemon?
Merci

Personne pour tester avec un NVR ?

Bonjour,
Je suppose que ce plugin fonctionne en version 4 de Jeedom vu que je ne le trouve pas sur mon market?
Les caméras Reolink ont l’air sympas, fonctionnent-elles avec le plugin camera en attendant de passer en version 4?

bonjour @AlainM,
le plugin est en version beta, il faut activer l’accès aux plugins beta depuis ton compte sur le market pour que tu puisses le voir dans jeedom.
Concernant les cameras Reolink, seules celles indiquées dans l’URL ci-dessous sont fonctionnelles avec le plugin Camera.

Edit: elles fonctionnent via le plugin camera sous jeedom 3.x et version 4.x
Cdt

Hello, avec la dernière màj, le plugin ne fonctionne plus, plus aucune commande ne passe. J’ai un « 500: internal server error » à chaque fois que j’essaie de « Récuperer les informations »

Et le Debug est vide :frowning:

Regarde le http.error stp
Et dit moi ce que tu as dans ce log?

Voilà ce que j’ai

[Tue Apr 05 19:43:17.753774 2022] [php7:error] [pid 1837] [client 192.168.11.232:54566] PHP Fatal error:  Uncaught Error: Call to a member function SendCMD() on null in /var/www/html/plugins/reolink/core/class/reolink.class.php:62
Stack trace:
#0 /var/www/html/plugins/reolink/core/ajax/reolink.ajax.php(66): reolink::GetCamNFO('1038')
#1 {main}
  thrown in /var/www/html/plugins/reolink/core/class/reolink.class.php on line 62, referer: http://192.168.11.16/index.php?v=d&m=reolink&p=reolink&id=1038

je confirme, le refresh mouline. Pas de maj

[2022-04-05 19:43:10][DEBUG] : Action demandé : refresh
[2022-04-05 19:43:10][DEBUG] : ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[2022-04-05 19:43:10][DEBUG] : ============================================================

Ok je vais regarder pour corriger ça tout a l’heure

1 « J'aime »