Alarme SPC4300 Vanderbilt

Bonjour

Je cherche à connecter mon alarme SPC4300 à Jeedom.
En fouillant j’ai trouvé des posts qui évoquent la nécessité d’utiliser un boitier SPC Web Gateway.
J’accède aux paramétrages de mon alarme sur mon réseau local via le serveur web intégré à l’alarme car elle est équipé d’une interface IP.
L’accès est protégé par un login / mot de passe mais après c’est du web tout simplement.
Quelqu’un a-t-il déjà interfacé cette alarme avec jeedom ?

Bonne journée

Bonjour,

Oui.

Mais c’est relativement complexe, il faut passer par le logiciel SPC Web Gateway https://www.lundix.se/spc-web-gateway/ .Je le fait tourner sur une VM, et j’ai mis 1 an à le faire fonctionner correctement car je ne comprenais pas vraiment la documentation. Il faut aussi utiliser une passerelle pour lier SPC Web Gateway à jeedom (utilisation de variable pour état des zones, voir ce post dans community https://community.jeedom.com/t/alarme-vanderbilt-spc/28953/18 et ce lien https://github.com/geomium/node-spc-jeedom

Ci-dessous un aperçu de quelques variables pour retour d’état

Ci-dessous ce que cela donne.

image
Je peux mettre EN/HORS service chaque secteurs, zones et avoir le retour d’état de ces derniers et de chaque zone. Il faut utiliser le plugin SSH Commander pour envoyer des commandes depuis jeedom (mise EN/HORS, etc…).
Je gère aussi le contrôle d’accès avec ma SPC (5320), mais je n’ai pas pu l’interfacer car il me faut acheter une version plus récente du logiciel SPC Web Gateway. Mais comme j’utilise un IPX800 pour aussi faire le lien avec ma SPC, je contourne cette fonctionnalité.

Je te laisse découvrir tout cela, mais j’ai eu beaucoup de mal à mettre tout cela en œuvre. Mais je suis très content du résultat. Il faut être très patient.
image

Après tu n’as plus de limite dans les scénario, par exemple lorsque je déverrouille ma serrure Nuki, l’alarme SPC se désactive, etc…

Bonne découverte et bonne soirée.

J’ai oublier de préciser que la passerelle logiciel SPC Web Gateway (pas besoin du boitier) permet de faire le lien entre la SPC (via EDP) en décryptant les commandes que tu va adresser à la SPC depuis jeedom. Tu ne peux pas attaquer ta SPC simplement via des commandes URL car cela ne serait pas sécurisé…ce n’est pas une centrale que l’on retrouve dans les grandes surfaces de bricolage. Le niveau de sécurité n’est pas le même…et le prix non plus.

Ci-dessous un extrait de ma facture en janvier 2019 pour l’achat du logiciel.

Merci pour toutes ces infos. :grin:
Je vais essayer de creuser tout ça

Bonjour

Pourrais tu m’indiquer ou se procurrer le logiciel et comment l’acheter stp

Merci

Bonjour choupfamily63, je suis aussi du 63 :slightly_smiling_face:
j’essaie de faire la liaison entre mon spc_bridge et mon jeedom. j’utilise le code des liens que tu donne: utilisation nodeJS
par contre j’ai l’erreur

