Schrift
[thread]4466[/thread]

Bot::BasicBot Funktionsweise: Methoden des Moduls benutzen



<< >> 2 Einträge, 1 Seite
Gast Gast
 2007-06-01 16:39
#37568 #37568
Guten Tag,

ich wollte gerade in Perl das Modul Bot::BasicBot [1] benutzen um ein wenig den Umgang mit Perl Modulen zu lernen, was mit einem IRC Bot ja relativ spiellerisch gestaltet werden kann.

Mein Bot verbindet sich auch schon zum Server und joint auch einen Channel, leider bringe ich es nicht hin, die einzelnen Methoden zu benutzen, ich verstehe nicht ganz wie ich sie aufrufen muss.

Mein Code

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
#!/usr/bin/perl
#
use Bot::BasicBot;

my $bot = Bot::BasicBot -> new(
server => "irc.euirc.net",
channels => ["#aaaa_chan"],
nick => "basicbot_a"
);

$bot -> run();

$bot -> say(who => "basicbot_a", channel => "#tobias_chan", body => "hallo" );


Mein say() [2] sollte nun einfach etwas in den Channel schreiben, nachdem der Bot gejoint ist, allerdings passiert nichts
Code: (dl )
$bot -> say(who => "basicbot_tobi", channel => "#tobias_chan", body => "hallo" );



Danke schonmal für eure Hilfe

[1] ht*tp://search.cpan.org/~tomi/Bot-BasicBot-0.7/lib/Bot/BasicBot.pm

[2]
ht*tp://search.cpan.org/~tomi/Bot-BasicBot-0.7/lib/Bot/BasicBot.pm#say(_key_=%3E_value,_.._)
moritz
 2007-06-01 17:43
#37569 #37569
User since
2007-05-11
923 Artikel
HausmeisterIn
[Homepage]
user image
[quote=Guest,01.06.2007, 14:39]
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
#!/usr/bin/perl
#
use Bot::BasicBot;

my $bot = Bot::BasicBot -> new(
server => "irc.euirc.net",
channels => ["#aaaa_chan"],
nick => "basicbot_a"
);

$bot -> run();

$bot -> say(who => "basicbot_a", channel => "#tobias_chan", body => "hallo" );
[/quote]
Hallo,

das Problem ist, dass
Code: (dl )
run()
die Kontrolle übernimmt und dein Programm erst dann weiter ausgeführt wird, wenn der Bot nicht mehr rennt.

Wenn du nach dem Verbinden zum Server etwas schreiben willst, musst du die Methode
Code: (dl )
connected
überschreiben.

Ich habe vor kurzem einen kleinen Irclogbot geschrieben, eine Version benutzt Bot::BasicBot. Falls du dir das als Beispiel mal anschauen willst:
http://svn.pugscode.org/pugs/misc/irclog/ilbot2.pl
(vorsicht, noch ein wenig buggy, alles in allem funktioniert er aber)

HTH,
Moritz
<< >> 2 Einträge, 1 Seite



View all threads created 2007-06-01 16:39.