13 std::vector<uint8_t> data;
18 size_t payload_length = payload_data.size();
22 data.push_back(this->
type_.length());
24 if (payload_length <= 255) {
25 data.push_back(payload_length);
29 data.push_back((payload_length >> 8) & 0xFF);
30 data.push_back(payload_length & 0xFF);
33 if (!this->
id_.empty()) {
34 data.push_back(this->
id_.length());
37 data.insert(data.end(), this->type_.begin(), this->type_.end());
39 if (!this->
id_.empty()) {
40 data.insert(data.end(), this->id_.begin(), this->id_.end());
43 data.insert(data.end(), payload_data.begin(), payload_data.end());