当前位置: 首页 > 教程 > Mac软件教程 > Power Manager是如何显示不活动警告的,你一定要知道!

Power Manager是如何显示不活动警告的,你一定要知道!

如果要在不活动触发注销之前警告用户,该怎么办呢?不活动触发的事件通常用于自动注销或关闭闲置或闲置的Mac。这对于实验室等学术环境中的公共计算机和Mac电脑非常有用。在本文中,小编将学习如何在注销之前很好地警告用户。

Power Manager有一个计划助手任务,专门用于不活动后注销。当不活动触发器发生时,将立即执行相应的操作。如果要注销这些操作,则将在几秒钟后显示较大的警告,然后执行注销过程。鉴于Mac可能尚未使用,这通常是合理的行为。

有几种方法可以解决此问题。我们可以在事件的动作中添加延迟。另外,我们可以在未来几分钟内动态安排确定的注销时间。两种方法都会显示标准的Power Manager倒计时通知。但是这两种方法都使用户无法轻松取消挂起的注销。

我们需要一个解决方案,允许用户避免注销,但无需授予其他权限或凭据。事实证明这非常简单。

通过创建第二个事件(也由不活动触发),该事件运行一小段AppleScript,我们可以显示我们想要的任何警告。诀窍是,与现有的注销事件相比,第二个警告事件需要更短的不活动时间。

如果用户忽略该警告,并且计算机继续处于闲置状态,则会注销。但是,如果用户取消该警告,则由于计算机的不活动时间段将重置为零,因此未决注销将被取消。

不活动时间段被重置为零,因为消除警告的行为包括按下键或移动鼠标。macOS认为这两种行为都是用户活动的一种形式。

该警告将通过简短的AppleScript处理。将显示对话框的命令是够我们眼前需要,但其他选项,如显示通知,可以用来放置在通知中心警告。

我们完整的AppleScript将是(将其复制并粘贴到您的Script字段中):

 #!/usr/bin/osascript

display dialog "This computer is about to log out. Click Cancel to continue using the computer." with title "Inactivity Warning" default button "Cancel" buttons ["Cancel"] with icon caution giving up after (3 * 60)

虽然看起来很复杂,但是AppleScript是display dialog带有参数列表的单个命令。参数为:

-"This computer … the computer." 是对话框本身中显示的主要文本。

-with title "Inactivity Warning" 设置对话框的标题

-default button "Cancel"将默认按钮设置为“取消”

-buttons ["Cancel"]确保仅显示一个“取消”按钮

-with icon caution 显示警告图标以突出显示对话框的性质

-giving up after (3 * 60) 3分钟后自动取消对话框

让我们逐步介绍如何创建此警告事件以伴随现有的注销事件。

创建不活动警告事件

1、启动Power Manager.app

2、选择“添加事件”或“文件”>“新建...”>“新事件”,然后在“计划助手”不活动后运行脚本

3、继续执行脚本步骤

4、从上方复制并粘贴AppleScript脚本。包括这一osascript行并替换所有现有文本很重要:

5、继续执行“不活动之后”步骤,然后输入所需的不活动时间。在这种情况下,我将在7分钟后显示警告-这是我现有的注销事件发生前的三分钟。

6、继续通过“时间约束”步骤。

7、继续通过“交互式约束”步骤。

8、在“为什么”步骤中命名并描述您的事件。

9、继续并添加新的警告事件。

在此阶段,您的警告事件已经准备就绪。您应该测试该事件,以确保AppleScript可以正常工作。Schedule Assistant任务在非活动状态下创建具有按需行为集的事件后运行脚本。这意味着您可以立即触发新事件-除了等待几分钟以触发不活动计时器。

避免登录窗口

该事件有问题。即使没有人登录,也会触发该事件。

让我们通过在事件中添加一个条件来解决此问题。我们将使用事件编辑器执行此操作。

1、在Power Manager.app中,按住Option键,然后双击新事件。这将在事件编辑器中打开事件。

2、选择添加条件>控制台用户>用户登录弹出菜单项。

3、保存更改的事件。

新的警告事件已完成。在适当的条件下,没有人登录时,事件将不再尝试显示警告对话框。

与往常一样,测试您的事件以确保其正确执行并按照您的要求执行。一旦工作,就可以调整设置并考虑添加更多约束或扩展发出警告的方式。

相关文章