Trigger on the basis of data available from multiple sources

We have a service in our application which should get triggered , means the service should get notified only when certain data from n number of sources is available.
Number of sources “n” could be predefined for every event. So, its known before hand what is the number of sources that my service should wait for.
Considering this use case, is there a way in Redis streams or pubsub to trigger the event or notification to the watcher service when the data from all the sources is available. I was considering having a counter that will be incremented by each source and when the counter reaches the value “n” , the last source service which incremented to “n” would trigger the watcher service. However, I need to understand if there is a better way to do this and make sure that the watcher service gets triggered only when the data is available from all the sources.