All pastes #896318 Raw Edit

Zeug

public text v1 · immutable
·published 2008-02-08 15:28 UTC
rendered paste body
require 'rubygems'
require 'xmpp4r'
require 'open-uri'
require 'rexml/document'

client = Jabber::Client.new(Jabber::JID.new('bot@archbox.localdomain/bot'))
client.connect
client.auth('bot')
client.send(Jabber::Presence.new.set_status('I\'m your friendly PS bot.'))


def serverOnline()
    begin
        url = 'http://laanx.fragnetics.com/_xml_reports/server_report.xml'
        #url = 'server_report.xml'
        xmlData = REXML::Document.new(open(url))

        isOnline, onlineCount = "",""

        xmlData.elements.each('SERVER/LAANX_ONLINE') do |xml|
            isOnline << xml.text
        end
        xmlData.elements.each('SERVER/ONLINE_COUNT') do |xml|
            onlineCount << xml.text 
        end

        if isOnline != "YES"
            result = "Laanx is offline. :("
        else
            result = "Laanx is online with #{onlineCount} players! :)"
        end
        result
    end
end

client.add_message_callback { |msg|
  if msg.body == "laanx"
    searchresult = serverOnline()
    answer = Jabber::Message.new(msg.from)
    answer.type = :chat  # Alles andere nervt
    answer.body = searchresult
    client.send(answer)
  end
}

Thread.stop