Blame
Date:
Tue Dec 21 08:11:28 2021 UTC
Message:
Added README to install dependencies
01
2021-12-17
jrmu
#!/usr/bin/perl
02
2021-12-17
jrmu
use strict;
03
2021-12-17
jrmu
use warnings;
04
2021-12-17
jrmu
05
2021-12-17
jrmu
package RSSBot;
06
2021-12-17
jrmu
use base qw(Bot::BasicBot);
07
2021-12-17
jrmu
use XML::RSS::Parser;
08
2021-12-17
jrmu
09
2021-12-17
jrmu
my $url = 'https://wiki.ircnow.org/index.php?n=Site.AllRecentChanges?action=rss';
10
2021-12-17
jrmu
11
2021-12-17
jrmu
sub said {
12
2021-12-17
jrmu
my $self = shift;
13
2021-12-17
jrmu
my $arguments = shift;
14
2021-12-17
jrmu
if ($arguments->{body} =~ /^!rss/) {
15
2021-12-17
jrmu
my $p = XML::RSS::Parser->new;
16
2021-12-17
jrmu
my $feed = $p->parse_uri($url);
17
2021-12-17
jrmu
foreach my $i ( $feed->query('//item') ) {
18
2021-12-17
jrmu
my $title = $i->query('title');
19
2021-12-17
jrmu
my $contributor = $i->query('dc:contributor');
20
2021-12-17
jrmu
my $link = $i->query('link');
21
2021-12-17
jrmu
$self->say(
22
2021-12-17
jrmu
channel => $arguments->{channel},
23
2021-12-17
jrmu
body => $title->text_content.' - '.$contributor->text_content.': '.$link->text_content,
24
2021-12-17
jrmu
);
25
2021-12-17
jrmu
}
26
2021-12-17
jrmu
}
27
2021-12-17
jrmu
}
28
2021-12-17
jrmu
29
2021-12-17
jrmu
package main;
30
2021-12-17
jrmu
31
2021-12-17
jrmu
my $bot = RSSBot->new(
32
2021-12-17
jrmu
server => 'irc.example.com',
33
2021-12-17
jrmu
port => '6667',
34
2021-12-17
jrmu
channels => ['#perl103'],
35
2021-12-17
jrmu
nick => 'nickname',
36
2021-12-17
jrmu
name => 'username',
37
2021-12-17
jrmu
);
38
2021-12-17
jrmu
$bot->run();
IRCNow