public bool IsSendable()
 {
     if (Header == null)
     {
         return(false);
     }
     if (Header.PayloadType == MessagePayloadType.Object && PayloadObject == null)
     {
         return(false);
     }
     if (Header.PayloadType == MessagePayloadType.CommandString && (CommandStrings == null || !CommandStrings.Any() || CommandStrings.All(string.IsNullOrWhiteSpace)))
     {
         return(false);
     }
     if (Header.PayloadType == MessagePayloadType.Raw && (RawFrames == null || !RawFrames.Any() || RawFrames.All(rf => rf.Length == 0)))
     {
         return(false);
     }
     return(Header.IsSendable());
 }