apply observer pattern on auto reply(phantoms)