TTW_Bot/user.cpp

44 lines
1.0 KiB
C++

#include "user.h"
#include "twitchmessage.h"
#include <QStringList>
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++;
}