AVATAR Forum
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le Deal du moment : -40%
-40% sur le Pack Gaming Mario PDP Manette filaire + ...
Voir le deal
29.99 €

plugin eedomus

Aller en bas

plugin eedomus Empty plugin eedomus

Message par Invité Ven 25 Juin - 8:03

bonjour , stephane , avant tout je te remercie pour tout tes conseils et ton aide, je voudrais automatiser et personaliser , l'assistant vocal Avatar.ia , il me manque seulement une fonction sur ton plugin eedomus

j'ai un detecteur d'ouverture/fermeture de porte, sans que je passe la regle , je voudrais quand j'ouvre la porte,  Avatar.ia me répond: la porte est ouverte, ou quand je ferme la porte Avatar.ia me répond: la porte est fermé
merci stephane

getPorte: function() {
getPorte ((text, value) => {
info("En text:" + text);
info("En valeur: " + value);

if (value == '100') {
Avatar.speak("la porte est:" + text, data.client, function() {
Avatar.Speech.end(data.client);
});
}
if (value == '0') {
Avatar.speak("la porte est:" + text, data.client, function() {
Avatar.Speech.end(data.client);
});
}
})
},

function getPorte (callback) {

var eeDomusUser = "XXXXXX";
var eeDomusSecret = "SxiBy7yB64XXXXXX";
var periphID = "2273694";

// Build URL api.eedomus.com
var url = 'http://api.eedomus.com/get?action=periph.caract';
url += '&api_user='+eeDomusUser; //[i];
url += '&api_secret='+eeDomusSecret;
url += '&periph_id='+periphID;

// Send Request
var request = require('request');
request({ 'uri': url, 'json': true }, function (err, response, json){
if (err || response.statusCode != 200) {
callback('error');
}
else {
json = json.body;
var text = (json && json.last_value_text) ? json.last_value_text : 'error';
var value = (json && json.last_value) ? json.last_value : 'error';
callback(text,value);
}
});
}

Invité
Invité


Revenir en haut Aller en bas

plugin eedomus Empty Re: plugin eedomus

Message par Avatar Ven 25 Juin - 20:42

Dans eeDomus:

1) Ajouter un actionneur HTTP

Nom : Porte ouverte fermée

Ajouter 2 états :
Etat 0
URL:
http://IP_AVATARSERVEUR:3000/Avatar/eedomus
paramètres:
?command=doorStatus&status="On"

Etat 1
URL:
http://IP_AVATARSERVEUR:3000/Avatar/eedomus
paramètres :
?command=doorStatus&status="Off"

Ensuite
Créer 2 règles pour le capteur
Règle 1:
Nom: porte ouverte
Critères:
<nom capteur> devient maintenant égal à "ouvert"
Actions: Porte ouverte fermée état 0

Règle 2:
Nom: porte fermée
Critères:
nom capteur devient maintenant égal à "fermée"
Actions: Porte ouverte fermée état 1




Ajouter dans le plugin eedomus dans le tableau de commandes (exports.action):
doorStatus : function() {
let tts = data.status == "On" ? La porte est ouverte" : "La porte est fermée";
Avatar.speak(tts, data.client, function() {
Avatar.Speech.end(data.client);
});
}

Ajouter aussi à la fin de la fonction exports.action en gras en dessous:

let room = setClient(data);
if (data.action.command != 'updateWidget' && data.action.command != 'doorStatus ') // pour éviter d'encombrer les messages du serveur
info("eeDomus:", data.action.command, "From:", data.client, "To:", room);
tblCommand[data.action.command]();
callback();
Avatar
Avatar

Messages : 81
Date d'inscription : 01/09/2020
Age : 58
Localisation : Toulouse

Revenir en haut Aller en bas

plugin eedomus Empty Re: plugin eedomus

Message par Invité Sam 26 Juin - 11:51

bonjour, stephane , merci beaucoup pour ton aide,  j'ai suivie les étapes de la configuration sur l'eedomus , ca n'a pas fonctionner je pense au niveau d'ajout des regles associé sur le capteur(detecteur ouverture/fermeture de porte)  parceque je ne vois pas :
Actions: Porte ouverte fermée état 0 =>  je ne vois pas => état 0
Actions: Porte ouverte fermée état 0 =>  je ne vois pas => état 1
, je vois seulement cela : Fermer , Ouvrir , Mettre à jour , [Valeur autre périphérique]

erreur sur l'eedomus
Il y a 2 heures : Porte ouverte fermée entrée / Ouvrir en erreur. Aperçu du résultat
Aperçu
Could not resolve host: IP_AVATARSERVEUR

plugin eedomus Captur32
plugin eedomus Captur33

Invité
Invité


Revenir en haut Aller en bas

plugin eedomus Empty Re: plugin eedomus

Message par Avatar Sam 26 Juin - 16:04

Je crois qu'il faut que tu apprennes à utiliser ta box eedomus.
Y'a une documentation.
Je t'ai donné plus qu'un boulevard avec ce que je t'ai écris pour y arriver.
Et en passant, je suis sûr que tu n’utilises même pas le plugin eedomus que j'ai fait. Quel dommage. Bref.

Sinon, ensuite, tu dois apprendre à lire les messages d'erreur, je vois:
Could not resolve host: IP_AVATARSERVEUR

