123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628 |
- #!/usr/bin/perl
- # Copyright (c) 2014 Daniel Jakots <vigdis@chown.me>
- <<<<<<< HEAD
- # Permission to use, copy, modify, and distribute this software for any
- # purpose with or without fee is hereby granted, provided that the above
- # copyright notice and this permission notice appear in all copies.
- =======
- #
- # Permission to use, copy, modify, and distribute this software for any
- # purpose with or without fee is hereby granted, provided that the above
- # copyright notice and this permission notice appear in all copies.
- #
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- use warnings;
- use strict;
- package MyBot;
- use base qw( Bot::BasicBot );
- <<<<<<< HEAD
- =======
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- binmode STDOUT, ":utf8";
- use utf8;
- my $nb_adh = 0; # nombre d'adhérents
- my $nb_abo = 0; # nombre d'abonnés
- my $site = ""; # site web
- my $salon = ""; # salon irc/xmpp
- my $statut = 0; # étape de 1 à 8 du FAI
- my $date_crea = ""; # date de la création de l'asso
- my $date_jffdn = ""; # date de la rentrée dans la fédé
- my $contact = ""; # email de contact
- my $description = ""; # description de l'asso
- # le repectoire des données du bot aka autoconf
- my $bot_dir = `pwd`; chomp $bot_dir ; $bot_dir .= "/";
- my $wrk_dir = "wrk-dir/";
- my $dir = $bot_dir.$wrk_dir;
- <<<<<<< HEAD
- # dictionnaire contenant les regex permettants de trouver les FAI
- my %regex = (
- # Apinnet
- "apinnet" => "\\b(ap[in]|Poitou|Charente|Rochelle|(Deux[- ])?S[èe]vres?|Vienne|Angoul[eêè]me|Niort|Poitiers)",
- # Aquilenet
- "aquilenet" => "\\b(aq(ui|n)|Bord(o|e?au)|Landes|Gironde)",
- # ARN
- "arn" => "\\b(a(lsace|rn)|Stras|Colma)",
- # Auvernet
- "auvernet" => "\\b(Auver|Puy[- ](de[- ])D[oô]me|avn)",
- # Cafai
- "cafai" => "\\b(cafai|champagne|ardenn?e)",
- # faimaison
- "faimaison" => "\\b(fma|fail?m|Nantes|Loire[- ]Atlantique)",
- # FDN
- "fdn" => "\\bf(rench|dn)",
- # franciliens.net
- "franciliens" => "\\b(f(ranc|cn)|idf|Paris)",
- # grifon
- "grifon" => "\\b(grif|rennes|[îi]l?le[- ](et[- ])?vilaine)",
- # ilico
- "ilico" => "\\b(ilc|ill?[iy][ck])|(Corr?[éêèe][sz])",
- # illyse
- "illyse" => "\\b(ill?y|ill?i[sz]|lyon|rh[ôo]ne|loire|((st|saint)[- ]etienn?e))",
- # iloth
- "iloth" => "\\b(ilo|mont?pel|h[ée]rault)",
- # ldn
- "ldn" => "\\b(l(or|dn)|Nancy|Metz|Moselle|Meuse|Meurthe|Vosges)",
- # ndn
- "ndn" => "\\b(n(ice|dn)|Antibes|Cannes|Valbonne|Alpes[- ]Maritimes)",
- # netopi
- "netopi" => "\\b(netopi|Seine[- ](et[- ])?Marne)",
- # pclight
- "pclight" => "\\b(yonne|beon|cheny|pc[- ]?l)",
- # rézine
- "rezine" => "\\b(r[eé]z|Isère|Grenoble)",
- # rhizome
- "rhizome" => "\\b(rh?[iy][sz]om|Oise|Compi[eéêè]gne)",
- # sames
- "sames" => "\\bsam|(Pyrénées[- ]Atlantiques)",
- # sdn
- "sdn" => "\\b(s(all|dn)|Savoie|Haute[- ]Savoie)",
- # teleragno
- "teleragno" => "\\b(mars|telerag|telegrano)",
- # tetaneutral
- "tetaneutral" => "\\b(t(eta|tn|nn)|Toulouse|Comminges|(Haute[- ]Garon?ne))",
- # ail-network
- "ail" => "\\bail/",
- # chaul'hertz
- "chaul" => "\\b(c(haul|hz)|hertz|tarn|autan)",
- # igwan
- "igwan" => "\\b(ig[wn]|sbg|saint[- ]barth)",
- # neutrinet
- "neutrinet" => "\\b(neutri|n[tre]n|belgique)",
- # et le meilleur pour la fin
- =======
- # symbol auquel le bot répond
- my $symbol = "+";
- # dictionnaire contenant les regex permettants de trouver les FAI
- my %regex = (
- "apinnet" => "\\b(ap[in]|Poitou|Charente|Rochelle|(Deux[- ])?S[èe]vres?|Vienne|Angoul[eêè]me|Niort|Poitiers)",
- "aquilenet" => "\\b(aq(ui|n)|Bord(o|e?au)|Landes|Gironde)",
- "arn" => "\\b(a(lsace|rn)|Stras|Colma)",
- "auvernet" => "\\b(Auver|Puy[- ](de[- ])D[oô]me|avn)",
- "cafai" => "\\b(cafai|champagne|ardenn?e)",
- "faimaison" => "\\b(fma|fail?m|Nantes|Loire[- ]Atlantique)",
- "fdn" => "\\bf(rench|dn)",
- "franciliens" => "\\b(f(ranc|cn)|idf|Paris)",
- "grifon" => "\\b(grif|rennes|[îi]l?le[- ](et[- ])?vilaine)",
- "ilico" => "\\b(ilc|ill?[iy][ck])|(Corr?[éêèe][sz])",
- "illyse" => "\\b(ill?y|ill?i[sz]|lyon|rh[ôo]ne|loire|((st|saint)[- ]etienn?e))",
- "iloth" => "\\b(ilo|mont?pel|h[ée]rault)",
- "ldn" => "\\b(l(or|dn)|Nancy|Metz|Moselle|Meuse|Meurthe|Vosges)",
- "ndn" => "\\b(n(ice|dn)|Antibes|Cannes|Valbonne|Alpes[- ]Maritimes)",
- "netopi" => "\\b(netopi|Seine[- ](et[- ])?Marne)",
- "pclight" => "\\b(yonne|beon|cheny|pc[- ]?l)",
- "rezine" => "\\b(r[eé]z|Isère|Grenoble)",
- "rhizome" => "\\b(rh?[iy][sz]om|Oise|Compi[eéêè]gne)",
- "sames" => "\\bsam|(Pyrénées[- ]Atlantiques)",
- "sdn" => "\\b(s(all|dn)|Savoie|Haute[- ]Savoie)",
- "teleragno" => "\\b(mars|telerag|telegrano)",
- "tetaneutral" => "\\b(t(eta|tn|nn)|Toulouse|Comminges|(Haute[- ]Garon?ne))",
- "ail" => "\\bail/",
- "chaul" => "\\b(c(haul|hz)|hertz|tarn|autan)",
- "igwan" => "\\b(ig[wn]|sbg|saint[- ]barth)",
- "neutrinet" => "\\b(neutri|n[tre]n|belgique)",
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- "ffdn" => "\\bf(ede|fdn|rance|édé)",
- );
- # Lis le fichier contenant les infos d'un FAI
- sub info {
- my $fai = shift @_;
- my $filename = $dir.$fai.".info";
- if (-e $filename)
- {
- my $fh;
- open ($fh, '<', $filename) or die "Impossible d'ouvrir le fichier $filename en lecture";
- while (my $line = <$fh>)
- {
- return $line;
- }
- close $fh;
- }
- else
- {
- return "pas d'information pour ". $fai ."\n";
- }
- }
- # Lis le fichier contenant les nombres adh/abo d'un FAI
- sub adh {
- my $fai = shift @_;
- my $filename = $dir.$fai.".adh";
- if (-e $filename)
- {
- my $fh;
- open ($fh, '<', $filename) or die "Impossible d'ouvrir le fichier $filename en lecture";
- while (my $line = <$fh>)
- {
- return $line;
- }
- close $fh;
- }
- else
- {
- return "pas d'information pour ". $fai ."\n";
- }
- }
- # lis le fichier et retourne le contenu
- sub lecture_fichier {
- <<<<<<< HEAD
- my $fichier;
- =======
- my $fichier = shift @_;
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- my $filename = $dir.$fichier;
- if (-e $filename)
- {
- my $fh;
- open ($fh, '<', $filename) or die "Impossible d'ouvrir le fichier $filename en lecture";
- while (my $line = <$fh>)
- {
- return $line;
- }
- close $fh;
- }
- else
- {
- return "pas d'information pour \n";
- }
-
- }
- <<<<<<< HEAD
- =======
- # on compte le nombre d'adh et d'abo pour la fédé
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- sub adh_abo_ffdn {
- my $filename = $dir."ffdn.adh";
- if (-e $filename)
- {
- my $fh;
- open ($fh, '<', $filename) or die "Impossible d'ouvrir le fichier $filename en lecture";
- while (my $line = <$fh>)
- {
- return $line;
- }
- close $fh;
- }
- else
- {
- return "pas d'information\n";
- }
-
- }
- ## Le bot lit le chan et réagit
- sub said {
- my ($self, $message) = @_;
- # si on veut des info
- <<<<<<< HEAD
- if ($message->{body} =~ /^\+info/) {
- =======
- if ($message->{body} =~ /^\Q$symbol\Einfo/) {
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- shift @_;
- # Apinnet
- if($message->{body} =~ /$regex{"apinnet"}/i) {
- info("apinnet");
- <<<<<<< HEAD
- # return "site : http://www.apinnet.fr/ salon : irc://irc.geeknode.org/#Apinnet dans le Poitou-Charentes";
- =======
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- }
- # Aquilenet
- elsif($message->{body} =~ /$regex{"aquilenet"}/i) {
- info("aquilenet");
- }
- # ARN
- elsif($message->{body} =~ /$regex{"arn"}/i) {
- info("arn");
- }
- # Auvernet
- elsif($message->{body} =~ /$regex{"auvernet"}/i) {
- info("auvernet");
- }
- # Cafai
- elsif($message->{body} =~ /$regex{"cafai"}/i) {
- info("cafai");
- }
- # faimaison
- elsif($message->{body} =~ /$regex{"faimaison"}/i) {
- info("faimaison");
- }
- # FDN
- elsif($message->{body} =~ /$regex{"fdn"}/i) {
- info("fdn");
- }
- # franciliens.net
- elsif($message->{body} =~ /$regex{"franciliens"}/i) {
- info("franciliens");
- }
- # grifon
- elsif($message->{body} =~ /$regex{"grifon"}/i) {
- info("grifon");
- }
- # ilico
- elsif($message->{body} =~ /$regex{"ilico"}/i) {
- info("ilico");
- }
- # illyse
- elsif($message->{body} =~ /$regex{"illyse"}/i) {
- info("illyse");
- }
- # iloth
- elsif($message->{body} =~ /$regex{"iloth"}/i) {
- info("iloth");
- }
- # ldn
- elsif($message->{body} =~ /$regex{"ldn"}/i) {
- info("ldn");
- }
- # ndn
- elsif($message->{body} =~ /$regex{"ndn"}/i) {
- <<<<<<< HEAD
- # return "Pas d'info pour Nice data network";
- =======
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- info("ndn");
- }
- # netopi
- elsif($message->{body} =~ /$regex{"netopi"}/i) {
- <<<<<<< HEAD
- #return "Netopi = site : http://netopi.fr ; pas de salon ; en Seine et Marne";
- =======
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- info("netopi");
- }
- # pclight
- elsif($message->{body} =~ /$regex{"pclight"}/i) {
- info("pclight");
- }
- # rézine
- elsif($message->{body} =~ /$regex{"rezine"}/i) {
- info("rezine");
- }
- # rhizome
- elsif($message->{body} =~ /$regex{"rhizome"}/i) {
- info("rhizome");
- }
- # sames
- elsif($message->{body} =~ /$regex{"sames"}/i) {
- info("sames");
- }
- # sdn
- elsif($message->{body} =~ /$regex{"sdn"}/i) {
- <<<<<<< HEAD
- # return"Sallanches Data Network = siteweb : http://sdnet.info/ ; pas de salon ; à Sallanches (73)";
- =======
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- info("sdn");
- }
- # teleragno
- elsif($message->{body} =~ /$regex{"teleragno"}/i) {
- info("teleragno");
- }
- # tetaneutral
- elsif($message->{body} =~ /$regex{"tetaneutral"}/i) {
- info("tetaneutral");
- }
- # ail-network
- elsif($message->{body} =~ /$regex{"ail"}/i) {
- info("ail-network");
- <<<<<<< HEAD
- # return "Aïl-network = siteweb : http://ail-network.org/ ; pas de salon ; Tarn Sud-Est (Pays d'Autan)";
- }
- # chaul'hertz
- elsif($message->{body} =~ /$regex{"chaul"}/i) {
- # return "Chaul'Hertz = pas de site ni de salon ; Chauley, hameau à St Maurice en Rivière (71)";
- =======
- }
- # chaul'hertz
- elsif($message->{body} =~ /$regex{"chaul"}/i) {
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- info("chaul-hertz");
- }
- # igwan
- elsif($message->{body} =~ /$regex{"igwan"}/i) {
- info("igwan");
- }
- # neutrinet
- elsif($message->{body} =~ /$regex{"neutrinet"}/i) {
- info("neutrinet");
- }
- elsif($message->{body} =~ /$regex{"ffdn"}/i) {
- return "La fédération FDN regroupe des Fournisseurs d'Accès à Internet associatifs se reconnaissant dans des valeurs communes : bénévolat, solidarité, fonctionnement démocratique et à but non lucratif; défense et promotion de la neutralité du Net.";
- }
- <<<<<<< HEAD
-
- # Si le FAI n'est pas valide, on l'indique
- else {
- return "commande : +info <fai> ou +info <lieu geographique>";
- =======
- # Si le FAI n'est pas valide, on l'indique
- else {
- return "commande : ".$symbol."info <fai> ou ".$symbol."info <lieu geographique>";
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- }
- }
-
- # si on veut le nombre d'adhérent
- <<<<<<< HEAD
- elsif ($message->{body} =~ /^\+adh/) {
- shift @_;
- # Apinnet
- if($message->{body} =~ /$regex{"apinnet"}/i) {
- adh("apinnet");
- # return "site : http://www.apinnet.fr/ salon : irc://irc.geeknode.org/#Apinnet dans le Poitou-Charentes";
- =======
- elsif ($message->{body} =~ /^\Q$symbol\Eadh/) {
- shift @_;
- # Apinnet
- if($message->{body} =~ /$regex{"apinnet"}/i) {
- adh("apinnet");
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- }
- # Aquilenet
- elsif($message->{body} =~ /$regex{"aquilenet"}/i) {
- adh("aquilenet");
- }
- # ARN
- elsif($message->{body} =~ /$regex{"arn"}/i) {
- adh("arn");
- }
- # Auvernet
- elsif($message->{body} =~ /$regex{"auvernet"}/i) {
- adh("auvernet");
- }
- # Cafai
- elsif($message->{body} =~ /$regex{"cafai"}/i) {
- adh("cafai");
- }
- # faimaison
- elsif($message->{body} =~ /$regex{"faimaison"}/i) {
- adh("faimaison");
- }
- # FDN
- elsif($message->{body} =~ /$regex{"fdn"}/i) {
- adh("fdn");
- }
- # franciliens.net
- elsif($message->{body} =~ /$regex{"franciliens"}/i) {
- adh("franciliens");
- }
- # grifon
- elsif($message->{body} =~ /$regex{"grifon"}/i) {
- adh("grifon");
- }
- # ilico
- elsif($message->{body} =~ /$regex{"ilico"}/i) {
- adh("ilico");
- }
- # illyse
- elsif($message->{body} =~ /$regex{"illyse"}/i) {
- adh("illyse");
- }
- # iloth
- elsif($message->{body} =~ /$regex{"iloth"}/i) {
- adh("iloth");
- }
- # ldn
- elsif($message->{body} =~ /$regex{"ldn"}/i) {
- adh("ldn");
- }
- # ndn
- elsif($message->{body} =~ /$regex{"ndn"}/i) {
- <<<<<<< HEAD
- # return "Pas d'adh pour Nice data network";
- =======
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- adh("ndn");
- }
- # netopi
- elsif($message->{body} =~ /$regex{"netopi"}/i) {
- <<<<<<< HEAD
- #return "Netopi = site : http://netopi.fr ; pas de salon ; en Seine et Marne";
- =======
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- adh("netopi");
- }
- # pclight
- elsif($message->{body} =~ /$regex{"pclight"}/i) {
- adh("pclight");
- }
- # rézine
- elsif($message->{body} =~ /$regex{"rezine"}/i) {
- adh("rezine");
- }
- # rhizome
- elsif($message->{body} =~ /$regex{"rhizome"}/i) {
- adh("rhizome");
- }
- # sames
- elsif($message->{body} =~ /$regex{"sames"}/i) {
- adh("sames");
- }
- # sdn
- elsif($message->{body} =~ /$regex{"sdn"}/i) {
- <<<<<<< HEAD
- # return"Sallanches Data Network = siteweb : http://sdnet.adh/ ; pas de salon ; à Sallanches (73)";
- =======
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- adh("sdn");
- }
- # teleragno
- elsif($message->{body} =~ /$regex{"teleragno"}/i) {
- adh("teleragno");
- }
- # tetaneutral
- elsif($message->{body} =~ /$regex{"tetaneutral"}/i) {
- adh("tetaneutral");
- }
- # ail-network
- elsif($message->{body} =~ /$regex{"ail"}/i) {
- adh("ail-network");
- <<<<<<< HEAD
- # return "Aïl-network = siteweb : http://ail-network.org/ ; pas de salon ; Tarn Sud-Est (Pays d'Autan)";
- }
- # chaul'hertz
- elsif($message->{body} =~ /$regex{"chaul"}/i) {
- # return "Chaul'Hertz = pas de site ni de salon ; Chauley, hameau à St Maurice en Rivière (71)";
- =======
- }
- # chaul'hertz
- elsif($message->{body} =~ /$regex{"chaul"}/i) {
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- adh("chaul-hertz");
- }
- # igwan
- elsif($message->{body} =~ /$regex{"igwan"}/i) {
- adh("igwan");
- }
- # neutrinet
- elsif($message->{body} =~ /$regex{"neutrinet"}/i) {
- adh("neutrinet");
- }
- elsif($message->{body} =~ /$regex{"ffdn"}/i) {
- <<<<<<< HEAD
- adh("ffdn");
- }
-
- # Si le FAI n'est pas valide, on l'indique
- else {
- return "commande : +adh <fai> ou +adh <lieu geographique>";
- =======
- return "La fédération FDN regroupe des Fournisseurs d'Accès à Internet associatifs se reconnaissant dans des valeurs communes : bénévolat, solidarité, fonctionnement démocratique et à but non lucratif; défense et promotion de la neutralité du Net.";
- }
- # Si le FAI n'est pas valide, on l'indique
- else {
- return "commande : ".$symbol."adh <fai> ou ".$symbol."adh <lieu geographique>";
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- }
- }
- # si on veut de l'aide
- <<<<<<< HEAD
- elsif ($message->{body} =~ /^\+help/) {
- return "commandes gérées : +info, +adh, +suivi, +vote, +source";
- # return "pour les infos +info - pour les nombres d'adhérent·e·s et d'abonné·e·s +adh - pour les informations par rapport aux réunios de suivi +suivi - pour les sources du bot +source - ";
- }
- # les sources du bot
- elsif ($message->{body} =~ /^\+source/) {
- lecture_fichier("source");
- }
- # les infos par rapport aux réunions de suivies
- elsif ($message->{body} =~ /^\+suivi/) {
- lecture_fichier("suivi");
- }
- # les infos par rapport aux réunions de suivies
- elsif ($message->{body} =~ /^\+vote/) {
- =======
- elsif ($message->{body} =~ /^\Q$symbol\Ehelp/) {
- return "commandes gérées : ".$symbol."info, ".$symbol."adh, ".$symbol."suivi, ".$symbol."vote, ".$symbol."source";
- }
- # les sources du bot
- elsif ($message->{body} =~ /^\Q$symbol\Esource/) {
- lecture_fichier("source");
- }
- # les infos par rapport aux réunions de suivies
- elsif ($message->{body} =~ /^\Q$symbol\Esuivi/) {
- lecture_fichier("suivi");
- }
- # les infos par rapport aux réunions de suivies
- elsif ($message->{body} =~ /^\Q$symbol\Evote/) {
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- lecture_fichier("vote");
- }
- elsif ($message->{body} =~ /datafoin/) {
- my $de = int rand(5);
- if ($de==1) {
- return "il ne faut pas me donner à manger après minuit /o\\";
- }
- elsif($de==2){
- return "omnomnom";
- }
- elsif($de==3){
- return "mais je vais grossir /o\\";
- }
- elsif($de==4){
- return "vouiii";
- }
- elsif($de==5){
- return "datafoin <3";
- }
- }
- }
- # tout ce qu'on écrit dans /tmp/log apparait dans $channel
- my $channel = '#ffdn';
- sub connected {
- <<<<<<< HEAD
- # my $channel = shift;
- =======
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- my $self = shift;
- $self->forkit({ channel => $channel,
- run => [ qw( /usr/bin/tail -f /tmp/log ) ],
- });
- }
- <<<<<<< HEAD
- =======
- >>>>>>> e1e4ba39a66a7e535beea14fba6ec9c7ec75ef60
- # aucune idée de comment on déclenche cette ligne
- sub help { "Je suis le bot de la fédé." }
- #Info de connexion du bot
- MyBot->new(
- server => 'irc.geeknode.org',
- channels => [ '#bottestbot', '#ffdn'],
- nick => 'UneFede',
- username => 'bot',
- name => 'Droide de la Federation FDN, run by Vigdis'
- )->run();
|