pub fn encode<T, A, B>(value: T) -> Result<Message<A, B>, MessageError>where
    T: Serialize,
    A: Action,
    B: PacketBytes,
Available on crate feature json only.