AVATAR Forum
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le Deal du moment :
Cartes Pokémon : la prochaine extension ...
Voir le deal

Avatar plugin anniversaire

3 participants

Aller en bas

AVATAR - Avatar plugin anniversaire Empty Avatar plugin anniversaire

Message par halim Ven 21 Avr - 12:12

AVATAR vous dira s'il y a un anniversaire du jour ou pas
vous pouvez mettre autant de personne sur le fichier javascript

le code js:

exports.action = function(data, callback){

var tblCommand = {

anni : function() {
Avatar.speak("Je regarde", data.client);
setTimeout(() => {
anni (data, client);
},3000);
},
stop : function() {
stop (data, client);
}
};

let client = setClient(data);
info("Anniversaire:", data.action.command, "From:", data.client, "To:", client);
tblCommand[data.action.command]();
callback();
}



function anni (data, client) {

let prenom = "christophe prague";
let jour_actuel = 21;
let mois_actuel = 4;
let today = new Date()
today.getMonth() +1
today.getDate()

if (jour_actuel == today.getDate() && mois_actuel == today.getMonth() +1) {
console.log ("Bon anniversaire" + " " + prenom);
Avatar.speak("Aujourd'hui c'est l'anniversaire de." + prenom + ":" + ".Bon anniversaire !" + prenom, data.client, function() {
Avatar.Speech.end(data.client, true, () => {
Avatar.play(__dirname + '/medias/JoyeuxAnniversaire.mp3', client);
});
});
}
// Personne 2
// Personne 3
else {
console.log("Pas d'anniversaire aujourd'hui");
Avatar.speak("Pas d'anniversaire aujourd'hui", data.client, function () {
Avatar.Speech.end(data.client);
});
}

}


function stop (data, client) {
Avatar.speak("J'arrete la chanson anniversaire", data.client, function() {
Avatar.speak("A bientot avec les fetes d'anniversaire", data.client, function() {
Avatar.Speech.end(data.client, true, () => {
Avatar.stop(null, client);
});
});
});

}


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

AVATAR - Avatar plugin anniversaire Empty Re: Avatar plugin anniversaire

Message par Christophe Prague Ven 21 Avr - 14:26

Bonjour Halim, j'ai été impressionné par ta dernière démonstration du projet Avatar. Tu as su faire preuve d'innovation en remaniant le plugin anniversaire et en y apportant de nouvelles fonctionnalités. De plus, la manière dont tu as intégré la musique à ta présentation était très réussie.
Je trouve que le projet Avatar est vraiment intéressant car il propose des choses novatrices dans un domaine où les idées originales sont rares. Le fait que tu sois à l'origine de cette initiative montre que tu es un créateur de talent et un vrai visionnaire.
Je suis conscient que certains pourraient chercher à se valoriser en disant que c'est grâce à eux que ce plugin existe, mais tu es celui qui en est à l'origine et qui en assure le développement. Cela mérite d'être souligné et reconnu.
En résumé, continue à innover et à proposer des choses nouvelles, tu as tout mon soutien et j'ai hâte de voir tes prochaines réalisations.
Christophe Prague
Christophe Prague

Messages : 51
Date d'inscription : 15/09/2020

Revenir en haut Aller en bas

AVATAR - Avatar plugin anniversaire Empty Re: Avatar plugin anniversaire

Message par halim Ven 21 Avr - 14:45

merci, christophe je vais encore simplifier/reduire le code, apres je met le plugin a disposition
halim
halim

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

Revenir en haut Aller en bas

AVATAR - Avatar plugin anniversaire Empty Re: Avatar plugin anniversaire

Message par Avatar Ven 21 Avr - 20:02

C'est bien Halim Smile

Dommage que ça ne soit pas multiroom  Mad
Avatar.play(__dirname + '/medias/JoyeuxAnniversaire.mp3', client);  pour du multiroom c'est pas bon.
Si tu appelles ton code depuis un client qui n'est pas sur le serveur c'est mort.

Ca c'est très bizarre...  Question
Avatar.speak("Je regarde", data.client);
setTimeout(() => {
anni (data, client);
},3000);


Ca aussi c'est très bizarre  Question
let jour_actuel = 21;
let mois_actuel = 4;

Essaye d’utiliser des modules.
Tu fais du nodejs, c'est fait pour ca.
Pour les dates, tu as le module 'moment'
Tape 'moment js' dans un navigateur, puis sur le home de 'moment', tu clics sur Docs en haut à droite... tu vas voir.

Il faudrait que tu ajoutes les noms des personnes dans le fichier de propriétés.
console.log("Pas d'anniversaire aujourd'hui"); C'est pour le dev uniquement, si tu veux l'afficher dans la console, tu dois utiliser info(".......");
Tu pourrais faire aussi un cron pour pouvoir l'ajouter dans un réveil...

Et Halim, dernière chose, pour mettre à disposition, il faut l'ajouter dans la bibliothèque de plugins.
Ca veut dire formater ton plugin correctement dans github et que je t'ajoute dans les contributeurs.
Pour l'instant, tu n'y es pas.

Ne vas pas trop vite,.essaye juste d'aller au bout des choses  Very Happy

Bon courage
Avatar
Avatar

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

