aboutsummaryrefslogtreecommitdiff
path: root/velascobot2/utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'velascobot2/utils.py')
-rw-r--r--velascobot2/utils.py48
1 files changed, 48 insertions, 0 deletions
diff --git a/velascobot2/utils.py b/velascobot2/utils.py
new file mode 100644
index 0000000..e89e1d4
--- /dev/null
+++ b/velascobot2/utils.py
@@ -0,0 +1,48 @@
+from enum import StrEnum
+
+
+class GraphicType(StrEnum):
+ STICKER = "STICKER"
+ ANIMATION = "ANIMATION"
+ VIDEO = "VIDEO"
+
+
+class Response(StrEnum):
+ TEXT = "TEXT"
+ GRAPHIC = "GRAPHIC"
+
+
+class ChatData:
+ def __init__(
+ self,
+ id: str,
+ chat_type: str,
+ name: str,
+ processed_messages: int = 0,
+ message_period: int = 10,
+ answer_chance: float = 0.5,
+ restricted: bool = False,
+ silenced: bool = False,
+ ) -> None:
+ self.id = id
+ self.type = chat_type
+ self.name = name
+ self.processed_messages = processed_messages
+ self.message_period = message_period
+ self.answer_chance = answer_chance
+ self.restricted = restricted
+ self.silenced = silenced
+
+ @staticmethod
+ def from_sql_row(row: tuple[str, str, str, int, int, float, int, int]):
+ print("From SQL row:", repr(row))
+ return ChatData(
+ row[0],
+ row[1],
+ row[2],
+ int(row[3]),
+ int(row[4]),
+ float(row[5]),
+ int(row[6]) == 1,
+ int(row[7]) == 1,
+ )