use timer to refresh message list