2013-06-23 77 views
-1

我正在使用Bot::BasicBot編寫一個記錄聊天的bot。我有一個配置hashref,看起來像這樣:在Bot :: BasicBot構造函數中使用變量

my $config = { 
    cryptokey => "a" x 32, 
    nickpass => "password", 
    nick => "loggerbot", 
    server => 'irc.foonetic.net', 
    port => 6697, 
    ssl => 1 
}; 

我有我用來讀取自定義選項中進入hashref一個單獨的配置文件。我已經測試過了,他們正確地閱讀。但是,當我將項目添加到構造函數中時

LogBot->new(

server => $config->{server}, 
port => $config->{port}, 
ssl => $config->{ssl}, 
channels => ["#test"], 

nick  => "$config->{nick}", 
username => "loggerbot", 
quit_message => "shutting down" 
)->run(); 

機器人不連接,甚至超時。如果我省略變量並直接將值直接放入,它就可以工作。我做錯了什麼?

+0

是它的暱稱或用戶名屬性?或兩者? –

+0

這是兩個。我還沒有添加用戶名到配置哈希。 –

+0

如果不確定傳遞給構造函數的參數是否使用'Data :: Dumper'。 '嚴格使用;'也應該是個好主意。 –

回答

1

我想通了Data::Dumper。事實證明,我在配置文件中讀取時忘記了每行,因此變量在最後有新行。

相關問題