2012-03-02 10 views
2

私のアプリケーションは、AppleScriptを使用して、ユーザーのホットキーに従ってiChatのステータスを変更します。すべてがうまくいっていますが、iChatが実行されていない場合、ステータスバーにアイコンが表示された状態で「iChatAgent」が実行されています。 DockにはiChatのアイコンがありません。iChatAgentによってiChatAgentによってプログラムでステータスを設定します

この場合、AppleScriptコマンドを送信してiChatステータス(tell application "iChat" set status blah-blah...)を変更すると、iChatが自動的にアクティブになり、iChatのアイコンがDockに表示されます。私はiChatを有効にしたくありません。私はドックに何も変更する必要はありません。しかし、iChatが動作していないときは、iChatのステータスを変更する必要があります。

ステータスを変更するには、iChatAgentにアプリケーションでこれを行うにはどうすればよいですか?それはまったく可能ですか?

答えて

1

iChatAgentは、iChatが正しく動作していないときにiChat 5が使用するバックグラウンドメッセージアプリケーションです。 FaceTimeがインストールされているSnow LeopardとLionには、IMAgent/System/Library/PrivateFrameworks/IMCore.framework/imagent.app/ - 裏付けについてはthis Apple Support Communities discussion threadを参照)が置き換えられました。

エージェントはAppleScript対応ではありません。エージェントはAppleScriptエディタの辞書パネルに追加しようとすると、自分で確認できます。アプリケーションがスクリプト可能でないことを示すエラーが表示されます。つまり、スクリプトはiChatだけをターゲットとすることができ、拡張時には起動時に起動するアプリケーションをバイパスすることはできません(iChatのスクリプトプラグインにも適用されます - アプリケーションの実行中にのみ起動されます)。

TL; DR:あなたはあなたのおかげで私の仮定を確認するために...私はそう思ったiChat.app

+0

起動せずにAppleScriptを介して、iChatのステータスを設定することはできません!素晴らしい答え! – mischa

関連する問題