Friday, October 15, 2004

Automating Internet Explorer

Yesterday afternoon I was asked to come up with a way to automatically reconfigure an option in the SMC cable modem/router boxes we adopted last year for our commercial customers. While there is a minimal command line interface, the option that we need to set is only available through the HTTP interface.

Did I mention that we're now up to about 40,000 customers?

I tried using Keytext but couldn't get it to do what I needed. I then tried Clickymouse and so far, I am able to get it to reconfigure a router pretty quickly. Once I have the router's login page loaded, the macro logs in, goes through and sets the needed option, then applies it and logs out.

However, when I try to automate pasting a router's IP address into Internet Explorer, the macro blows up. (I'm using IE because I know that the SMC was developed with it in mind. It probably works OK with Mozilla but I don't want to add something else to possibly troubleshoot at this time.)

So at this point I have a way to speed up the reconfiguration of a boatload of deployed routers, but it's still going to require babysitting to feed in the boxes' IPs and deal with any errors.

A coworker suggested using a Perl script to parse the HTTP outputs and input the required config changes, and I suppose it's possible. For example, there are Perl scripts that will allow one to use Yahoo! Mails's HTTP interface via a POP3 client. The only problem is that I don't know Perl.

The really annoying things about this all-of-a-sudden high priority project are that the config change that we're making is something that's been known about for a few years, and the next version of the firmware that will be loaded onto the boxes will allow for this config change to be made easily via SNMP.

No comments: