# [メタ情報] # 識別子: M1Macの画面共有を起動する_exe # システム名: M1Macの画面共有を起動する、scptファイルをSTREAM DECKに登録して起動する。 # 技術種別: Misc # 機能名: Misc # 使用言語: AppleScript # 状態: 公開用 # [/メタ情報] 要約:画面共有アプリを自動操作し、指定Mac(yyyyyyyy-macminim1)へ接続するAppleScript。アプリ起動後3秒待機し、メニューバーから最近接続先を選択。接続確立まで待ち、パスコード(.env管理)を自動入力してEnterを押す。その後、ウィンドウ表示を待ってフルスクリーン化する一連の手順をスクリプト化している。 ```applescript -- 1. 環境設定(Meister 1 / 2 の環境差を自動吸収) set currentUser to short user name of (system info) set envPath to "/Users/" & currentUser & "/python_scripts/.env" -- 1-2. パスコードを金庫(.env)から動的に取得し、余分なクォーテーションをトリミング set passcode to "" try set passcode to do shell script "grep 'MY_SCREEN_SHARING_PASSCODE' " & quoted form of envPath & " | sed 's/MY_SCREEN_SHARING_PASSCODE=//' | sed -E 's/^[\\\"\\x27]//;s/[\\\"\\x27]$//'" end try -- 1-3. 接続先ホスト名を金庫(.env)から動的に取得(ない場合はデフォルトにフォールバック) set targetHost to "" try set targetHost to do shell script "grep 'MY_SCREEN_SHARING_HOST' " & quoted form of envPath & " | sed 's/MY_SCREEN_SHARING_HOST=//' | sed -E 's/^[\\\"\\x27]//;s/[\\\"\\x27]$//'" end try if targetHost is "" then set targetHost to "yyyyyyyy-macminim1" -- 補償用デフォルトフォールバック end if -- 2. 画面共有.appを立ち上げる tell application "Screen Sharing" to activate -- 3. 3秒待つ delay 3 -- 4. メニューバーから「接続」→「最近使った項目」→ ターゲットホスト名と選ぶ tell application "System Events" tell process "Screen Sharing" click menu item targetHost of menu 1 of menu item "最近使った項目" of menu 1 of menu bar item "接続" of menu bar 1 end tell end tell -- 5. ここで接続が確立するのを待つ delay 5 -- 追加の待機時間を入れる -- 6. パスコードを入れる tell application "System Events" keystroke passcode end tell -- 7. Enterキーを押す tell application "System Events" key code 36 -- Enterキーを押す end tell -- 8. ウィンドウが確実に表示されるのを待つ delay 3 -- 待機して、ウィンドウが最前面に来るのを待つ -- 9. ウィンドウをフルスクリーンにする tell application "System Events" tell process "Screen Sharing" -- フルスクリーンボタンをクリック click button 2 of window 1 end tell end tell ```