IPX800 ne répond plus aux commandes M2M après mise à jour

Bonjour

J’ai mis à jour mon IPX800 v3 avec la version 3.05.46.

Depuis ce moment-là il ne répond plus aux commandes M2M.

J’ai exporté ma config puis l’ai réimporté après la mise à jour.
Les commandes HTTP ainsi que l’interface web fonctionne correctement.

Une idée ?

Cordialement

Julien

Bonsoir.
Avez vous vérifie si le port M2M a pas était changé avec celui par défaut?
Dans ce cas la… c’est l’explication.

Oui, d’ailleurs j’utilisais celui par défaut.

J’ai refait une tentative (réexécution de la mise à jour).
L’IPX800 répond aux commande tant que je ne réimporte pas la sauvegarde de la configuration. Je crois que je suis bon pour reprendre tous les paramètres manuellement :frowning:

Bonjour,
J’ai mis à jour l’ipx avec la version 0.56.
Depuis, plus aucunes commandes M2M (venant d’une home center 2) ne fonctionnent. (set011p par exemple)
Les push des inputs vers la HC2 fonctionnent.
J’ai tout essayé, reinstallation plusieurs fois rien n’y fait.
Actuellement, je n’ai pas rechargé de fichier config, j’ai tout repris manuellement, et toujours pas.
Besoin d’aide, merci

Bonjour,

SI votre ipx800 est sécurisé l’accès M2M aussi.

Extrait du changelog

Ooops, elle m’avait échappé celle-là.

Corrigé, tout refonctionne.

Une question : pendant combien de temps est-ce que la « session » reste ouverte une fois la commande key envoyée ?

ça m’intéresse aussi.
Je viens de passer 3/4h à me demander pourquoi l’IPX ne répond plus avant de venir sur le forum lol…

La session est ouverte combien de temps svp?

Bonjour,

Une fois la commande key envoyée la session est ouverte sans limite de temps.
Par contre si la session est fermée à l’initiative du client ou de l’ipx alors il faut renvoyer la commande key pour re-ouvrir la session.

cdt

Merci Patrick pour cette réponse.

J’utilise à foison les commandes M2M de l’IPX qui fonctionnent à merveille sauf… ResetCount1 qui ne fonctionne plus depuis ma MAJ de firmware.

Avez-vous changé de commande?

Bonjour,

Il ne me semble pas mais je vais vérifier pour être sur…

Cdt

Merci Patrick.

Avez-vous retrouvé quelque chose parlant du ResetCount1?

Un petit up pour une petite réponse svp :smiley:

Bonjour à tous,

Je suis bloqué également après avoir mis à jour le firmware de mon IPX en 3.05.64.

J’ai bien noté qu’il fallait envoyer key=xxxxxx (xxxxxx = mot de pass de l’accès web) mais comment ?!!
Par le socket ?
J’ai essayé

$msg = 'key=mon_code';
socket_write($socket, $msg, strlen($msg)); 

mais ça ne fonctionne pas…
Quelqu’un aurait un exemple ?

Voici le php tout simple qui fonctionnait avant la mise à jour. Maintenant il ne fonctionne que si je décoche Enable Password dans Lan setting de l’IPX. Ca m’aiderait bien si vous pouviez me dire comment envoyer ce key… merci :slight_smile:

<html>
<head>
<title>Essai M2M php</title>
</head>
<body>
<h1>Essai</h1>
<?php
echo date("r"); // juste pour vérifier qu'il n'y ait pas de blocage
$ip_ipx="192.168.1.50";
$port_m2m=9870;
$msg="";
$reponse="";
error_reporting(E_ALL);
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket == false) { $texte .= "Echec du socket : " . socket_strerror(socket_last_error()) ; }
$result = socket_connect($socket, $ip_ipx, $port_m2m);
if ($result == false) { $texte .= "Echec de la connexion : " . socket_strerror(socket_last_error($socket)) ; }
$msg = 'Set040p'; // pilotage sortie 4 à off
socket_write($socket, $msg, strlen($msg));
$reponse = socket_read($socket, 64);
socket_close($socket);
echo $reponse; // réponse OK par IPX si tout va bien
?>
</body>
</html>

Ce code fonctionnait bien en V3.05.35 mais ne fonctionne plus en v3.05.64 si IPX est en Enable password
J’ai vu qu’il faut envoyer key=XXXX (XXXX=mdp web) mais comment ?
Essayé $msg='key=mon code' mais ça ne fonctionne pas

Salut

Es-tu sûr d’avoir envoyé la chaine key=tonMotDePasse ? je ne la vois pas dans ton code.

Si tu l’a bien envoyée, quelle est la réponse renvoyée par l’IPX800 ?

Si mes souvenirs sont bons et selon ce que j’avais développé en C# si la clé n’est pas valide, aucune réponse n’est retournée (chaine vide) :

https://github.com/elendil-software/IPX800cs/blob/master/IPX800cs/CommandSenders/CommandSenderM2M.cs

bonjour,

justement, la question de Franck70 est : comment faire ? :wink:

@franck70, A mon sens, il faut envoyer le password dans la commande :
$msg = 'Set040p&key=TonMotDePasse';

cdt

Il dit :

Essayé $msg=‹ key=mon code › mais ça ne fonctionne pas

C’est effectivement ce qu’il faut faire, mais on ne voit pas ce $msg=‹ key=mon code › dans son code.

Il faut envoyer d’abord la commande key=… , et ensuite seulement la commande à exécuter.

Julien

1 « J'aime »

merci @JuTs
@franck70, j’ai fait des tests sur mon ipx v3 et mon syno, , ça fonctionne.
Voici les modifications apportées au script :

<html>
<head>
<title>Essai M2M php</title>
</head>
<body>
<h1>Essai</h1>
<?php
echo date("r"); // juste pour vérifier qu'il n'y ait pas de blocage
$ip_ipx="192.168.1.50";
$port_m2m=9870;
$msg="";
$reponse="";
error_reporting(E_ALL);
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket == false) { $texte .= "Echec du socket : " . socket_strerror(socket_last_error()) ; }
$result = socket_connect($socket, $ip_ipx, $port_m2m);
if ($result == false) { $texte .= "Echec de la connexion : " . socket_strerror(socket_last_error($socket)) ; }

$msg = 'key=XXXXXXXXX'; // mot de passe de l'IPX
socket_write($socket, $msg, strlen($msg));
$reponse = socket_read($socket, 64);

$msg = 'Set051p'; //sortie 05 ON en impulsion
socket_write($socket, $msg, strlen($msg));
$reponse = socket_read($socket, 64);

socket_close($socket);
echo $reponse;
?>
</body>
</html>
2 « J'aime »

Merci pour vos réponses !! ça fonctionne nickel :slight_smile:

1 « J'aime »