LoginMonitor.py

Author: Grunox Views: 241 Created on: 04/09/2025 Raw
import time
import subprocess
import win10toast

toaster = win10toast.ToastNotifier()
known_users = set()

def get_logged_users():
    result = subprocess.check_output("query user", shell=True).decode()
    users = [line.split()[0] for line in result.splitlines()[1:] if line]
    return set(users)

while True:
    current_users = get_logged_users()
    new_users = current_users - known_users
    for user in new_users:
        toaster.show_toast("Nouvelle connexion détectée", f"Utilisateur : {user}", duration=5)
    known_users = current_users
    time.sleep(10)