easy-gtalk-bot icon indicating copy to clipboard operation
easy-gtalk-bot copied to clipboard

An easy DSL for creating Google Talk bots in Ruby

h1. easy-gtalk-bot

A very easy tool for creating Google Talk bots

h2. It's really easy!

h3. Installation

sudo gem install easy-gtalk-bot

h3. Usage

h4. Getting online

require 'easy-gtalk-bot'

bot = GTalk::Bot.new(:email => "[email protected]", :password => 'sekrit')
bot.get_online

h4. On invitation

bot.on_invitation do |inviter|
  puts "I have been invited by #{inviter}. Yay!"

  # do something useful

  bot.accept_invitation(inviter)
  bot.message(inviter, "Hello there! Thanks for invitation!")
end

h4. On message

bot.on_message do |from, text|
  puts "I got message from #{from}: '#{text}'"

  # do something useful

  bot.message from, "I heard that!"
end

h4. Going infinite

# Don't be confused with the name of this method.
# We actually keep the current (main) thread alive while letting listener thread to do its job.
# So we have no need to set up an any infinite loop.
Thread.stop

h2. To-do

bot.get_online :invisible => true

bot.set_status :away

GTalk::Account('[email protected]').available?

bot.contact_list # => Array

bot.in_contact_list?('[email protected]')

Copyright © 2010 Daniel Vartanov, released under the MIT license