AVATAR Forum
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le Deal du moment : -55%
Coffret d’outils – STANLEY – ...
Voir le deal
21.99 €

aide plugin volume du pc

2 participants

Aller en bas

aide plugin volume du pc Empty aide plugin volume du pc

Message par halim Ven 4 Aoû - 12:21

bonjour stephane j'ai creer un plugin pour controler le son du pc, je voudrais controler le volume sur d'autre poste(post client cuisine, client couloir, client salle de bain, client chambre)
j'ai dans le dossier plugin controle du volume du pc le dossier nircmd avec les fichier prop, intent, action et js, je peux controler le son du pc seulement sur le client salon ou se trouve le seveur
merci d'avance

exports.action = function(data, callback){

var tblCommand = {
volumeUp : function() {Avatar.speak("Je monte le volume|Je monte le son", data.client, () => {
Avatar.Speech.end(data.client, true, () => {
Avatar.runApp(`${__dirname}${'/nircmd/nircmdc64.exe changesysvolume 5000'}`, null, data.client, () => {
});
});
});
},
volumeDown : function() {Avatar.speak("Je baisse le volume |Je baisse le son", data.client, () => {
Avatar.Speech.end(data.client, true, () => {
Avatar.runApp(`${__dirname}${'/nircmd/nircmdc64.exe changesysvolume -5000'}`, null, data.client, () => {
});
});
});
},
volumeMute : function() {Avatar.speak("Je coupe le son|Je coupe le volume|J'arrete le son|J'arrete le volume", data.client, () => {
Avatar.Speech.end(data.client, true, () => {
Avatar.runApp(`${__dirname}${'/nircmd/nircmdc64.exe mutesysvolume 1'}`,null, data.client, () =>{
});
});
});
},
volumeUnMute : function() {Avatar.speak("Je remet le son|Je remet le volume", data.client, () => {
Avatar.Speech.end(data.client, true, () => {
Avatar.runApp(`${__dirname}${'/nircmd/nircmdc64.exe mutesysvolume 0'}`,null, data.client, () => {
});
});
});
},
volume10 : function() { Avatar.speak("Le volume est maintenant à 10 %|Le son est maintenant à 10 %", data.client, () => {
Avatar.Speech.end(data.client, true, () => {
Avatar.runApp(`${__dirname}${'/nircmd/nircmdc64.exe setsysvolume'}${' '}${10*655}`, null, data.client, () => {
});
});
});
},
volume20 : function() {Avatar.speak("Le volume est maintenant à 20 %|Le son est maintenant à 20 %", data.client, () => {
Avatar.Speech.end(data.client, true, () => {
Avatar.runApp(`${__dirname}${'/nircmd/nircmdc64.exe setsysvolume'}${' '}${20*655}`, null, data.client, () => {
});
});
});
},
volume30 : function() {Avatar.speak("Le volume est maintenant à 30 %|Le son est maintenant à 30 %", data.client, () => {
Avatar.Speech.end(data.client, true, () => {
Avatar.runApp(`${__dirname}${'/nircmd/nircmdc64.exe setsysvolume'}${" "}${30*655}`, null, data.client, () => {
});
});
});
},
volume40 : function() {Avatar.speak("Le volume est maintenant à 40 %|Le son est maintenant à 40 %", data.client, () => {
Avatar.Speech.end(data.client, true, () => {
Avatar.runApp(`${__dirname}${'/nircmd/nircmdc64.exe setsysvolume'}${' '}${40*655}`, null, data.client, () => {
});
});
});
},
volume50 : function() {Avatar.speak("Le volume est maintenant à 50 %|Le son est maintenant à 50 %", data.client, () => {
Avatar.Speech.end(data.client, true, () => {
Avatar.runApp(`${__dirname}${'/nircmd/nircmdc64.exe setsysvolume'}${' '}${50*655}`, null, data.client, () => {
});
});
});
},
volume60 : function() { Avatar.speak("Le volume est maintenant à 60 %|Le son est maintenant à 60 %", data.client, () => {
Avatar.Speech.end(data.client, true, () => {
Avatar.runApp(`${__dirname}${'/nircmd/nircmdc64.exe setsysvolume'}${' '}${60*655}`, null, data.client, () => {
});
});
});
},
volume70 : function() {Avatar.speak("Le volume est maintenant à 70 %|Le son est maintenant à 70 %", data.client, () => {
Avatar.Speech.end(data.client, true, () => {
Avatar.runApp(`${__dirname}${'/nircmd/nircmdc64.exe setsysvolume'}${' '}${70*655}`, null, data.client, () => {
});
});
});
},
volume80 : function() {Avatar.speak("Le volume est maintenant à 80 %|Le son est maintenant à 80 %", data.client, () => {
Avatar.Speech.end(data.client, true, () => {
Avatar.runApp(`${__dirname}${'/nircmd/nircmdc64.exe setsysvolume'}${' '}${80*655}`, null, data.client, () => {
});
});
});
},
volume90 : function() {Avatar.speak("Le volume est maintenant à 90 %|Le son est maintenant à 90 %", data.client, function () {
Avatar.Speech.end(data.client, true, () => {
Avatar.runApp(`${__dirname}${'/nircmd/nircmdc64.exe setsysvolume'}${' '}${90*655}`, null, data.client, () => {
});
});
});
},
volume100 : function() {Avatar.speak("Le volume est maintenant à 100 %|Le son est maintenant à 100 %", data.client, () => {
Avatar.Speech.end(data.client, true, () => {
Avatar.runApp(`${__dirname}${'/nircmd/nircmdc64.exe setsysvolume'}${' '}${100*655}`, null, data.client, () => {
});
});
});
}
};

let client = setClient(data);
info("volumeDuPc:", data.action.command, "From:", data.client, "To:", client);
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;
}
halim
halim

