Metafridge Jabber Support: Unterschied zwischen den Versionen
Consti (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Consti (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| Zeile 5: | Zeile 5: | ||
#!/usr/bin/env ruby | #!/usr/bin/env ruby | ||
# Metafridge Jabber/Twitter Bot - Version 0.2 | |||
# SAT July 26 2008 | |||
# Consti AT Consti PUNKT de | |||
require 'xmpp4r' | require 'xmpp4r' | ||
require 'net/http' | require 'net/http' | ||
| Zeile 11: | Zeile 13: | ||
require 'iconv' | require 'iconv' | ||
require 'uri' | require 'uri' | ||
require 'open-uri' | require 'open-uri' | ||
client = Jabber::Client.new(Jabber::JID.new('metafridge@jabber.metalab.at/metalab')) | client = Jabber::Client.new(Jabber::JID.new('metafridge@jabber.metalab.at/metalab')) | ||
client.connect | client.connect | ||
client.auth(' | client.auth('metafoo') | ||
client.send(Jabber::Presence.new.set_show(:chat).set_status('Feed me.')) | client.send(Jabber::Presence.new.set_show(:chat).set_status('Feed me.')) | ||
client.add_message_callback { |msg| | client.add_message_callback { |msg| | ||
if msg.type == :chat | |||
puts "\n------INCOMING-------\nFrom: #{msg.from}\nMessage:#{msg.body}\n--------------------\n" | |||
begin | |||
incoming = URI.encode(msg.body) | |||
@spl = incoming.split(/:%20/) | |||
if (@spl.length == 2) | |||
puts "\n------SENDING TO FRIDGE-------\nUsername: #{@spl[0]}\nMessage:#{@spl[1]}\n--------------------\n" | |||
open("http://fridge.metalab.at:1337/cgi-bin/post_text.cgi?lauftext=#{@spl[1]}&playfunction=1").read | |||
puts "\n-----SENT-----\n" | |||
else | |||
puts "\n------SENDING TO FRIDGE-------\nMessage:#{incoming}\n--------------------\n" | |||
open("http://fridge.metalab.at:1337/cgi-bin/post_text.cgi?lauftext=#{incoming}&playfunction=1").read | |||
puts "\n-----SENT-----\n" | |||
puts "\n------SENDING RESPONSE-------\nTo:#{msg.from}\nMessage: Thanks!\n--------------------\n" | |||
m = Jabber::Message.new(msg.from, 'Thanks!').set_type(:normal).set_id('1').set_subject('Thanks!') | |||
client.send m | |||
end | |||
rescue | |||
puts "Keine Korrekte Message " | |||
end | |||
end | end | ||
} | } | ||
Thread.stop | Thread.stop | ||