added disconnect handler and step ack