Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
bin
examples
lib
log
spec
.gitignore
LICENSE
README.rdoc
Rakefile
firering.gemspec

README.rdoc

firering

Campfire API interface powered by eventmachine, em-http-request and yajl-ruby.

require 'firering'

print "Enter subdomain: "; subdomain = gets.chomp
print "Enter user: "     ; login     = gets.chomp
print "Enter password: " ; password  = gets.chomp

conn = Firering::Connection.new("http://#{subdomain}.campfirenow.com") do |c|
  c.login = login
  c.password = password
end

EM.run do
  conn.authenticate do |user|
    conn.rooms do |rooms|

      rooms.each do |room|
        if room.name == "Room Name"

          room.stream do |message|
            message.user { |user| puts "#{user}: #{message}" }
          end

        end
      end

    end
  end

  trap("INT") { EM.stop }
end

campf-notify

The gem bundles an executable script for spawning libnotify powered notifications. To be able to use it, check your distro package repositories for the apropriate package containing the “notify-send” command line utility. In the case of archlinux, the package name is “libnotify”.

The script needs the following environment variables in place:

CAMPFIRE_SUBDOMAIN
CAMPFIRE_TOKEN

Once the variables are set, run the script as follows:

campf-notify room-name /path/to/an/icon.png

And watch the lovely notifications each time something is posted to a room.

Running the specs

When the specs are run a process is forked where a Rack application is run. This rack application serves all the fixtured responses that mimic the working of the real campfire app. The only caveat here is you may get a conflict if you are already running something on the port (8909). If this happens you'll need to open the specs/spec_helper.rb file and change the port used to run the fixtures server.

For more details take a look at spec/fixtures/load_server.rb file.

TODO

  • Better API documentation

  • Post files to a room

  • Retrieve recently uploaded files

Note on Patches/Pull Requests

  • Fork the project.

  • Make your feature addition or bug fix.

  • Add tests for it. This is important so I don't break it in a future version unintentionally.

  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)

  • Send me a pull request. Bonus points for topic branches.

Contributors

Copyright

Copyright © 2010 Emmanuel Oga. See LICENSE for details.

Something went wrong with that request. Please try again.