Если состояние != 4, то оно может быть равно 1 (установлено соединение с сервером). А значит отследить статус самого ожидания в таком условии не получится.
phpavel, тогда вам нужно вешаться на изменение readyState и отслеживать отсутствие активности, например, в течение N секунд.
setInterval() вам в помощь.