decodeRecv function

RecvPacket decodeRecv(
  1. PacketHeader header,
  2. ReadData reader
)

Implementation

RecvPacket decodeRecv(PacketHeader header, ReadData reader) {
  var recv = RecvPacket();
  recv.header = header;
  int setting = reader.readUint8();
  recv.setting = Setting().decode(setting);
  recv.msgKey = reader.readString();
  recv.fromUID = reader.readString();
  recv.channelID = reader.readString();
  recv.channelType = reader.readUint8().toInt();
  if (WKIM.shared.options.protoVersion >= 3) {
    recv.expire = reader.readUint32().toInt();
  }
  recv.clientMsgNO = reader.readString();
  if (recv.setting.stream == 1) {
    recv.streamNo = reader.readString();
    recv.streamSeq = reader.readUint32().toInt();
    recv.streamFlag = reader.readByte();
  }
  recv.messageID = reader.readUint64();
  recv.messageSeq = reader.readUint32().toInt();
  recv.messageTime = reader.readUint32().toInt();
  if (recv.setting.topic == 1) {
    recv.topic = reader.readString();
  }
  var payload = reader.readRemaining();
  recv.payload = String.fromCharCodes(payload);
  return recv;
}