Messaging and Communication - iPhone Hacksby Damien Stolarz, Adam Stolarz, David Jurick
This excerpt is from iPhone Hacks. With iPhone Hacks, you can make your iPhone do all you'd expect of a smartphone -- and more. Learn tips and techniques to unleash little-known features, find and create innovative applications for both the iPhone and iPod touch.
Over the last several decades, computers, phones, and Internet platforms have provided us with dozens of different modes for text-based multimedia communication: email, chat, text messaging, instant messaging, and multimedia messaging.
The iPhone and iPod touch support email exceptionally well, providing high-fidelity support for many common email attachments. The addition of near-instant "push" email support to the iPhone—for free—has enhanced real-time communication.
This chapter introduces the iPhone email system and various clever ways to use it. It also covers the other must-have communication tools—SMS, IRC, and IM—and ways to get the most out of these protocols. Finally, it presents several workarounds to solve the iPhone's remaining deficiencies in these areas.
Sure, the iPhone is a "computer in the palm of your hand." But it lacks a few key features that desktops have. The iPhone has a tiny keyboard, making it difficult to enter long URLs. Frustratingly, the iPhone still lacks (as of this writing) copy-and-paste functionality, making the manipulation of URLs—a key part of Internet power surfing—a difficult task. And the iPhone has resisted the urge to provide system-wide filesystem access, preferring to keep data (pictures, videos, podcasts, and notes) in their own application "silos."
Fortunately, the iPhone does have a feature that can be leveraged into a makeshift copy-and-paste and filesystem—email. Many of the built-in iPhone applications have an integrated "email this" feature that allows URLs and picture attachments to be emailed. And because the iPhone can connect to the many free mail servers, saving files and URLs is easier than it seems.
The iPhone's email application is probably the easiest to set up of any phone-based email. It has flexible support for IMAP, POP, Exchange, and AOL. One of the ways that iPhone email excels is in its ability to preview HTML email, display most common attachments (.pdf, .doc files, and .xls files), as well as to follow the links in emails.
One of the main complaints about early versions of the iPhone was its lack of "push" email—the iPhone "pulled" email on a schedule and the shortest interval that you could set for updates was every 5 minutes. That was resolved with firmware Version 2, putting the iPhone on an even playing field with the ubiquitous BlackBerry. You can get push email from an Exchange server, from Apple's MobileMe service, or even from a free Yahoo! email account (Figure 3.1, “Yahoo! push email”). iPhone (and iPod touch) email is easy to set up even without being connected to a computer.
Although there was a time, long ago, when large email attachments were a burden, for most of the free email services, those times are past. Yahoo! and Google both provide free IMAP accounts with tremendous storage (Google calls their plan "Infinity+1," as they are continually increasing the amount of storage available to each user). Therefore, it's quite easy to set up an additional email account that's only for private use for your own personal storage.
Anything that the iPhone can play can be attached to an email. Most graphic image formats, MP3 and AAC music, MP4 videos, Microsoft Office (Word, PowerPoint, and Excel files), and PDF files can be viewed. As mentioned, Yahoo!'s email even supports push on the iPhone, so it's an ideal candidate for this use, as there will be almost no delay between sending yourself a file or link—from your desktop—and having it show up on the phone.
The first step is to create a free account at Yahoo! (Figure 3.2, “Yahoo! Email signup—you know the drill.”).
Go to Settings→Mail→Accounts→Add Account and choose Yahoo! Mail (Figure 3.3, “So many mail options!”). Fill out the required information in the new window (Figure 3.4, “Yahoo! free push email storage”). Once you're done, just hit the Save button at the top right. Your iPhone will then connect with Yahoo! to verify the information. Once it finishes verifying, your additional account(s) will be saved and visible in the Accounts section of the Mail screen. If you click Advanced, you can verify that push mail is enabled.
You can send any reasonably sized files—including multimegabyte MP3s and movies—to this email "hard drive" (Figure 3.5, “Sending files to the private email account”).
Once these notes-to-self get pushed to your iPhone, you can access any of the documents for view or playback by clicking their icons in the message (Figures Figure 3.6, “Email storage” and Figure 3.7, “Viewing an attachment”).
If you ever need a hard copy, you can quickly and easily forward them to someone who has a printer. You can even create "folders"—a very filesystem-esque concept—via the Yahoo! Webmail page or the iPhone and organize your various "files" (attachments) just like you might on your hard drive. The great thing is that these will be cached (downloaded) onto your iPhone, be web-accessible, so if you should need to restore your iPhone, you won't lose any of them.
Another useful trick is to bookmark links on websites. Many websites have a "recommend this" or "email this link" feature for articles. You can use this private iPhone email address for those kinds of messages, so they don't clutter up your normal inbox.
While we're on the subject of free "push" services, it's important to note that Google offers free Calendar and Contact syncing. Check out www.google.com/mobile/apple/sync.html.
As mentioned before, the closest the iPhone comes to copy-and-paste is the inclusion of an "email this" in many iPhone applications, allowing one to send web URLs, notes, pictures (Figures Figure 3.8, “"Copying" a URL to the "clipboard"” and Figure 3.9, “"Copying" a photo to the "clipboard"”), and on jailbroken phones, movies, and any other file accessible on the phone.
If your phone is jailbroken, installing MobileFinder (found in Cydia the section called “Install Third-Party Apps” and shown in Figure 3.10, “MobileFinder Icon”) will allow you to attach any file in the entire filesystem to an email. This is very convenient for backups and for sending movies, audio files, or other content that is on the iPhone and needs to be backed up, shared, or saved in the inbox for convenient access. Using MobileFinder the section called “Manipulate Your iPhone's Filesystem”, navigate to the file you want, as in Figure 3.11, “Backing up the Address Book via email with MobileFinder”, then click the "E-Mail" button on the bottom left. This will launch your default email account with the selected file attached.
The Mobile SMS application that comes on the iPhone is functional, but it lacks many of the text messaging features that people have grown used to on other phones. An initial lack of multiple-recipient texting was remedied in firmware Version 1.1.3, but some serious limitations remained. Multimedia Messaging Service (MMS), also known as picture messaging, provided by every mobile carrier and supported by most camera phones, is completely missing from the iPhone.
There are other reasons the built-in SMS just doesn't cut it. Many people want to send canned messages from a message template—"I'm going to be late, please have the call without me"—without having to type it all. And even though the iPod touch, not being a phone, doesn't have any built-in texting support, people want to send messages with it as well.
Luckily, there are some useful tricks and third-party applications to help you get around the SMS and MMS limitations. Many of these solutions use built-in features of the iPhone or are App Store apps and thus don't require jailbreaking.
Prior to firmware 1.1.3, sending a SMS to multiple recipients was impossible. Even if your iPhone has 1.1.3 or later, the SMS that you send to multiple recipients still diminishes your plan's monthly allowance of text messages. Sending text messages via email conserves your valuable text message allotment and allows iPhone owners to use email groups to still send SMS to multiple recipients.
The only requirements for accomplishing this are that you know what cellular service provider each of your recipients uses, and that you are connected to the Internet with either Wi-Fi, 3G, or EDGE. No jailbreak is required! As long as you know this information, the rest of this process is a piece of cake.
First, write down the 10-digit cellphone numbers of the contacts that you would like to send the SMS message to. Next, open your email account and compose a new email. In the To field, type in the 10-digit phone number followed by an "@" sign and the domain address associated with that person's cellular service provider. The domain addresses and character limits of major U.S. cellular service providers are listed here:
Older AT&T Wireless: email@example.com (110- and 160-character limits for TDMA subscribers and mMode/Next Generation network users, respectively)
Cingular: firstname.lastname@example.org (160-character limit)
Newer AT&T Wireless: email@example.com
T-Mobile: firstname.lastname@example.org (140-character limit)
Verizon: email@example.com (160-character limit)
Sprint PCS: firstname.lastname@example.org (160-character limit)
Say, for example, that you wanted to send messages to the recipients whose numbers are (619) 123-4567, an AT&T Wireless subscriber, and (818) 123-4567, a Verizon subscriber. You would write them as
<email@example.com>, pressing the blue plus sign button to add additional recipients. Characters written in the subject and message fields of the email will be included in the text messages as "(subject)message". Figure 3.12, “Entering multiple numbers into a new email to send as SMS” shows the completed message.
Because you are sending the SMS messages via email, it won't be billed as a text message, and it won't count against your monthly allowance of text messages. However, it will still count as an incoming SMS message for the recipient, which could count against their monthly text message allowance and/or incur a charge, depending on their service provider.
In addition to multiple SMS recipients, this email technique will work for a single recipient. By sending SMS text messages to one or more recipients using your email, you'll be saving money, as these won't be billed as normal outgoing SMS text messages.
A similar approach is taken by several of the App Store SMS messaging applications, such as Maildash by PureBlend Software (Figure 3.13, “Using Maildash”) and Quicksend from Absolute Apps. These applications use SMS gateways to forward emails to SMS clients.
A second way to get text messages out of your iPhone or iPod touch is through instant messaging. Both Yahoo! and AIM use SMS gateways that allow you to text directly from an IM client. To send text messages via IM, just add a "buddy" using the recipient's phone number with a plus before it, as shown in Figure 3.14, “Adding a mobile number in Mac AIM”. You'll get responses to this SMS in your IM chat.
Although AIM can text only domestically, Yahoo! has some worldwide texting capability. You can see a list of supported locations here: http://messenger.yahoo.com/features/sms.
There's an App Store app called beejive (Figure 3.15, “Sending SMS with beejive”) that also sends SMS through AIM or Yahoo! messaging, and integrates with your iPhone address book so you don't have to manually add the recipient phone numbers.
Here is a way for you to send and receive MMS without any jailbreaking whatsoever. As with SMS, to send a picture message, you must first know what cellular service provider the recipient uses. Once you know this information, use one of following MMS email addresses, replacing xxxxxxxxxx with the recipient's 10-digit mobile number:
Once you have the recipient's information ready, open the picture from your iPhone's Camera Roll, and click the icon at the bottom left to pull up a menu (Figure 3.16, “The email Photo button”). Select Email Photo, and you'll be brought to the email composition screen with your picture attached to the email. On the first line, enter the recipient's cell number followed by the appropriate MMS email address as shown in Figure 3.17, “Sending an MMS message to a recipient using Verizon Wireless”. If you want to send it to more than one person, just add an additional email address in the To field. Then press Send, and the recipient will receive the picture as a normal MMS message.
If the recipient has an iPhone that does not support MMS, you will have to send the picture to their regular email address instead of the previously described MMS email addresses.
Once you know this process will work, you can add a "phone-email" to your contacts' email listings in your Address Book. You could also do this in advance on your computer's address book and sync it over to your iPhone.
Unfortunately, the iPhone does not support Multimedia Messaging Service (MMS). Some carriers implement an alternate method of receiving the message via the Web. In the U.S. market on AT&T, when you receive an MMS, you may get an email message such as the one in Figure 3.18, “The email”, telling you to log into a web page. Without copy-and-paste functionality, accessing this message is a pain, but it can be done.
Enter this data into the form they send you (Figure 3.19, “Retrieving an image”).
This allows the message to show up, as you can see in Figure 3.20, “The picture retrieved”.
Have the sender attach the media via email to any email address you can check on your iPhone. If you have a lot of friends who send you messages, you can set up a separate email account the section called “Get the Most from iPhone Email”. As long as the media is in an iPhone-compatible format (JPEG, PNG, TIFF, MP3, and so on), you'll be able to play it back or view it on the iPhone. And because this process is done completely by email, neither you nor the sender will incur any MMS charges from your service providers. If the sender is on an iPhone as well, the solution is obvious—have them email the picture.
Alternatively, if the sender only knows your cell number, they can host the picture on a web page (if it's not already hosted), and send an SMS message containing a link to the web page. Depending on their phone, they may have a feature that allows them to send a link as a text message, or to copy and paste the URL from their phone's web browser into an email.
Email is a great way to send messages to your phone see the section called “Get the Most from iPhone Email”, but often, tiny ephemeral to-dos or URL messages get lost in the morass of distracting email messages. And if you don't have push email configured just right, the message might not arrive right away. The sheer inconvenience of booting up an email program, typing in your iPhone email address, and waiting for it to send begs for another solution.
Fortunately, there's a way to get important notes onto the iPhone: text messaging. Using an IM-to-SMS gateway such as those provided by the AOL Instant Messaging (AIM) or Yahoo! Messenger desktop clients, you can very easily send URLs and short messages to your phone. This gives you prominent notification on your phone's screen, as well as an audible alert, so if the message is "don't forget to buy milk," you've got a good chance of noticing it before you get home.
Depending on the text message option attached to your cellular plan, you may pay extra to send or receive text messages.
First, create an account on either AIM or Yahoo!; for this example, we use an AIM user called "iphonehacks." The look of the screen varies by client (we're using a Mac here) but the approach is the same in most clients: add a user using the plus sign and the 10-digit number (Figure 3.21, “Cell phone numbers in AIM”).
Sending a note to yourself is quite fast due to the fast-delivery design of the text messaging system (that's part of what your text message plan is paying for). Typing phone numbers into the IM is probably the quickest way to get them from the desktop to the phone and not lose it, which is especially useful if someone is reading a number to you (Figure 3.22, “Sending a phone number”). The number will be converted to a text message through AOL's IM-to-SMS gateway, and sent to the iPhone. The iPhone recognizes it as a phone number, so you can click it and quickly dial it.
Now your small bits of information—shopping lists, to-do lists, and the like—won't get lost in your email inbox when sent via SMS.
Let's say you needed to note down an address for the Apple Store (Figure 3.23, “Selecting a Google Maps URL”) and you wanted to send that map URL to your phone.
Because URLs can be very long, if you send them via SMS, they're going to be chopped into multiple text messages, may cost more to send, and won't be clickable when you receive them anyway (Figure 3.24, “A long URL broken into two messages”).
The trick is to go to http://tinyurl.com. There you will find a form where you can paste in the URL. TinyURL hosts a link to your URL that is much shorter —just a few characters (Figure 3.25, “TinyURL makes URLs tiny”).
These tiny URLs fit clickably into a single SMS (Figure 3.26, “Clickable tiny URL”).
It's worth noting that Google already provides another way to send the URL via its own SMS gateway, as shown in Figure 3.27, “Google offers send-to-phone”. A number of websites are incorporating features that allow you to send bits of information to your mobile via SMS, so look for them.
The iPhone does so many things quite well, making it all the more frustrating when the iPhone fails to perform some normal task. Tethering, copy-and-paste, forwarding SMS…the list goes on. And sending and receiving MMS picture messages, just like on any normal phone, is another one of those frustrations.
Some people don't want to work around their phone's inability to receive MMS, as in the section called “Text Your iPhone with Your Desktop Instant Messenger”—they want it to "just work." The good thing is that the iPhone is very capable of it. It just takes some software—and a change to the texting plan—to make it work. Specifically, it requires:
Wireless Application Protocol, or WAP, is a standard allowing phones to access the Internet. WAP is used extensively on most phones that have a "wireless Internet" feature. Because most phones have far less computing power than a desktop computer, this set of standards allowed web pages to be formatted for the small screen and to reduce the bandwidth necessary to deliver them.
For the protocol-minded, WAP could be considered a sort of "TCP/IP" for phones, providing TCP-like streams through the Wireless Transaction Protocol (WTP), UDP-like data delivery through the Wireless Datagram Protocol (WDP), and a sort of "compressed HTTP" through the Wireless Session Protocol (WSP).
WAP Push is a network-to-phone push protocol that sends a WAP URL to the phone for it to then retrieve automatically without user intervention—sort of like texting a web address directly to the phone. The iPhone was promoted as the first phone with "real Internet" and, like many advanced smartphones, was able to use the Internet TCP/IP protocols directly. Subsequently, Apple developed a separate push architecture for MobileMe and Exchange on the iPhone.
As a result, most iPhone data plans do not have the "WAP Push" feature enabled by default. Before you can add support for MMS, you must add WAP Push to your plan, without removing access to the normal WAP gateway that the iPhone uses. Typically, you can call your provider and request that it be added to your plan if you don't already have it. If they offer to transfer you to "iPhone technical support," don't let them, because you're asking for a very un-iPhonic thing.
The technical changes that need to be made, once you get hold of your carrier's technical sales representative (see following section), are:
Enable WAP Push.
Preserve both the old and new WAP gateway (i.e., don't disable the iPhone features).
Change the texting plan to a non-iPhone plan (i.e., a texting plan that supports Picture messaging).
Leave the iPhone data plan intact (allows visual voicemail to work).
Resend over-the-air activation messages, or OTAs, to the phone.
The forums at www.swirlyspace.com have lots of data on how to configure various worldwide GSM carriers to allow MMS.
Although your carrier may vary, the majority of U.S. domestic iPhones are on AT&T, so this hack will show you how to get it working on AT&T.
Call 888-892-9760. Navigate through the responses until you reach an operator. Validate your account credentials to their satisfaction.
Ask to speak to a technical sales representative.
Ask if you can please remove your iPhone text messaging plan, and add the normal text messaging plan with MMS features (WAP Push).
Sometimes, depending on the level of expertise of the tech support person, they may not understand the goal. One way to make it clear is to say that you want the ability to use the SIM card in both an iPhone and in another phone that supports Picture Messaging (MMS). That way, they will know that they need to keep the iPhone features working (iPhone data plan, visual voicemail, and access to the iPhone-specific WAP gateways that allow WAP traffic to go to the iPhone) as well as the new WAP gateways that will enable the WAP push. As an added bonus, you can now swap your SIM card into other phones, as long as they are unlocked or locked to AT&T's network.
SwirlyMMS (www.swirlyspace.com) can be installed with Cydia on a jailbroken the section called “Open Your iPhone or iPod touch to Customization by Jailbreaking” phone. This app allows you to send MMS pictures to phones capable of receiving them, and to receive MMS as well.
Launch SwirlyMMS, and you'll see a screen with a couple of buttons. Click the Settings button and enter your MMS information (Figure 3.30, “SwirlyMMS”). You will need to contact your cellular provider, or the SwirlyMMS forums, to determine the appropriate information. Settings for a number of popular providers can be found on www.swirlyspace.com.
Here are settings that worked for SwirlyMMS on the U.S. AT&T network:
After you fill out the settings, click the Save button at the top left. Click the New MMS button at the bottom right, and you'll see a screen where you can compose the MMS message, as in Figure 3.31, “Composing a picture message”. You can give the message a title if you like. Click the Plus button to the right of the To box to select from your contacts or just type in a phone number. Next, click the Plus button to the right of the File: box to select a picture to send, or to take a new picture. Finally, press the Send button to send the message.
Receiving MMS is just as easy. Just like the other message-related applications, SwirlyMMS will tell you when a picture message has come in (Figure 3.32, “SwirlyMMS in the launch bar”). At that point, MMS works just like it would on other phones. When you receive a message and click on it, Swirly will fetch it and display it (Figure 3.33, “Receiving a picture message”). From there you can use the buttons on the bottom to save the image somewhere on your iPhone's filesystem (it's automatically copied to your photos as well), or forward it to another recipient.
This is a simple but useful hack. The iPhone is configured to vibrate for 0.4 seconds whenever you receive a new message, and there's nowhere in the Settings menu where you can change that. Such a short alert duration can make it easy to miss the announcement of a new SMS message. Luckily, there is a way to change this duration on jailbroken iPhones the section called “Open Your iPhone or iPod touch to Customization by Jailbreaking” so that it vibrates for longer (or shorter, if you prefer) when you receive a new SMS.
Most settings on an iPhone are stored in files called Property Lists or plists for short. You can find out how to edit plists in the section called “Edit Mac OS X Property Lists (plists)”.
You will need to access the /System/Library/Frameworks/Celestial.framework directory of your iPhone the section called “Manipulate Your iPhone's Filesystem”. Find the file called SystemSoundVibrationPatterns.plist in this directory (Figure 3.34, “Finding SystemSoundVibrationPatterns.plist”) and copy it to your computer.
Find the section of the file beginning with the line Default, as in Figure 3.35, “Original values of OnDuration and TotalDuration”. The numbers 0.4000… and 0.5000… that are wedged between the phrases are the values for OnDuration and TotalDuration, respectively. The value for OnDuration represents 0.4 second duration of your iPhone's default SMS vibration alert. To prolong the duration to 1.4 seconds, change OnDuration to 1.4, and TotalDuration to 1.5, as demonstrated in Figure 3.36, “New values of OnDuration and TotalDuration”. You can use a different duration if you prefer, but just make sure that TotalDuration is 0.1 greater than OnDuration.
Once you're done editing the file, save it and copy it back to the /System/Library/Frameworks/Celestial.framework directory of your iPhone. This will replace the original file with the altered file that you created. Finally, reboot your iPhone to apply the changes.
Instant messaging is a very common and quick way for people to communicate. Many people "live" in their IM client. Most smartphones have third-party applications that enable you to use IM, and many if not most Internet-connected phones have added AOL Instant Messenger (AIM) support as a standard function. Every Macintosh computer comes with the AIM-compatible iChat program, so the lack of iChat on the iPhone was somewhat surprising. Thankfully, the iPhone developer community has produced a number of solutions for this IM dilemma.
Solutions to this problem fall into several major categories. App Store applications—such as AOL's own AIM client—work predictably: they have the annoying feature of logging you out when you quit them, due to the "no background app" policy for App Store apps. Web-based solutions have the worst integration with the phone and are a bit sluggish, but they work, and at least they stay connected when you quit them. Some jailbroken IM clients offered persistent connectivity but then decided to "go legit" and get into the App Store, losing this feature in the process. Finally, a couple of hacks based on push email and backgrounding have created somewhat of a solution.
As of this writing, it is anticipated that Apple will be releasing a more comprehensive push architecture for application developers that will accommodate the needs of IM apps.
FlickIM (www.flickim.com) is a web-based AIM application (Figure 3.37, “FlickIM's main screen and an IM”) representative of a variety of web-based IM products. It remembers your login information and reconnects automatically when you navigate to it. It has corner message windows that pop up when you receive a message in a conversation you're not looking at, which you can tap to go right to that chat. It also has full support for landscape mode (of course the large widescreen keyboard prohibits reading the chat, but if you're more comfortable typing with the larger keys, you're good to go). Also you can configure it to notify you via email or SMS when you receive a new IM. Also, it has a variety of skins to match your personal preference. If all you use is AIM, you're good to go quickly with this client.
Jivetalk is available both as an App Store application and a web application (http://iphone.beejive.com) (Figure 3.38, “beejive's Jivetalk web application”). It supports AIM, ICQ, MSN, Y!IM, Jabber, and Google Talk, and you can store multiple accounts for each protocol. By default, the keyboard closes every time you send a message. If you click the gear in the top-right on your buddy list, you can correct that and set other options. For a web app, it works quite well. The web app uses the same servers as their flagship App Store product.
Although there were several excellent native IM applications on jailbroken phones, the siren song of App Store riches made everyone "go legit." As a result, there is little left in the Installer/Cydia world for free or shareware IMing.
As of this writing, MobileChat (Figure 3.39, “MobileChat”), IM+ Chat (Figure 3.40, “IM+ Chat”), and beejive's Jivetalk (Figure 3.41, “beejive's Jivetalk App Store application”) are the main options for multi-IM messaging. MobileChat is relatively inexpensive, but IM+ Chat is almost $10 and beejive is almost $15. However, they both operate services that act as an intermediary between you and the IM network, keeping you logged in, so they have real ongoing service costs to support the features of their application. IM+ has a free version with reduced features that you can try out. beejive can even email you or text message you when new messages come in, which can help notify you if you're doing something else on the device and close it to create a "background" experience.
The various instant messaging apps are categorized in the "social networking" section of the App Store, and the major social networks (Facebook, LinkedIn, etc.) tend to supply some sort of iPhone application. In addition, both AOL (Figure 3.42, “AOL's AIM application”) and Yahoo! (Figure 3.43, “Yahoo!'s IM application”) provide a free instant messaging application that works with their particular IM system.
Instant messaging is supposed to be instant, not delayed until you run the IM app. And if your phone doesn't beep or buzz to let you know that you have a message, messaging isn't very effective, either.
If you have a jailbroken phone, you have a couple of additional options for using IM products in a way that works like it should.
Backgrounder the section called “Run Applications in the Background” can be used to let an IM client run in the background, so that you can go on to run other applications and remain logged in. It's easy to use—simply hold down the Home button slightly longer than normal, and you'll get a "Backgrounding Enabled" message (Figure 3.44, “AIM in the background”). If you have your ringer switch set to silent, AIM will vibrate the phone briefly whenever an IM comes in, and it will continue to be logged in in the background. You can run any other app—play video, take calls, and so on—and your instant messaging session will still work.
The decades-old IRC protocol remains one of the most popular communication methods, especially for those "in the know" in the computing world. And it's a great way to get support for iPhone hacking the section called “Get Quality Support with iPhone Hacking”. This hack covers two ways to IRC on your iPhone or iPod touch.
If you have a Mac, and you chat on IRC, chances are you've used Colloquy—a powerful and flexible OS X IRC client. And now, thanks to a new plug-in, you can monitor your Mac-based IRC connection from your iPhone/iPod touch's Safari browser. Here's how:
The first step is getting Colloquy installed on your computer. The latest version can be found at www.colloquy.info/downloads.html.
After Colloquy is installed, you will need to install the Web Interface plug-in, which can be downloaded from www.colloquy.info/downloads/colloquy-web-interface.zip. Put the plug-in into /Library/Application Support/Colloquy/PlugIns.
Set the password that you have to type in when you fire up the connection on your iPhone. Fire up Terminal in your /Utilities folder, and type in the following:
defaults write info.colloquy WebInterfacePassword
Start Colloquy, or restart it if it was already running.
If your iPhone is connected to the same Wi-Fi network as your Mac, you can go to http://ipaddress:6667 (where ipaddress is the IP address of your Mac), type in the password you set earlier when prompted, and you're good to go. However, if you want to connect to it from EDGE or from a remote network, you'll need to make sure that port 6667 is properly forwarded to your Mac. This process is a bit different for each router. You can refer to your router's manual or use www.portforward.com to set this up. Once that's all straightened out, head to http://ipaddress:6667. If you don't know your IP off the top of your head, finding out is as simple as visiting www.whatismyip.com.
Now your iPhone will be controlling your Mac's Colloquy remotely. It will let you talk in whatever rooms you've currently joined on your Mac. (You won't be able to configure your connections using your iPhone.) You can scroll through your list of rooms or the messages in a room by scrolling with two fingers. If you tilt your iPhone to landscape view, you can read the IRC log in widescreen. You can't type this way however, as the keyboard would've eaten 80% of the screen, so they didn't bother adding it.
You'll see the same chat on both your iPhone and your Mac, so you can jump seamlessly from your iPhone to your Mac and back without losing track of the conversation. Also, if your connection dips out for a minute or more, the messages will be sent to your phone when your connection comes back on, so there are no messages lost in the void.
Any other details, updates, or answers to questions you might have can be found at www.colloquy.info/iphone.
If you want to IRC on the go—away from your home wireless network—you can do so by using one of the following apps.
If you're looking for a commercial, easy-to-use GUI IRC client, Rooms (Figure 3.45, “Some of the screens of Rooms”) is available from the App Store.
If you're just looking to get connected and know your way around IRC already, the quick, free way to get onto IRC is to install iRCm, which can be found in Cydia on a jailbroken phone (Figure 3.46, “iRCm”).
iRCm is very simple. Add servers with Add Server, type in the server information, tap back, tap server, and tap connect. It shows a bit of the behind-the-scenes connection log. The double-spaced chats might make it more readable, but in essence they function the same. iRCm also has support for IRC slash commands (e.g.,
/raw, for those who know what they're doing).