Willkommen auf der Blog-Seite von hubionmac.com!
Alles rund um AppleScript und was mich sonst noch so interessiert ;-)!

Die ursprüngliche Version konnte mit iTunes 8 und 9 noch funktionieren… mit iTunes 10 hat sich das GUI wieder etwas geändert. Fall-Line hatte sich der Aktualisierung bereits angenommen, diese Version sollte aber unter jeder System-Sprache funktionieren.
Zudem hat das Skript noch ein kleines Update erfahren. Man kann eine Konfiguration vorgeben oder ohne Vorgabe die aktuelle Einstellung in iTunes einfach nur switchen…

--Airtunes - Switch - Config - script
(**hubionmac.com 10.09.2010
for addition info: http://hubionmac.com/wordpress/?p=2303
orig. Version by http://fall-line.com/2010/09/control-airplayairtunes-feature-of-itunes-with-applescript/
if check_these und uncheck_these = {} then your
Airtunes-Config will be switched the other way around….
Makes use of GUI-Skripting, hopefully Apple will add native AppleScript-Support in iTunes for
Airtunes some day 
**)
set check_these to {} --something like {"Name of Your Air-TunesDevice"}
set uncheck_these to {} --something like {"Computer"}
my check_gui_scripting_is_active()
my check_if_iTunes_window_visible()
my press_speaker_button_and_open_all_speakers()
my check_boxes_and_close_window(check_these, uncheck_these)
on press_speaker_button_and_open_all_speakers()
    tell application "iTunes"
        activate
        tell application "System Events"
            tell application process "iTunes"
                click button 8 of window "iTunes" --Press the iTunes 10 Speaker Button
                key code 125 using {command down} --this is essentiall hitting page down (command + down arrow)
                delay 1
                keystroke return
                delay 1
            end tell
        end tell
    end tell
end press_speaker_button_and_open_all_speakers
on check_boxes_and_close_window(check_these, uncheck_these)
    --if check_these und uncheck_these = {} then your
    --Airtunes-Config will be switched the other way around….
    tell application "iTunes"
        activate
        tell application "System Events"
            tell application process "iTunes"
                tell window 1
                    tell table 1 of scroll area 1
                        set check_computer_allowed to false
                        repeat with i from (count of every row) to 1 by -1 -- Itterate through each row, looking for the criteria below
                            set rowcount to count of rows
                            set a to rowcount
                            if rowcount > 0 then
                                tell group 1 of row i
                                    activate -- Drill into the object group of each row, so we don’t have to later.
                                    -- If "Speaker in Room A" is turned off (value of checkbox 1 = 0), turn it on. Otherwise do nothing
                                    if check_these is {} and uncheck_these = {} then
                                        if i > 1 and value of checkbox 1 as integer = 0 then
                                            set check_computer_allowed to true
                                        end if
                                        if i > 1 then
                                            click checkbox 1
                                        else
                                            if check_computer_allowed is true then
                                                click checkbox 1
                                            end if
                                        end if
                                    else
                                        if (description of checkbox 1) is in check_these and value of checkbox 1 as integer = 0 then
                                            click checkbox 1
                                        end if
                                        if (description of checkbox 1) is in uncheck_these and value of checkbox 1 as integer = 1 then
                                            click checkbox 1
                                            set a to (description of checkbox 1)
                                        end if
                                    end if
                                end tell
                            end if
                        end repeat
                    end tell
                end tell
            end tell
        end tell
        close window 1
    end tell
end check_boxes_and_close_window
on check_if_iTunes_window_visible()
    tell application "iTunes"
        activate
        tell application "System Events"
            tell application process "iTunes"
                --check if itunes Window is frontmost
                if (count of every window) = 0 or (name of window 1 ≠ "iTunes") then
                    keystroke "1" using {command down, option down}
                end if
            end tell
        end tell
    end tell
end check_if_iTunes_window_visible
to check_gui_scripting_is_active()
    tell application "System Events" to set isUIScriptingEnabled to UI elements enabled
    if isUIScriptingEnabled = false then
        tell application "System Preferences"
            activate
            set current pane to pane "com.apple.preference.universalaccess"
            display dialog "Your system is not properly configured to run this script.
         Please select the \"Enable access for assistive devices\"
         checkbox and trigger the script again to proceed."
            return
        end tell
    end if
end check_gui_scripting_is_active

Continue reading...

Apple soll bereit sein den ersten Entwicklerbuild für Mac OS X 10.6.4 auszuliefern. Näheres dazu, was da so neues kommt, konnten aber nicht mal Macnews, iPhones Canda und worldofapple berichten. Weil mir so eine Meldung aber herzlich sinnlos vorkommt, wenn man eh noch nichts genaues sagen kann, bereichere ich diese mal mit einer Prognose meinerseits:
10.6.4 wird einen Fehler beheben der bei manchen Nutzern nach dem Update auf 10.6.3 aufgetreten ist, nachdem KeyBoard und Trackpad sporadisch aussetzen. Sie dazu hier

Continue reading...

