系统铃声是在操作系统(Windows和macOS)中连接或断开一个新设备时发出的声音。
有时,如果你正在运行批处理脚本,你需要在完成节点脚本后启动系统铃声。
本教程展示了在Windows中从Nodejs程序中触发系统提示音的多种方法。
发出声音是下线操作系统本地调用的一部分。所以你需要进行本地调用来触发铃铛声。这也是在发生错误时发出的声音。
如何从Nodejs代码中启动系统铃音
系统铃声取决于underline的硬件和声音设置。
我们有多种方法可以做到这一点。
BEL 用转义代码字符表示( 或 )\u0007 \x07
console.log('\x07')
console.log('\007')
console.log('\u0007')
或者你也可以使用process.stdout.write 来记录BEL字符
process.stdout.write('\x07');
process.stdout.write('\007');
process.stdout.write('\u0007');
它在本地终端中工作。但是,它在Visual studio code和Intelli IDE等编辑器中使用的终端中不起作用。
- 调用windows MessageBeep API
有时,上述BEL字符在终端上不起作用。
这种方法是在Windows中调用PowerShell可执行哔哔声,并在MACOS中播放Glass.aiff 文件。
它使用并导入child_process 节点模块
下面是一个代码例子
const childProcess = require("child_process");
// Winndows code
childProcess.exec("powershell.exe [console]::beep(500,1200)");
// MACOS code
childProcess.exec("afplay /System/Library/Sounds/Glass.aiff");
总结
综上所述,学会了从nodejs应用程序中触发系统铃声的多种方法。