Impossible de communiquer avec le serveur express du démon hikvisionevent

Bonjour,

Je viens de réinstaller mon NUC sous debian 11 et de remettre une sauvegarde.

Je rencontre un soucis avec le plugin-hikvisionevent, le demon ne veut pas se lancer. Cela indique « Impossible de communiquer avec le serveur express du démon hikvisionevent ».
Avez-vous déjà rencontré cette situation ?

Je vous mets les logs en pièce jointe.
hikvisioneventd.txt (4,0 Ko)
hikvisionevent.txt (2,5 Ko)

Merci pour votre aide.

En fait, le demon se coupe lorsque dans la config de mon équipement je met http + le port 80

Quelqu’un a t’il déjà eu ce soucis ?

Bonsoir.

Ce soir j’ai refais une nouvelle tentative. Dans le log, mon NVR semble bien détecté, mais il semble se passer un truc que je ne comprends pas.

0000|[12-02-2024 21:51:55]INFO : Starting deamon /var/www/html/plugins/hikvisionevent/resources/hikvisioneventDeamon.js
0001|[12-02-2024 21:51:55]DEBUG : urlJeedom = http://192.168.1.200/plugins/hikvisionevent/core/api/jeeHikvisionevent.php
0002|[12-02-2024 21:51:55]DEBUG : apiKey = 0vu8NvbyPj1V7BmaXmB5LXXXXXXXXXXXXXXXXXXXXXXX
0003|[12-02-2024 21:51:55]DEBUG : serverPort = 40000
0004|[12-02-2024 21:51:55]DEBUG : logLevel = debug
0005|[12-02-2024 21:51:55]DEBUG : imagePath = /var/www/html/plugins/hikvisionevent/data/
0006|[12-02-2024 21:51:55]INFO : Express waiting for request on port 40000
0007|[12-02-2024 21:51:55]DEBUG : End of main process
0008|[12-02-2024 21:51:55]INFO : Deamon listening for commands !
0009|[12-02-2024 21:51:55]INFO : Recu de jeedom: Demande statut init serveur express
0010|[12-02-2024 21:51:55]INFO : Reçu une commande de jeedom :{"cmd":"startdevice","args":"[\"1177\",\"http\",\"192.168.1.150\",\"80\",\"LOGIN\",\"MOTDEPASSE\"]"}
0011|[12-02-2024 21:51:55]DEBUG : paramètres reçus : ["1177","http","192.168.1.150","80","LOGIN","MOTDEPASSE"]
0012|[12-02-2024 21:51:55]DEBUG : paramètres bruts reçus JSON : 1177,http,192.168.1.150,80,LOGIN,MOTDEPASSE
0013|[12-02-2024 21:51:55]DEBUG : Taille du tableau=0
0014|[12-02-2024 21:51:55]DEBUG : proto: http
0015|[12-02-2024 21:51:55]DEBUG : ip   : 192.168.1.150
0016|[12-02-2024 21:51:55]DEBUG : port : 80
0017|[12-02-2024 21:51:55]DEBUG : user : LOGIN
0018|[12-02-2024 21:51:55]DEBUG : objet recherché introuvable , index = -1 , on va le créer
0019|[12-02-2024 21:51:55]INFO : Device 1177 getDeviceInfo
0020|{"DeviceInfo":{"$":{"version":"1.0","xmlns":"http://www.std-cgi.com/ver20/XMLSchema"},"deviceName":"Network Video Recorder","deviceID":"48463437-3237-3331-3837-ecc89cb05fa5","model":"N48PAW","serialNumber":"N48PAW0820210125CCRRF47273187WCVU","macAddress":"ec:c8:9c:b0:5f:a5","firmwareVersion":"V4.30.010","firmwareReleasedDate":"build 200927","encoderVersion":"V5.0","encoderReleasedDate":"build 200706","deviceType":"NVR","telecontrolID":"255"}}
0021|node:events:492
0022|throw er; // Unhandled 'error' event
0023|^
0024|TypeError: Cannot convert object to primitive value
0025|at /var/www/html/plugins/hikvisionevent/resources/hikvision.js:905:35
0026|at Parser. (/var/www/html/plugins/hikvisionevent/resources/node_modules/xml2js/lib/parser.js:308:18)
0027|at Parser.emit (node:events:514:28)
0028|at SAXParser.onclosetag (/var/www/html/plugins/hikvisionevent/resources/node_modules/xml2js/lib/parser.js:266:26)
0029|at emit (/var/www/html/plugins/hikvisionevent/resources/node_modules/sax/lib/sax.js:625:35)
0030|at emitNode (/var/www/html/plugins/hikvisionevent/resources/node_modules/sax/lib/sax.js:630:5)
0031|at closeTag (/var/www/html/plugins/hikvisionevent/resources/node_modules/sax/lib/sax.js:890:7)
0032|at SAXParser.write (/var/www/html/plugins/hikvisionevent/resources/node_modules/sax/lib/sax.js:1437:13)
0033|at exports.Parser.Parser.parseString (/var/www/html/plugins/hikvisionevent/resources/node_modules/xml2js/lib/parser.js:327:31)
0034|at Parser.parseString (/var/www/html/plugins/hikvisionevent/resources/node_modules/xml2js/lib/parser.js:5:59)
0035|Emitted 'error' event on Parser instance at:
0036|at exports.Parser.Parser.parseString (/var/www/html/plugins/hikvisionevent/resources/node_modules/xml2js/lib/parser.js:331:16)
0037|at Parser.parseString (/var/www/html/plugins/hikvisionevent/resources/node_modules/xml2js/lib/parser.js:5:59)
0038|at Request._callback (/var/www/html/plugins/hikvisionevent/resources/hikvision.js:885:12)
0039|at self.callback (/var/www/html/plugins/hikvisionevent/resources/node_modules/request/request.js:185:22)
0040|at Request.emit (node:events:514:28)
0041|at Request. (/var/www/html/plugins/hikvisionevent/resources/node_modules/request/request.js:1154:10)
0042|at Request.emit (node:events:514:28)
0043|at IncomingMessage. (/var/www/html/plugins/hikvisionevent/resources/node_modules/request/request.js:1076:12)
0044|at Object.onceWrapper (node:events:628:28)
0045|at IncomingMessage.emit (node:events:526:35)
0046|Node.js v18.17.1

