Don't look at it as a push/pull scenario or internal/external data retrieval. Look at it more of how often you need the data and how much error handling you need. The integration bus has a lot of built-in error handling for re-processing tasks when things fail. Whereas with a scheduled task, you'd need to code for that.
For this question, I'd use a scheduled task; simple to implement and code and maintain. I find many cases where a scheduled task will work for both pull and push scenarios. There are some which require more robust integration and frequency so I choose to use the integration bus, but do so after ruling out a scheduled task.