Google translate si tu ne comprends pas l'anglais.
Tu as donc réécris exactement ce que j'ai écris et donc IP_AVATARSERVEUR...
Ok...  Crying or Very sad

Cherche un peu par toi même, je suis sûr que tu vas trouver, je t'ai donné tout ce dont tu as besoin, courage, essayes  Very Happy
A+
Avatar
Avatar

Messages : 81
Date d'inscription : 01/09/2020
Age : 58
Localisation : Toulouse

Revenir en haut Aller en bas

plugin eedomus Empty Re: plugin eedomus

Message par Invité Sam 26 Juin - 16:39

rebonjour stephane, je ne maitrisse pas encore bien la box eedomus
tu m'as donner tout ce qu'il faut , je le sais deja , et je te remercier pour cela
je t ai deja expliquer je suis revenus a la premiere version du plugin eedomus , la nouvelle version est ideal sur une tablette tactile, c'est pour cela j'ai voulus changer de materiels(appareils)
tu ne connais pas encore ma chaine youtube toute ma domotique se control par un seul assistant vocal : Avatar.ia et un seul plugin "eeDomus" de stephane bascher
je n'utilise pas autre chose: ni alexa , ni google home (que je n'utilise jamais sarah ,jarvis)

je n'ai pas réécris exactement ce que tu as écris , j ai fait copie/coller => http://IP_AVATARSERVEUR:3000/Avatar/eedomus

https://www.youtube.com/channel/UCWpKsHXi6pLnLwf5aWXMrrQ

plugin eedomus Avatar12

plugin eedomus Avatar13

Invité
Invité


Revenir en haut Aller en bas

plugin eedomus Empty Re: plugin eedomus

Message par Invité Sam 26 Juin - 20:01

voila ce que j'ai rajouter sur le fichier avec la premiere version du plugin eedomus :
j'ai un peu modier la variable room(fonction multiroom) , parceque etait deja declaré quand j'ai rajouter le code que tu m'as donner a mettre sur le fichier js

exports.action = function(data, callback){

if (!_eeDomusConf.eeIp || !_eeDomusConf.eeUser || !_eeDomusConf.eeSecret) {
error("eeDomus", "La configuration de la box domotique est manquante".red);
return callback();
}

var url;
let room = setClient(data); //var room;
var tblCommand = {
set: function(){
setEECommand(Config.modules.eeDomus.clients[room][data.action.periph], data.action.value);
Avatar.speak(Config.modules.eeDomus.answers, data.client, function() {
Avatar.Speech.end(data.client);
});
},
switchLight : function() {
switchLight(data.client, room, data.action.value, Config.modules.eeDomus.clients[room]['lightDimmer']);
},
..........................................................................................................................................................................................................................................................

getEtatImprimante: function() {
getEtatImprimante ((text, value) => {
info("En text:" + text);
info("En valeur: " + value);
Avatar.speak("il reste:" + value + "page", data.client, function() {
Avatar.Speech.end(data.client);
});
})
},

doorStatus :function () {
let tts = data.status == "On" ? "La porte est ouverte" : "La porte est fermée";
Avatar.speak(tts, data.client, function() {
Avatar.Speech.end(data.client);
});
}

};


if (data.action.room && data.action.room != 'current')
room = data.action.room;
else {
if (Avatar.isMobile(data.client))
room = Avatar.currentRoom ? Avatar.currentRoom : Config.default.client;
else
room = data.client;
}

/*info("eeDomus command:", data.action.command.yellow, "From:", data.client.yellow);
tblCommand[data.action.command]();
callback();
*/


//let room = setClient(data);
if (data.action.command != 'updateWidget' && data.action.command != 'doorStatus ') // pour éviter d'encombrer les messages du serveur
info("eeDomus:", data.action.command, "From:", data.client, "To:", room);
tblCommand[data.action.command]();
callback();
}

function setClient (data) {
var client = data.client;
if (data.action.room)
client = (data.action.room != 'current') ? data.action.room : (Avatar.currentRoom) ? Avatar.currentRoom : Config.default.client;
if (data.action.setRoom)
client = data.action.setRoom;
return client;
}

Invité
Invité


Revenir en haut Aller en bas

plugin eedomus Empty Re: plugin eedomus

Message par Avatar Sam 26 Juin - 22:27

IP_AVATARSERVEUR...  Halim....

Crois-tu que je connaisse l'adresse IP de ton serveur Avatar ? Shocked
Donc j'ai mis IP_AVATARSERVEUR pour que tu remplaces ca par ton adresse IP...  IP_AVATARSERVEUR ne veut rien dire halim.

Bon allez, bosse un peu ce qu'il te manque sur eedomus sinon tu n'arriveras à rien.

Et entre nous, j'ai le plugin Google assistant... Et je le conseille.
Ca fait tous les petits plugin que tu essayes de faire toi même et beaucoup plus. Sans effort.
Et j'ai aussi un Google Nest Hub qui est connecté avec Avatar.
Tu brides ton assistant pour rien.
Avatar
Avatar

Messages : 81
Date d'inscription : 01/09/2020
Age : 58
Localisation : Toulouse

Revenir en haut Aller en bas

plugin eedomus Empty Re: plugin eedomus

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum