- QList<QByteArray> params;
- params << net->serverEncode(bufname) << lowLevelQuote(pack(net->serverEncode(ctcpTag), net->userEncode(bufname, message)));
- net->putCmd("PRIVMSG", params);
+ QString cmd("PRIVMSG");
+
+ std::function<QList<QByteArray>(QString &)> cmdGenerator = [&] (QString &splitMsg) -> QList<QByteArray> {
+ return QList<QByteArray>() << net->serverEncode(bufname) << lowLevelQuote(pack(net->serverEncode(ctcpTag), net->userEncode(bufname, splitMsg)));
+ };
+
+ net->putCmd(cmd, net->splitMessage(cmd, message, cmdGenerator));