pub fn decode<A, B, T>(msg: Message<A, B>) -> Result<T, MessageError>where
    A: Action,
    B: PacketBytes,
    T: for<'a> DecodeMessage<'a>,
Available on crate feature protobuf only.