Ruby Blather宝石,试图改变输入

时间:2014-02-21 21:50:05

标签: ruby rubygems xmpp chat

我正在使用Blather制作聊天机器人。

我从文档中采用这个例子:

message :chat?, :body => 'hello' do |m|
  say m.from, 'world'
end

但是我希望它可以解释你好的任何'案例',即hEllo,HELLO,你好,并回应世界。

我将如何做到这一点?

2 个答案:

答案 0 :(得分:1)

您应该能够使用正则表达式。在这种情况下,只需进行一个简单的不区分大小写的匹配:

message :chat?, :body => /hello/i do |m|
  # ... etc

答案 1 :(得分:1)

如果您阅读the "guards" documentation,您会看到:

# Hash with regular expression (:body => /exit/)
#   Calls the key on the stanza and checks for a match
#   Equivalent to stanza.body.match /exit/
message :body => /exit/