I'm building an in-house application which uses WMLScript, and I'm having problems deploying it. The first problem was that recent phones (such as an E61 on T-Mobile UK) would not execute a file of type text/vnd.wap.wmlscript, but instead would download it and save it to the memory card. I've not found any discussion of this problem, but it can be seen with this example. The WML page calls the script, the script is delivered with the correct mime-type, and the phone opens a download window instead of executing the script.

I got around this by pre-compiling the script, and serving the compiled script with mime type application/vnd.wap.wmlscriptc. This worked across a wide range of phones, except for Vodafone UK. I fixed this problem by spending an hour phoning around Vodafone until I found someone who could exclude my site from "Mobile Internet Optimisation". This "optimisation" seems to include dropping files of type application/vnd.wap.wmlscriptc.

I've now started a test on Orange, and I have the same problem. I'm about to start phoning around Orange looking for the right technical contact, but does anybody have a recipe for delivering WMLScript to recent phones which works across all the UK operators?