我正在构建一个 Applescript,它将每 X 分钟扫描一次我的网络,检查我家的 Xbox360 或 PS3,并在任一控制台在线时启用我的传输 BitTorrent 客户端限速模式。
目前我只能使用 applescript 暂停所有传输或恢复所有传输,因为启动/停止传输有单独的键盘命令。我希望它进入限速模式,而不是完全停止。
我的问题是限速(海龟)模式是打开/关闭它的同一个键。如果有人手动触摸速度限制,它将不同步,并且在控制台上线时实际上会关闭速度限制。此外,如果一个控制台上线,速度限制将开启,但如果另一个控制台上线,则限制将关闭。
当速度限制处于活动状态时,菜单项变为“已检查”,但我不知道如何对此进行测试。传输应用程序的applescript 字典中没有任何内容。
如何确定 Applescript 中的菜单项是否被“选中”(它甚至显示了一个实际的复选标记)?
[编辑:]我目前正在尝试弄清楚如何通过 RPC 打开速度限制,而不是尝试使用 GUI 或键盘命令编写脚本,因为开发人员不提供任何 Applescript 访问。 http://trac.transmissionbt.com/browser/trunk/doc/rpc-spec.txt
我遇到了完全相同的问题,最后想出了如何检查传输的速度限制菜单项是否被选中(您可以轻松修改它以检查其他应用程序中的菜单项)。这已经死了将近一年了,但希望这会有所帮助。
tell application "Transmission" to activate
tell application "System Events"
tell process "Transmission"
set speedLimitCurrentlyOn to (value of attribute "AXMenuItemMarkChar" of menu item "Speed Limit" of menu "Transfers" of menu bar 1 as string) ? ""
display dialog "Speed Limit On: " & speedLimitCurrentlyOn
end tell
end tell
Run Code Online (Sandbox Code Playgroud)
PS:我从这里的 AppleScript 改编了这个:http : //mac.softpedia.com/progDownload/Transmission-Auto-Speed-Limit-Download-60275.html
| 归档时间: |
|
| 查看次数: |
1600 次 |
| 最近记录: |