Is this solution using queryRef to call start/stopPolling methods still working? Maybe I implemented it wrong, though seems similar to yours
//component
queryRef: QueryRef<unknown> = this.scanQueueService.getImagesScanQueue();
this.queryRef.startPolling(500);
//service
getImagesScanQueue() {
return this.apollo.watchQuery({
query: getImagesScanQueue(),
fetchPolicy: 'network-only',
});
}