This commit is contained in:
Sergei Poljanski 2026-02-22 21:33:23 +02:00
commit ec1112e162
Signed by: asxpi
GPG key ID: 4F8851660FA4121B
22 changed files with 837 additions and 0 deletions

35
bot/models.py Normal file
View file

@ -0,0 +1,35 @@
from dataclasses import dataclass
from datetime import datetime
from enum import Enum
class ReportType(Enum):
CONTENT = "content"
CONTENT_STATS = "content_stats"
FULL_AUDIT = "full_audit"
@property
def label(self) -> str:
return {
ReportType.CONTENT: "Content Analysis",
ReportType.CONTENT_STATS: "Content + Stats",
ReportType.FULL_AUDIT: "Full Audit",
}[self]
@property
def description(self) -> str:
return {
ReportType.CONTENT: "Topics, tone, themes, content strategy",
ReportType.CONTENT_STATS: "Above + posting frequency, engagement patterns",
ReportType.FULL_AUDIT: "All above + sentiment, audience insights, recommendations",
}[self]
@dataclass
class ChannelMessage:
id: int
date: datetime
text: str
views: int | None = None
forwards: int | None = None
replies: int | None = None