For the past month I've been working on the Signal node.
The hardware consists of an Arduion Uno hooked up to a Bluetooth transceiver, a generic IR Led and IR Receiver, a push-button and an indicator Led.
The client software running on CASTLE acts as a messenger for CASTLE. It allows you to train the system w/ your remote control buttons (though I'm looking for a decent online repository besides ircentral and LIRC), and then sends them over to CASTLE with a reference and the actual infrared code value, which is then saved for later use.
Following from the output of the speech interpretation system, a command data structure is sent over to the signal server for parsing and breakdown, which then generates/look-ups the series of IR codes it needs to send over to Signal to execute the cmd. Ex. With the TV on and at another channel, 'Show me CNN' would (when a generated cmd gets to the server script) build and a series of button codes for the manufacturer and based on the CNN channel code from the provider which would then be sent to Signal to transmit to the TV.