This commit is contained in:
@@ -1,46 +0,0 @@
|
||||
#!/usr/bin/env python3
|
||||
import sys
|
||||
import signal
|
||||
from pydbus import SessionBus
|
||||
from gi.repository import GLib
|
||||
|
||||
def main():
|
||||
print("🔔 Initialisation du service de notifications", flush=True)
|
||||
|
||||
class NotificationService:
|
||||
def Notify(self, app_name, replaces_id, app_icon, summary, body, actions, hints, timeout):
|
||||
print(f"📩 Notification reçue : {app_name} - {summary}", flush=True)
|
||||
return 1
|
||||
|
||||
def GetServerInformation(self):
|
||||
return ("CustomServer", "YourOrg", "1.0", "1.2")
|
||||
|
||||
def GetCapabilities(self):
|
||||
return ["body", "actions"]
|
||||
|
||||
try:
|
||||
print("🚦 Connexion au bus session D-Bus...", flush=True)
|
||||
bus = SessionBus()
|
||||
|
||||
print("📡 Enregistrement du service...", flush=True)
|
||||
bus.publish("org.freedesktop.Notifications", NotificationService())
|
||||
|
||||
def quit_handler(*args):
|
||||
print("\n🛑 Signal reçu, arrêt propre...", flush=True)
|
||||
loop.quit()
|
||||
|
||||
signal.signal(signal.SIGINT, quit_handler)
|
||||
signal.signal(signal.SIGTERM, quit_handler)
|
||||
|
||||
GLib.timeout_add_seconds(30, lambda: (print("⏱️ Timeout atteint", flush=True), loop.quit(), False))
|
||||
|
||||
print("✅ Service prêt", flush=True)
|
||||
loop = GLib.MainLoop()
|
||||
loop.run()
|
||||
|
||||
except Exception as e:
|
||||
print(f"💥 ERREUR CRITIQUE: {type(e).__name__}: {str(e)}", file=sys.stderr, flush=True)
|
||||
sys.exit(1)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user