call listen only once