implement polling task