Quelques options à ajouter dans le firm si possible

Salut a tous !

Voila je me demandais si il serait possible d’ajouter dans le firm de la carte (v3) plus d’option.

Par ex : si le relais 1 passe à 1 on peut envoyer un mail, mais il serait bien qu’il y ai une option pour realiser une action.

Je ne sais pas si cela et possible sur le serveur web embarqué ?

Cela permettrais d’executer une url par exem pour une notification, ou commande un relais d’une autre carte ipx ?

@+

Bonjour,

C’est une bonne idée mais très compliqué à rajouter sans transformer l’IPX800 en usine à gaz.

Il va falloir attendre pour ce genre d’option…

ok

Dommage, va faloir que je me trouve un zibase alors :slight_smile:

En fait l’idée c’etait surtout pour avoir un systeme de gestion intégré pour des scenarios.

J’ai tester les site web tout fait ça marche pas totalement, sinon faut que je trouve un logiciel qui la gere bien.

Domogik m’a l’ai bien parti :slight_smile:

@+

Par contre il est déjà possible d’exécuter une URL avec une IPX800 v3. Cela permet de piloter à peu près tous ce qu’on veux y compris une autre IPX distante.

Il s’agit d’une option caché (enfin plus maintenant)…

Voici la syntaxe à exécuter depuis une page preset.htm, il faut maitriser un peu le html mais cela reste très simple.

url=xxx.xxx.xxx.xxx&port=80&cmd=

Voici en pratique comment créer un bouton sur la page preset1.htm qui commande une ipx distante sur l’IP 192.168.1.115

Avec cette méthode vous pouvez créer une page avec des boutons pour piloter à peu près n’importe quel machine IP.

En clair on rajoute un bouton qui, au clic va effectuer une action.

Par contre je voudrais bien faire un truc de ce style :

Je sais c’est de la programmation mais je n’ai pas beaucoup de connaisance et je n’ai pas réussi à le faire.

Je voudrais par exemple :

Recuperer le status de l’entrée 1 de la carte et affiche une image differente en fonction de son etat.

Exemple :

Entrée 1= 0 affiche image Salade.jpg
Entrée 1=1 affiche image Jambon.jpg

Le probleme c’est que je n’arrive pas à le faire.

Ce sait qu’il y a un fichier status.xml mais pour l’exploiter quand on débute en programmation…

Idem je prend les fichier web de la carte, je les met sur easy php, le site marche, je peux commander les relais mais je ne vois pas le retour d’etat.

Je pense que c’est liée.

Essaie avec https://sourceforge.net/p/multicardipx800/

C’est en dev permanent, mais bon ça fonctionne

Merci, je vais aller voir çà

je vais tester de suite.

Bonjour,

Comme toi je débute en programmation et cette solution fonctionne

  • le pluviomètre affiche soleil ou pluie
  • arrosage du jardin ou rien
  • de l’eau ou pas dans la réserve d’eau de pluie
  • prise électrique commandée en fonction ou non
<span class="graytitle">Digital Inputs</span>
<ul class="pageitem">
	<li class="textbox">
		<span class="header">
		<span class="center">
		pluviomêtre :<p>
		<span class="center">
		<span id="btn3">
	<li class="textbox">
		<span class="header">
		<span class="center">
		arrosage jardin:<p>
		<span class="center">
		<span id="btn2">
	<li class="textbox">
		<span class="header">
		<span class="center">
		niveau eau de pluie :<p>
		<span class="center">
		<span id="btn1">
	<li class="textbox">
		<span class="header">
		<span class="center">
		prise telecommandée :<p>
		<span class="center">
		<span id="btn0">	
	</li>
</ul>
<script type="text/javascript">
<!--
// Parses the xmlResponse from status.xml and updates the status box
function updateStatus(xmlData) {
	// Check if a timeout occurred
	if(!xmlData)
	{
		document.getElementById('display').style.display = 'none';
		document.getElementById('loading').style.display = 'inline';
		return;
	}

	// Make sure we're displaying the status display
	document.getElementById('loading').style.display = 'none';
	document.getElementById('display').style.display = 'inline';
	

// Loop over all the buttons
	for(i = 0; i < 4; i++) {
	    
		if (i == "0"){
		if(getXMLValue(xmlData, 'btn'+i) == 'up')
			document.getElementById('btn' + i).innerHTML = (" ");
		else
			document.getElementById('btn' + i).innerHTML = '<img src="/images/lampe.gif">';
		}
		if (i == "1"){
        if(getXMLValue(xmlData, 'btn'+i) == 'up')
			document.getElementById('btn' + i).innerHTML = '<img src="/images/cascade.gif">';
		else
			document.getElementById('btn' + i).innerHTML = '<img src="/images/desert.gif">';
		}
		if (i == "2"){
		if(getXMLValue(xmlData, 'btn'+i) == 'up')
			document.getElementById('btn' + i).innerHTML = (" ");
		else
			document.getElementById('btn' + i).innerHTML = '<img src="/images/arrosoir.gif">';
		}	
		if (i == "3") {
		if(getXMLValue(xmlData, 'btn'+i) == 'up')
			document.getElementById('btn' + i).innerHTML = '<img src="/images/pluie01.gif">';
		else
			document.getElementById('btn' + i).innerHTML = '<img src="/images/Mini-meteo.gif">';
		}
	}


	// Update the time value


	document.getElementById('time0').innerHTML = getXMLValue(xmlData, 'time0');
}
setTimeout("newAJAXCommand('status.xml', updateStatus, true)",500);
//-->
</script>

avec les images « salade » « jambon » dans le fichier image

Cordialement josé

Ok merci bien,

tu peut m’en dire plus sur ton code, c’est un fichier php je pense.

Tu as une feuille de style attacher a ta page ?

Peut tu m’en dire plus pour modifier le code( Par ex: a quoi correspond l’entrée 1 ou la sortie 1 dans le code ? )

Merci

Juste pour aider philou15 (je n’ai pas suivi toute la discussion) le code ci-dessus est du HTML (avec scripts AJAX) car c’est le seul langage que l’IPX peut proposer, elle ne possède aucun serveur PHP. Il est donc impossible de faire « lire » un script PHP par l’IPX, celle-ci ne l’exécutera pas.
En revanche, en HTML et requêtes AJAX, tout est possible.

Je ne parlais pas de le mettre sur la carte, mais plutot sur un serveur dédié (PC)

D’ou ma question.

Donc pourrait tu nous en dire plus sur ton code html ?

Quel variable modifier en fonction de l’ip de la carte, de son port, de l’entrée que l’on utilise ?

merci

Bonjour Patrick,

je viens de découvrir votre réponse.

A t’on la possibilité de lancer une URL comme vous le montrez pour cette page preset.htm sur un changement d’état d’une entrée?

Je pense que ce serait vraiment top de pouvoir envoyer des ordres http sur un changement d’état. Pour piloter une autre IPX ou une VERA…

Est-ce possible et si oui, comment?

Bonjour,

C’est compliqué pour le moment à réaliser mais j’ai prévu de modifier le moteur de notification push de l’IPX afin qu’on puisse envoyer une requette HTML sur changement d’état d’une entrée.