public
Description: Java API and command-line client for Campfire, the 37Signals chat application.
Home | Edit | New

Home

campfireclient: Java API for Campfire

This is a very early release of an API for connecting to Campfire chats in Java. Ultimately, this might be the foundation for a program that translates IRC into Campfire API calls, so you can have eggdrop in your Campfire, or connect with a 3rd party client that supports IRC. Or Jabber. Or Oscar? In any case, Campfire needs to be opened up.

API example


    ConsoleClient cc = new ConsoleClient(user, pass, subdomain, false);
    cc.joinRoom("Bots");
    cc.sendMessage("sup");

    while(!cc.lastMessage.matches(".*go.*away.*robot.*")) {
      //chill in the room
    }   

    cc.leaveCurrentRoom();
    cc.logOut();

ConsoleClient in action

[ alan@shitfit ~/git/campfireclient ] $ ./campfirc -u alan@ubergibson.com -p mypass -s fancypants -S yes
Using SSL.
Now connected to "fancypants.campfirenow.com"

Available commands:
/join <room>
/quit

/join Bots
Now chatting in "Bots"
Alan D.: whats up dude
im out
Robot M.: im out

Install, Run ConsoleClient

  1. Clone this respository.
  2. ant jar
  3. java -jar dist/campfireclient-0.1dev.jar -u you@somewhere.com -p password -s subdomain
  4. Profit!

Goals

Eventually, this thing should be able to do everything a client in a normal web browser is able to do.

Project Status

There’s not much to it now. Features it has so far:

  • Connect to a Campfire URL with specified login/password
  • Join a room
  • Listen for messages
  • Say things
  • Leave
  • It comes with it’s own console Campfire client!

Needless to say there’s a ways to go. Ultimately, this would be awesome as the foundation of an IRC proxy for Campfire, allowing the use of IRC bots in Campfire rooms.

Developers

It’s based on HtmlUnit a web-app unit testing tool that has an awesome browser emulator. It’s really a glorified screenscraper using HtmlUnit and a little bit of injected Javascript.

Last edited by alandipert, Wed Sep 24 10:47:14 -0700 2008
Home | Edit | New
Versions: