Wednesday 15 July 2009

Iphone OS 3.0 Update

Ok I bit the bullet and upgraded to 3.0 the other day, quite painless really, inclusive of redsn0w 0.8 - all is looking good.

Apart from the re-install of ipl2iph....

So while this is fresh in my head, I'll detail the install instructions for 3.0.

1. You should already have Cydia installed, I haven't used Icy yet so I'm unsure its default packages.

2. First off - Cydia doesnt include apt-get by default anymore - so an "apt" package has to be installed. I think it was the apt 6.0 I installed.

3. Install Mobile Terminal from Cydia.

4. Install "Air Sharing" from either iTunes or the App Store, then run it at least once.

5. Get the latest copy of ipl2iph

6. Transfer to /usr/bin/ on the iPhone and set permissions of 777

7. Look up a programme on the iplayer site on iPhone and HIT REFRESH.

8. Open Mobile Terminal and type su

9 enter the root password (usually alpine).

10 type ipl2iph

11 answer y to all prerequisite installs.

12 wait .. time passes .. done.

Some technical changes have occurred since the last OS. My script works by looking up the SuspendState.plist on the iPhone to determine the last visisted iplayer "page" and then pass that info onto Paul Battley's iplayer downloading script. This plist used to be quite sparse but now contains your back/forward history of Safari tabs as well as the tab content, for when you re-open Safari. Which means it was quite a struggle to extract the correct ID for the intended programme. So as long as the refresh button is punched and the script is run subsequently, you should end up with the correct download.

Also the plutil command has been updated with better xml handling, but gave me a headache with not finishing its job fast enough.

2 comments:

Squiggle said...

You rock ... You really really really do.

I manually downloaded all of the pre-reqs etc when I went to 3.0, but I restored my phone yesterday and HEY ... a new version!

<3.

Thanks so much for this.

Graeme said...

Firstly, I love this script, thankyou. It allows me to watch my BBC programs on business flights.

I had an issue with this version again though where it wouldn't find the program indetifier. I wondered if it was bookmark problem that I had before i went to v3.1.2, (the one i left a few comments about in the last post you made), but my fix last time didn't seem to work. I wonder why I seem to be the only one having issues with the script....

This time i decided to install VIM on the iphone and see if I could figure out what was going wrong (I'm also new to unix and thought it would be good for my scriping to see what you've done here):

I enabled the y/n prompts "Lookup last viewed ?" and "Use this identifier ?" and noticed that there was no identifier being found: "echo ${bbcident}" just printed a blank line.

I ran the grep command from the shell and got back nothing, so read the plist using cat, and noticed that there was no instances of index.html anwhere so how would it find 'index.html#episode' ?!?!

I removed the index.html from the grep query just leaving #episode and now it works.

Now you may be wondering why I have explained all my workings there and wasted so much of your time reading it: well it was in order for me to ask these questions:
1) Why are you querying for index.html#episode, if just #episode works?
2) Have I somehow broken the script in a way that I haven't seen yet?
3) Was it not working because I'm on 3.1.2, not 3.0?

Thanks for the script, and I look forward to hearing your answers