aggregate tweets and IRC to project on screen
Java Scala
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
app config change Aug 25, 2014
pircbot/src/main/java/org ssl support Feb 28, 2013
project ssl support Feb 28, 2013
www last minute change Mar 2, 2013
.gitignore bump up twitter API to 1.1 Aug 25, 2014 ssl support Feb 28, 2013
build.sbt ssl support Feb 28, 2013
screenshot.png screenshot Feb 18, 2013


closed-captioning is a tweet + IRC aggregator, intended for conference talks. this is inspired by ruby-no-kai/kaigi_subscreen.

hashtag is a fun way of getting audience feedback, but it's not meant to be reliable or responsive, partially due to twitter's hourly API limits. IRC on the other hand, while not as accessible as twitter, is more reliable and responsive.


how to setup closed-captioning


run sbt:

> twt log
accept the authorization request in your browser, for the fun to begin.
(brower should pop up asking if you want to let sbt-twt access you account)
then run `twt pin <pin>` to complete the process.
> twt pin 8686743

this creates a configuration to grab tweets as you.


under conf directory create a file named application.conf:

closed-captioning {
  websocket {
    port = 5679

  irc {
    nickname = "your_bot_name"
    username = "your_bot_name"
    hostname = ""
    port = 6667 # or 7000
    use_ssl = false # or true
    encoding = "UTF-8"
    channel = "##your_channel"

  twitter {
    search-query = "#scala"
    count = 5
    interval = 60s

the nickname and the username cannot be your own nickname.


using your favorite IRC client, join the specified channel as yourself.

starting websocket server

run re-start from sbt shell to start the websocket server in the background:

> project closed-captioning
> re-start
[info] Application not yet started
[info] Starting application in the background ...
app: Starting
app: [2013-02-18 06:44:00] Contacting myJRebel server ..
app: ready!

this might take a little time. once the server is up, you should see your bot joining the IRC channel.

JavaScript client

open using Chrome. if it says "connection open," then we are in business. start typing something into the IRC channel.