Ich suchte für eine Veranstaltung eine Möglichkeit an verschiedene Orte via LAN 2 Audio-Streams gleichzeitig an Musik-Anlagen zu schicken. Da die Anlagen eh Mono gefahren wurden reichte es aus, an eine Airport-Express jeweils auf dem rechten/linken Kanal die Musik zu übertragen. Zum Abspielen der Musik wurden 2 Kopien vom VOX-Player (eine Spende Wert!) genutzt. Damit jeder Player auch seine Einstellung nach einem Neustart behielt, wurde kurzerhand die info.plist etwas abgeändert und die Einstellunge des jeweiligen Players angepasst (nur links ausgeben/nur rechts ausgeben). Anschließend wurde dann via Airfoil der Soundflower-Output einfach an die beiden Airport-Express-Station geschickt, was auch ohne Unterbrechung 1 Woche lang funktioniert. Ok, zwischendurch war mal kurz der Strom weg und das Netzwerk offline, aber im Gegensatz zu so mancher Windows-Maschine, ging die Übertragung nach dem Stromausfall direkt ohne Neustart wieder weiter =)

Vox In der Summe, wurde die Woche also sicherlich das ein oder andere Giga-Byte (bei guten 200kbyte pro Sekunden Apple-Lossless Audio-Stream /pro Station) von dem kleinen Mac-Mini geschickt, was das Glasfaser-Netzwerk aber ohne weiteres verkraftete. Da die Lösung so gut durchlief, hatte das ganze auch den Vorteil, dass kein teurer und “komplizierter” iPod betrieben werden musste. So konnten an den Anlagen durch einfaches einstellen 2er Regler die musikalische Untermalung geregelt werden und da beide Anlagen im Falle eines Falles zur gleichen Zeit die gleiche Musik-Spielten entstand für die Zuschauer ein durchgehender Klangteppich, wenn Sie sich zwischen den Anlagen hin und her bewegten. =) Ach, Apple, Vox und Airfoil rulez! =)

Continue reading...

Wenn man sich die aktiven Ecken mit einer Funktion belegt (Dashbord z.B.) ist es sich sicherlich schon mal passiert, dass man unfreiwillig dieses Funktion ausgelöst hat, nachdem man etwas grobmotorisch die Maus in die Nähe der Ecke gestupst hat.
Ein netter Trick,dem entgegenzuwirken ist das gleichzeitige Drücken von alt/shift/command beim auswählen der Funktion in Exposé, dann löst die Ecke auch nur noch bei der Tastenkombi aus… Ein tolle Lösung für Grobmotoriker, die es im Falle eines Falles aber schaffen die richtigen Tasten gedrückt zu halten ;-)

Continue reading...

Die Idee: Es müsste einem doch leichter fallen Geld zu spenden, welches man gar nicht besitzt. Warum also nicht den Erlös einer Ebay-Auktion (z.B.: Miste gerade meinen Kleiderschrank aus) zu 100% oder auch weniger einer wohltätigen Sache spenden? Der Knackpunkt, ich bekomme zuerst das Geld von Ebay und muss mich selber mit einer Spende an eine der zig Hilfsorganisationen wenden. “Das kostet mich schon wieder Zeit und Nerven, dann spende ich halt später… war ja eh nur eine fixe Idee.”

Da wäre es doch schön wenn Ebay gleich beim anlegen einer Auktion einem die Möglichkeit geben würde den Erlös bzw. einen gewissen Anteil zu spenden…

Auch wenn man nur kleine Einzel-Beträge erzielt, würde in der Masse sicherlich so einiges herum kommen. Apple macht ja auch keine schlechten Umsätze bei der Masse an 1 Euro Songs und -,79 € Apps. Die 1 € Shops laufen auch gut, warum also nicht eine Kleinst-Spende bei jeder Ebay-Auktion =)

Bildschirmfoto 2009-10-24 um 23.18.01Bildschirmfoto 2009-10-24 um 23.18.23 Gerade vor und nach Weihnachten sind die Leute ja eh jeck was das Kaufen und später auch den Verkaufen von Weihnachtsgeschenken angeht und wenn die dann noch etwas gutes tuen können drehen die komplett am Rad =) Für die komplett unbeteiligten könnte sich Ebay auch um die Verteilung der Spenden kümmern, so dass jeder eine Chance hat, etwas davon abzubekommen. Die Logik hinter der Verteilung in diesem Ebay-Spenden-Pool müsste natürlich offen gelegt werden.

Ok, und die Transportkosten sollte man schon erstattet bekommen und Ebay selbst müsste auch nicht auf seine Gebühren verzichten, schließlich liefert es die Plattform dazu.

Mal sehen was Ebay dazu sagt…

Am 28.10.2009 um 17:21 schrieb eBay Deutschland Customer Support – cswebhelp: Hallo, wir werden Ihren Vorschlag aufnehmen und prüfen. Vielleicht können wir ihn bereits bei den nächsten Aktualisierungen von eBay berücksichtigen. Wir freuen uns immer über Feedback unserer Mitglieder und möchten, dass alle an diesem einzigartigen Marktplatz mit bauen. eBay verändert sich ständig. Daher freut es uns, wenn wir auch von unseren Mitgliedern Verbesserungsvorschläge erhalten. Also nochmals herzlichen Dank für Ihre Anregung. Mit freundlichen Grüßen H* K** eBay-Kundenservice

Continue reading...