想实现连接公司 wifi 自动静音,有没有什么方案呀
想实现连接公司 wifi 自动静音,有没有什么方案呀
|
sue0917Sep 13, 2021
1
iphone 不是有捷径吗,mac 没有吗
|
|
2
/etc/ppp/ip-up
#!/bin/sh case "$5" in 192.199.1.100) osascript -e "set volume 0" ;; 172.16.0.11) /sbin/route add -net 192.168.253 -interface $1 ;; *) esac |
|
3
@cnscud #2 新建一个 ip-up 把脚本放进去好像没用呀
#!/bin/sh case "$5" in 192.168.137.35) osascript -e "set volume 0" ;; *) esac |
|
5
|
|
cnscudSep 13, 2021
6
里面的 IP 是你的网络的网关地址
|
|
cnscudSep 13, 2021
7
@cuixiao603 里面的 IP 是你的网络的网关地址, 不确定的话, 你可以打印 $5 出来看看
|
|
10
用 launchctl 每几秒运行一下检查 ip 地址然后静音的脚本
https://www.jifu.io/posts/2733308530/ |
|
11
据说 hammerspoon 可以解决你这个需求,我没实现过,你可以研究一下
|
|
12
https://github.com/eprev/locationchanger
然后静音的命令是 osascript -e "set volume output muted 1" 连接其他 wifi 的话 osascript -e "set volume output muted 0" 关闭静音 |
|
willisSep 13, 2021
13
hammerspoon 才是正解
|
|
mMartinSep 14, 2021
14
hammerspoon 正解 我实现过连接某个 WiFi 自动连接 smb
|
|
15
通过 hammerspoon 实现了代码如下:
function ssidChangedCallback() ssid = hs.wifi.currentNetwork() if (ssid == "yyyyyyy" or ssid == "xxxxxxxx") then hs.audiodevice.defaultOutputDevice():setVolume(0) end end wifiWatcher = hs.wifi.watcher.new(ssidChangedCallback) wifiWatcher:start() |