public AbstractCommand(MqttPublisher publisher, string name, Guid id = default(Guid))
 {
     if (id == Guid.Empty)
     {
         this.Id = Guid.NewGuid();
     }
     else
     {
         this.Id = id;
     }
     this.Name      = name;
     this.Publisher = publisher;
     publisher.Subscribe(this);
 }