FaceTime Audio Caller with Pop Up Contact List (KM 8.2.3)

facetime

#1

Hey Folks,

FaceTime has a pretty abysmal and feature-poor user interface. I got tired of having to mess with it and created a macro to improve things a bit.

Using a self-contained phone list the macro pops up a Prompt with List action:

image

The user can then type to select their desired contact and hit Return to make a FaceTime-Audio call.

All sorts of keywords and abbreviations could be used if desired. You just have to change the regular expression that finds the phone number as needed.

I've included a colon character in the phone list, so I can use it as the default search string in the prompt – but that could be changed to a favorite contact or other default string.

I won't put all of my contacts in the macro – just the people I actually call with FaceTime.

At some point I'll probably make it easier to add names to the list too.

Enjoy.

-Chris


FaceTime Audio Caller v.1.00.kmmacros (7.9 KB)


KM Editor and Engine Sluggish Response and Show Very High CPU
#2

Thank you for sharing the great macro @ccstone :+1::clap:

Since I use the App Cardhop for my contacts, I created a macro palette for a quick selection. My macro for the FaceTime Audio call works like in this video here:

Here's my macro. Please note that I use a macOS in German.

My problem is that the action "Press a Button - Anrufen" is not recognized and executed.

2018-08-05_17-01-35

so I help myself in my macro for initiating the call with an applescript at the end.
Is there something I have to consider with the buttons of this kind? Otherwise the "Press a Button" actions work perfectly for me. Only not here.


#3

Hey @appleianer,

As far as I can see you've misspelled the button name:

“Anrufenl”	should be	“Anrufen”

Does your AppleScript actually work?

Here's how I would write it:

tell application "System Events"
   tell application process "FaceTime"
      tell window "FaceTime Audio"
         tell button "Call"
            perform action "AXPress"
         end tell
      end tell
   end tell
end tell

As you can see you're dealing with the FaceTime process – not the Notification Center.

When possible It's better to call UI elements by name – it's more robust and far more readable.

** Of course there's the issue of potentially different names for UI elements in international versions of macOS. Sometimes I get around this by using element numbers, but I prefer to find out what the localized name is and use that.

-Chris


#4

Thank you for sharing the AppleScript :+1:

There seems to be a bug in the German macOS. Unfortunately, your AppleScript doesn't work. I have already looked for other scripts on the internet. Not working, except my script to stop notification:

last but not least I have a mouse click on the call button :wink:


#5

Hmm. I'm obviously confused about what exactly is happening on your German system...

Oh, well. C'est la vie.  :sunglasses:

-Chris


#6

Hi Chris,

I am also stuck in troubles with above AppleScript, it's not workable on my English OSX.

it's just cannot make the "click" button pressed.

can you help me on that?

Kind Regards,
Donnel


#7

Hey Donnel,

Well, that's frustrating...

What version of macOS are you using?

What happens when you get everything running except clicking the Call button and then run this AppleScript from the Applescript Editor.app?

tell application "System Events"
   tell application process "FaceTime"
      name of buttons of windows
   end tell
end tell

** See the result panel in the Applescript Editor.

As a last resort you can use the Found Image condition, but let's try to troubleshoot the issue first.

-Chris


#8

Hi Chris,

Thank you for your attention, appreciated!

My System Version is macOS 10.14 (18A391)

After run above script, I get the result as follows:

{}

actually I am using the found image condition at the moment.

Kind Regards,
Donnel


#9

Try this:

tell application "System Events"
   tell application process "Notification Center"
      properties of windows
   end tell
end tell

#10

then I get below

{{minimum value: missing value , orientation: missing value , position:{1076, 42}, class : window , accessibility description: missing value , role description:"notification window", focused: false , title: missing value , size:{344, 64}, help: missing value , entire contents:{}, enabled: missing value , maximum value: missing value , role:"AXWindow", value: missing value , subrole:"AXNotificationCenterAlert", selected: missing value , name: missing value , description:"notification window"}}


#11

Hey Donnel,

It's frustrating that Keyboard Maestro is not finding the button for you.

What version of macOS are you using?

System Events can't see the buttons of the Notification Center window for FaceTime either, so we're left with workaround measures.

Open the macro, get rid of the button part of the Pause-Until action and the Press-Button action.

Then double-click this action file in the Finder (after you've downloaded it).

Keyboard Maestro Actions.kmactions (1.7 KB)

Two actions will be added to your macro.

This should be a trifle faster than the Found-Image action you're using.

-Chris


#12

Hi Chris,

Thank you for your great support, your script is working and much better than Found-Image action, since I am using it in both home and office, the color seems bit different due to the new function of Mojave.

btw, my OSX version is macOS Mojave 10.14.1 (18B75)