Hello j’ai exactement le meme probleme. tu as fini par trouver ?

A noter que je suis en beta 4.4.2 (jeedom)
@loic69 une idée ?

J’avance peu a peu.
Visiblement la partie reseau entre debian 10 et 11 change un peu,
Ce n’est pas la faute de NodeJs car j’ai testé le downgrade par rapport a une install fonctionnelle que j’ai ici ( 18.17.1 )
D’ailleurs lorsque specifie le port ( 40 000) dans les reglages du Daemon, l’erreur n’est plus la meme :

hikvisionevent

[2024-03-26 18:47:37]DEBUG : Portail(1) : postSave(start)
[2024-03-26 18:47:37]INFO : [Camera][Portail] (1) Send startdevice cmd to deamon, Host : 192.168.1.10 Port 65009
[2024-03-26 18:47:38]INFO : Problème de communication avec le démon Express EXCEPTION => http://192.168.1.114:40000/cmd?cmd=startdevice&args=%5B%221%22%2C%22http%22%2C%22192.168.1.10%22%2C%2265009%22%2C%22jeedom%22%2C%22XXXPASS%2A%22%5D Exception : Exception: Echec de la requête HTTP : http://192.168.1.114:40000/cmd?cmd=startdevice&args=%5B%221%22%2C%22http%22%2C%22192.168.1.10%22%2C%2265009%22%2C%22jeedom%22%2C%22XXXPASS%2A%22%5D cURL error : Failed to connect to 192.168.1.114 port 40000: Connection refused in /var/www/html/core/com/http.com.php:133 Stack trace: #0 /var/www/html/plugins/hikvisionevent/core/class/hikvisionevent.class.php(578): com_http->exec() #1 /var/www/html/plugins/hikvisionevent/core/class/hikvisionevent.class.php(540): hikvisionevent::uExecute() #2 /var/www/html/plugins/hikvisionevent/core/class/hikvisionevent.class.php(310): hikvisionevent->expressStartDevice() #3 /var/www/html/plugins/hikvisionevent/core/class/hikvisionevent.class.php(378): hikvisionevent->startHikvisionDevice() #4 /var/www/html/core/class/DB.class.php(232): hikvisionevent->postSave() #5 /var/www/html/core/class/eqLogic.class.php(1022): DB::save() #6 /var/www/html/core/ajax/eqLogic.ajax.php(498): eqLogic->save() #7 {main}
[2024-03-26 18:47:38]ERROR : Problème de communication avec le démon Express
[2024-03-26 18:47:38]ERROR : [Camera][Portail] (1) Impossible de se connecter au périphérique hikvision (startHikvisionDevice)
[2024-03-26 18:47:38]DEBUG : Portail(1) : postSave(end)

hikvisioneventd

