Jammer is a quick 1hr project that clones IRC discussion on Yammer.
Yammer is a social network for internal use by organisations. It’s a great way to broadcast information and have asynchronous discussion, and simple enough for anyone to use.
Developers already have a great forum for asynchronous discussion – IRC. IRC is great for developers to use, but most irc client software is not particularly user friendly. Unless you idle in the channel all the time you will miss scrollback.
I haven’t used Yammer for some time so I thought I’d remind myself how to use the API by building a bridge between IRC and Yammer. Here’s the result of just over an hour’s work:
Jammer is a quick proof of concept IRC bot that will sit in an IRC channel and clone messages from authorised users to a specified group in Yammer. It lets you keep a record and publish discussion for others in the organisation to see.
It might be useful to someone else as a tutorial for getting started with the Yammer API and how to authenticate with oauth. There are only 3 short Java files.
Here’s how you run Jammer:
$ git clone https://github.com/benjiman/jammer.github $ cd jammer $ mvn compile $ mvn assembly:single $ java -jar ./target/jammer-0.0.1-SNAPSHOT-jar-with-dependencies.jar <irc server (in quotes)> <channel> <yammer group id> <yammer client id> <yammer client secret>
Then in your IRC client:
/msg jammer auth
Click the link provided, approve the app, and copy the authentication token back with
/msg jammer auth <token>
Now simply join the channel the bot is in and start talking and all messages will be cross-posted to Yammer.
You can get a client id and client secret in Yammer by registering a new application.
You can get a group id by visiting the group on Yammer.com and copying the id at the end of the URL