new onIdle arg replaces disableMessageBuffering