Sonos news

Today, Sonos announced their new 2.7 software version for their home appliances with some additional web radio features in which I’m not particularly interested as I’m more or less only listening to one web radio station. What they’ve also announced though was much more interesting: An iPhone Version of their Controller application (iTunes Link).

The thing doesn’t just look nice, it also works perfectly well and provides all the functionality you are used to have in your sonos controller, but without the controllers bulkyness (the thing is heavy and quite large). I’m constantly carrying my iPhone around anyways and it’s constantly connected to the WiFi network in my home, so it’s the perfect fit to be a sonos controller.

The application starts up quite instantly: It does show a splash screen for around three seconds, but that is still way shorter than a controller booting up from deep sleep, which you have to put it into if you want it to last longer than a day or so.

Functionality-wise the iPhone application provides everything a real controller does – well… nearly everything. I truly miss the alarm functionality, but I’m quite sure that’ll come soon enough.

Aside of that, I’m inclined to say that this little application more or less obsoletes the original controller. And in every case but the 32GB iPod Touch, it’s always cheaper to buy any Apple device and install the application than it is to buy the original Sonos controller (here in Switzerland, you can get an 8 GB touch for half the price of a Sonos controller)  – if you can live with setting up alarms in the desktop software. It’s certainly possible (and thankfully much quicker than with the original controller) to cancel a running alarm in the iPhone controller.

Very nice indeed.

On related news: I have updated my ogg to mp3 stream converter to stop looking at the url to decide whether the url to play is a stream itself or a playlist, but instead to fetch the information from the HTTP response header themselves, thus making the script to continue to work with Rainwave despite them having changed the URL for the tune in link.

My favourite asterisk feature

I’ve just included this into the context of the dialplan where the calls from and to our internal phones live.

[intercom]
exten => _55[6-8][1-9],1,SIPAddHeader("Call-Info: sip:asterisk;answer-after=0")
exten => _55[6-8][1-9],2,Dial(SIP/${EXTEN:2})

this is as useless as it is fun.

Too bad softphones are getting some real attention in the office lately, as they don’t support the answer-after feature and even if they did, where is the fun of just making yourself heard on the headphones of the victim as opposed to doing that directy on their speaker – loud enough to be heard in the whole office.

VoIP is fun and it’s about time I do more to our asterisk config but just watch it work and never fail.

IRC user interface idea

Don’t you know this problem?

You are connected to some amount of IRC servers and you are watching a certain amount of channels.

Every IRC client I know either uses tabs or windows to separate these channels in their own context, usually providing some visual clue if there was activity in a different channel you are not currently watching.

While this metaphor probably makes a lot of sense in very busy channels, I think that consolidating every channel into one single window probably is a much better way for you to follow what’s going on and to talk back to the channels – especially when you are watching lesser populated channels.

This frees you from the burden of constantly switching channel windows (or tabs) to see what is going on.

Let’s say you are connected to irc1.example.com and irc2.example.com. On irc1, you are connected to #channel1a and #channel1b and on irc2, you are connected to #channel2a

Now, to my knowledge, every current IRC client either uses three windows or three tabs (maybe even 5 windows/tabs because the server themselves get a window too) to represent this information. In window based clients, you can arrange all of them aside of each other, but talking to a certain channel still forces you to focus different windows.

Now with my idea, you would consolidate these channels. You would only get one window which contains all the messages from all channels.

So in the simplest incarnation, you’d probably see something like this in your chat window:

1) irc1/#channel1a [user1aa]> hi there!
2) irc1/#channel1b [user1a]> hi there!
1) irc1/#channel1a [user1ab]> hi user1aa
3) irc2/#channel2a [user2aa]> hi folks!

though you would probably understand much more easily what’s going on if the server-, channel- and user names were a bit more… well… distinct.

Of course, you could add color. You assign each channel a color, like this:

1) irc1/#channel1a [user1aa]> hi there!
2) irc1/#channel1b [user1a]> hi there!
1) irc1/#channel1a [user1ab]> hi user1aa
3) irc2/#channel2a [user2aa]> hi folks!

and if you need to, you can still color nicks.

1) irc1/#channel1a [user1aa]> hi there!
2) irc1/#channel1b [user1a]> hi there!
1) irc1/#channel1a [user1ab]> hi user1aa
3) irc2/#channel2a [user2aa]> hi folks!

Now… how to talk back?

Easy. Every channel is assigned a number for quick access. Just type /[channel number] to switch to that channel and type, then hit enter. The channel you last talked to is predefined and sticks around until you hit /[another channel number].

This feels so much an easier and more intuitive way to handle multiple connections, especially in cases where the channels you are joined are not too active, as in this way, you can easily watch everything that is going on.

Also, usually, discussions happen in intervals in different channels. You will only very rarely see the color concert I’ve shown above as usually, you have a discussion going on in one channel while the others are relatively quiet.

I’ll probably have to go and implement a proof-of-concept sometime in the future, but this feels like such a nice idea when just looking at it. Why is nobody doing it? What am I missing?