¿Cómo puedo registrar todas las notificaciones?

5

Dropbox, PushBullet, Thunderbird y una docena de otras aplicaciones crean notificaciones. ¿Es posible registrarlos de forma similar a Unix?

No me gustan los pequeños mensajes que aparecen durante unos segundos y luego desaparecen sin dejar rastro.

Básicamente, quiero poder grep un archivo que contiene una línea para cada notificación.

    
pregunta sente 30.09.2015 - 09:28

2 respuestas

2

Como lo vinculó Arthur Hammer, enlace indica que las notificaciones se almacenan en una base de datos SQLite. La siguiente secuencia de comandos de Python debería ayudarte a comenzar:

#!/usr/bin/env python
import os
import re
import sqlite3

# Location of notification centers database under Yosemite
tmp = os.environ['TMPDIR']
conn = sqlite3.connect(tmp + '/../0/com.apple.notificationcenter/db/db')

for notification in conn.execute('SELECT * from notifications'):
    encoded_data = str(notification[-1]) # last item
    clean = re.sub('[^\w\s-]', '', encoded_data) # remove some funny stuff (fixme: removes too much?)
    sp = clean.split('\t')
    # Find NSActualdeliverydate, message content seems to always come after this
    for ix in range(len(sp)):
        if 'NSActualdeliverydate' in sp[ix]:
            break
    # Skip blanks
    for ix in range(ix+1, len(sp)):
        if sp[ix] != '': break

    print 'notification', sp[ix].replace('_', '\n').strip()

conn.close()

Luego puedes canalizar esto a un archivo y luego grep el archivo, o simplemente grep la salida del script directamente.

    
respondido por el oystein 31.12.2015 - 18:56
1
La respuesta de

@ oystein es genial, pero supongo que solo funciona para yosemite porque la db sqlite para sierra alta es un modelo de db diferente ...

así que encontré esta herramienta fácil ... (que funciona perfectamente para alta seirra) enlace

simplemente ejecútalo con la entrada de la ruta de acceso de la base de datos y la ruta de salida .csv que te gustaría crear

nota: para encontrar la ruta de la base de datos del centro de notificaciones, vea esta ... enlace

glhf!

    
respondido por el greenhouse 17.07.2018 - 02:21

Lea otras preguntas en las etiquetas