export function decodeMessage()

in src/main/resources/static/components/session/AxtMessage.ts [53:76]


export function decodeMessage(bytes: Uint8Array): AxtMessage {
    const buffer = ByteBuffer.wrap(bytes, false, true)
    buffer.littleEndian = true

    const message = new AxtMessage();
    message.msgType = buffer.readUint32()
    message.version = buffer.readString(4)

    const len1 = buffer.readUint8()
    message.channelId = len1 === 0 ? "" : buffer.readString(len1)

    const len2 = buffer.readUint8()
    message.instanceId = len2 === 0 ? "" : buffer.readString(len2)

    message.timestamp = buffer.readUint64()
    message.inputSeq = buffer.readUint32()
    message.outputSeq = buffer.readUint32()

    message.msgLength = buffer.readUint16()
    message.encoding = buffer.readUint8()
    message.reserved = buffer.readUint8()
    message.payLoad = buffer.toBuffer(true)
    return message;
}