Hack97.Make Chat Talk Out Loud


Hack 97. Make Chat Talk Out Loud

Sit back and just listen, as this hack uses the Microsoft Speech SDK to make incoming chat messages speak aloud!

Works with: Windows version of Skype.

Perhaps you're visually impaired and you need incoming chat messages to be read aloud so that you can participate in one-on-one or multiperson chat sessions. Or maybe you like to wander around your computer room while listening to chat sessions. Or perhaps you just think that talking chat is cool. Whatever the reason, getting chat to talk aloud is simple with this hack.

The VBScripts in this chapter use the Microsoft Speech SDK, which you can download free of charge at http://www.microsoft.com/downloads (search for "Speech SDK").


This hack uses two scripts, start_talking.vbs and stop_talking.vbs, to make chat start talking and stop talking, respectively. Only incoming chat is spoken aloud, the rationale being that you remember what chat messages you type in yourself; that is, you remember what you said, but you want to hear aloud what others say.

Use this script, start_talking.vbs, to make Skype chat start talking aloud:

 ' File: start_talking.vbs Dim objVoice, objFSO, objSkype, objSemaphore Dim strTempFolder, strSemaphoreName Set objVoice = WScript.CreateObject("Sapi.SpVoice") Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") Set objSkype = WScript.CreateObject("SkypeAPI.Access", _                                     "SkypeAPI_") ' Skype event handler Sub SkypeAPI_ChatMessageReceived(ChatMessage)     objVoice.Speak ChatMessage.Body, 1 End Sub ' Main script begins here strTempFolder = objFSO.GetSpecialFolder(2) strSemaphoreName = objFSO.BuildPath(strTempFolder, _                                     "talking_chat.tmp") Set objSemaphore = objFSO.CreateTextFile(strSemaphoreName, true) objSemaphore.Close objSkype.ConnectAndWait 15000 Do While objFSO.FileExists(strSemaphoreName)     WScript.Sleep 500 Loop 

And use this script, stop_talking.vbs, to make Skype chat stop talking aloud:

 ' File: stop_talking.vbs ' Main script begins here Dim objFSO, strTempFolder Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") strTempFolder = objFSO.GetSpecialFolder(2) objFSO.DeleteFile objFSO.BuildPath(strTempFolder, _                                    "talking_chat.tmp") 

The easiest way to use these scripts is to turn them into shortcuts and assign them hotkeys. Create a shortcut named Start Chat Talking that points to start_talking.vbs as its target, then right-click on the shortcut and choose Properties. In the shortcut properties dialog that is displayed, select the Shortcut tab, click on the text entry field opposite "Shortcut key," press the key sequence you want as your hotkey (for example, Ctrl-Shift-T for Talk), and then click OK. Do the same for stop_talking.vbs, giving its shortcut the name Stop Chat Talking and a different hotkey sequence (for example, Ctrl-Shift-M for Mute). Now, beforeor even duringa chat session, you can switch between making chat talk aloud and making chat silent by using only a couple of hotkey sequences!

12.8.1. See Also

  • If you need some help setting up shortcuts for the scripts in this hack, see "Add Fast-Dial Shortcuts to Your Menu or Desktop" [Hack #49], as that hack shows how to set up shortcuts in detail.




Skype Hacks
Skype Hacks: Tips & Tools for Cheap, Fun, Innovative Phone Service
ISBN: 0596101899
EAN: 2147483647
Year: 2005
Pages: 168

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net