[26-03-2024 18:47:37]INFO : Reçu une commande de jeedom :{"cmd":"startdevice","args":"[\"1\",\"http\",\"192.168.1.10\",\"65009\",\"jeedom\",\"PASSXXX\"]"}
[26-03-2024 18:47:37]DEBUG : paramètres reçus : ["1","http","192.168.1.10","65009","jeedom","XXXPASSXXX"]
[26-03-2024 18:47:37]DEBUG : paramètres bruts reçus JSON : 1,http,192.168.1.10,65009,jeedom,XXXPASSXXX
[26-03-2024 18:47:37]DEBUG : Taille du tableau=0
[26-03-2024 18:47:37]DEBUG : proto: http
[26-03-2024 18:47:37]DEBUG : ip   : 192.168.1.10
[26-03-2024 18:47:37]DEBUG : port : 65009
[26-03-2024 18:47:37]DEBUG : user : jeedom
[26-03-2024 18:47:37]DEBUG : objet recherché introuvable , index = -1 , on va le créer
[26-03-2024 18:47:37]INFO : Device 1 getDeviceInfo
{"DeviceInfo":{"$":{"version":"2.0","xmlns":"http://www.hikvision.com/ver20/XMLSchema"},"deviceName":"Portail","deviceID":"93228000-3844-11b5-83f3-c0517e912b61","deviceDescription":"IPCamera","deviceLocation":"hangzhou","systemContact":"Hikvision.China","model":"DS-2CD2146G2-I","serialNumber":"DS-2CD2146G2-I20201011AAWRE88667741","macAddress":"c0:51:7e:91:2b:61","firmwareVersion":"V5.5.801","firmwareReleasedDate":"build 211105","encoderVersion":"V7.3","encoderReleasedDate":"build 210903","bootVersion":"V1.3.4","bootReleasedDate":"100316","hardwareVersion":"0x0","deviceType":"IPCamera","telecontrolID":"9","supportBeep":"false","supportVideoLoss":"false","firmwareVersionInfo":"B-R-G3-0"}}
node:events:492
throw er; // Unhandled 'error' event
^
TypeError: Cannot convert object to primitive value
at /var/www/html/plugins/hikvisionevent/resources/hikvision.js:905:35
at Parser.<anonymous> (/var/www/html/plugins/hikvisionevent/resources/node_modules/xml2js/lib/parser.js:308:18)
at Parser.emit (node:events:514:28)
at SAXParser.onclosetag (/var/www/html/plugins/hikvisionevent/resources/node_modules/xml2js/lib/parser.js:266:26)
at emit (/var/www/html/plugins/hikvisionevent/resources/node_modules/sax/lib/sax.js:625:35)
at emitNode (/var/www/html/plugins/hikvisionevent/resources/node_modules/sax/lib/sax.js:630:5)
at closeTag (/var/www/html/plugins/hikvisionevent/resources/node_modules/sax/lib/sax.js:890:7)
at SAXParser.write (/var/www/html/plugins/hikvisionevent/resources/node_modules/sax/lib/sax.js:1437:13)
at exports.Parser.Parser.parseString (/var/www/html/plugins/hikvisionevent/resources/node_modules/xml2js/lib/parser.js:327:31)
at Parser.parseString (/var/www/html/plugins/hikvisionevent/resources/node_modules/xml2js/lib/parser.js:5:59)
Emitted 'error' event on Parser instance at:
at exports.Parser.Parser.parseString (/var/www/html/plugins/hikvisionevent/resources/node_modules/xml2js/lib/parser.js:331:16)
at Parser.parseString (/var/www/html/plugins/hikvisionevent/resources/node_modules/xml2js/lib/parser.js:5:59)
at Request._callback (/var/www/html/plugins/hikvisionevent/resources/hikvision.js:885:12)
at self.callback (/var/www/html/plugins/hikvisionevent/resources/node_modules/request/request.js:185:22)
at Request.emit (node:events:514:28)
at Request.<anonymous> (/var/www/html/plugins/hikvisionevent/resources/node_modules/request/request.js:1154:10)
at Request.emit (node:events:514:28)
at IncomingMessage.<anonymous> (/var/www/html/plugins/hikvisionevent/resources/node_modules/request/request.js:1076:12)
at Object.onceWrapper (node:events:628:28)
at IncomingMessage.emit (node:events:526:35)
Node.js v18.17.1

C’est donc forcement quelque chose qui a avoir avec Debian11 .
Car sur mon autre install fonctionnelle je suis en 4.4.2 /deb10 et tout marche

Salut @Adefx

De mon côté, je n’ai toujours pas trouvé la solution :sweat_smile:

Ok je suis a bout touchant…
Il semblerait que su mon setup de test, la version du plugin fonctionnel soit une beta datée de 2022… et ca fonctionne, je t’en dis plus d’ici une heure

Edit @dsigmoun

je viens de te MP pour tester la soluce

Ok soluce temporaire ( je confirme que sur une install fraiche le plugin ne fonctionne pas en l’etat ) je retirerais si le dev met a jour )


Fait une sauvegarde de ton jeedom

  • Arrête le demon du plugin hikvision event
  • Va dans l’editeur de fichier jeedom et copie cette version du plugin dans le dossier html/plugins/( fichier ci-joint ) après l’avoir renommé en .zip, puis dezippé
    hikvisionevent.TXT (5,5 Mo)

( le forum n’autorise pas les .zip )

cela va écraser les fichier existants.
ensuite reboot ton jeedom

La , normalement si tu démarres le demon, ça ne plante pas.

Oui, je suis d’accord, cela revient à potentiellement ne pas payer le plugin, mais à partir du moment ou la source officielle est impossible à lancer, je pense aux bons samaritains qui l’on payé.
D’ailleur en parlant de ca, je serais pour le passage du plugin en gratuit à partir du moment ou personne ne le maintient plus.

1 « J'aime »

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.