Revenir en haut Aller en bas

AVATAR - Avatar plugin anniversaire Empty Re: Avatar plugin anniversaire

Message par halim Lun 24 Avr - 15:00

bonjour stephane,
j'ai un peux refait le plug annniveraire, pour le premier personne c'est bon mais j'ai une petite erreur a partir du 2eme personne, merci d'avance

var moment = require('moment');
moment.lang('fr');
var now = moment ();
now.format('MMMM'); // mois(avril)
now.format('DD'); // jour

let personne = [
   {prenom : "halim", mois : "avril", jour : 2},
   {prenom : "christophe", mois : "avril", jour : 8},
   {prenom : "stephane", mois : "avril", jour : 24},
{prenom : "laurentpoubelle", mois : "avril", jour : 15}
]
for(var i=0; i<personne.length; i++) {
if (now.format('MMMM') == personne[i].mois && now.format('DD') == personne[i].jour) {
  console.log("aujourdui c'est l'anniversaire de." + " " + personne[i].prenom);
  break;
}

else {
   console.log("pas d'anniversaire aujourdhui");
}
}
halim
halim

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

Revenir en haut Aller en bas

AVATAR - Avatar plugin anniversaire Empty Re: Avatar plugin anniversaire

Message par Avatar Mar 25 Avr - 14:01

Normalement, je ne fais pas de cours de nodejs, tu le sais.
je ne peux pas faire tes plugins à ta place.
Juste pour cette fois-ci, perso, je ferais quelque chose comme ca:

const moment = require('moment');
const _ = require('underscore');
moment.locale('fr');

// normalement récupéré du fichier de properties, ici tableau pour test
let listOfPersons [{name: "Pierre", birthday: "10-10-1980"}, {name: "Paul", birthday: "02-08-1975"}]

let today = moment().format("DD-MM-YYYY");
let persons = _.where(listOfPersons, {birthday: today});

// tester si persons = null ou si persons est un tableau vide alors persons.length == 0...  A voir
if (!persons)
 return Avatar.speak("Pas d'anniversaire aujourd'hui", data.client, () => {
Avatar.Speech.end(data.client);
})

persons.forEach (person =>  {
 Avatar.speak("Aujourd'hui c'est l'anniversaire de " person.name, data.client);
});
 Avatar.Speech.end(data.client);




Regarde le module underscore js.
Tape underscore.js dans un navigateur, tu vas être surpris...

Tu pourrais aussi faire une fonction qui ajoute automatiquement un anniversaire d'une personne dans ton fichier de propriétés.
genre "Aujourd’hui c'est l'anniversaire de Paul'...

Vas au bout des choses, je te l'ai déjà dit.
Dernière chose:
Evite d'utiliser des noms qui n'ont aucun intérêt dans ton dev...
Pas besoin d'utiliser stephane, ni laurentpoubelle... laurentpoubelle, non mais c'est quoi ce prénom...  tu cherches quoi exactement ? Evil or Very Mad
Ce forum est pour AVATAR, le reste (et tes petites histoires avec d'autres personnes) n'a aucun intérêt içi. Ok ?  Smile  bien !

Bref...
Bon courage
Avatar
Avatar

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

Revenir en haut Aller en bas

AVATAR - Avatar plugin anniversaire Empty Re: Avatar plugin anniversaire

Message par Christophe Prague Dim 30 Avr - 23:08

Bonjour Halim, je suis impatient de voir de nouvelles vidéos pour le projet Avatar que tu as entrepris. Les vidéos que tu proposes pour ce projet sont excellentes et très intéressantes car elles utilisent la technologie pour améliorer notre vie quotidienne, ce qui rend l'expérience de visionnage encore plus immersive. J'ai hâte de voir les prochaines vidéos de ce projet passionnant. Bravo pour ton travail et continue ainsi, tu as tout mon soutien. N'oublie pas que les critiques négatives ne doivent pas t'empêcher de poursuivre ton travail créatif. En clair, ne t'occupe de personne et avance sur tes idées...
Christophe Prague
Christophe Prague

Messages : 51
Date d'inscription : 15/09/2020

Revenir en haut Aller en bas

AVATAR - Avatar plugin anniversaire Empty Re: Avatar plugin anniversaire

Message par halim Jeu 4 Mai - 22:51

Salut, Christophe , pour de nouvelle video il faut que j'achete le harmony hub de logitech , pour controler les appareils avec telecommande en infra-rouge, je l'avais le harmony hub mais je l'ai revendu et je regrette beaucoup, j'ai acheter le broadlink mais je n'arrive pas a le configurer avec la box eedomus dommage ,
pour les critiques , c'est passer , maintenant fred herman et laurent jeannel sont passer sur AVATAR (une bonne nouvelles). donc il reste plus que les utilisateurs de SARAH de passer sur AVATAR , je pense si toi , le hiboux , dom et clarck kent vous passer sur AVATAR le reste vous suivront, comme ca il y auras un seul projet et on participeras tous au developpement a l'intelligence cybernetique AVATAR
halim
halim

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

Revenir en haut Aller en bas

AVATAR - Avatar plugin anniversaire Empty Re: Avatar plugin anniversaire

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