diff --git a/README.md b/README.md index 43bea828eb8a7e645db5dbd8cdc96ef7b752d4f2..ff7c183390e58a03fc7a7b2e02763f03ba392e4e 100644 --- a/README.md +++ b/README.md @@ -32,6 +32,23 @@ PlayBot est codé en Perl. Il dépend des modules suivant : Il utilise de plus la librairie Python [Weboob](http://weboob.org). +Debian : ++ libpoe-component-irc-perl ++ libpoe-component-irker-perl ++ libdbi-perl ++ libdbd-mysql-perl ++ libjson-perl ++ libmoose-perl ++ libwww-perl ++ liburi-find-perl ++ libinline-perl ++ python-dev ++ libxml2-dev ++ libxslt-dev ++ cpan : + + Module::Reload + + Inline::Python ++ from source : weboob ### Configuration diff --git a/lib/sessions/downloader.pm b/lib/sessions/downloader.pm index 62839216dbd948caf29ca0a9aaa3b74d8e038188..9758e9d6cfa6a6499a6e81014264bc7bd549e98e 100644 --- a/lib/sessions/downloader.pm +++ b/lib/sessions/downloader.pm @@ -3,6 +3,7 @@ package sessions::downloader; use strict; use warnings; +use JSON; use POE; use lib "$FindBin::Bin/lib/"; @@ -11,18 +12,26 @@ use sessions::downloader::ddl; my $log = Logging->new('STDOUT', 1); -POE::Session->create( - inline_states => { - _start => \&on_start, - ddl => \&sessions::downloader::ddl::exec, - filename => \&sessions::downloader::ddl::filename, - signal_filename => \&sessions::downloader::ddl::signal_filename, - signal_ddl => \&sessions::downloader::ddl::signal_ddl, - signal_move => \&sessions::downloader::ddl::signal_move, - signal_rm => \&sessions::downloader::ddl::signal_rm, - end_task => \&sessions::downloader::ddl::end_task, - }, -); +local $/; +open CONF, '<', 'playbot.conf'; +my $json = <CONF>; +my $conf = decode_json($json); + +if ($conf->{download}) +{ + POE::Session->create( + inline_states => { + _start => \&on_start, + ddl => \&sessions::downloader::ddl::exec, + filename => \&sessions::downloader::ddl::filename, + signal_filename => \&sessions::downloader::ddl::signal_filename, + signal_ddl => \&sessions::downloader::ddl::signal_ddl, + signal_move => \&sessions::downloader::ddl::signal_move, + signal_rm => \&sessions::downloader::ddl::signal_rm, + end_task => \&sessions::downloader::ddl::end_task, + }, + ); +} sub on_start {