50 votes

Comment envoyer un message texte

J'ai écrit un code Python pour récupérer un texte aléatoire dans un fichier .txt. Maintenant, je veux envoyer ce texte aléatoire dans la zone de notification via la commande 'notify-send'. Comment faire ?

12voto

Paul Beckingham Points 7460

Python3

Alors que vous pouvez appeler notify-send via os.system oder subprocess il est sans doute plus cohérent avec la programmation basée sur GTK3 d'utiliser l'option Notify gobject-introspection classe.

Un petit exemple illustrera ce principe :

from gi.repository import GObject
from gi.repository import Notify

class MyClass(GObject.Object):
    def __init__(self):

        super(MyClass, self).__init__()
        # lets initialise with the application name
        Notify.init("myapp_name")

    def send_notification(self, title, text, file_path_to_icon=""):

        n = Notify.Notification.new(title, text, file_path_to_icon)
        n.show()

my = MyClass()
my.send_notification("this is a title", "this is some text")

7voto

Silver Ringvee Points 2150

Pour répondre à la question de Mehul Mohan et proposer le moyen le plus court de pousser une notification avec les sections titre et message :

import os
os.system('notify-send "TITLE" "MESSAGE"')

La mise en place de cette fonction pourrait être un peu confuse en raison des guillemets dans les guillemets.

import os
def message(title, message):
  os.system('notify-send "'+title+'" "'+message+'"')

7voto

jcofta Points 71

Vous devez utiliser notifier2 il remplace Python-notify. Utilisez-le comme suit.

pip install notify2

Et le code :

import notify2
notify2.init('app name')
n = notify2.Notification('title', 'message')
n.show()

6voto

Syed I. Tauhidi Points 61
import os
mstr='Hello'
os.system('notify-send '+mstr)

5voto

Pour tous ceux qui s'intéressent à ce sujet en 2018, je peux recommander le document suivant notifier2 l'emballage.

Il s'agit d'un remplacement pur-Python pour notify-Python, qui utilise Python-dbus pour communiquer directement avec le serveur de notifications. Il est compatible avec Python 2 et 3, et ses rappels peuvent fonctionner avec les applications Gtk 3 ou Qt 4.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X