Rubyでbotを作るときの話
利用するもの
- rexml (標準ライブラリ)
- xmpp4r (rubygem)
botがchatroomのownerになる。
exampleのmucsimplebot.rbを改造する。
XEP-0045: Multi-User Chat 10.1.2 Creating an Instant Roomを送信するためにm.joinとThread.stopの間に以下を追加
# unlock room
iq = Jabber::Iq.new(:set)
query = Jabber::IqQuery.new
query.add_namespace("http://jabber.org/protocol/muc#owner")
xx = Jabber::X.new
xx.add_namespace("jabber:x:data")
xx.add_attribute("type", "submit")
iq.query=query
query.add_element(xx)
m.send(iq)