RoomWare at Music and Bits, October 21, 2009

Posted on October 15, 2009


Are you a hacker / programmer and will you be at Music and Bits?
This post is for you. Read on.

Presets and: join the brainstorm

Brainstorming with Vincent Lindeboom of Music and Bits we found that it might be fun to brainstorm with you about possible applications we can make with any technology (not specifically RoomWare based, see below) before the event will take place, to get to know each other and cook up some nice projects before the event starts. This allows us to prepare things before October 21st and kick ass and (hopefully) blow peoples minds on that day.

What is the next step if you want to join?
Mail me: peterkaptein [at] gmail [daht] com. I will build a mailing list using CC’s and when required we will create discussions online.

What will RoomWare do?

At Music and Bits we will launch the first Proof Of Concept regarding the new RoomWare Framework. This framework and the setup will include:

  1. An Identity Broker, linking social profiles to people and QR-codes
  2. The RoomWare Server which is events-based acts like a switch to distribute messages to connected applications
  3. QR-code scanners based on a web-cam and a Flash-client to register users and identify them at specific applications
  4. BlueTooth based “beacons” plus a Android Phone Client which offer configurable remote-controls to local installations
  5. Several Flash-based components and libraries for Rapid Application Development

The RoomWare Server communicates via Sockets, using “messages” being either: events, requests, actions and responses. By using Sockets, it is relatively easy to setup an interactive system based on multiple clients on multiple machines, using any programming environment, directly communicating with each other.

Read our manifesto
To understand What the RoomWare project is about, read our manifesto.

What else is there?
On each name badge a QR-code will be printed. This code contains the name and an ID of each person.

What can we build?
One of the applications Vincent and I discussed is this:

  1. People can register with their name badge / QR-code and state their social profiles (, Twones, etcetera)
  2. Their ID and social profiles will be stored in a central database (which will be killed after the event) for reference by any of the RoomWare based applications
  3. Anywhere people show their name badge to a QR-code scanner (a web cam + Flash Client) this local reader will fire an event that contains the profile of the person and can be used for anything including:
    1. A music player with a personalized playlist conforming the personal preferences of the user
    2. Videos
    3. Showing a slide show of Flickr images combined with music
    4. Configurators or music recorders storing the actions of the user for later use and mixing and matching stuff
    5. Combined music making using any type of input, iincluding Wii-motes and other hardware you bring

The role of sockets and messages

First: think of the RoomWare server as a central Event Handler. You push an event to it and the RoomWare Server will send it to the right party.

As stated before the RoomWare server makes use of Sockets to push data to it’s clients. This means that you can connect any kind of software to the RoomWare Server and can communicate to any other application connected to that same server. 

The messages are sent using a model based on the Publish / Subscribe principle where the individual components state which events or messages they want to receive. 

The messages can be anything you like in any format you prefer. The only thing pre-defined is the header of the message which the RoomWare server needs to, including

  1. The type of message, being either: an action, an event, a request or a response
  2. A list of “topics” related to subscribers who want to receive this this message. (Each subscriber who has that topic listed will receive that message)
  3. A “Message start” code to seperate the message from the header

The content of the message is irrelevant for the RoomWare Server. It will only pass the message through to any subscriber interested in the topic.

Using this setup

Using this setup allows you to create your own applications in any shape or form you like. By making an agreement with the other party receiving your messages you will define how you shape the content of your messages and what will be done with it. It is great fun with distributed applications.

You like it? You want to make clustered interactive shit with other hackers / programmers and music and bits? 

Mail me. See above.

Posted in: Events