You could define something like a subscription entity on your side (on the server) or save it in a event (NIP-78) and store it on a relay(s) (use your own ShoSho relay). My guess others have done this already too in a more Nostr way (but I don't know who).
My thought, the subscription entity could have the following data:
- the npub of who subscribed
- a identifier of the subject subscribed to (the d-tag of the event kind 30311)
- the action (when the status tag changes to live)
So yes, I think you're right you need some listeners where you can trigger the push notification logic to the devices of the related npubs (using the data from the subscription entity as described above).