If your subscription does not match any interactions in an hour, this should not have any effect on whether the subscription stays alive or not; you simply need to make /pull requests to ensure that the subscription stays alive, regardless of whether your subscription has any data to deliver or not.
I’ve been running some tests with multiple /pull subscriptions, and so far have not seen either of my subscriptions drop off; they have both been running for a couple of hours now. I set up my Pull subscriptions via a curl command similar to:
I then ensure I pull data every 30 seconds by wrapping a curl command a
watch -n30 "curl 'https://api.datasift.com/v1/pull?username=USERNAME&api_key=API_KEY&id=SUB_ID' >> rr1.json"
If a Push subscription were to stop due to some error, this error should be logged in the /push/log. We are also looking to add more metadata about the status of your subscriptions to the /push/log, such as events like “A stop request was received” to make it a little clearer why Push subscriptions may be in the state they are in.
It may be worth checking your application to ensure it does not make any calls to /push/stop that you may not be aware of.