#include "user.h" #include "twitchmessage.h" #include void User::updateFromTwitchMessage(const TwitchMessage &msg) { // Базовые данные if (!msg.displayName.isEmpty()) { displayName = msg.displayName; } if (!msg.color.isEmpty()) { color = msg.color; } if (msg.userId > 0) { id = QString::number(msg.userId); login = msg.displayName.toLower(); // Логин обычно в нижнем регистре } // Статусы isModerator = msg.isMod; isVIP = msg.isVIP; isSubscriber = msg.isSubscriber; isTurbo = msg.isTurbo; returningChatter = msg.returningChatter; if (msg.firstMsg) { firstMsg = true; } // Бейджи badges.clear(); for (const auto &badge : msg.badges) { badges.append(UserBadge(badge.name, badge.version)); } // Время последнего сообщения lastMessageTime = msg.timestamp(); // Увеличиваем счетчик сообщений messageCount++; }