Line 5: | Line 5: | ||
== Kontextmenü in OS X Adress Book == | == Kontextmenü in OS X Adress Book == | ||
Um über ein Klick den im OS X Adressbuch geöffneten Kontakt anzuwählen kann folgendes AppleScript verwendet werden, es kann als <tt>Call with IP Phone.scpt</tt> in <tt>~/Library/Address Book plugins/</tt> gelegt werden. Voraussetzung für das Funktionieren des Scripts ist, dass man schon die Sicherheitszertifikate der Webdialer-URL mit Safari importiert hat und dass man in dort schon eingeloggt ist. | Um über ein Klick den im OS X Adressbuch geöffneten Kontakt anzuwählen kann folgendes AppleScript verwendet werden, es kann als <tt>Call with IP Phone.scpt</tt> in <tt>~/Library/Address Book plugins/</tt> gelegt werden. Voraussetzung für das Funktionieren des Scripts ist, dass man schon die Sicherheitszertifikate der Webdialer-URL mit Safari importiert hat und dass man in dort schon eingeloggt ist (Login muss beim [[SCC-Services|SCC]] beantragt werden). | ||
<source lang="applescript"> | <source lang="applescript"> |
Revision as of 15:06, 13 May 2011
Kontextmenü in OS X Adress Book
Um über ein Klick den im OS X Adressbuch geöffneten Kontakt anzuwählen kann folgendes AppleScript verwendet werden, es kann als Call with IP Phone.scpt in ~/Library/Address Book plugins/ gelegt werden. Voraussetzung für das Funktionieren des Scripts ist, dass man schon die Sicherheitszertifikate der Webdialer-URL mit Safari importiert hat und dass man in dort schon eingeloggt ist (Login muss beim SCC beantragt werden).
on findReplace(findText, replaceText, sourceText)
set ASTID to AppleScript's text item delimiters
set AppleScript's text item delimiters to findText
set sourceText to text items of sourceText
set AppleScript's text item delimiters to replaceText
set sourceText to "" & sourceText
set AppleScript's text item delimiters to ASTID
return sourceText
end findReplace
using terms from application "Address Book"
on action property
return "phone"
end action property
on action title for p with e
return "mit IP Phone wählen"
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 ABPhoneNumber to value of e
set ABPhoneNumber to ABPhoneNumber as string
set theNumber to findReplace("+49", "0", ABPhoneNumber)
set theNicePhoneNumber to "0" & theNumber
tell application "Safari"
activate
open location "https://telefon.uni-weimar.de/webdialer/Webdialer"
delay 1
tell application "Safari"
do JavaScript "document.forms['loginForm'].elements['destination'].value ='" & theNicePhoneNumber & "'" in document 1
do JavaScript "document.forms['loginForm'].elements['dial'].click()" in document 1
end tell
end tell
return true
end perform action
end using terms from