Updated fnReceiveActive to become event driven with timeouts