Pushover notifications for Orchard CMS

I’m a big fan of Pushover – a push notification service – having used it for a few months for notifications from some home automation tasks. It’s free after purchasing the inexpensive app (for under 5k messages/month), easy to use, and useful for those small but important messages that might normally get swallowed into the great void some of us call ‘Email’.

This fits in quite nicely with Orchard‘s rather useful Rules module, as integration with Pushover would allow us to receive notifications to our mobile devices when events happen on an Orchard site, such as content being created, comments submitted by readers, or events fired from other modules.

So to glue this all together I’ve written a new module for Orchard called Kobowi.Pushover (source), making use of the rules and tokens modules for completely customisable messages triggered from almost any event!

To get started, you’ll need a Pushover account and an API key, and of course either the iOS or Android app installed on your device. Once you have entered the API key under your site settings, you can then start creating rules which use “Send a Pushover message” as an action.

The module uses a very simple wrapper around Pushover’s RESTful API called pushover-dotnet, which you can use to easily add Pushover notifications to your own projects.

I hope that you find this useful, and as always I’m eagerly awaiting any feedback :)

Text Editor embedded in a data: URI.

Well, I saw Snake in a data: URI last week on Hacker News and thought it would be pretty darn awesome to make an editor that would fit in a data: URI.

Everything is stored in the URI after the hash. So, you can open it up, edit some text, hit save, then copy the new URL and use that. I’m pretty sure there is some upper-limit on the size of URIs (IE8 apparently doesn’t like any that are bigger than 32KB), so I’d think twice about pasting your master’s thesis in to it.

Click here for awesome.

You can see the pre-minification version on GitHub.

SkySerial: Read programme information from your Sky+ box

Browsing through an old backup the other day, I stumbled across some code I started writing back in late 2008/early 2009: SkySerial. Most Sky/Sky+ boxes shipped in the UK are made by Pace, and appear to have an RS232 port on the back of them. This is used to output some kind of Nielsen ratings information, has been used as the interface for Sky’s Gnome thingy, and provides data for a third-party control and monitoring program about what you are watching (for feedback from commands issued by the RF2 interface).

SkySerial is a C# implementation of a parser that understands these messages, and includes a small console program so you can see what is on the telly! I’ve since tidied it up a bit, added some unit tests, and tested against the latest firmware on my own Sky box.

Here it is running on my media PC:

The source, as usual, is over on BitBucket. If you find a use for it, let me know :-)

Convert WinSCP/PuTTY SSH Host Keys to known_hosts format

The other day I post about SharpSSH and mentioned that if you want to use strict host checking (i.e. checking the remote server’s public key against a stored version to protect against man-in-the-middle attacks), you need a ready-made known_hosts file. This is all well and good if you use the OpenSSH utilities but not so awesome if you are on Windows and use PuTTY or WinSCP, which store the known hosts in the registry.

There is already a converter that takes your known_hosts and turns it in to some registry entries, but I needed something to work in the other direction, so I wrote reg2kh.

It works for both PuTTY and WinSCP stored keys. I’ve tested only with rsa keys but dss should work, with at most only minor changes.

> python reg2kh.py --winscp ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQDMskjPhmqsB *snip* AA==
> python reg2kh.py --putty ssh-rsa AAAAB3NzaC1yc2EAAAAD23ABAAAAf8qHnPq90Adnd+ *snip* bQ==

Not being a Pythonista, surely there will be omissions or quirky bugs, so I await your pull requests!

New Reddit Button content part for Orchard

Hi and welcome to my blog! In this post, I want to tell you a little evening project I’ve been working on.

Kobowi.RedditButton adds a ‘Reddit this!’ or ‘Submit to Reddit’ button content part to Orchard. It supports the full list of buttons available from Reddit and has a bunch of configuration options at both the content type and content item level which dictate how the button is shown.

Here’s a few screenshots to demonstrate how it all works.

This module is available now in the Orchard Gallery. The source is hosted over on BitBucket and I encourage you to fork and submit a pull request if there are any bugs or requests for features (or just pester me in the comments).