[fix] check for options.listen and call fire on listen