from flask import current_app from pywebpush import webpush, WebPushException def send_notification(subscription_info, message_body): try: webpush( subscription_info=subscription_info, data=message_body, vapid_private_key=current_app.config["VAPID_PRIVATE_KEY"], vapid_claims={"sub": current_app.config["VAPID_CLAIM_EMAIL"]}, ) except WebPushException as ex: print(f"Web push error: {ex}") # You might want to remove the subscription if it's invalid if ex.response and ex.response.status_code == 410: print("Subscription is no longer valid, removing from DB.") # Add logic to remove the subscription from your database