No OS X 10.8, os usuários podem desativar o Notification Center por um único dia. Existe uma maneira de verificar se está ativado na linha de comando?
fonte
No OS X 10.8, os usuários podem desativar o Notification Center por um único dia. Existe uma maneira de verificar se está ativado na linha de comando?
Você realmente pode descobrir se a opção Não perturbe está ativada ou desativada no momento. O Centro de Notificações descarta um plist no seguinte local do qual você pode ler o valor. Execute o seguinte para encontrar o arquivo plist:
ls ~/Library/Preferences/ByHost/com.apple.notificationcenterui.*.plist
Agora, você pode ler o valor do plist que acabou de encontrar usando:
defaults read ~/Library/Preferences/ByHost/com.apple.notificationcenterui.8D3EA20D-8D7F-52E2-9F99-BC17A13A3F0E.plist
NOTA: seu nome de arquivo real pode ser diferente do que eu listei acima.
Você verá uma chave chamada "doNotDisturb" e ela terá o valor 1 ou 0 (ativado ou desativado)
Você também pode alterar seu status fazendo:
defaults write ~/Library/Preferences/ByHost/com.apple.notificationcenterui.8D3EA20D-8D7F-52E2-9F99-BC17A13A3F0E.plist doNotDisturb 1
ou:
defaults write ~/Library/Preferences/ByHost/com.apple.notificationcenterui.8D3EA20D-8D7F-52E2-9F99-BC17A13A3F0E.plist doNotDisturb 0
Para que a alteração entre em vigor, você precisará reiniciar o Centro de Notificação digitando:
killall NotificationCenter
Na verdade, eu escrevi um script muito simples do Automator e agora posso ativar / desativar o Não perturbe para o Notification Center com um atalho de teclado. Muito conveniente. :)
killall NotificationCenter
redefinirá as configurações para o padrão, mas não as recarregará.Para obter o status Não perturbe em Yosemite, basta digitar o seguinte no seu terminal:
fonte
Provavelmente, a melhor maneira de pensar é instalar o notificador de terminal e enviar uma mensagem a partir do terminal.
Instalar o Notificador de Terminal
O notificador de terminal pode ser instalado através do Ruby Gems
Tipo:
Enviar uma mensagem para NC
Tipo:
Se o centro de notificações estiver em execução, você receberá uma mensagem dizendo "O centro de notificações está em execução"
fonte
No momento, as maneiras de interagir com o Centro de Notificação programaticamente (inclusive via linha de comando) são bastante limitadas. Como InfluenceJamie observou, existe o notificador de terminal , que permite enviar notificações a partir da linha de comando, mas enviar notificações é praticamente o que todos os programas podem fazer no momento. Pela minha leitura da documentação do desenvolvedor , os programas podem apenas enviar e obter informações sobre as notificações específicas que eles enviam, nenhuma informação de status para o próprio Centro de Notificação ou outras notificações. Também não há interface da Applescript.
Portanto, no momento, você está limitado a testar manualmente se uma notificação é aprovada, como sugeriu InfluenceJamie , ou na esperança de que alguém descubra as APIs privadas da Apple e faça uma interface de linha de comando.
fonte
A configuração do centro de notificações é armazenada na
~/Library/Preferences/ByHost
pasta, o que significa que são configurações específicas da máquina.Você pode usar o
defaults -currentHost
comando para ler as configurações.-currentHost
é usado para especificar aByHost
configuração e não a específica do usuário comum armazenada~/Library/Preferences
.O valor de saída
1
significa que está ativado,0
para desativado.De fato, o comando acima está lendo as opções do
~/Library/Preferences/ByHost/com.apple.notificationcenterui.<your-UUID>.plist
arquivo.Advertências : Definir
ByHost
opções comdefaults -currentHost write
não funciona. As opções são realmente gravadas no arquivo, mas não são recarregadas pelo daemon correspondente. Eu acho que isso é um bug.Referências
fonte