Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Lately I've been using iChat for some time and sometimes it's boring to switch windows to read the next text. Snow Leopard (and other Mac OS X versions) has a text to speech feature, but I see it only works for selected text and pressing a combo key.

Is it possible to somehow hack iChat to read out loud automatically the incoming text from a chat window? Bonus points if you can make different people use different voices (one being a chipmunk).

share|improve this question
up vote 4 down vote accepted

In the iChat preferences under the Alerts panel you can select the event Message Received, then check the box underneath that says Run an AppleScript script: and use AppleScript to change the voice depending on user and speak the message.

using terms from application "iChat"
   on message received theText from theBuddy for theChat
      if (theBuddy = "Joe") then
         set theVoice to "Bubbles"
         set theVoice to "Bruce"
      end if
      say theText using theVoice
   end message received
end using terms from

Unfortunately, there is no chipmunk voice included with osx.


Fortunately, there's a way to emulate the chipmunk voice. :)

if (theBuddy = "Joe the Chipmunk") then
   say theText using "Bruce" pitch 75 speaking rate 250
   say theText using "Bruce"
end if
share|improve this answer
+1 Nice chipmunk effect ! – Studer Aug 6 '10 at 22:33
Help! When I try this, I get this message whenever it runs the script: Event: Message Received in Chat Room File: speak.applescript Error: Error -1708 – Larry Gritz Nov 29 '10 at 18:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .