Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!

Use Skype with Address Book and/or Butler Apps
Do you use Skype for telephone calls from Mac to Mac or from Mac to phone? Than this hint brings some cool news to you. With a liitle help from AppleScript, you can call your contacts from within your Address Book application. If you use Butler, you can also use this for getting fast access to your phone numbers or Skype contacts.

First let's discuss the Address Book/AppleScript solution. Open Script Editor, and create this simple AppleScript. (Note that you can also download the script if you prefer.)
using terms from application "Address Book"
  on action property
    return "phone"
  end action property
  
  on action title for p with e
    return "Call with Skype"
  end action title
  
  on should enable action for p with e
    return true
  end should enable action
  
  on perform action for p with e
    
    set SKYPEurl to "callto://" & (value of e as string)
    tell application "Skype"
      get URL SKYPEurl
      activate
    end tell
    return true
  end perform action
end using terms from
Save the script (call it Skype or whatever you like), and then (quit Address Book first), move it into your user's Library -> Address Book Plug-Ins. Now launch Address Book, and you'll have new contextual menu items on the phone numbers. You can also make a new label for a phone number and name it, for example, Skype, and then type in the Skypename of your contact.

The two new contextual menu options are Dial with Skype, which you use for dialing numbers with Skypeout, and Call with Skyp, for using Skypenames for phoning from Mac to Mac or PC.

If you want to use Butler for fast access to your Skypecontacts, here's how. Open Butler's Preferences panel, and go to the Abbreviation section. In the window in the lower section, you see some code for an AppleScript made to use with a phone tool other than Skype. Replace that code with this:
--name: call with skype

to switchText from t to r instead of s
  set d to text item delimiters
  set text item delimiters to s
  set t to t's text items
  set text item delimiters to r
  tell t to set t to item 1 & ({""} & rest)
  set text item delimiters to d
  get t
end switchText

try
  set theNumber to "[NUMBER]"
  set theNumber to switchText from theNumber to "" instead of " "
  set theNumber to switchText from theNumber to "" instead of "("
  set theNumber to switchText from theNumber to "" instead of ")"
  set theNumber to switchText from theNumber to "" instead of "/"
  set theNumber to switchText from theNumber to "" instead of "-"
  set theCommand to "CALL " & theNumber
  tell application "Skype"
    send command theCommand script name "butlercall"
  end tell
  set theResult to "[SUCCESS]"
on error
  set theResult to "[ERROR]"
end try
get theResult
It doesn't matter write your phone numbers; they can include +, -, (, ), or blanks. Only slashes cause problems. You can also set hot keys to phone numbers in Butler for real quick access.

Ok, so maybe you think: "why don't you just import your addresses from Address Book to Skype?" The answer is that this way, you only have one place where you store your data, so you never have to wonder "which number is the right one?" Thanks to Peter Maurer for the great support, making this possible.

[robg adds: I tried both methods, and both worked great. The only caveat is that, in the USA at least, to use Skype Out to call land lines, the phone numbers in Address Book must be stored with a "+" at the front, like this: +1-303-555-1212. Once I formatted some of my numbers in this way, they all worked great with the scripts. Nifty!]
    •    
  • Currently 2.50 / 5
  You rated: 3 / 5 (4 votes cast)
 
[26,698 views]  

Use Skype with Address Book and/or Butler | 10 comments | Create New Account
Click here to return to the 'Use Skype with Address Book and/or Butler' hint
The following comments are owned by whoever posted them. This site is not responsible for what they say.
Use Skype with Address Book and/or Butler
Authored by: ebroder on Jul 20, '06 08:30:43AM

Could you just check to see if the phone number started with +1 and if not, prepend it? I don't have any of my Address Book entries in Skype's format, and I don't want to go and change all of them...



[ Reply to This | # ]
Use Skype with Address Book and/or Butler
Authored by: mjerjohnson on Sep 03, '06 11:08:53AM

a somewhat easy way to make phone numbers skype friendly is to export your address book database in one big vcard, then edit the database in excel. i did a search/replace and it worked well. just make sure you save it back as only text (without and microsoft formatting). you should be able to re-import this text file back into address book without any problems, and it should give you the option of just appending the changes to the current users in your address book already.



[ Reply to This | # ]
Use Skype with Address Book and/or Butler
Authored by: mark hunte on Jul 20, '06 09:30:18AM

I am prone to miss things so I'm Sorry. (evidence in my post above : - P )

And I can NOT speak for the Butler part...

....BUT how is this script an improvement on the one I posted here:

http://www.macosxhints.com/article.php?story=20051221143702865

--- mh



[ Reply to This | # ]
Use Skype with Address Book and/or Butler
Authored by: kiljoy on Jul 20, '06 01:47:14PM

Uh... why do you need a script? If you select the text next to the number in addressbook (mobile, home, work), a dropdown should appear and you can select 'Dial with Skype'.

Of course, unless I've done something to have this added to addressbook, but it looks like something skype has done.

*shrug*



[ Reply to This | # ]
Use Skype with Address Book and/or Butler
Authored by: mark hunte on Jul 20, '06 03:08:03PM

Yes but it does not work with numbers that do not have the + prefix.

---
mh



[ Reply to This | # ]
Use Skype with Address Book and/or Butler
Authored by: jpmckeown on Aug 16, '06 08:20:33AM

Works well. I hard-coded +44 into the script as 99% of my calls are UK, but as someone said a script addition to add that if missing would be better. What I won't do is work though Address Book adding international prefixes.



[ Reply to This | # ]
Use Skype with Address Book and/or Butler
Authored by: robogobo on Jun 19, '07 10:18:26PM

Thanks for the scripts. I just replaced the Phone Handler Script in Butler, and finally have the ability to dial Skype calls from the Address Book without actually opening Address Book or importing 300 contacts into Skype.

Now, never really being satisfied, I'm looking for a way to make the script the default action in Butler, or changing the action hotkeys, rather than displaying the phone number in 700pt numbers across the screen.



[ Reply to This | # ]
Use Skype with Address Book and/or Butler
Authored by: robogobo on Jun 22, '07 11:28:22AM

hmmm the script doesn't seem to be working anymore. Skype isn't responding. If skype isn't running, I get asked permission to let the script use skype, skype starts, then nothing. If skype is running already, I just get no response. Is anyone using this successfully?

If so could you shoot me an email? (Click my username to do that)

Thanks!



[ Reply to This | # ]
Use Skype with Address Book - This Still Works
Authored by: mac.by.jake on Jan 12, '10 05:05:23PM
So I was a little skeptical if this still worked due to the post date being July of 2006; I tried it out and it does (as of 01/12/09). I added some detail to the instructions at my blog site:
Further Instructions for Address Book dialing with Skype
Edited on Jan 12, '10 05:06:21PM by mac.by.jake


[ Reply to This | # ]
Use Skype with Address Book - This Still Works
Authored by: everkleer80 on Jan 13, '10 07:09:13AM

Hehe time to get used to writing '10, not '09!

I assume this only works with calling phone numbers via Skype (which I don't do), not calling Skype users?



[ Reply to This | # ]