I have an update service that needs to pull data down from remote, however like Microsoft's BITS I'd like to do this when the user is idle and/or when their network utilisation is low so as to not impact on their experience.
What do I need to do or look at? Can anyone point me in the right direction on where to start with this and get the information I need?