ruby - cinch irc bot - 一句话后的一切

时间:2012-03-07 23:47:03

标签: ruby irc

错误的标题,但我不知道如何描述它。

on :message, "\.addfact" do |m|
  open('facts.txt', 'a') { |f|
    f.print "\n *XXXXXX* ~ #{m.user.nick}"
  }
  m.reply "Fact added, #{m.user.nick}"
end

基本上,只要有人在IRC频道中,机器人就可以了:

  

< random_irc_user> .addfact这是一个事实。但它包括点......,和smileys =):)

这里的小机器人会将其附加到文本文件中,格式为

  

这是另一个事实,但它在另一条线上并且之前添加了=)~Cool_guy

     

这是一个事实,它包括点......,和smileys =):)〜random_irc_user

我已经获得了新的一行," random_irc_user"部分工作, 但我不知道如何做实际的事实。我猜论点或类似,但我对它们并不十分确定。

1 个答案:

答案 0 :(得分:3)

使用正则表达式并在命令后捕获所有内容:

on :message, /^\.addfact (.+)/ do |m, fact|
  File.open('facts.txt', 'a') { |f| f.puts "#{fact} ~ #{m.user.nick}" }
  m.reply "Fact added!"
end