If you're like me, it is often nice to know the time spent on a call (especially if you charge your services by the minute) and even though the cheapest cell phones out there can tell you the time you were just on the phone, that data is buried deep in iPhone's records and unaccessible from the touch GUI.
I have been using a script created in ruby called calllog2ical, which you can download from this page at Google Code. The install process is a breeze and it can be called from Terminal. After using the script for about a week, I decided it would be nicer to use an AppleScript to access the shell script, and so I wrote one. Its all of one line and goes like this:
do shell script "/usr/local/bin/calllog2ical.rb -v0 iPhone\\ Call\\ Log"
In the above code, the calendar I am syncing to is iPhone Call Log.
In order to get the AppleScript to work, I had to add to the script call the bin directory that contains the script, and then double escape the spaces (with two backslashes, as seen above) in the iCal calendar's name. You can find where your ruby script is installed with the which command in terminal: which calllog2ical.rb.
I then created a folder called Scripts in my user's Library » iTunes directory, and placed my newly- created AppleScript in that folder. Magically, when I open iTunes, a script menu appears next to the help menu bar, and when syncing my phone, I can call that script and my entire call log appears in iCal.
Finally, if you open the ruby script with a generic text editor like Text Wrangler, and scroll down near the bottom, you will find (at line 267) the call to make the note of the iCal event the duration of the call in seconds. Tweaking this line will give you the call in minutes:
newEvent.setNotes("Length of call: " + call.duration.to_s + " seconds")
Unfortunately, there's something awry with the way the iPhone's geotagged photos are being handled in OS X. At the moment, whether you import photos through iPhoto, Preview or using Image Capture, at some point the GPS reference may get set to North/West. This is a problem if you don't live in the northwestern hemisphere.
Regardless of whether Apple fixes this, you're still going to have to retag all of your old photos. So tonight, I wrote an AppleScript that automates the process. This script can either be set as the Automatic Task in the ImageCapture utility, or you can drag files onto the script for processing.
Copy and paste the code below into Script Editor, customize for your location, and then save as an application (eg. File Format: Application). I've #commented the code to help you find where to tweak the North/South/East/West variables.
With no unified Inbox (for good or bad), people have come up with lots (and lots) of ways of combining their email accounts into one. And with MobileMe offering push, I'm guessing some people have tried this configuration: having all their emails forward to their mac/me.com address.
However, then the problem is with replying ... when you do so, you'll expose your mac/me.com address. So, there's always the option of setting up extra SMTP servers (which has already been documented). But that doesn't allow you to truly reply from a different account (let's say your email address is for a business, and the name is different).
At least for Google (and other IMAP accounts?), there's a way to create a "send-only" account -- which has already been documented as using the "manual" checking of that account only. But that could leave you with more emails unread than you expect (as your phone may check the non-MobileMe account).
So is there a way to:
Set up a Gmail account so that it won't check email, ever...
...but still allow you to use its SMTP server...
...and will allow you to maintain a completely different "personality" (i.e. name)?
Yes! (I know, it took a long time to get here.) Read on for the how-to...
In the past, video podcasts were also available in the Music section of your iPhone or iPod touch, and you could listen to their content content as audio only.
Since version 2.0, you can access video podcasts from the Music menu, but you can view their video now. You can also view them in both portrait and landscape mode.
[kirkmc adds: In this earlier hint, we mentioned that you would only get the audio of video podcasts when playing them from the Podcast menu. It's up to you to determine if this new behavior is good or bad.]
Due to the lack of an equivalent to Palm's sync conduits, many iPhone applications are syncing to your computer over a local wireless network. When I tote my laptop around with me, I often don't have a network available to sync with, or I don't trust the networks that are available. Here's an AppleScript I use to set up my laptop to talk with my phone when I'm not at home. It creates an ad-hoc network with 128-bit WEP encryption.
Optionally you can make a network location (System Preferences > Network) with the same name as the network you're creating. In addition to allowing me to configure my other network connections, this lets me easily revert to my normal networks by selecting my default location when I'm done. The iPhone will remember the password after the first time you join the network, although you may have to select it if there are multiple networks available.
If you get an error message that the network already exists, check to make sure your phone isn't keeping that ad-hoc network alive. Just selecting another network should do it.
-- This script creates an ad-hoc network with a password and changes your
-- network location.
-- I just added network passwords and network locations to a script which
-- comes from StefanK:
-- Set NetworkName to be the name of the wireless network you wish
-- to create. This will also attempt to set the network location
-- to that name as well.
-- Set NetworkPassword to be your wireless network password. It MUST BE
-- 13 characters long (or 26 hex digits).
property NetworkName : "MyAdHocNetwork"
property NetworkPassword : "thirteenchars"
property CreateMenuName : "Create Network…"
do shell script "/usr/sbin/scselect " & NetworkName
tell application "System Events"
tell process "SystemUIServer"
tell menu bar 1
set menu_extras to value of attribute "AXDescription" of menu bar items
repeat with the_menu from 1 to the count of menu_extras
if item the_menu of menu_extras is "Airport Menu Extra" then exit repeat
tell menu bar item the_menu
perform action "AXPress"
perform action "AXPress" of menu item CreateMenuName of menu 1
repeat until exists window 1
tell window 1
click checkbox 1
click pop up button 2
click menu item 2 of menu 1 of pop up button 2
click button 1
Want to make moving all those apps on your iPhone or iPod touch from screen to screen easier? Why not move your four dock applications: Phone, Mail, Safari and iPod (or, on the iPod touch, Music, Videos, Photos and iTunes)?
By moving one or several of them temporarily to another screen, it's much easier to move multiple apps around. Just drag them to the dock (which stays constant regardless of what screen you're on); you can use the dock as a sort of "shelf" that will hold the apps while you switch screens. This is much easier than dragging an app to a given page of your home screens.
I wanted to create a text note that I could save on my iPhone home screen that contained my contact details in case my iPhone was lost and whoever found it was honest enough to try and return it to me. I wanted this note to be accessible regardless of Internet access, and I didn't want to muck up my wallpaper with this info.
This isn't a fool-proof method to make sure that whoever finds your phone knows who it belongs to, but it is better than nothing. All you do is create a webpage with your "if found" details, making sure that the page can be viewed offline, and saving the page as a bookmark on your home screen.
Create a Google account (if you don't already have one). If you do, log into Google.
Type in your Google page URL and click "Save it Now".
When the website loads, save it to your home screen with the name "IF FOUND"
The Google page you created with your "if found" details is now on your home screen, and can be accessed offline. A more foolproof method would be to make a wallpaper with this info, but for those of us who'd like to preserve the iPhone's aesthetics, this is better than nothing.
I save a lot of Internet bookmarks, some of which are from my iPhone, but I find it difficult to organize bookmarks on the iPhone. So I created a folder that I called "iPhone To Mac" in my bookmarks, and I put any bookmark I create on the iPhone into that folder. Then when I sync my iPhone with my Mac, I organize all the bookmarks I created on the Mac. This allows me to keep my bookmarks organized without organizing them on the iPhone or remembering which folder I put them in, finding them, then renaming and organizing them.
Preview has an Import function that allows you to grab images from various sources. If you choose, in Preview, File > Import Image while your iPhone is plugged in, will open a new window with all of the photos on your iPhone camera roll. You can then select photos and choose Import and the photos will open in Preview, thus allowing you to save or export photos from your iPhone without using iPhoto or Image Capture.
[kirkmc adds: I don't have an iPhone, so I can't test this, but it makes sense...]
For international travelers who cross many times zones each day, such as those in aviation and those in the military, it is common to live by Coordinated Universal Time (also known as UTC, Z or Zulu, and GMT or Greenwich Mean Time). An earlier hint noted that the iPhone can display UTC in the World Clock, but you can also set your iPhone to stay on UTC.
To change to UTC you must first select Settings > General > Date & Time. Turn off Set Automatically. You should also turn on 24-Hour Time, which is optional but is most likely used by anyone who needs to live by UTC. When you turn off Set Automatically, you are shown the Time Zone option. Select Time Zone and type in UTC in the search box. Select UTC from results list. The iPhone will now stay on UTC regardless of your location in the world.
[kirkmc adds: No iPhone here, but on the iPod touch you can set the time zone to UTC if you want.]