update listen func