Connect Error: Error: socket hang up
/var/www/html/core/ajax/node-spc-jeedom/node-spc-jeedom.js:68
    data.area.forEach(function(area) {
              ^

TypeError: Cannot read properties of undefined (reading 'forEach')
    at handleSpcAreaData (/var/www/html/core/ajax/node-spc-jeedom/node-spc-jeedom.js:68:15)
    at IncomingMessage. (/var/www/html/core/ajax/node-spc-jeedom/node-spc-jeedom.js:197:28)
    at IncomingMessage.emit (node:events:529:35)
    at endReadableNT (node:internal/streams/readable:1400:12)
    at process.processTicksAndRejections (node:internal/process/task_queues:82:21)

As-tu dejà eu cette erreur? Merci

Bonjour @SJAMS,

Désolé, je n’ai jamais eu cette erreur.

Peux-tu m’expliquer la procédure que tu as réalisé ? En fait la connexion websocket ne se fait pas.

Connect Error: Error: socket hang up

Désolé, mais cela fait plusieurs années que j’ai configuré tout cela. Il faut lire les différentes documentations et post dont j’avais mis les liens dans un post ci-dessous. Je ne maitrise pas du tout linux donc incapable de te renseigner sur le message d’erreur.
J’ai mis au moins un an à tout faire fonctionner. Il faut bien regarder tous les paramètres, les ports notamment.

dans le fichier config.xml, j’avais mis ceci :

<config>
   <enable_get_auth>yes</enable_get_auth>
   <enable_put_auth>yes</enable_put_auth>
   <enable_ws_auth>yes</enable_ws_auth>
   <enable_edp_encryption>yes</enable_edp_encryption>
   <enable_ssl_encryption>yes</enable_ssl_encryption>
   <http_port>8088</http_port>
   <local_port>8089</local_port>
   <access_control_list>+192.168.1.0/24</access_control_list>
   <tcp_port>16000</tcp_port>
   <spc_id>1000</spc_id>
   <gateway_id>2</gateway_id>
   <spc_time_diff>0</spc_time_diff>
   <spc_dst>yes</spc_dst>
</config>

Côté SPC :


L’adresse IP récepteur est l’adresse de ton SPC WEB GATEWAY
Regarde bien les paramètres du fichier config.xml comme :

  • tcp_port = Port IP récepteur côté prog SPC
  • spc_id = ID Récepteur côté prog SPC
  • gateway_id = ID EDP Centrale côté prog SPC dans paramètre EDP

Paramètres EDP :

Ci-dessous quelques lignes de commandes linux pour le SPC WEB Gateway

tar xzvf spc-web-gateway-ubuntu_x86_64.1.3.tar.gz

cd ./spc-web-gateway-1.3/

sudo ./install.sh

cd /opt/spc-web-gateway

nano /opt/spc-web-gateway/config.xml

nano /etc/init.d/spc-web-gateway

./spc-web-gateway –A

En espérant que cela puisse t’aider.

Merci, moi j’ai pris le bridge donc la configuration plus facile…

Je parlais du côté Jeedom comment as tu programmé, j’arrive à récupérer avec les requête. Mais je n’arrive pas à faire fonctionner le websocket…

Alors côté jeedom, concernant les variables, il n’y a rien à faire, j’y reviendrais après.

Côté node-spc-jeedom il faut paramétrer le fichier config.json comme suit :

{
   "spc_gw_host":"adresse IP de ta passerelle",
   "spc_gw_port":"8088",
   "spc_ws_user":"identifiant",
   "spc_ws_password":"mot de passe",
   "spc_get_user":"identifiant",
   "spc_get_password":"mot de passe",
   "jeedom_host":"adrese IP de jeedom",
   "jeedom_api":"clé API jeedomi"
}

Ensuite côté jeedom les variables se créent et se mettent à jour toutes seule.
J’utilise le plugin sshcommander pour interagir avec la SPC et jeedom.
image

passerelle node-spc-jeedom (pour la relancer depuis jeedom):
image

SPC Web Gateway (envois de commandes)
image

Ci-dessous les commandes complètes suivant ce que tu veux faire (Mise En/Hors secteur, etc…). Il faut regarder dans la doc de la passerelle pour détail :

curl –X GET https://adresse IP Gateway:8088/spc/zone/1 -u identifiant:mot de passe \-k --digest

curl –XPUT https://adresse IP Gateway:8088/spc/zone/2/isolate \-u identifiant:mot de passe -k --digest

curl PUT https://adresse IP Gateway:8088/spc/zone/1/isolate \-u identifiant:mot de passe -k --digest

curl -v http://adresse IP Gateway:8088

curl -XPUT https://adresse IP Gateway:8088/spc/zone/1/isolate \-u identifiant:mot de passe -k --digest

curl -XPUT https://adresse IP Gateway:8088/spc/zone/1/deisolate \-u identifiant:mot de passe -k --digest

curl -XPUT https://adresse IP Gateway:8088/spc/zone/2/deisolate \-u identifiant:mot de passe -k --digest

curl -XPUT https://adresse IP Gateway:8088/spc/alert/restore \-u identifiant:mot de passe -k --digest

curl –XGET https://adresse IP Gateway:8088/spc/zone/1 -u identifiant:mot de passe \-k --digest

Dernier point, ne pas oublier de créer des règles de redirection des ports dans son routeur (ASUS pour moi) :


Pour les règles EDP, rediriger vers l’adresse du SPC Web Gateway.
Pour la règle SPC EDC, rediriger vers l’adresse de la SPC.

Pour toi « websocket » correspond à l’envoi de commandes de jeedom vers la SPC, comme l’isolation d’une zone ou la mise En/Hors d’un secteur ?

Normalement en reprenant la totalité de mes messages de ce post, tu devrais pouvoir faire fonctionner ta SPC depuis jeedom. Il faut juste ajuster les paramètres en fonction de ton installation (adresse IP, identifiant, mdp, clé API, ports, config EDP SPC, etc…).

En fait j’arrive bien à récupérer les valeurs des area et zones en effectuant des requêtes Get pas de soucis.

C’est arriver à faire fonctionner le websocket c’est à dire récupérer les évènements…

J’ai bien suivi les différents articles. Je retenterais en tout cas merci pour ton retour.

C’est donc la création des variables qui ne fonctionne pas chez toi ? Ce que j’appelle le node-spc-jeedom ?
Normalement si la communication se fait bien, les variables doivent se créer automatiquement…à moins qu’il faille les créer manuellement. Je ne m’en souviens plus. Il faut regarder la doc, c’est expliqué dedans normalement.

C’est l’utilisation effectivement du node-spc-jeedom , qd je le lance le résultat est error hang up. La création des variables ce fait bien. C’est la connection websocket qui ne se fait pas.

Je pense que ton websocket ne se connecte pas au serveur, soit à jeedom (peu probable car les variables sont créées), soit à la passerelle. Regarde ton fichier de configuration et vérifies que les identifiants et mots de passe correspondent, si les ports correspondent et qu’ils soient bien ouverts, les adresses IP, clé API jeedom. Il doit certainement y avoir une erreur dans ce fichier.

En complément, portes ton attention sur « spc_ws_user » et spc_ws_password", voir ci-dessous un extrait de la doc du logiciel passerelle. Toi tu as un garteway, mais il y a une analogie à faire.
image

Autre point tu peux simuler ta passerelle avec ton navigateur, voir extrait doc ci-dessous

Ainsi tu peux justement tester tes identifiants et mots de passe websocket et les désactiver pour voir si le problème ne vient pas de là.
Tu doit être très proche de la solution.