« Créer un robot IRC avec NodeJS » : différence entre les versions

aucun résumé des modifications
Aucun résumé des modifications
Aucun résumé des modifications
(4 versions intermédiaires par le même utilisateur non affichées)
Ligne 26 : Ligne 26 :
Une fois que vous êtes dans le dossier <code>Robot IRC</code>, tapez <code>npm install irc-framework</code>. Un dossier "node_modules" sera visible dans notre dossier "Robot IRC", cela voudra donc dire que le paquet <code>irc-framework</code> a bien été installé.
Une fois que vous êtes dans le dossier <code>Robot IRC</code>, tapez <code>npm install irc-framework</code>. Un dossier "node_modules" sera visible dans notre dossier "Robot IRC", cela voudra donc dire que le paquet <code>irc-framework</code> a bien été installé.


<blockquote style="border: #ccc solid 1px;padding: 2px 8px;"><u>Note:</u> il se peut qu'il y a des erreurs liées à Yarn pendant l'installation, il suffit d'ignorer ces erreurs sur Windows. Yarn c'est le concurrent de npm, et pour faire ce tuto nous n'avons pas besoin de Yarn.<br>
<blockquote style="border: #ccc solid 1px;padding:5px 8px;font-size:13px;background: #fff3cf;"><u>Note:</u> il se peut qu'il y a des erreurs liées à Yarn pendant l'installation, il suffit d'ignorer ces erreurs sur Windows. Yarn c'est le concurrent de npm, et pour faire ce tuto nous n'avons pas besoin de Yarn.<br>
Si jamais on a besoin de Yarn, il suffit alors de l'installer avec <code>npm install --global yarn</code> puis de vérifier sa version <code>yarn --version</code> (c'est utile de connaitre la version) et ensuite il suffit d'installer <code>irc-framework</code> avec <code>yarn add irc-framework</code> ou si vous êtes à l'intérieur du dossier <code>irc-framework</code> alors il suffit juste de taper <code>yarn</code> et d'attendre quelques secondes et normalement après c'est installé.</blockquote>
Si jamais on a besoin de Yarn, il suffit alors de l'installer avec <code>npm install --global yarn</code> puis de vérifier sa version <code>yarn --version</code> (c'est utile de connaitre la version) et ensuite il suffit d'installer <code>irc-framework</code> avec <code>yarn add irc-framework</code> ou si vous êtes à l'intérieur du dossier <code>irc-framework</code> alors il suffit juste de taper <code>yarn</code> et d'attendre quelques secondes et normalement après c'est installé.</blockquote>


Ligne 42 : Ligne 42 :
</source>
</source>


Vous pouvez ajouter ceci juste en dessous (et c'est même commenté):  
Vous pouvez ajouter ce codede base juste en dessous (et c'est même commenté):  


<source lang="javascript">
<source lang="javascript">
Ligne 51 : Ligne 51 :
bot.connect({
bot.connect({
     host: 'irc.discussionner.com',
     host: 'irc.discussionner.com',
     nick: 'Bobot'
     nick: 'Robot'
});
});


// Événement équivalent au raw 001
// Événement équivalent au raw 001=RPL_WELCOME
bot.on('registered', function() {
bot.on('registered', function() {
     console.log('Connected!');
     console.log('Connected!');
Ligne 62 : Ligne 62 :
     // channel.say('Hi!');
     // channel.say('Hi!');
     // channel.updateUsers(function() {
     // channel.updateUsers(function() {
     //  console.log(channel.users); // liste tous les users présents sur #quizz
     //  console.log(channel.users); // liste tous les users présents sur #quizz.
     // });
     // });
});
});


// Pour le raw 005, il faudra voir du côté de celui-ci :  
// Plus flexible et adapté aux cas d'utilisation avancés; l'utilisation
// du raw 005=RPL_ISUPPORT peut être avantageux. Il faudra voir du côté de cet event :
/*
/*
let raw005 = false;
let raw005 = false;
bot.on('server options', function(event) {
bot.on('server options', function(event) {
if (!raw005) {
if (!raw005) { // Afin d'éviter le multiple lignes du 005.
raw005=true;
raw005=true; // Ne pas oublier d'ajouter raw005=false; dans 001=registered.
bot.join('#quizz'); // Joindre le salon #quizz à partir du raw 005
bot.join('#quizz'); // Joindre le salon #quizz à partir du raw 005.
}
}
});
});
// Il y a aussi 376=RPL_ENDOFMOTD ou 422=RPL_NOMOTD
*/
*/


Ligne 85 : Ligne 87 :
bot.on('message', function(event) {
bot.on('message', function(event) {
     console.log('<' + event.target + '>', event.message);
     console.log('<' + event.target + '>', event.message);
     if (event.message.indexOf('whois') === 0) { // Il suffit de taper /msg Bobot whois <pseudo> et ce if sera enclenché. Il sera même enclenché si le message est tapé en salon : /msg #quizz whois <pseudo>
     // Il suffit de taper /msg Bobot whois <pseudo> et ce if sera enclenché. Il sera même
         bot.whois(event.message.split(' ')[1]); // le arg [1] signifie <pseudo>, le robot exécutera un /whois <pseudo>.
    // enclenché si le message est tapé en salon : /msg #quizz whois <pseudo>
    if (event.message.indexOf('whois') === 0) {
         bot.whois(event.message.split(' ')[1]); // l'argument [1] signifie <pseudo>, le robot exécutera un /whois <pseudo>.
     }
     }
});
});
Ligne 134 : Ligne 138 :




Il existe un autre paquet pour créer un robot IRC, c'est <code>npm install irc</code> (https://www.npmjs.com/package/irc) que je déconseille d'utiliser, car incomplet et il semble abandonné depuis 2016.
Il existe un autre paquet pour créer un robot IRC, c'est <code>npm install irc</code> (https://www.npmjs.com/package/irc) que je déconseille d'utiliser, car incomplet et en plus il semble abandonné depuis 2016.