Macがスリープ/スリープから復帰したノーティフィケーションを受信するAppleScriptです。
Cocoaの機能が利用できない時代にスリープ解除を検出するアプリケーション「Okaeri」をAppleScriptで作って動かしていましたが、あれはon idleハンドラで1秒ごとにタイマー割り込みを発生させ、前回割り込み発生時間を記録、前回割り込みと現在時刻の差分を計算し、1ないし数秒以上間隔が空いていたらスリープ解除が発生したとみなして、syslogにスリープ解除が記録されていないかをチェックするようにしていました。
なので、Cocoaの機能呼び出しやNotificationの受信を行えなくても、ある程度は同様の処理が行えるわけですが、使えれば使えたで便利ではあります。
AppleScript名:スリープおよびスリープ解除Notificationを受信.scptd |
— – Created by: Takaaki Naganoya – Created on: 2019/01/25 — – Copyright © 2019 Piyomaru Software, All Rights Reserved — use AppleScript version "2.4" — Yosemite (10.10) or later use framework "Foundation" use framework "AppKit" use scripting additions set aCenter to current application’s NSWorkspace’s sharedWorkspace()’s notificationCenter() aCenter’s addObserver:me selector:"notifSleep:" |name|:"NSWorkspaceWillSleepNotification" object:(missing value) aCenter’s addObserver:me selector:"notifWaked:" |name|:"NSWorkspaceDidWakeNotification" object:(missing value) on notifSleep:aNotif display notification "System will sleep" say "System will sleep" end notifSleep: on notifWaked:aNotif display notification "System did wake" say "System did wake" end notifWaked: |
More from my site
(Visited 586 times, 2 visits today)
Tuya API (Smart Life)とスマートプラグでバッテリーにやさしい充電をする仕掛け | 竹のしんのテック日記 says:
[…] AppleScriptの穴(http://piyocast.com/as/archives/5286) […]
スマートプラグでバッテリーにやさしい充電をする仕掛け | 竹のしんのテック日記 says:
[…] AppleScriptの穴(http://piyocast.com/as/archives/5286) […]