Added idle tracking and client hash