Search code examples
objective-cmacosswiftwakeup

Programmatically wake display on OSX


I've managed to get the display to sleep immediately with

pmset displaysleepnow

in terminal, however for waking the display I've only found

pmset schedule wake "12/24/2009 00:00:00" 

which fails to work if I try to schedule anything earlier than at least 10secs from now.

Is there any way to programmatically wake the display in Cocoa? Someone has suggested IOPMAssertionDeclareUserActivity but I couldn't find any examples on this so I am struggling.

I am using Swift by the way, but Objective C code is also welcome.


Solution

  • Got it working with:

      IOPMAssertionID assertionID; 
      IOPMAssertionDeclareUserActivity(CFSTR(""), kIOPMUserActiveLocal, &assertionID);