Messages : 93
Date d'inscription : 19/11/2022

Revenir en haut Aller en bas

aide plugin volume du pc Empty Re: aide plugin volume du pc

Message par Avatar Ven 4 Aoû - 16:54

C'est une fonction qiu existe déjà dans le plugin Generic.
c'est dans la documentation, chapitre "Fonctions supplémentaires"
Ou dans le source d'Avatar.
Petite suggestion, quand tu cherches quelque chose qui existe déjà (et ca existe puisque tu l'as dans l'interface d'avatar serveur sur chaque node de chaque client dans la commande "Volume sur le PC"), tu peux alors chercher le code et voir comment c'est fait.
Ici, le code qui nous intéresse est dans clientNode.js et aussi regarder le plugin generic.

Une valeur définie:
Avatar.call('generic', {command: 'set_speaker', set: arg, mobile:true, client: client});

"arg" est une valeur * 660

Le plus simple est de passer en l'argument "mobile" la valeur true. C'est le plus simple et c'est ce qu'il y a dans le code d'avatar.
ou sinon false si ce n'est pas un client mobile et seulement si tu en est sûr (valeur false pour "mobile"), ca veut dire tester le client avant de faire le call et avec une valeur ou des valeurs supplémentaires:
'submin'
'addmin'
'submax'
'addmax'
La fonction dans le plugin generic prend en compte les clients mobiles. Quelque chose qu'on peut oublier un peu facilement quand on développe un peu vite. Le mieux est de regarder le plugin generic pour comprendre.

Pour mute/unmute:
Avatar.runApp('%CD%/lib/nircmd/nircmd mutesysvolume ' + data.action.set, null, client);

Je ne comprend pas bien tes $(....) dans chaque commande que tu essayes de passer dans tes fonctions. Je n'ai pas essayé mais ca me parait super bizarre, pas bon même. A mon avis, c'est pour chercher dans des tag html avec une methode fetch. Rien à voir.

A+ et Bon courage.
Avatar
Avatar

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

Revenir en haut Aller en bas

aide plugin volume du pc Empty Re: aide plugin volume du pc

Message par halim Ven 4 Aoû - 19:04

merci pour ta reponse et ton aide stephane;
je sais ca existe deja dans l'interface d'avatar serveur sur chaque node du client (redemare l'ecoute , volume pc,  active l'ecoute, ect ...) mais je ne sais comment ca fonctionne
honnettement je regarde beaucoup la documentation et comment sont coder tes plugins mais je suis encore un bidouilleur , donc je ne sais pas vraiment lire le code,
honnettement quand je regarde la doc et tes plugins tu as fait un grand travail sur le projet AVATAR(felicitation) tu as developper des option qui n'existe pas encore sur les assistants vocaux alexa, google home et meme sur sarah et jarvis.ia,

merci encore a la prochaine

ca => `${} ${}` le javascript moderne replace les plus(+) entre les syntaxe
exemple:
Avatar.speak('bonjour' + stephane, data..   remplace ca :  Avatar.speak(`${'bonjour'}${stephane}`, data.....
halim
halim

Messages : 93
Date d'inscription : 19/11/2022

Revenir en haut Aller en bas

aide plugin volume du pc Empty Re: aide plugin volume du pc

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